【问题标题】:OpenNLP NameFinder Custom Feature generationOpenNLP NameFinder 自定义特征生成
【发布时间】:2018-04-06 04:58:46
【问题描述】:

我想训练一个自己的模型以在OpenNLP NameFinder 中使用。

搜索了很多,最后想出了一个可以训练模型的工作代码,但它并不准确。文档还说你需要 15000 个句子才能有一个准确的模型。

因此,每次<START> <END> 时,您都需要有 15000 个具有良好上下文和名称的句子。为此,您将不得不花费数小时 写.txt file.的天/月

我做了一些进一步的搜索来训练一个模型,而不是你自己写的全部内容,然后来到Custom Feature generation of OpenNLPhttp://opennlp.apache.org/docs/1.8.1/manual/opennlp.html#tools.namefind.training.tool

但它并没有说明如何使用它。文档给出了这个:

AdaptiveFeatureGenerator featureGenerator = new CachedFeatureGenerator(
     new AdaptiveFeatureGenerator[]{
       new WindowFeatureGenerator(new TokenFeatureGenerator(), 2, 2),
       new WindowFeatureGenerator(new TokenClassFeatureGenerator(true), 2, 2),
       new OutcomePriorFeatureGenerator(),
       new PreviousMapFeatureGenerator(),
       new BigramNameFeatureGenerator(),
       new SentenceFeatureGenerator(true, false)
       });

有人知道怎么用吗?或者更好的是,是否有人已经成功地为OpenNLP NER 训练了自己的模型,而无需自己输入数据集?

提前致谢。

【问题讨论】:

    标签: java machine-learning opennlp named-entity-recognition


    【解决方案1】:

    您仍然需要带注释的训练文本。在训练期间使用特征生成器来创建更好的模型。不幸的是,没有什么可以替代带注释的训练文本。

    【讨论】:

    • 知道如何在不自己输入 15.000 个具有良好上下文的句子的情况下获取带注释的文本吗?
    • 如何收集训练取决于您的域。你想处理什么样的自然语言文本? this book 可以帮助您了解收集和注释过程应该如何工作。如果您需要创建自定义 NER 模型,this project 可以帮助您创建模型。目前,我们正在对 NE 进行注释,应该会在接下来的几周内完成。
    • 感谢您的信息,我对您项目的结果很感兴趣。
    • @Patrick,我发布了我的项目的测试版。您想测试项目以训练您的自定义 NER 模型吗?我很高兴给你一些建议。我们可以安排一次聊天,以便我向您展示该框架。 ;-)
    猜你喜欢
    • 2012-08-12
    • 1970-01-01
    • 2017-06-21
    • 1970-01-01
    • 2016-12-23
    • 1970-01-01
    • 2017-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多