如何使用非ordianal数据进行分类

时间:2017-07-31 00:52:02

标签: machine-learning svm

我是机器学习领域的新手。 尝试使用他们的电话记录对10个人进行分类。

电话通话日志如下所示

UserId      IsInboundCall    Duration    PhoneNumber(hashed)
1           false            23          1011112222
2           true             45          1033334444


使用来自 sklearn 的SVM训练这种8700日志,结果是准确度为88%

关于这个结果,我有几个问题 什么是使用一些非序数数据的正确方法(例如电话号码)

  1. 我不确定使用哈希电话号码作为功能,但这种多级分类器的准确性并不差,这只是巧合吗?
  2. 如何使用oridnal数据作为功能?
  3. 如果此分类器必须对更多1000个类(更多1000个用户)进行分类,那么SVM是否仍适用于该情况?
  4. 任何建议对我都有帮助。感谢

1 个答案:

答案 0 :(得分:1)

1)尝试不带电话号码的SVM作为功能,以了解它有多大的影响。

2)为了避免有序数据,您可以转换为数字或使用1 K方法。假设您添加了具有可能值{IOS, Android, Blackberry}的电话操作系统字段,您可以将其表示为数字0,1,2或3个功能(1,0,0), (0,1,0), (0,0,1)

3)只要数据近似线性可分,SVM仍然会给出良好的结果。为此,您可能需要添加更多功能并映射到不同的功能空间(RBF内核是一个良好的开端)。