【问题标题】:New to NLP, Question about annotationNLP新手,关于注释的问题
【发布时间】:2017-08-31 01:55:17
【问题描述】:

我是 NLP 新手,我正在寻找一些教程、文档或示例代码方面的起点。 我被告知要研究处理自然文本以从中提取一些结构化数据的可能性。 例如,我想从以下语句中提取(注释)身高和体重。 “他身高 6 英尺,体重 200 磅”或 “他的身高是 6 英尺,体重是 200”等。 我研究过 UIMA,但它似乎是一个没有培训能力的自创 REGEX 字典。 所以简而言之,我可以使用什么 Java 框架来创建一个也可以训练的注释引擎! 对此的任何帮助(指针)将不胜感激。 谢谢

【问题讨论】:

标签: java annotations nlp


【解决方案1】:

既然你要求指点:LingPipe(上面已经提到)、OpenNLPStanford NLP distributions

注意:如果 Python 是一个选项,您可以使用Natural Language Toolkit

【讨论】:

  • +1,最好的开始是使用 NLP 编程框架,因为在这个阶段,初学者不需要浪费时间去了解解决方案的架构细节,例如 GATE 或阿帕奇 UIMA。
  • @Skarab 我不同意,@NLP 表示他想创建一个用于事实提取的注释引擎,而这正是 GATE 和 UIMA 的设计目的。上面提到的库会做词法和句法分析,但之后还有很多工作要做。
  • @StompChicken 最近我指导了一个学生项目,参与者决定使用 apache UIMA。他们确实花了很多时间,才学到足够的知识来构建第一个真正的提取管道。我个人使用 UIMA,我可以推荐它,但在获得了 lingpipe 或自然语言工具包的第一次体验之后。
  • @Skarab 我无法否认 UIMA 非常重量级且难以入门的事实。顺便说一句,我确实认为 GATE 在这方面要容易得多。我只是认为有必要构建一个足够灵活的系统来实际做一些有用的事情。
【解决方案2】:

如果您真的想使用机器学习来训练您的注释器,那么GATE 可能是您的最佳选择。看看他们指南中关于machine learning 的章节。

【讨论】:

  • @NLP 不要忘记支持 StompChicken 的回答,如果您觉得它有帮助的话。
【解决方案3】:

我会使用 NER。这是我为您的输入文本看到的输出:

你可以在这里试试: http://deagol.cs.illinois.edu:8080

【讨论】:

    猜你喜欢
    • 2011-02-01
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-30
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多