当前位置 博文首页 > 贝塔与 π的博客:命名实体识别

    贝塔与 π的博客:命名实体识别

    作者:[db:作者] 时间:2021-09-11 16:56

    命名实体识别

    1. 概念

    NER 是 NLP 中一项基本任务,就是从文本中识别出命名性指称项,为关系抽取等任务做铺垫,在信息抽取、信息检索、机器翻译、问答系统等多种自然语言处理技术中必不可少的组成部分。

    命名实体识别研究的命名实体一般分为 3 大类(实体类、时间类、数字类)和 7 小类(人名、地名、组织机构名、时间、日期、货币和百分比)。由于时间、日期、货币等实体构成的规律比较明显,其实体类型识别通常可以采用模式匹配的方式获得比较好的识别效果,所以,相较而言,人名、地名、机构名较复杂,目前的研究主要以这几种实体为主。

    2. 中文命名实体识别

    NER 的效果评判主要是看实体的边界是否划分正确以及实体的类型是否标注正确。相对于英文 NER ,中文 NER 有以下难点:
    (1)不像英文有明显的实体边界;
    (2)各类命名实体的数量众多。如人名大多属于未登录词;
    (3)命名实体的构成规律复杂。如中文人名识别可以细分为中国人名识别、音译人名识别等;另外,机构名的组成方式最复杂,种类繁多,规律不统一。
    (4)嵌套情况复杂。如人名中嵌套着地名,地名中嵌套着人名、机构名。
    (5)长度不确定。相对于人名、地方,机构名的长度和边界更难以识别,中国人名一般为2-4字,常用地方也大多为2-4字,但机构名长度变化范围极大。

    3. 命名实体识别的主要三种方法:

    1. 基于规则的命名实体识别:
      利用手工构造规则模板,选用特征包括统计信息、标点符号、关键字、指示词和方向词、位置词(如尾字)、中心词等方法,结合命名实体库,对每条规则进行权重赋值,然后通过实体与规则的相符情况来进行类型判断,即:将文本与规则进行匹配来识别出命名实体。例如,对于中文来说,“说”、“老师”等词语可作为人名的下文,“大学”、“医院”等词语可以作为组织机构名的结尾,还可以利用到词性、句法信息。
      当提取的规则能够较好地反映语言现象时,该方法能明显优于其他方法。但在大多数场景下,在构建规则的过程中往往需要大量的语言学知识,不同语言的识别规则不尽相同。规则的构建往往依赖于具体语言、领域和文本风格,其构建规则过程耗时且难以覆盖所有的语言现象,可移植性差、更新维护困难等。

    2. 基于统计的命名实体识别:
      目前常用的基于统计机器学习的命名实体识别方法有:隐马尔可夫模型(HMM)、最大熵模型(ME)、支持向量机(SVM)、条件随机场(CRF)等。其主要思想是:基于人工标注的大量语料,将命名实体识别作为序列标注问题,利用语料来学习标注模型,从而对句子的各个位置进行标注。

    3. 混合方法:
      自然语言处理并不完全是一个随机的过程,单独使用基于规则的方法,状态搜索空间大,必须要借助规则提前进行过滤修剪处理。目前没有单独使用统计模型而不使用规则知识的命名实体识别系统,很多情况下是使用规则和统计结合的混合方法。

      目前主流的方法是序列标注方式,即特征模板 +CRF 。

    4. 基于条件随机场的命名实体识别

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

    【 HMM 将分词作为字标注问题来解决,其中有两条非常经典的独立性假设:
    (1)观测独立性假设:任意时刻的观测只依赖于该时刻的马尔可夫链的状态。即:输出观察值之间严格独立。
    (2)齐次马尔可夫假设:每个输出仅仅与上一个输出有关。即:状态的转移过程中当前状态只与前一时刻的状态有关,与其他时刻无关(一阶马尔可夫模型)(相当于1-gram)。

    针对假设(2),提出了条件随机场算法,使得每个状态不止与他前面的状态有关,还与他后面的状态有关。】

    4.1 CRF的定义

    1.先看一张概率图模型架构图

    CRF上面是马尔可夫随机场(马尔可夫网络),而CRF是在给定的随机变量 X X X(具体,对应观测序列 o 1 , ? ? ? , o i o_1,···,o_i o1?,???,oi?)条件下,随机变量 Y Y Y(具体,对应隐状态序列 i 1 , ? ? ? , i i i_1,···,i_i i1?,???,ii?)的马尔可夫随机场。

    广义的CRF定义如下:

    X = ( X 1 , X 2 , X 3 , ? ? ? , X n ) X=(X_1,X_2,X_3,···,X_n) X=(X1?,X2?,X3?,???,Xn?) Y = ( Y 1 , Y 2 , Y 3 , … , Y m ) Y=(Y_1,Y_2,Y_3,…,Y_m) Y=(Y1?,Y2?,Y3?,,Ym?)是联合随机变量,若随机变量 Y Y Y构成一个无向图 G = ( V , E ) G=(V,E) G=(V,E)表示的马尔可夫模型,则其条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)称为条件随机场(Conditional Random Field,CRF),即:
    P ( Y v ∣ X , Y w , w ≠ v ) = P ( Y v ∣ X , Y w , w ? v ) P(Y_v |X,Y_w,w≠v)=P(Y_v |X,Y_w,w~v) P(Yv?X,Yw?,w??=v)=P(Yv?X,Yw?,w?v)
    对于任何节点v都成立,其中w~v表示图 G = ( V , E ) G=(V,E) G=(V,E)中与结点 v v v有边连接的所有节点 w w w w ≠ v w≠v w??=v表示除结点 v v v以外的所有节点 w w w。也就是说,对于点 v v