如何在 OpenNLP 中训练命名实体识别器标识符?

2023-11-23

好的,我有以下代码来训练来自 OpenNLP 的 NER 标识符

FileReader fileReader = new FileReader("train.txt");
ObjectStream fileStream = new PlainTextByLineStream(fileReader);
ObjectStream sampleStream = new NameSampleDataStream(fileStream);
TokenNameFinderModel model = NameFinderME.train("pt-br", "train", sampleStream, Collections.<String, Object>emptyMap());
nfm = new NameFinderME(model); 

我不知道我是否做错了什么,是否缺少某些东西,但分类不起作用。我认为 train.txt 是错误的。

错误发生的情况是所有令牌都被分类为仅一种类型。

我的 train.txt 数据类似于以下示例,但条目的变化和数量更多。另一件事是,我每次都从文本中逐字分类查找,而不是所有标记。

<START:distance> 8000m <END>
<START:temperature> 100ºC <END>
<START:weight> 50kg <END>
<START:name> Renato <END>

有人可以表明我做错了什么吗?


你的训练数据不合格。

您应该将所有实体放在句子内的上下文中:

At an altitude of <START:distance> 8000m <END> the temperature of boiling water is less than <START:temperature> 100ºC <END> .
The climber <START:name> Renato <END> is carrying <START:weight> 50kg <END> of equipment.

如果您的训练数据源自现实世界的句子并且与您正在分类的句子具有相同的风格,您将获得更好的结果。例如,如果您要处理新闻,则应该使用报纸语料库进行训练。

此外,您将需要数千个句子来构建您的模型!也许您可以从一百个开始引导并使用较差的模型来改进您的语料库并再次训练您的模型。

当然,你应该对句子的所有标记进行分类,否则将没有上下文来决定实体的类型。

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

