NLP是来自Apache的强大的Java NLP库。它为NLP提供各种工具,其中之一是词类(POS)标记器。通常使用POS标记器来查找文本中的结构语法结构,使用带标签的数据集,其中每个词(短语的一部分)都标有标签,您可以从该数据集中构建一个NLP模型,然后获得新文本使用该模型为文本中的每个单词生成标签。
基本上,该模型可以学习训练数据中的信息和结构,并可以用它来标记一个看不见的文本。OpenNLP带有一些预先训练过的模型,如英语模型,训练结构化英文文本以检测名词,动词等。
但是,如果您的域或用例中的文本不符合严格的英语规则,那么预先训练好的模型可能对您而言效果不佳。在这种情况下,您可以选择构建自己的训练数据,并针对您的用例训练自定义模型。
训练数据作为文本文件传递,其中每行是一个数据项。该行中的每个单词应该以“word_LABEL”的格式进行标注,单词和标签名称之间用下划线;分隔。
注意:每个单词需要一个label/tag。在这里,我们不关心我们使用的标签“Unknown”。
根据您的domain,您可以自动或手动构建这样的数据集。手动构建这样一个数据集可能会非常痛苦,像Dataturks POS tagger这样的工具可以帮助使这个过程变得更容易。
这里的重要的类是POSModel。我们用POSTaggerME类来做模型建设。以下是从训练数据文件构建模型的代码
网友评论 ()条 查看