CRF:NLP 的命名实体识别 Jieba

本文主要来介绍NLP中的命名实体识别。命名实体识别与中文分词、词性标注一样,也是NLP的一个基础任务,是信息抽取、信息检索、机器翻译、问答系统等多种NLP技术不可或缺的一部分。其目的是:识别语料中的人名、地名、组织机构名等命名实体。

随着命名实体数量的不断增加,一般不可能在词典中全部列出,由于命名实体的构成方法具有规律性,通常把对这些词的识别在任务中进行独立处理,称之为命名实体识别。NER一般分为3大类和7小类。

1.中文命名实体识别的难点

各类命名实体的数量众多。命名实体的构成规律复杂。比如人名的构成规则各有不同,中文人名识别又可以细分为中国人名识别、日本人名识别和音译人名识别等;再比如机构名的组成方式,机构名的种类繁多,各有独特的命名方式,用词也相当广泛,只有结尾用词相对集中。嵌套情况复杂。一个命名实体经常和一些词组合成一个嵌套的命名实体,人名中嵌套着地名,地名中也经常嵌套着人名。长度不确定。与其他类型的命名实体相比,长度和边界难以确定,使得机构名更难识别。中国人名一般二到四字,常用地名一般二到四字,但是机构名长度变化范围极大,少的只有两个字简称,多的达到几十个字的全称。2命名实体识别方式

加密货币经纪公司LondonLink通过Seedrs完成超50万英镑融资:金色财经报道,加密货币经纪公司LondonLink宣布通过众筹平台Seedrs完成了510,500英镑融资,目前已远超其最初设定的35万英镑融资目标。据悉,本次融资面向大型投资者,起投金额为2.5万英镑。LondonLink是一家规模较小的加密货币交易平台,但拥有直布罗陀注册的VAAP执照,主要提供加密资产管理、智能场外交易等服务。[2023/5/23 15:20:48]

中文分词中,主要有基于规则方法、基于统计方法和基于二者的混合方法。命名实体识别主要也包含这三种方法。

基于规则的命名实体识别:规则加词典是早期命名实体识别中最行之有效的方式。依赖手工规则,结合命名实体库,对每条规则进行权重赋值,然后通过实体与规则的相符情况来进行类型判断。基于统计的命名实体识别:与分词类似,目前主流的基于统计的命名实体识别方法有:隐马尔可夫模型、最大熵模型、条件随机场等。其主要思想是:基于人工标注的语料,将命名实体识别任务作为序列标注问题来解决。基于混合的命名实体识别:NLP并不完全是一个随机过程,单独使用基于统计的方法使状态搜索空间非常庞大,必须借助规则知识提前进行过滤修剪处理。目前几乎没有单纯使用统计模型而不使用规则知识的命名实体识别系统,在很多情况下是使用混合方法,结合规则和统计方法。序列标注方式是目前命名实体识别中的主流方法,下面重点介绍基于CRF条件随机场的方法。

元宇宙项目启动平台FireStarter集成Chainlink VRF,以确保公平分配奖励:10月16日消息,元宇宙项目Launchpad FireStarter宣布,已集成Chainlink可验证随机函数(VRF),以帮助确保在FireStarter Champion NFT持有者之间公平分配独家内容、NFT和其他平台利益。Hiro和FireStarter Metaverse Champions将帮助用户访问IMO融资过程的不同级别和社区福利。[2021/10/16 20:34:17]

3基于CRF的命名实体识别

条件随机场的主要思想来源于HMM,也是一种用来标记和切分序列化数据的统计模型。不同的是,条件随机场是在给定观察的标记序列下,计算整个标记序列的联合概率,而HMM是在给定当前状态下,定义下一个状态的分布。

Chainlink和世界经济论坛提出行业预言机标准:为了促进遗留系统与区块链技术的互操作性,Chainlink和世界经济论坛发表了一篇论文。题为“弥合治理差距:区块链和遗留系统的互操作性”,旨在作为一个框架来促进集成、加速开发,并鼓励采用“整体标准”,在遗留系统和区块链环境之间建立一座桥梁。该论文考虑的遗留基础设施中,提到了政府、机构、公司等。根据世界经济论坛的说法,这些实体可以创建新的用例,特别是增加用户对由区块链或基于分布式账本技术的系统保护的数据的信心。(Crypto News Flash)[2020/12/10 14:50:21]

