【问题标题】:Abstract Classification using NLP/ML使用 NLP/ML 进行抽象分类
【发布时间】:2018-07-08 21:52:47
【问题描述】:

我需要使用摘要和支持同义词自动生成出版物的类别。我有 800-900 篇文章的分类数据,可用于训练。此分类数据由制药专家通过阅读非结构化出版物生成。

现有出版物的现有分类类别如下:

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

这些类别目前由人类专家生成。我探索了 node.js 中的 Natural 库和 Java 中的 lingpipe。它有分类器,但我不知道什么是最有效的训练方法,所以我得到了 90% 的准确率。

以下是我心中的方法:

  1. 我可以一个一个地传递整个出版物的摘要,并告诉它它的类别,如下所示?

    var natural = require('natural');
    var classifier = new natural.BayesClassifier();
    classifier.addDocument('This article is for parcetamol written by Techgyani. Article was written in 2012', 'year:2012');
    classifier.addDocument('This article is for parcetamol written by Techgyani. Article was written in 2012', 'author:techgyani');
    classifier.train();
    
  2. 我可以一句一句地传递它,并告诉它它的类别是什么,这将是手动和耗时的过程。这样当我传递整个摘要时,它会为我自动生成一组类别,如下所示:

    var natural = require('natural');
    var classifier = new natural.BayesClassifier();
    classifier.addDocument('This article is for parcetamol written by Techgyani', 'drug:Paracetamol');
    classifier.addDocument('This article is for parcetamol written by Techgyani', 'author:techgyani');
    classifier.addDocument('Article was written in 2012', 'year:2012');
    classifier.train();
    
  3. 我还可以从出版物中提取标记并自行搜索我的数据库和图形类别,而无需使用任何 NLP/ML 库。

根据您的经验,解决此问题的最有效方法是什么?我愿意接受任何语言的解决方案,但我更喜欢 Javascript,因为现有堆栈使用 Javascript。

【问题讨论】:

    标签: javascript machine-learning nlp


    【解决方案1】:

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

    无需单独标记句子。我希望文档级别的准确性合理,尽管这将取决于您经过训练和分类的文档的性质。

    下面关于 Python 实现的精彩讨论

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

    【讨论】:

      【解决方案2】:

      根据我的说法,您的第二个解决方案会像魅力一样起作用。您需要训练分类器才能完成工作。

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

      一旦经过训练,你就可以很好地通过你的一个句子并自己查看输出

      【讨论】:

        【解决方案3】:

        在投资培训之前,您应该先探索现成的命名实体识别模型。 Spacy 是用 Python 编写的,但有一个 javascript 绑定。自然使用朴素贝叶斯和逻辑回归的分类器,其性能不如 Spacy 之类的神经网络库。我怀疑对于尚未在训练集中看到药物、疾病或作者姓名的新病例,自然不会很好地工作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-07-24
          • 1970-01-01
          • 2013-06-26
          • 2020-06-29
          • 2023-03-19
          • 2016-01-11
          • 1970-01-01
          • 2019-04-26
          相关资源
          最近更新 更多