2016-09-17 83 views
0

我是WEKA和ML的全新品牌,请原谅我对以下内容的无知。我已经浪费了几个小时试图找出它,所以希望有人能指出我在正确的方向:WEKA使用类值来求解决策树?

我想在美元兑日元的数据上运行J48决策树。数据通过.csv文件加载,类价值为名义类型,更具体地说,如果USDJPY在20次会议后上涨超过1%,则值为TRUE或FALSE。问题是,当我运行算法时,决策树只是简单地使用类值来解决问题,这是无用的。除了我期望预测类属性的class属性之外,还有* 22个属性。

将我的数据集与示例“玻璃”数据集进行比较时,我无法找到两者之间的任何差异来解释我的问题。当我运行J48(使用相同的设置)时,通过其他属性(例如猜测错误)来预测类别值(玻璃类型),“glass.arff”按预期工作。

我在这里错过了什么?这里是属性列表:

@ATTRIBUTE date NUMERIC 
@ATTRIBUTE open NUMERIC 
@ATTRIBUTE high NUMERIC 
@ATTRIBUTE low NUMERIC 
@ATTRIBUTE close NUMERIC 
@ATTRIBUTE 1daypctchg NUMERIC 
@ATTRIBUTE smavg50onclose NUMERIC 
@ATTRIBUTE smavg100onclose NUMERIC 
@ATTRIBUTE smavg200onclose NUMERIC 
@ATTRIBUTE ubb2 NUMERIC 
@ATTRIBUTE bollma2 onclose NUMERIC 
@ATTRIBUTE lbb2 NUMERIC 
@ATTRIBUTE bollwjpybgn NUMERIC 
@ATTRIBUTE %bjpybgn NUMERIC 
@ATTRIBUTE rsi NUMERIC 
@ATTRIBUTE ma50>100 {FALSE,TRUE} 
@ATTRIBUTE ma50>200 {FALSE,TRUE} 
@ATTRIBUTE ma100>200 {FALSE,TRUE} 
@ATTRIBUTE up1pct5d? {FALSE,TRUE} 
@ATTRIBUTE up1pct20d? {FALSE,TRUE} 
@ATTRIBUTE dwn1pct5d? {FALSE,TRUE} 
@ATTRIBUTE dwn1pct20d? {FALSE,TRUE} 
+0

您使用的是Weka UI还是Java API? – stackoverflowuser2010

+0

我正在使用Weka UI – trock2000

+0

您是否将类列标记为UI中的类?这将使算法避免使用该类作为功能。 – stackoverflowuser2010

回答

1

Weka的(和它的J48实现)应该能够将您的数据,只要地面实况类是一贯.csv文件中的同一列分类。

+0

谢谢 - 我想我现在通过 - 删除其他“布尔”列我能够让算法按预期工作 – trock2000

+0

很高兴听到这一点。 – stackoverflowuser2010