如何在 OpenNLP 中训练命名实体识别器标识符? 的相关文章

  • 如何使用 UnboundID LDAP SDK 获取 LDAP 中的 DN 和用户 ID

    当我唯一的参数是用户 ID 时 我试图获取用户的 DN 可能不止一个 我还使用 UnboundID LDap SDK 如您所见 public String getCustomerAdminDN String uid String resul
  • 使用 Java 编辑 jpeg EXIF 数据

    我想编辑 jpg 文件的属性 例如 评论 标题 拍摄日期 相机制造商等 我找到了读取这些数据的库 但我需要一个free带有示例的库edit them 我知道 apache 的成像 sanselan 但我无法用它编辑数据 如果您以前自己使用过
  • Java NIO Pipe 与 BlockingQueue

    我刚刚发现它只有一个 NIO 工具 即 Java NIO Pipe 它是为在线程之间传递数据而设计的 与通过队列 例如 ArrayBlockingQueue 传递的更传统的消息相比 使用此机制是否有任何优势 通常 将数据传递给另一个线程进行
  • Java 扫描仪问题 (JFrame)

    我正在尝试使用扫描仪来编辑塔防游戏的级别 但是 它不会将级别 图块图像 更新为自定义文件的级别 0 是草 1 是石头 1 是什么都没有 等等 我发现了错误 但如何修复它 我需要添加 更改什么才能消除这个错误 java lang NullPo
  • Java 区域设置区分大小写

    我有以下代码来显示当前区域设置 System out println Locale getDefault System out println new Locale en US 上面给出的输出如下 en US en us 如何构造一个 Lo
  • log4j2 SMTP Appender:如何包含另一个级别的先前消息?

    我正在使用 log4j2 beta9 并且有以下配置 其中一部分
  • 我在 Android Studio 中使用哪个版本的 JDK 有关系吗?

    I know I can choose the SDK location in Android Studio s Project Structure 我有两个问题 当我们已经使用Android SDK时 为什么还需要JDK 毕竟我们不是为
  • Java Swing 自定义形状(2D 图形)

    我需要绘制自定义形状 现在 当用户单击面板上的几个点时 我使用多边形创建一个形状 public void mouseClicked MouseEvent e polygon addPoint e getX e getY repaint 但我
  • 创建UML图时应该编写构造函数吗?

    我有一项作业要求我为实际的 Java 程序创建 UML 图 但程序中有几个构造函数方法 我很困惑 我是否应该将这些构造函数方法添加到图中 根据 UML 规范 2 5 版第 11 4 4 节 构造函数是一个具有所属类类型的单个返回结果参数的操
  • 使用 Windows 锁定屏幕后删除 Kerberos 缓存票证

    无论如何 有没有办法阻止 Kerberos 缓存的票证在 Windows 进入锁定屏幕后被删除 首次登录 Windows 时 klist exe 显示 2 个缓存票证 但是 发生 Windows 锁屏事件后 klist exe 显示 0 个
  • Java setLocation() 事故

    我正处于创建一个程序来操作员工 客户系统的开始阶段 现在我刚刚创建了登录 GUI 但我遇到了一些问题 setLocation 方法 我将其设置为 250 250 但这使我的 GUI 高度变得非常疯狂 如果有人能够解决这个问题 我的代码如下
  • 从两个数组中查找公共文件

    我正在尝试从两个数组中查找通用名称文件 我已将两个不同文件夹的文件名保存在两个不同的数组中 现在我正在创建一个通用文件数组 其中包含具有通用名称的文件 filenames 1 包含文件夹 1 中文件名称的数组 filename2 包含文件夹
  • 在同一个容器但不同的耳朵中使用本地EJB

    我正在尝试在同一个 Glassfish 但不同的耳朵中使用本地 EJB 但是Glassfish找不到本地EJB或者无法消费 我读到了这个 根据 JavaEE 教程 Local bean 的客户端 必须在与其访问的企业 bean 相同的 JV
  • 使用 testcontainer 作为 Dockerfile 的一部分运行测试

    我的 dockerfile 看起来像这样 FROM maven 3 jdk 11 slim COPY pom xml COPY src src RUN mvn clean install 这意味着构建的一部分是单元测试的执行 一些单元测试使
  • Java 堆分析因 SIGABRT 崩溃

    我正在尝试分析由 C 编写的方法分配并插入的本机内存JVM通过JNI 我安装了 valgrind version valgrind 3 13 0 并尝试使用以下选项运行 JVM valgrind tool massif massif out
  • Eclipse java 断点 - 目的是什么?

    我正在学习 Android 教程 刚刚进入调试部分 我想知道断点的用途是什么 我还不能告诉 它实际上停止了应用程序 以便我可以确定它运行到该点 或者我可以设置多个断点并将它们用作标记来从断点到断点检查 停止和运行 我的代码 断点是执行停止的
  • 从 Apache Kafka 中的主题删除消息

    所以我是 Apache Kafka 的新手 我正在尝试创建一个简单的应用程序 以便我可以更好地理解 API 我知道这个问题在这里被问了很多 但是如何清除存储在主题上的消息 记录 我看到的大多数答案都说要更改消息保留时间或删除并重新创建主题
  • 用 Java 编写“漂亮”代码的标准? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Java 需要一个 FileSet 包/类

    任何人都可以建议 Java 中的 FileSet 包 类吗 我所说的 FileSet 是指文件和目录的集合以及正则表达式支持的包含和排除规则 类似于 Apache Ant 谢谢 Apache 公共 IO文件工具 http commons a
  • Java中不同格式的字符串解析为日期

    我想转换String to Date以不同的格式 例如 我从用户那里得到 String fromDate 19 05 2009 i e dd MM yyyy format 我想转换这个fromDate作为日期对象 yyyy MM dd fo

