目前,我正在使用Naive Bayes算法,SVM和Maximum Enthrophy制作一个引文句子分类器,现在我的数据是110个非引用句子和10个引用句子。我正在使用代码从stanford分类器示例中进行分类,结果证明是好的。但是分类器是Quasi-Newton。如何使用朴素贝叶斯分类器,支持向量机和最大熵?我已经尝试编辑prop文件并添加" useNB = true",但事实证明所有数据都是非引用句类。我已经在http://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/classify/ColumnDataClassifier.html阅读了javadoc并且我不知道在哪里可以将setClass用于朴素贝叶斯算法
答案 0 :(得分:0)
默认情况下,分类器将以编程方式LinearClassifier.java
运行最大熵(即逻辑回归)分类器。 QNMinimizer是斯坦福实施的L-BFGS最小化器,用于优化最大目标。标志useNB=true
我认为切换到Naive Bayes是正确的。对于运行SVM:理论上CoreNLP有一个SVMLight的包装器,但此时你也可以直接运行SVMLight。
您的训练数据开始时是否不平衡?通过平衡的训练集,将所有句子放在一个类中会很奇怪。