首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于NLP/ML的抽象分类

基于NLP/ML的抽象分类
EN

Stack Overflow用户
提问于 2018-01-30 05:03:30
回答 3查看 232关注 0票数 0

我需要使用它的抽象和支持同义词自动生成出版物的类别。我有800到900篇文章的分类数据,我可以用来训练.这种分类数据是由制药专家通过阅读一份非结构化出版物生成的。

现有出版物的分类如下:

  1. 药物:一些药物,一些其他药物。
  2. 疾病:一些疾病。
  3. 作者:一些作者等等。

这些类别目前是由人类专家产生的。我在node.js中探索了自然库,在Java中探索了lingpipe。它有分类器,但我无法找出最有效的方法来训练它,所以我得到90%的准确性。

以下是我心目中的一些方法:

  1. 我可以一个一个地传递整个出版摘要,然后告诉它它的分类如下? 瓦尔自然=要求(‘自然’);var分类器=新的natural.BayesClassifier();classifier.addDocument(‘本文是为帕西他醇写的,文章写于2012年’,‘年份:2012年’);classifier.addDocument(‘这是为帕西他醇写的文章。文章写于2012年’作者: Techgyani‘);classifier.train();
  2. 我可以一个一个地把它传递给它,告诉它它的分类是什么,它将是人工和时间消耗过程。因此,当我传递整个抽象时,它将为我自动生成一组类别,如下所示: var自然科学=需要量(‘天然’);var分类器=新的natural.BayesClassifier();classifier.addDocument(‘本文为泰克加尼写的帕西他明’,‘药物:对乙酰氨基酚’);classifier.addDocument(‘此文为泰基亚尼所写的帕西他明’),‘作者:特盖尔尼’);classifier.addDocument(‘文章写于2012年’,‘年份:2012年’);‘classifier.train();
  3. 我还可以从发布中提取令牌,并且可以自己搜索我的数据库和图形类别,而无需使用NLP/ML库。

根据你的经验,解决这个问题最有效的方法是什么?我对任何语言的解决方案都是开放的,但我更喜欢Javascript,因为现有的堆栈在Javascript中。

EN

回答 3

Stack Overflow用户

发布于 2018-01-30 05:41:51

我建议在朴素贝叶斯分类器中使用最频繁的单词或单词频率作为特征。

不需要单独标注句子。我希望在文档级别上有合理的准确性,尽管这将取决于您的文档的性质培训和分类。

下面对Python实现的讨论

Implementing Bag-of-Words Naive-Bayes classifier in NLTK

票数 0
EN

Stack Overflow用户

发布于 2018-01-30 05:45:14

据我所知,你的第二个解决方案会很有魅力。为了完成你的工作,你需要训练你的分类器。

你需要通过classifier.train(data, labels);。我知道这将是一项手工工作,但训练你的分类器几乎不需要时间。

一旦它被训练,你就可以很好地通过你的一个句子,自己看输出。

票数 0
EN

Stack Overflow用户

发布于 2018-01-31 19:30:01

在投资于培训之前,你应该先探索现有的实体识别模型。Spacy是用Python编写的,但是有一个javascript绑定。该分类器在自然使用朴素贝叶斯和logistic回归的情况下,不会有像Spacy这样的神经网络库那样好的性能。我怀疑,对于那些还没有在培训集中看到药物、疾病或作者姓名的新病例,自然疗法不会奏效。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48514188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档