当前位置:   article > 正文

NLP-词性标注_nlp词性标注算法

nlp词性标注算法

一序

   本文属于贪心NLP训练营学习笔记。

因为本节课需要用到numpy,所以前面老师插了几节Python,讲解下Python的基础语法与numpy的使用。

二 词性标注数学推导

   s就是一句话,拆成的单词都做了词性标注。

今天的主题主要有两部分,先从数学角度把这个公式推导出来,

  • 接下来分别要求解公式中的A、B(非句首的单词)、π(句首的单词)
  • 维特比算法实现

 

A: 因为一个单词可能有多个词性,比如study既可以当做动词又可以做名词。

   所以假设有N个词性,M个单词,是一个N*M的矩阵。(列就是词库)

  思路:就是从训练集按照词性去筛选单词,计算概率

π:就是句首的单词的概率。就是N个词性的数组。统计每个句首词性。

B:(状态转移) 从bygram模型来看,就是每个词性之后出现词性的概率(名词之后是动词的概率)。 是个词性N*N的矩阵。

三 维特比算法

先画出图矩阵:列是词性N=54,行是句子W1,W2....W t.

从中找出动态规划的状态转移过程:dp[i,j]=max() 截图右侧

要根据动态规划求解最大概率,也就是假设知道最后一个单词的词性,以此反推,看上一个单词是哪个词性最有可能。

因此,需要先填充一个N*T的数组(截图最下面)。

填充的过程是从头到尾,就是W1列,再算W2,...Wt.

时间复杂度:T*N*N

算法实现:

              

总体的模型:

核心内容,是维特比算法的动态规划的转移方程。

 

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号