我正在使用非常酷的
natural库为node.js.
我正在努力训练我的分类器来匹配短语用户体验.我的问题是,如果我做这样的事情:
classifier.addDocument(['user experience'],'ux');
它不匹配2个单词短语,我相信,因为它标记的话.如果我做这样的事情:
classifier.addDocument(['user','experience'],'ux');
它的工作原理就像我想要的那样,但是我的问题是,我不想仅仅匹配用户这个词,因为一篇文章可以提到多次使用用户名,这可能与用户体验无关,导致不准确的分类.所以,我的问题是如何使用NLP匹配2个或更多的单词短语?
感谢您的帮助提前.
解决方法
你应该看看n-gram,特别是在这种情况下,它被称为二进制,一系列两个令牌.
https://github.com/NaturalNode/natural#bigrams
https://github.com/NaturalNode/natural#bigrams
我没有使用这个特定的库(不要认为nodejs是NLP最好的语言,它仍然处于早期阶段,我建议你为NLP使用一个更成熟的库(NLTK)/语言(python)我想这只是为了测试还是一些小的项目).
无论如何,从手册判断,你可能会做一些类似的事情
classifier.addDocument([['user','experience']],'ux');