条件随机场的定义为:假设X=(X1,X2,X3,…,Xn)和Y=(Y1,Y2,Y3,…,Ym)是联合随机变量,若随机变量Y构成一个无向图G=(V,E)表示的马尔可夫模型,则其条件概率分布P(Y|X)称为条件随机场,即:

bZx新预言机规划公布,最终将集成Chainlink、Band和Uniswap v2:曾受闪电贷攻击的去中心化贷款协议 bZx再次发文总结了发生在 2 月 17 日的攻击事件,并公开了对于调整集成的价格预言机的三步路线。第一阶段,bZx将采用Chainlink预言机作为bZx的参考价格,bZx认为目前Chainlink是目前市场中最佳的去中心化预言机解决方案;第二阶段,bZx将采用Chainlink和Band两个数据源,bZx认为Band的预言机地理位置更适合亚洲市场,这也能分散他们的预言机风险;第三阶段,bZx将采用Chainlink、Band和Uniswap v2作为预言机,将这三者的平均价格作为 bZx的参考价格,下一代的Uniswap的价格源将会提供以时间作为权重的价格数据,这也就意味着攻击和操纵会需要更多的成本和时间。(bzx.network)[2020/3/10]

P(Yv|X,Yw,w≠v)=P(Yv|X,Yw,w~v)

动态 | 印度Sapna Online成为第一家接受比特币支付的书店:据cryptoground报道,Sapna Online拥有50年的历史,是印度历史最长的书店之一。这家书店于2001年起开始在线销售图书,已成为第一家接受比特币支付的书店,比特币付款由印度数字货币交易所Unocoin处理。但是,由于印度政府最近对数字货币施加了限制,用户实际上已不能通过比特币付款。[2018/12/3]

其中w~v表示无向图G=(V,E)中与结点v有边连接的所有节点,w≠v表示结点v以外的所有节点。

例如:对句子“我来到陶家村”进行标注,正确标注后的结果为:我/O来/O到/O陶/B家/M村/E。采用线性链CRF来进行解决,那么是其一种标注序列,也是是其一种标注选择,类似的可选择的标注序列有很多,在NER任务中就是在这么多的可选标注序列中,找出最靠谱的作为句子的标注。

那么我们要解决的问题就是要判断标注序列是否靠谱。就刚才的两种标注方法,显然第一种比第二种更为准确,因为第二种将“陶”和“家”都作为地名首字标成了“B”,一个地名两个首字符,显然不合理。假如给每个标注序列打分,分值代表标注序列的靠谱程度,越高代表越靠谱,那么可以定一个规则,若在标注中出现连续两个“B”结构的标注序列,则给它低分。连续“B”结构打低分就对应一条特征函数。在CRF中,定义一个特征函数集合,然后使用这个特征函数集合为标注序列进行打分,据此选出最靠谱的标注序列,该序列的分值是通过特征函数集合得出的。

在CRF中有两种特征函数,分别为:转移函数tk(yi-1,yi,i)和状态函数sl(yi,X,i)。tk(yi-1,yi,i)依赖于当前和前一个位置,表示从标注序列中位置i-1的标记yi-1转移到位置i上的标记yi的概率。sl(yi,X,i)依赖当前位置,表示标记序列在位置i上为标记yi的概率。通常特征函数取值为1或0,表示符不符合该条规则约束。

4日期识别代码示例

应用场景:

现有一个智能外呼系统,由机器人拨打电话给客户,通知客户新股中签情况,客户与机器人进行对话。对话机器人根据用户的语音进行解析,发觉用户的需求,比如:新股中签的时间,新股买入的时间等。通过asr技术将用户的语音转换成中文文本,然后由于asr的识别准确度问题,许多日期类的数据并不是严格的数字,比如会出现“十一月12日”“2019年11月”“20191112”“后天下午”等形式。

现在的需求是识别出每个请求文本中可能的日期信息,并将其转换成统一的格式进行输出。比如:“我打算今天或明天买入新股”,那么通过日期解析后,应该输出为“2019-11-12”和“2019-11-13”。

通过结果分析可以看到,text1text2text3text4结果还是相对较好的,对于text5这种规则覆盖之外的场景,方法效果大大降低。

作者:KevinTao

知乎号:Kevin陶民泽

备注:转载请注明出处。

如发现错误,欢迎留言指正。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-0:500ms