是否可以将单词附加到现有的 OpenNLP POS 语料库/模型中?

2023-12-30

有没有办法训练现有的 Apache OpenNLP POS Tagger 模型?我需要向模型添加一些特定于我的应用程序的专有名词。当我尝试使用以下命令时:

opennlp POSTaggerTrainer -type maxent -model en-pos-maxent.bin \
        -lang en -data en-pos.train -encoding UTF-8

整个模型被重新训练。我只想添加一些新句子en-pos-maxent.bin

这是我的训练文件的样子:

Where_WRB is_VBZ the_DT Seven_DNNP Dwarfs_DNNP Mine_DNNP Train_DNNP ?_?
Where_WRB is_VBZ the_DT Astro_DNNP Orbiter_DNNP ?_?
Where_WRB is_VBZ the_DT Barnstormer_DNNP  ?_?
Where_WRB is_VBZ the_DT Big_DNNP Thunder_DNNP Mountain_DNNP Railroad_DNNP  ?_?
Where_WRB is_VBZ the_DT Buzz_DNNP Lightyears_DNNP Space_DNNP Ranger_DNNP Spin_DNNP  ?_?
Where_WRB is_VBZ the_DT Casey_DNNP Jr_DNNP Splash_DNNP N_DNNP Soak_DNNP Station_DNNP  ?_?
Where_WRB is_VBZ the_DT Cinderella_DNNP Castle_DNNP  ?_?
Where_WRB is_VBZ the_DT Country_DNNP Bear_DNNP Jamboree_DNNP  ?_?
Where_WRB is_VBZ the_DT Dumbo_DNNP the_DNNP Flying_DNNP Elephant_DNNP  ?_?
Where_WRB is_VBZ the_DT Enchanted_DNNP Tales_DNNP with_DNNP Belle_DNNP  ?_?
Where_WRB is_VBZ the_DT Frontierland_DNNP Shootin_DNNP Arcade_DNNP  ?_?

训练模型后,除了训练文件中的单词外,所有单词都被标记为DNNP。 例如,如果我要求标记单词“Where”(存在于训练文件中),答案是WRB,但是如果我要求标记单词“hello”(训练文件中不存在),它会被标记为DNNP。所以我想补充几句话。我怎样才能做到这一点?


不幸的是,您不能简单地使用额外的训练实例来增强 OpenNLP 模型。您需要使用原始训练数据和新数据重新训练整个模型,以获得您想要的模型。您需要使用现有(大型)POS 标记语料库以及新示例来训练新的 POS 标记器模型。

