【发布时间】:2012-07-21 08:08:39
【问题描述】:
我有 20 个属性集,其中很少是字符串,例如美国各州的代码、订阅计划的名称等。我们如何在 WEKA 中处理字符串属性以构建决策树?
我阅读了有关 stringtowordvector 转换器的信息,但是每个属性的字符串本身只是一个单词。
【问题讨论】:
标签: java machine-learning weka decision-tree
我有 20 个属性集,其中很少是字符串,例如美国各州的代码、订阅计划的名称等。我们如何在 WEKA 中处理字符串属性以构建决策树?
我阅读了有关 stringtowordvector 转换器的信息,但是每个属性的字符串本身只是一个单词。
【问题讨论】:
标签: java machine-learning weka decision-tree
你可能想通了——你必须将这样的“字符串属性”(实际的字符串属性在 WEKA 中是其他东西)声明为名义属性,即,你必须在 ARFF 标头中以 curly 形式声明它们可以具有的所有值括号。
【讨论】:
只需在您的 ARFF 文件中声明此架构之后的属性即可:
@attribute <att_name> string
要小心,因为Strings 内部存储在字符串表中,并表示为
他们在那张表中的地址。因此,包含相同字符的两个字符串将
具有相同的值。
来源(书):数据挖掘:实用机器学习工具和技术第 3 版
【讨论】: