BERT 中 NER 的正确格式化数据应该是什么样子?

2024-01-11

我正在使用 Huggingface 的transformers库并希望使用 BERT 执行 NER。我试图找到一个明确的示例,说明如何使用 BERT 正确格式化 NER 的数据。从我发现的论文和评论中,我并不完全清楚。

假设我们有以下句子和标签:

sent = "John Johanson lives in Ramat Gan."
labels = ['B-PER', 'I-PER', 'O', 'O', 'B-LOC', 'I-LOC']

我们输入到模型的数据会是这样的吗:

sent = ['[CLS]', 'john', 'johan',  '##son', 'lives',  'in', 'ramat', 'gan', '.', '[SEP]']
labels = ['O', 'B-PER', 'I-PER', 'I-PER', 'O', 'O', 'B-LOC', 'I-LOC', 'O', 'O']
attention_mask = [0, 1, 1, 1, 1, 1, 1, 1, 1, 0]
sentence_id = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

?

谢谢你!


2021-08-27 更新:教程链接指向旧版教程,我不再完全推荐该教程,因为它不使用 Huggingface 的便利库datasets.

实际上有很棒的教程 https://github.com/huggingface/transformers/tree/master/examples/legacy/token-classification有关huggingface 文档页面上的 NER 示例。具体来说,它还详细介绍了如何提供的脚本 https://github.com/huggingface/transformers/blob/master/examples/pytorch/token-classification/run_ner.py进行预处理。具体来说,有一个外部贡献者的链接preprocess.py脚本,基本上将 CoNLL 2003 格式的数据转换为 Huggingface 库所需的任何格式。我发现这是断言我具有正确格式的最简单方法,除非您有一些可能想要合并的特定更改,否则这可以让您快速入门,而无需担心实现细节。

链接的示例脚本还提供了有关如何将相应输入输入到模型本身的足够详细信息,但一般来说,您的上述输入模式是正确的。

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

