2017-08-01 23 views
0

我有输入来源的顺序。当输入符合特定的顺序时,它被分类到特定的组中。基于此,我建立了如下的培训文件。基于特征发生顺序的分类

LABEL FEATURE1,FEATURE2,FEATURE3,FEATURE4 
CLASS_A INPUT_A,INPUT_B,INPUT_C,INPUT_D 
CLASS_A INPUT_A,INPUT_B,INPUT_C,INPUT_D 
CLASS_A INPUT_A,INPUT_B,INPUT_C,INPUT_D 
CLASS_A INPUT_A,INPUT_B,INPUT_C,INPUT_D 
CLASS_B INPUT_C,INPUT_D,, 
CLASS_B INPUT_C,INPUT_D,, 
CLASS_B INPUT_C,INPUT_D,, 
CLASS_C INPUT_A,INPUT_B,INPUT_D, 
CLASS_C INPUT_A,INPUT_B,INPUT_D, 
CLASS_C INPUT_A,INPUT_B,INPUT_D, 
CLASS_C INPUT_A,INPUT_B,INPUT_D, 
CLASS_C INPUT_A,INPUT_B,INPUT_D, 
CLASS_D INPUT_E,INPUT_F,, 
CLASS_D INPUT_E,INPUT_F,, 
CLASS_D INPUT_E,INPUT_F,, 
CLASS_D INPUT_E,INPUT_F,, 

我正在尝试使用决策树来做分类,但问题是它没有考虑构建模型时的顺序。决策树是否正确地处理问题,其中特征顺序对于分类而言非常重要,而不是每个特征的权重,或者是否有更好的算法/方法可用于解决这些类型的问题。

回答

0

决策树是很好为此,但它似乎是你选择的算法在处理输入时不考虑顺序。如果您使用的是预打包算法,则可能会发现编辑输入文件并使用其顺序标记每个功能部件会更容易:将订单视为功能值。例如,您输入的可能是这样的:

CLASS_A 1 2 3 4 0 0 
CLASS_B 0 0 1 2 0 0 
CLASS_C 1 2 0 3 0 0 
CLASS_D 0 0 0 0 1 2 

这将允许您从各种训练算法选择:决策树,朴素贝叶斯,SVM,甚至K-means聚类。