gpt4 book ai didi

java - 如何为 OpenNLP 准备训练数据以对包含多个单词的标记进行标记?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:22:43 26 4
gpt4 key购买 nike

在某些语言中(例如:越南语),某些词汇表由多个单词组成。这样一来,一些包含多个单词的标记可以被标记化,而不仅仅是使用空格。

我有以下输入:

Người dân địa phương đã nhiều lần báo Điện lực Bến Tre nhưng chưa được giải quyết .

预期输出:

["Người dân", "địa phương",  "đã", "nhiều", "lần", "báo", "Điện lực",  "Bến Tre", "nhưng", "chưa", "được", "giải quyết"]

训练数据我有_连接需要粘在一起的词:

Người_dân địa_phương đã nhiều lần báo Điện_lực Bến_Tre nhưng chưa được giải_quyết .

这是我用来训练的命令行

opennlp TokenizerTrainer -model "model/vi-token.bin" -alphaNumOpt 1 -lang "vi" -data "data/merge_vlsp_removehtml" -encoding "UTF-8" -params param/wordseg.param

带参数

Iterations=1000

但是,输出无法连接一个标记中的多个单词,而是用空格分隔。

命令我运行以获得输出

opennlp TokenizerME model/vi-token.bin < sample/sample_text > sample/sample_text.out 

我应该如何处理我们的配置参数的训练数据来训练每个标记有多个单词的分词器?

最佳答案

与其使用下划线进行训练,不如使用标签。 OpenNLP 使用标签作为训练的引用。按照 NER 的说明进行操作并训练您的分词器。

opennlp 提供了“TokenizerTrainer”工具来训练数据。 OpenNLP 格式每行包含一个句子。您还可以指定由空格或特殊标记分隔的标记。

可以关注this出于各种目的在 opennlp 中抢先一步的博客。该帖子将向您展示如何创建训练文件和构建新模型。

您可以使用 modelbuilder addon 轻松创建自己的训练数据集并遵循这里提到的一些规则来训练创造一个好的NER model .

您可以使用模型构建器插件找到一些帮助 here .

基本上,您将所有信息放在一个文本文件中,而将 NER 实体放在另一个文件中。该插件搜索特定实体并将其替换为所需的标签。因此产生标记数据。这个工具一定非常容易使用!

另外,关注mr. markg's回答以了解如何自行创建新模型。这将帮助您构建自己的模型,这些模型可以针对您的应用程序进行定制。

希望这对您有所帮助!

关于java - 如何为 OpenNLP 准备训练数据以对包含多个单词的标记进行标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51376469/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com