BERT 中 NER 的正确格式化数据应该是什么样子? 的相关文章

  • 判断线程是否已经启动

    如何判断Python线程是否已经启动 有一个方法is alive 但这是真的before and while一个线程正在运行 你可以看看ident领域的Thread实例 这Python 2 7 线程文档 http docs python o
  • 如何在groupby之后将pandas数据框拆分为许多列

    我希望能够在 pandas 中使用 groupby 按列对数据进行分组 然后将其拆分 以便每个组都是数据框中自己的列 e g time data 0 1 2 0 1 2 3 0 2 3 4 0 3 1 2 1 4 2 3 1 5 3 4 1
  • 如何 json_normalize() df 中的特定字段并保留其他列? [复制]

    这个问题在这里已经有答案了 这是我的简单示例 我的实际数据集中的 json 字段非常嵌套 因此我一次解压一层 我需要在 json normalize 之后保留数据集上的某些列 https pandas pydata org docs ref
  • DataFrame 中的字符串,但 dtype 是对象

    为什么 Pandas 告诉我我有对象 尽管所选列中的每个项目都是一个字符串 即使在显式转换之后也是如此 这是我的数据框
  • 对打开文件的脚本进行单元测试

    我编写了一个脚本 它打开一个文件 读取内容并进行一些操作和计算 并将它们存储在集合和字典中 我该如何为这样的事情编写单元测试 我的问题具体是 我会测试文件是否打开 文件很大 这是unix字典文件 我如何对计算进行单元测试 我真的必须手动计算
  • multiprocessing.freeze_support()

    为什么多处理模块需要调用特定的function http docs python org dev library multiprocessing html multiprocessing freeze support在被 冻结 以生成 Wi
  • 远程控制或脚本打开 Office 从 Python 编辑 Word 文档

    我想 最好在 Windows 上 在特定文档上启动 Open Office 搜索固定字符串并将其替换为我的程序选择的另一个字符串 我该如何从外部 Python 程序中做到这一点 OLE 什么 原生 Python 脚本解决方案 The doc
  • pandas 两个数据框交叉连接[重复]

    这个问题在这里已经有答案了 我找不到有关交叉联接的任何内容 包括合并 联接或其他一些内容 我需要使用 my function 作为 myfunc 处理两个数据帧 相当于 for itemA in df1 iterrows for itemB
  • 在 Windows 上将 Word2vec 与 Tensorflow 结合使用

    In 本教程文件 https github com tensorflow models blob master tutorials embedding word2vec py L45通过 Tensorflow 找到以下行 第 45 行 来加
  • 如何检查包含 NaN 的列表 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 在我的 for 循环中 我的代码生成一个如下所示的列表 list 0 0 0 0 sum 0 0 0 0 该循环生成所有其他数字向量 但它也
  • 如何像在浏览器中一样检索准确的 HTML

    我正在使用 Python 脚本来呈现网页并检索其 HTML 它适用于大多数页面 但对于其中一些页面 检索到的 HTML 不完整 我不太明白为什么 这是我用来废弃此页面的脚本 由于某种原因 每个产品的链接不在 HTML 中 Link http
  • 如何在 Keras 中使用部分输入进行训练,其余部分用于损失函数

    我是 Keras 新手 正在尝试实现神经网络机器学习模型 输入张量看起来像 X1 X2 和输出 Y 注意 X1 和 X2 是相关的 在模型中 只有 X1 将用于训练 但 X1 和 X2 都将传递给损失函数 该损失函数是 X1 X2 y pr
  • 如何使用注释和聚合在 Django 的 ORM 中执行此 GROUP BY 查询

    我真的不知道如何翻译GROUP BY and HAVING到姜戈的QuerySet annotate and QuerySet aggregate 我正在尝试将这个 SQL 查询转换为 ORM 语言 SELECT EXTRACT year
  • Docker 日志中的 Python 异常标记为流:stdout

    我想解析和处理来自 docker 容器的所有错误 但当我期望 stderr 时 Python 异常标记为 stdout 举个简单的例子app py raise Exception 然后我在 docker 容器中运行这个文件 但在 var l
  • django如何将字符串转换为模块?

    我试图了解 django 的另一个神奇之处 它可以将字符串转换为模块 In settings py INSTALLED APPS声明如下 INSTALLED APPS django contrib auth django contrib c
  • python csv按列转换为字典

    是否可以将 csv 文件中的数据读取到字典中 使得列的第一行是键 同一列的其余行构成列表的值 例如 我有一个 csv 文件 strings numbers colors string1 1 blue string2 2 red string
  • DRF:以编程方式从 TextChoices 字段获取默认选择

    我们的网站是 Vue 前端 DRF 后端 在一个serializer validate 方法 我需要以编程方式确定哪个选项TextChoices类已被指定为模型字段的默认值 TextChoices 类 缩写示例 class PaymentM
  • Windows 与 Linux 文本文件读取

    问题是 我最近从 Windows 切换到 Ubuntu 我的一些用于分析数据文件的 python 脚本给了我错误 我不确定如何正确解决 我当前仪器的数据文件输出如下 Header 有关仪器等的各种信息 Data 状态 代码 温度 字段等 0
  • scrapy python 请求未定义

    我在这里找到了答案 code for site in sites Link site xpath a href extract CompleteLink urlparse urljoin response url Link yield Re
  • 使用Python重命名目录中的多个文件

    我正在尝试使用以下 Python 脚本重命名目录中的多个文件 import os path Users myName Desktop directory files os listdir path i 1 for file in files

