java - 如何在 weka 中表示用于分类的文本?

标签 java machine-learning classification weka arff

能否请您告诉我如何在 weka 中表示文本分类的属性或类。我可以使用什么属性进行分类?单词频率还是单词? ARFF 格式的可能结构是什么?你能给我几行这种结构的例子吗?

非常感谢您。

最佳答案

最简单的替代方法之一是从 ARFF 文件开始解决二类问题,例如:

@relation corpus 

@attribute text string
@attribute class {pos,neg}

@data
'long text with words ... ',pos

文本表示为 String 类型,类是具有两个值的标称值。

然后你可以应用两个过滤器:

  1. StringToWordVector 将文本转换为词 vector 表示。过滤器为每个词使用一个属性。您可以调整参数以选择二进制/频率表示、词干提取或停用词。最佳表示取决于问题。如果文本不长,通常二进制表示就足够了。
  2. Reorder 将类属性移动到最后一个位置,Weka 假定它在那里。

您可以在这个 Weka wiki 页面中找到更多信息和其他转换数据的方法: http://weka.wikispaces.com/Text+categorization+with+WEKA

关于java - 如何在 weka 中表示用于分类的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8313426/

相关文章:

python - 将基本 Tensorflow 模型导出到 Google Cloud ML

python - 导出 Scikit Learn 随机森林以在 Hadoop 平台上使用

python - 曲线下面积是否有可能 = 0?

java - 数据存储查询超时

java - java中的文件处理

java.sql.SQLException : Operation not allowed after ResultSet closed 异常

java - 将ResultSet放入HashMap?

machine-learning - 如何修改灰度图像的 Alexnet 架构?

opencv - 使用 SVM 进行实时面部表情分类

algorithm - adaboost 相对于 gentleboost 的应用程序特定优势,反之亦然?