我想在我的应用中将传入文档描述为“好”或“写得不好”。我意识到这不是一件容易的事,但即使是粗略的想法也会有用。我觉得这样做的方法是通过天真的贝叶斯分类器和两个班级,但我愿意接受建议。所以有两个问题:
这种方法是最佳的(考虑到简单性)方法 假设一个足够大的训练db?
ruby中有库吗? (或任何可集成的JRuby或 无论如何,我可以插入我的 rails app可以轻松实现这一目标吗?
谢谢!
答案 0 :(得分:2)
您可以尝试使用词汇矢量分析。在这里覆盖一些:
http://en.wikipedia.org/wiki/Semantic_similarity
基本上,你建立了一个你认为“写得好”或“写得不好”的文本语料库,并计算某些单词的频率。为每个传感器制作一个标准化向量,然后计算每个传入文档向量之间的距离。我不是统计学家,但我被告知它类似于贝叶斯过滤,但似乎更好地处理拼写错误和异常值。
无论如何,这并不完美。根据您需要的准确程度,您可能仍需要人类做出最终判断。但我们很幸运将它用作预过滤器以减少审稿人数量。
答案 1 :(得分:1)
要检出的另一个简单算法是Flesch-Kincaid可读性指标。它使用得非常广泛,应该易于实现。我假设其中一个Ruby NLP libraries有音节方法。
答案 2 :(得分:0)
你可能会发现有趣的这个Burstein, Chodorow, and Leacock on the Criterion essay evaluation system是一个非常有趣的非常高级的概述,一个特定的系统如何进行论文评估以及风格校正。