随机推荐

  • jquery.get() - 使用数据作为全局变量的问题

    好吧 我在网上读了很多资料 但仍然没有找到解决我的问题的方法 我需要使用 jquery 方法 get 检查文件的内容是 nok 还是空 我尝试过的事情之一 当然不起作用 但清楚地表明了我的想法 是 document ready functi
  • tabControl 中的关闭按钮

    有没有人可以告诉我如何在 C 中使用 tabControl 在每个选项卡中添加关闭按钮 我计划使用按钮 pic 来替换我的选项卡中的 x 谢谢 无需派生类 这里有一个简洁的片段 http www dotnetthoughts net imp
  • 如何获取 AMP 网站上的查询字符串值?

    有没有办法从 AMP HTML 网站检索查询字符串值并将它们存储在 cookie 中或在链接中使用它们 Example 用户点击广告www example com amp foo bar 打开 AMP 网站 点击链接即可结帐 不是 AMPw
  • HTML 客户端可移植文件生成 - 无需外部资源或服务器调用

    我有以下情况 我在公司内部服务器上设置了一系列 Cron 作业来运行各种旨在检查数据完整性的 PHP 脚本 每个 PHP 脚本都会查询公司数据库 将返回的查询数据格式化为包含一个或多个
  • 如何在“expect script”中启动shell脚本?

    在这个expect脚本中 不会连接ssh服务器 我只想在本地执行一个 sh 文件 这可能吗 例如 bin expect command xxx sh a command which starts a certain shell script
  • 如何将 varchar 转换/转换为日期?

    我有一个数据类型的日期列varchar mm dd yyyy 在 MySQL 5 1 中 如何将其转换为 DATE 这是我到目前为止所拥有的 SELECT id date FROM tableName WHERE CAST SUBSTRIN
  • 画布圆圈看起来模糊

    这是对一些过时或不同问题的更新 例如 画布上的绘图和线条一样模糊 https stackoverflow com questions 8696631 canvas drawings like lines are blurry 如何修复 HT
  • 如何防止我的应用程序出现多个实例

    我发现了 Visual Basic 中的一个错误 在实践中 完成我的应用程序后 单击正常启动的可执行文件 但如果我再次单击可执行文件 exe 会莫名其妙地打开第二个窗口 不必要地启动两个进程 我想知道是否有一种方法 也许在某些设置中 仅当您
  • Google Sheet 插件 onInstall() 和 onOpen() 不起作用

    我正在尝试为 Google Sheets 创建一个附加组件 但运行时出现问题 该附加组件使用以下命令在 附加组件 菜单中创建附加菜单onOpen Google Drive API 的功能 但它不这样做onInstall 所以我被告知添加以下
  • Chrome 的词典自动完成扩展? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我尝试用谷歌搜索这个 但我没有任何运气 chrome 有拼写自动完成扩展吗 就像在 Eclipse 中输入时一样 System out pri 然后
  • WSDL 函数具有相同的名称。如何选择呢?

    我将提供程序 wsdl 与 SoapClient 一起使用 但是当我使用命令 getFunctions 时 我得到如下内容 method1Rsp service method1Req parameters method2Rsp servic
  • Django 和动态生成的图像

    我的 Django 应用程序中有一个视图 它使用 PIL 自动创建图像 将其存储在 Nginx 媒体服务器中 并返回一个带有指向其 url 的 img 标签的 html 模板 这工作正常 但我注意到一个问题 我每访问此视图 5 次 其中就有
  • 在主题内扩展 Magento 小部件布局

    我使用 Magento 2 的内置目录产品列表小部件将特色产品小部件添加到网站的主页 我希望做的是扩展在中找到的小部件的布局文件vendor magento module catolog widget etc widget xml这样我就可
  • 对于简单到中等复杂度的新项目,我应该选择 MvvmLight 还是 MvvmCross? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我试图找到 MVVMlight 和 MVVMCrossthose 框架之间的主要区别 我计划为 Android 和 Windows Phone
  • 如何将树的结果传递或通过管道传输到Powershell?

    如何通过文件数组找到tree 有人居住吗 posh gt posh gt tree Get Item Directory home nicholas powershell Mode LastWriteTime Length Name d 2
  • css 文件中字体的相对文件路径

    我有一个在标题中引用的样式表 除了以下特定代码之外 所有 css 都可以在其中运行 font face font family icomoon src url fonts icomoon eot hsw0h3 src url fonts i
  • NSDateFormatter 具有自定义格式的相对日期格式

    所以我的目的是列出如下所示的日期 Today August 28 Tomorrow August 29 Friday August 30 etc 问题是我似乎只能如此接近 When I setDoesRelativeDateFormatti
  • Google_Service_OAuth2 是 PHP 中的“未定义类型”

    我正在尝试使用 Google Sign in 登录 但它显示 Google Service OAuth2 为未定义类型 我找到了这个堆栈帖子 Google Service Oauth2 未定义 https stackoverflow com
  • Spark 中的分区和分桶有什么区别?

    我尝试优化两个 Spark 数据帧之间的联接查询 我们称它们为 df1 df2 在公共列 SaleId 上联接 df1非常小 5M 所以我在spark集群的节点之间广播它 df2 非常大 200M 行 所以我尝试通过 SaleId 对其进行
  • BERT 中 NER 的正确格式化数据应该是什么样子?

    我正在使用 Huggingface 的transformers库并希望使用 BERT 执行 NER 我试图找到一个明确的示例 说明如何使用 BERT 正确格式化 NER 的数据 从我发现的论文和评论中 我并不完全清楚 假设我们有以下句子和标