随机推荐

  • 退出状态是可观察的行为吗?

    C 2018 5 1 2 3 6 说 一致实施的最低要求是 对易失性对象的访问严格按照抽象机的规则进行评估 在程序终止时 写入文件的所有数据应与根据抽象语义执行程序所产生的结果相同 交互设备的输入和输出动态应按照 7 21 3 的规定进行
  • 南希:如何捕获所有请求,无论动词或路径如何

    我想将 Nancy 与默认路由一起使用 因为它干净且运行良好 但是我想要一个选项来将所有传入请求记录到控制台 我正在使用 Nancy 的自托管模块 无论是否存在显式路由 简而言之 我希望能够捕获动词 传入请求 URI 任何发布的数据 如果是
  • ModuleNotFoundError:没有名为“pandas.core.indexes”的模块

    我编写了这段代码来将数据集加载到数据框中 数据集在 pickle 文件中给出 但会引发错误 ModuleNotFoundError 没有名为 pandas core indexes 的模块 import pickle import pand
  • 如何从 ASP .NET Core MVC 1.0 中的视图访问会话

    我正在尝试从视图内部访问会话数据 使用案例 我将状态消息存储在会话中 该消息将显示在页面顶部 目前我通过使用DisplayMessages 设置一些函数ViewData 属性并在每个控制器操作开始时调用它 Goal 我只想设置一次状态消息
  • 如何从 Java 向 Erlang 发送消息?

    我正在 Erlang 中制作一个应用程序 并使用 Java 中的 GUI 我已经成功地在两种语言之间建立了连接 但现在我需要 我猜 每次按下按钮时从 Java 向 Erlang 发送一条消息 这是正确的做法吗 这样的消息看起来怎么样 我发现
  • #includes 在命名空间中,将预先编写的内容“嵌入”命名空间中

    简而言之 这样做安全吗 namespace Foo include bar 在你愉快地拒绝之前 我想我有一些规则可以保证它相当安全 但我不喜欢它们 因为它们要求包含器单独包含所需的所有全局范围标头 尽管这可能是可以容忍的 但如果我们想象包含
  • 是什么导致 Java JLabel 图标图像质量差?

    Java JLabel图标显示的像素扭曲JFrame 不同的 png 图像 均为 32x32 都会出现这种情况 我没有缩放图像 它们在程序中显示为 32x32 我使用它进行了验证getWidth and getHeight在 JLabel
  • 如何在列表理解中转换这个 for 循环?

    我有一个像这样的 for 循环 for i in conversion for f in glob glob i print os path getsize f 我想将其转换为列表理解 尝试过这个 os path getsize f for
  • 从某个范围生成随机整数

    我需要一个函数 它可以生成给定范围 包括边界值 内的随机整数 我没有不合理的质量 随机性要求 我有四个要求 我需要它快点 我的项目需要生成数百万 有时甚至数千万 的随机数 而我当前的生成器函数已被证明是一个瓶颈 我需要它相当均匀 使用 ra
  • 获取对象的实例名称,而不是 C# 4.0 中的对象类型名称

    假设这个类型 public class Car 我创建了一个实例 Car myCar new Car Target target new Target target Model myCar 这是另一种类型 public class Targ
  • C# python 实时进程间

    我正在开发一个项目 其中一个应用程序使用 C 编写 另一个应用程序使用 Python 编写 C 应用程序将持续分析数据流 并在每次检测到有趣的内容时发出一个标志 因此 每次发生事件时 我的 Python 应用程序都必须读取它并继续其自己的进
  • 包含 espresso-contrib:2.0 时出现 java.lang.InknownClassChangeError

    我有 android support v7 widget RecyclerView 的子类 当我使用该应用程序并进行测试时 它工作得很好 但是 当我在 gradle 应用程序文件中包含 espresso contrib 时 当我尝试运行相同
  • 自定义 Visual Studio MSIX 打包项目输出

    我正在使用 Visual Studio MSIX 打包项目在网络共享上为内部应用程序创建安装程序 一个问题是它正在创建一个末尾带有 Test 的目录 为什么会这样以及我该如何摆脱它 我只想要 MyApp MSIX 0 0 1 0 或者理想情
  • 在 matlab 中保存 imagesc 的精确图像输出

    你好 我想保存这张图片imagesc magic 3 确切的彩虹表示 可能吗 Thanks 这个问题可能看起来像重复的问题 但事实并非如此 我在这个网站上查看了类似问题的解决方案 但它并不令我满意 我查看了 Matlab 帮助中心 得到的最
  • android ffmpeg .so下载[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有人知道从哪里获得 Android 编译的 so FFMPEG 库吗 我尝试了数千次使用 Android NDK 在 windows 7 上手动编译
  • 接受 YouTube 的 cookie 同意

    我正在尝试从 Youtube 频道检索 Youtube 视频列表 例如 https www youtube com user YouTube videos 以获得第 n 个第一个视频 感谢key videoId 它曾经像魅力一样发挥作用 直
  • Oracle中的游标for循环

    请解释一下如何在 oracle 中使用游标 for 循环 如果我使用下一个代码 一切都很好 for rec in select id name from students loop do anything end loop 但是如果我为这个
  • 绘制一个奇特的对角相关矩阵,其系数位于上三角形中

    我有以下内容合成的数据框 包括数值 and 绝对的列以及label柱子 我想绘制一个对角相关矩阵并在上部显示相关系数 如下所示 预期产出 尽管合成数据集 数据帧中的分类列df需要转换成数值 到目前为止我已经用过这个海伯恩的例子 using
  • 如何以角度获取前一个日期?

    请帮我获取 Angular 4 中之前的日期 currentdate Date this currentdate new Date console log this datePipe transform this currentdate y
  • 如何在 OpenNLP 中训练命名实体识别器标识符?

    好的 我有以下代码来训练来自 OpenNLP 的 NER 标识符 FileReader fileReader new FileReader train txt ObjectStream fileStream new PlainTextByL