命名实体识别
依据为您领域定义的标签体系标注实体区间,需要时也支持嵌套与重叠实体。
- 标准类型与领域特有类型
- 嵌套与不连续区间
- 规范化为标准形式
- 读音与变体的关联
日语 NLP
命名实体识别、关系抽取、意图与主题分类、情感、自然语言推理与切分——标注时使用的是您流水线实际使用的分词器。
日语词与词之间没有空格。因此每一次区间标注都取决于一个必须有人来做的边界判断,而这个判断必须与下游的分词器一致,否则标签根本对不齐。
在英语里,"Toyota Motor Corporation" 显然是三个词,唯一的问题是实体从哪里开始、到哪里结束。在日语里,株式会社トヨタ自動車 是一串不间断的字符,而至少有四种都站得住脚的标注方式:含或不含 株式会社、含或不含 自動車、把整串当作一个实体,或者在长实体里再嵌套一个短的。
这些选择每一个都成立。真正要紧的是每次都做同一个选择、把它写下来,并且让它经得起与您模型所用分词器的对接——因为一个落在词元中间的区间边界,在 BIO 标注中无法表示,只能被悄悄挪动。
这就是我们在标注开始前先确定分词器与边界规则的原因,也是我们无论您要什么标签格式、底层一律标注字符偏移量的原因:这样数据日后可以重新分词,而不必重新标注。
要点速览
任务类型
区间类任务与文档类任务的失效方式不同,因此复核指标也不同。
依据为您领域定义的标签体系标注实体区间,需要时也支持嵌套与重叠实体。
实体之间如何关联——谁对谁做了什么、哪个值属于哪个字段、哪个从句修饰哪个词。
在语句或文档级别标注意图、主题、分流类别或策略标签,支持单标签或多标签。
在文档、句子或方面级别标注情感极性与情绪——而日语商务文本真正需要的正是最后一种。
蕴含、复述与语义相似度数据对,外加让评测集具备区分度的困难负样本。
日语特有问题
下面这四个问题,每个日语区间标注项目在头一个小时里都会碰到。
日语书写不带空格,所以区间边界是一次判断,而不是一次查表。不同的形态素分析器对同一个句子的切分方式不同,对齐到其中一种的标签,换一种就对不上了。
我们的处理方式 分析器与词典在项目启动阶段就定死,区间以字符偏移量存储,从而能在重新分词后依然成立,边界约定也配有实例说明。
株式会社 可以出现在公司名之前或之后,可以缩写为(株),也可以完全省略。它是否被包含在实体区间内,会改变下游每一次字符串匹配的结果。
我们的处理方式 一条统一的规则覆盖法人形式的前缀与后缀、缩写形式与括号变体,并在表层区间之外另行记录规范形式。
日语把名词直接串联而不加分隔——個人情報保護管理者 是一串包含至少三个有意义单元的字符。实体到哪里为止,是一个决定,不是一个事实。
我们的处理方式 规范会按实体类型规定采用最大区间还是最小区间策略,在两者确实都需要时才允许嵌套,而不是让每位标注员各自选择。
动词与形容词会发生词形变化,助词则直接附着在它所标记的词后面。把它们算进来或排除在外,会让整个语料的区间边界整体偏移一到两个字符。
我们的处理方式 词尾变化与附着助词按规则明确规定在区间内还是区间外,并由自动检查标出结束于词元内部的区间。
流程
大部分价值是在标注开始之前创造的,就体现在标签体系与边界规则上。
我们共同确定标签集、分析器与词典,以及区间的表示方式,让标注与它最终要进入的流水线相匹配。
先标注一小批样本,把您领域中真正有歧义的表达形式暴露出来。它们随后成为规范中的实例。
标注员各自独立标注同一批数据。边界与标签的一致性分开度量,因为二者出问题的原因不同。
量产标注加一遍复核,分歧以书面形式裁定,并直接回写到规范中。
数据随附字符偏移量与您选定的标签格式、标签体系版本号、各标签数量统计与质检报告。
交付
无论您采用哪种表层格式,字符偏移量都会一并提供,这样数据可以重新分词而不必重新标注。
| 任务 | 默认输出 | 也可提供 |
|---|---|---|
| 命名实体 | 带字符偏移量的 JSONL | CoNLL-U、BIO / BILOU、brat standoff |
| 关系与事件 | 带区间引用的 JSONL | brat standoff、自定义图结构 JSON |
| 分类 | JSONL 或 CSV | one-hot 或多标签矩阵 |
| 情感 | 带方面区间的 JSONL | CSV、逐句标签 |
| NLI 与相似度 | JSONL 数据对 | CSV、基准测试格式的 TSV |
质量
一个区间数据集完全可能标签准确率很高,边界却根本没法用。两者我们都度量。
常见问题
在界定日语区间标注项目范围时会出现的问题。
您的流水线用哪个,我们就用哪个——搭配 IPAdic 或 UniDic 的 MeCab、Sudachi、Juman++,或者您自有模型的子词分词器。我们在项目启动阶段就把它定死,因为区间边界只能对齐到一种切分方式;底层则存储字符偏移量,这样日后更换分析器只是一次重新导出,而不是重新标注。
可以,而且我们更愿意采用您的,而不是把我们的强加过去。我们会做的是先在样本上对它做压力测试:现有的标签体系通常有两三个类别在实操中会重叠,而在试点阶段发现这一点,比在五万条之后才发现要便宜得多。
这完全取决于任务。干净文本上界限分明的实体类型能很快达到很高的一致性;方面级情感与细粒度意图体系则不然,而声称能做到的项目,通常度量的是比它实际交付更容易的东西。我们会报告试点中每个标签的实际数值;如果某个类别达不到可用的一致性,我们会直说,并建议调整这个类别。
支持,前提是标签体系确实需要——日语的复合名词与组织名称是最常见的原因。嵌套规则会写进规范并自动校验,因为“允许嵌套但没有明确规定”是不一致的稳定来源。
可以。对大批量工作而言,修正模型输出效率很高,但要提醒的和别处一样:修正这一遍容易继承模型的盲区。我们会拿它与一份从零标注的样本做对比度量,让您知道它实际抓出了什么;至于评测集,我们一律从零标注。