条件随机场(CRF)——3 命名实体识别(NER)

news/2024/7/14 23:21:45 标签: 机器学习, 图论

条件随机场经常被用于序列标注,其中包括 词 性 标 注 , 分 词 , 命 名 实 体 识 别 \color{red}词性标注,分词,命名实体识别 等领域。(yes我会标红了)

1 NER任务介绍

NER更多介绍看这里

对以下NER任务,进行命名实体识别

我 去 北 京

其本质上就是一个序列标注任务,根据BIESO标注方案,可以对于每一个字进行打标签

序号标注含义
0B实体的开端
1I实体中间
2E实体的结尾
3S单个字作为实体
4O不作为任何实体

所以对于 我去北京 这句话进行实体识别,就是为了找到这样的标注:
在这里插入图片描述

2 CRF in NER

关于CRF原理

2.1定义特征函数

对于一个特征函数,需要接受四个参数:

  • 句子s(也就是输入的句子s)
  • i i i,句子s的第 i 个字
  • l i l_i li,标注序列中给第 i 个字的标注
  • l i − 1 l_{i-1} li1,标注序列中给第 i-1 个字的标注

其输出是0或者1,但符合这个特征就是1,反之则0。特征通常是自定义的,如下例子。
f 1 = 1 : 当 l i − 1 是 B − O R G f1=1:当l_{i-1}是B-ORG f1=1:li1BORG且i是“中”,可能中国的机构实体

可以使用CRF++,是具体实现CRF实体识别的一个工具,CRF++里的特征获取方式是通过特征模版匹配训练语料产生的,因此,扫描语料中的每一个词,循环匹配模板库中的每一个模版,将匹配到的特征加入到特征集,这样就构成了CRF的特征集。https://blog.csdn.net/qq_35014150/article/details/73826930

2.2 特征函数到概率

定义完一组特征函数之后,在对特征进行赋权,然后可以对这个标注序列进行评分。
在这里插入图片描述

  • 内层求和函数:句子s中每个字的对于特征值 f j f_j fj的和
  • 外层求和函数:所有特征函数 f j f_j fj的和。

2.3 指数化和归一化

对这个分数进行指数化和标准化,我们就可以得到标注序列l的概率值 p ( l ∣ s ) p(l|s) p(ls)

在这里插入图片描述
这样,一个CRF就建立完成了。通过维特比算法,寻找概率最大的标注序列,即完成预测过程。


http://www.niftyadmin.cn/n/948412.html

相关文章

关系抽取——Snowball(半监督学习)总结

本文主要参考2000年的Snowball提出论文 半监督学习又称弱监督学习,利用模型的假设,对少量的数据进行标注(freebase),在不足的条件下提高模型在标记样本中的泛化能力,未标记的数据为Corpus text。 在论述S…

关系抽取方法总结(基于规则-传统机器学习-深度学习)

信息抽取——命名实体识别 文章目录1 关系抽取介绍2 基于规则的关系抽取算法2.1 基于触发词 (基于模式)2.2 基于依存关系(语法树)2.3 基于规则的RE优缺点3 基于机器学习的RE方法3.1 监督学习3.1.1基于特征向量3.1.2 基于核函数3.3…

通俗易懂方差(Variance)和偏差(Bias)

看了沐神的讲解,恍然大悟,b站可以不刷,但沐神一定要看。 在统计模型中,通过方差和偏差来衡量一个模型。 1 方差和偏差的概念 偏差(Bias):预测值和真实值之间的误差 方差(Variance&…

Dataframe 常用操作手册

官方文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.dtypes.html 文章目录1 df的构造1.1 读取excel.csv1.2 字典/series转df1.3 多个df操作1.4 df 属性值df.info()df.head(5)df.indexdf.columnsdf.shapedf.describe()df.items(…

ARMA,ARIMA,SARIMA时序数据预测(附代码讲解)

1 背景 1.1 AR模型 AutoRegress,AR,自回归模型,描述当前值和历史数据的关系,利用历史数据进行预测。AR模型必须满足平稳性。p阶自回归方程的定义为: ytu∑i1priyt−iϵty_tu\sum_{i1}^{p}r_iy_{t-i}\epsilon_tyt​ui1∑p​ri​yt−i​ϵt​…

数据集打乱顺序代码(自定义shuffle)

直接可以用 def Shuffle(self, x, y,randomNone, intint):"""x, randomrandom.random -> shuffle list x in place; return None.Optional arg random is a 0-argument function returning a randomfloat in [0.0, 1.0); by default, the standard random.r…

jupyter notebook 服务挂掉解决办法

import os os.environ[KMP_DUPLICATE_LIB_OK] TRUE

word里面公式自动编号和按章节自动编号

众所周知,word里面实现公式的排版,确实是一件很难的事情。 传统做法就是通过公式的居中,然后手写编号,不断地进行enter空格键来实现编号对齐右侧。 这种做法即使浪费了大量的时间经理也仅仅实现了人眼上的对齐和居中&#xff0c…