如果您只想识别某些类型的专有名词,您可以考虑使用您的数据训练 OpenNLP NameFinder(或其他命名实体提取器),因为这种注释器更适合识别特定类型的专有名词。您上面只举了几个例子,但我认为词性标注器很难区分正常的 NNP 和新的 DNNP,因为它们出现在与 NNP 相同的上下文中,并且具有相同的形式(大写的名词短语)。命名实体识别器是完成此类任务的更好工具。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以将单词附加到现有的 OpenNLP POS 语料库/模型中? 的相关文章

  • NLTK CoreNLPDependencyParser:无法建立连接

    我正在尝试通过 NLTK 使用斯坦福解析器 按照示例here http www nltk org api nltk parse html nltk parse corenlp CoreNLPDependencyParser 20tutori
  • 使用 Hadoop MapReduce 的计算语言学项目构想

    我需要做一个关于计算语言学课程的项目 是否有任何有趣的 语言 问题 其数据密集程度足以使用 Hadoop MapReduce 来解决 解决方案或算法应尝试分析并提供 语言 领域的一些见解 但是它应该适用于大型数据集 以便我可以使用 hado
  • 使用 nltk 进行分块

    如何从给定模式的句子中获取所有块 示例 NP
  • IOB 准确度和精密度之间的差异

    我正在使用命名实体识别和分块器对 NLTK 进行一些工作 我使用重新训练了分类器nltk chunk named entity py为此 我采取了以下措施 ChunkParse score IOB Accuracy 96 5 Precisi
  • 如何调整 NLTK 句子标记器

    我正在使用 NLTK 来分析一些经典文本 但我在按句子标记文本时遇到了麻烦 例如 这是我从以下内容中得到的片段莫比迪克 http www gutenberg org cache epub 2701 pg2701 txt import nlt
  • 如何有效计算文档流中文档之间的相似度

    我收集文本文档 在 Node js 中 其中一个文档i表示为单词列表 考虑到新文档以文档流的形式出现 计算这些文档之间相似性的有效方法是什么 我目前对每个文档中单词的归一化频率使用余弦相似度 我不使用 TF IDF 词频 逆文档频率 因为我
  • 生成易于记忆的随机标识符

    与所有开发人员一样 我们在日常工作中不断处理某种标识符 大多数时候 它与错误或支持票有关 我们的软件在检测到错误后 会创建一个包 该包的名称由时间戳和版本号格式化 这是创建合理唯一标识符以避免混淆包的一种廉价方法 例子 错误报告 20101
  • 如何使用 tf-idf 选择停用词? (非英语语料库)

    我已经成功评估了tf idf 函数 http en wikipedia org wiki Tf idf对于给定的语料库 如何找到每个文档的停用词和最佳词 据我所知 给定单词和文档的 tf idf 较低意味着它不是选择该文档的好单词 停用词是
  • 如何训练斯坦福 NLP 情感分析工具

    地狱大家 我正在使用斯坦福核心 NLP 包 我的目标是对推文直播进行情感分析 按原样使用情感分析工具对文本 态度 的分析非常差 许多积极因素被标记为中性 许多消极因素被评为积极 我已经在文本文件中获取了超过一百万条推文 但我不知道如何实际获
  • 如何确保用户只提交英文文本

    我正在构建一个涉及自然语言处理的项目 由于nlp模块目前只处理英文文本 所以我必须确保用户提交的内容 不长 只有几个单词 是英文的 是否有既定的方法来实现这一目标 首选 Python 或 Javascript 方式 如果内容足够长我会推荐一
  • AttributeError:类型对象“Word2Vec”没有属性“load_word2vec_format”

    我正在尝试实现 word2vec 模型并收到属性错误 AttributeError 类型对象 Word2Vec 没有属性 load word2vec format 下面是代码 wv Word2Vec load word2vec format
  • 保存具有自定义前向功能的 Bert 模型并将其置于 Huggingface 上

    我创建了自己的 BertClassifier 模型 从预训练开始 然后添加由不同层组成的我自己的分类头 微调后 我想使用 model save pretrained 保存模型 但是当我打印它并从预训练上传时 我看不到我的分类器头 代码如下
  • R tm 包创建 N 个最常见术语的矩阵

    我有一个termDocumentMatrix使用创建的tmR 中的包 我正在尝试创建一个包含 50 个最常出现的术语的矩阵 数据框 当我尝试转换为矩阵时 出现此错误 gt ap m lt as matrix mydata dtm Error
  • 如何在Python中使用多处理来加速循环执行

    我有两个清单 列表 A 包含 500 个单词 列表 B 包含 10000 个单词 我正在尝试为列表 A 找到与 B 相关的相似单词 我正在使用 Spacy 的相似函数 我面临的问题是计算需要很长时间 我是多处理使用的新手 因此请求帮助 如何
  • 如何在R中使用OpenNLP获取POS标签?

    这是 R 代码 library NLP library openNLP tagPOS lt function x s lt as String x word token annotator lt Maxent Word Token Anno
  • URL路径相似度/字符串相似度算法

    我的问题是我需要比较 URL 路径并推断它们是否相似 下面我提供了要处理的示例数据 GROUP 1 robots txt GROUP 2 bot html GROUP 3 phpMyAdmin 2 5 6 rc1 scripts setup
  • 举例解释bpe(字节对编码)?

    有人可以帮忙解释一下背后的基本概念吗BPE模型 除了这张纸 https arxiv org abs 1508 07909 目前还没有那么多解释 到目前为止我所知道的是 它通过将罕见和未知的单词编码为子词单元序列来实现开放词汇表上的 NMT
  • 如何从 Pandas DataFrame 转换为 Tensorflow BatchDataset 以进行 NLP?

    老实说 我想弄清楚如何转换数据集 格式 pandasDataFrame或 numpy 数组 转换为简单文本分类张量流模型可以训练用于情感分析的形式 我使用的数据集类似于 IMDB 包含文本和标签 正面或负面 我看过的每个教程要么以不同的方式
  • 获取 NLTK 索引的所有结果

    我正在使用 NLTK 来查找单词的一致性 但我不知道如何获取所有结果并将它们放入list or set 例如 text concordance word 仅打印前 25 个结果 TL DR text concordance lines 10
  • Java文本输出中的UTF-8编码问题

    我一直致力于测试高棉语 Unicode Wordbreaker 的各种解决方案 高棉语单词之间没有空格 这使得拼写检查和语法检查变得困难 以及从旧高棉语转换为高棉语 Unicode 我得到了一些源代码 现在在线 http www white

随机推荐

  • NUnit Assert.Equals 与 Assert.AreEqual

    有什么区别 Assert Equals and Assert AreEqual Assert NotNull and Assert IsNotNull Assert Equals 是对象比较 Assert AreEquals 被重载以比较
  • 在 Node 模块导出的函数上使用 `jest.spyOn`

    In Jest https jestjs io 为了监视 并可选择模拟实现 方法 我们执行以下操作 const childProcess require child process const spySpawnSync jest spyOn
  • 使用 .NET 获得快速 RPC 的最简单方法?

    在 NET 中获取 RPC 最简单的方法是什么 我看到有 NET Remoting和WCF 根据维基百科 WCF是 NET Remoting的后继者 到目前为止 我只尝试了远程处理的东西 这似乎非常简单 到目前为止 我也没有遇到任何应用程序
  • 如何对每一行执行语句并返回整个结果

    这是上一个问题的延续 查找具有匹配行的组 https stackoverflow com questions 42700771 find groups with matching rows 我有一张表 其中包含人和他们拥有的汽车 Name
  • (已解决)如何用jq读取100+GB的文件而不耗尽内存

    我有一个 100 GB 的 json 文件 当我尝试用 jq 读取它时 我的计算机继续运行我们的 ram 有没有办法在限制内存使用的同时读取文件 或者有其他方法来读取非常大的 json 文件 我在命令中输入的内容 jq keys fileN
  • 如何使用 Cabal 列出所有已安装的软件包及其版本?

    是否有一个简单的命令 选项可以让您做到这一点 我可以用grep但我想知道是否有内置选项 我们可以简单地这样做 cabal list installed
  • python-social-auth 是否需要会话

    我正在构建一个带有 API 后端 使用 DRF 构建 和 angularjs 客户端的 django 应用程序 我的目标是使用 JWT 代替会话来完全解耦服务器和客户端 我正在尝试整合python 社交 身份验证 https github
  • SQL 中的日期范围交集

    我有一个表 其中每一行都有开始和结束日期时间 这些跨度可以是任意短或长 我想查询具有两个开始和停止日期时间的所有行的交集总持续时间 如何在 MySQL 中做到这一点 或者您是否必须选择与查询开始和停止时间相交的行 然后计算每行的实际重叠并在
  • 更改输入焦点上占位符范围的字体颜色

    我有一个输入字段 里面有一个跨度占位符 我想做的是在单击输入字段时更改占位符的颜色 这是一个 jsFiddle 其中包含我的领域的示例 http jsfiddle net Vbnj2 http jsfiddle net Vbnj2 最好的方
  • 在 C# 中将 Html 转换为 Docx [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在 C 中将 html 页面转换为 docx 我该怎么做 我的解决方案使用Html2OpenXml
  • 使用node.js从Firestore中的子集合中删除文档

    我想从 Firebase 子集合中删除文档 我尝试通过以下方式做到这一点 firestore collection categories doc categoryId collection books doc bookId delete 但
  • 为什么插入排序是排序或近似排序数组的最佳算法?

    所以我猜它是因为它只是比较 A k 和 A k 1 并在一次扫描中实现 但它仍然不清楚 有人可以更好地解释一下吗 谢谢 This link http www sorting algorithms com 显示了一个不同类型数据集排序算法的图
  • Blazor - 比较上一个和下一个状态

    我在 Blazor 中有一个学生表 它来自 api 我还收到推送数据来更新学生信息 这基本上是数据库更改后的分数 推送工作正常 分数为正在更新 但我还想将分数更改后表中已更新的字段的背景颜色更改为仅 td 标签的红色几秒钟 我的代码如下 f
  • 在 Bootstrap 面板上调用事件展开

    我正在开发一个流程 我们使用 Bootstrap 风格的手风琴 不是 jQuery UI 手风琴 要求是当用户展开手风琴时调用服务 这是 HTML div class accordion dashboard div class panel
  • 如何清除 WPF WebBrowser 中特定站点的 cookie?

    如何删除特定网站或其页面的身份验证 cookie 目前 如果我通过 WPF WebBrowser 使用 OAuth 2 0 登录 我的登录会话将被保存 但我想在每次关闭应用程序时重置会话 public partial class VKLog
  • 使用 Retrofit2 以表单 urlencoded 请求发送对象列表

    这是我的邮递员请求 我将使用 Retrofit2 Gson 和 RxJava2 发送 POST 请求 这是我的要求 FormUrlEncoded POST Student I m sure the address and name are
  • React Native - 禁用 iOS 键盘上的密码自动填充选项

    在 React Native 中 如何禁用或阻止键盘显示密码自动填充附件视图选项 好像没有房产文本输入处理禁用此选项 React Native TextInput 文档 https facebook github io react nati
  • 连接两个模型以将数据放入视图中

    完成MVC菜鸟警告 2小时学习时间 我在网上查看了很多 MVC3 示例 但没有找到一个简单的示例来完成我想做的事情 我想要做的是两个连接两个模型并将一些数据放入视图中 最明显的是 public partial class Model1 pu
  • 如何在 Three.js 中将 SVG 文件加载到 SVGRenderer 中

    我正在尝试使用SVGRenderer在三个 js中 http trijs org examples svg sandbox http threejs org examples svg sandbox 该示例向您展示了如何动态创建 SVG 元
  • 是否可以将单词附加到现有的 OpenNLP POS 语料库/模型中?

    有没有办法训练现有的 Apache OpenNLP POS Tagger 模型 我需要向模型添加一些特定于我的应用程序的专有名词 当我尝试使用以下命令时 opennlp POSTaggerTrainer type maxent model