目录

中文语音的机器处理

汉语语言学的研究

未登录词识别

概率图模型

信息熵

互信息

联合熵

条件熵

统计语言模型

隐马尔科夫模型

Viterbi算法

最大熵模型

最大熵原理

GIS实现

条件随机场模型

概念:

线性链条件随机场

不同模型的比较与总结

词性、语块和命名实体识别

词性

语块

命名实体识别

句法理论和自动分析

理论基础

句法分析

PCFG短语结构

NLP中的深度学习

LSMT

信息的筛选

新信息的存放

更新状态

输出

损失函数


中文语音的机器处理

交集型切分歧义:汉字串AJB满足AJ、JB同时为词,此时J称为交集串。

组合型切分歧义:汉字串AB满足A、B、AB同时为词。

规律:一个词汇的出现于其上下文环境中出现的词汇序列存在紧密的关系。

文本中第n个词的出现于其前后n-m到n+m个词有高度相关性,我们把[-m,m]称为窗口范围。

汉语语言学的研究

未登录词识别

大约九成是专有名词,其余为通用新词和专业术语。

在NLP研究中,通常将专有名词和数字、日期等称为命名实体。

概率图模型

信息熵

对平均不确定性的度量。约定0log(1/0) = 0。一般而言,log以2为底,熵的单位是比特。

  • H(X)>=0
  • H(X)<=log|X|,当且仅当X的所有取值x有P(X=x) = 1/|X|等号成立。

互信息

联合熵

借助联合概率分布对熵的自然推广。

条件熵

利用条件概率分布对熵的延伸。

两个随机变量相互独立 <=> 两者互信息为0.

两种模型的区别和联系

统计语言模型

计算句子中某种语言模式出现概率的统计模型。

实际应用中一般取用n=3的三元模型。

隐马尔科夫模型

缺点:随着矩阵的增大,计算量将急剧增大。

Viterbi算法

最大熵模型

一个单独的词可以用k种词性,所有词性出现的概率总和需为1。按照最大熵原理,在没有任何约束条件的情况下,尽可能将概率均匀地分配。也可以引入一大批语料,记录下其中某几个词性的统计结果,作为约束条件。

特征(feature)是(x,y)的二维函数;约束(constraint)是一个等式,即模型的特征期望值等于样本中训练函数的期望值。

最大熵原理

GIS实现

最大熵模型中比较容易实现的算法。

步骤:

条件随机场模型

概念:

团:无向图G的某个子图S,若S中的任何两个节点均有边,则S称为G的团。

最大团:若C是G的一个团,并且不能再加入任何一个G的节点使之成为团,则C是G的最大团。(注意这里最大团与C中拥有的节点数无关)

无向图的因子分解:对于一个无向图而言,其联合分布可以表示成最大团上的随机变量函数的乘积形式。

线性链条件随机场

变形的来由:Y=a*X1*X2*...*Xn(正函数)可以写作Y=exp(log(a) + log(X1) + log(X2) + ... + log(Xn))。参数Xi之间的相乘关系变为相加,便于推导。

不同模型的比较与总结

隐马尔可夫模型(Hidden Markov Model,HMM),最大熵马尔可夫模型(Maximum Entropy Markov Model,MEMM)以及条件随机场(Conditional Random Field,CRF)是序列标注中最常用也是最基本的三个模型。HMM首先出现,MEMM其次,CRF最后。

三个算法主要思想如下:HMM模型是对转移概率和表现概率直接建模,统计共现概率。MEMM模型是对转移概率和表现概率建立联合概率,统计时统计的是条件概率,但MEMM容易陷入局部最优,是因为MEMM只在局部做归一化。CRF模型中,统计了全局概率,在 做归一化时,考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置(label bias)的问题。

举个例子,对于一个标注任务,“我爱北京天安门“, 标注为” s s  b  e b c e”。

对于HMM的话,其判断这个标注成立的概率为 P= P(s转移到s)*P(‘我’表现为s)* P(s转移到b)*P(‘爱’表现为s)* …*P()。训练时,要统计状态转移概率矩阵和表现矩阵。

对于MEMM的话,其判断这个标注成立的概率为 P= P(s转移到s|’我’表现为s)*P(‘我’表现为s)* P(s转移到b|’爱’表现为s)*P(‘爱’表现为s)*..训练时,要统计条件状态转移概率矩阵和表现矩阵。

对于CRF的话,其判断这个标注成立的概率为 P= F(s转移到s, ’我’表现为s)….F为一个函数,是在全局范围统计归一化的概率而不是像MEMM在局部统计归一化的概率。当前,最后出现的CRF在多项任务上达到了统治级的表现,所以如果重头搞应用的话,大家可以首选CRF。

本质上,CRF有以下三个优点:

  1. CRF没有HMM那样严格的独立性假设条件,因而可以容纳任意的上下文信息。特征设计灵活(与ME一样) ————与HMM比较
  2. 同时,由于CRF计算全局最优输出节点的条件概率,它还克服了最大熵马尔可夫模型标记偏置(Label-bias)的缺点。 ­­————与MEMM比较
  3. CRF是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。

凡事都有两面,正由于这些优点,CRF需要训练的参数更多,与MEMM和HMM相比,它存在训练代价大、复杂度高的缺点。

词性、语块和命名实体识别

词性

汉语缺乏形态变化,无法从词的形态变化判断词性。另外汉语常用词的兼类现象严重,占总词频比例高。

因此,汉语的词性标注主要任务与分词差别不大,主要是消除歧义。

语块

定义:句内的非递归核心成分。

常用领域:知识库的实体关系抽取。

命名实体识别

定义:识别人名、地名、机构名称、日期、时间、百分数、货币。

常用领域:信息检索、机器翻译、问答系统。

句法理论和自动分析

理论基础

推导树和依存树。

NLTK生成推导树:

# -*- coding: utf-8 -*-
import sys, os
import nltk
from nltk.corpus import treebank
from nltk.tree import Tree
# from treelib import *reload(sys)  # 设置 UTF-8输出环境
sys.setdefaultencoding('utf-8')sent = "(IP (NP (NR 张帅)) (VP (VV 参加)(AS 了) (NP (NN 会议))))"
tree = Tree.fromstring(sent)
tree.draw()

注意在调用Tree.fromstring方法的时候,括号内的字符串分割需要为英文括号(当然也可以通过修改参数的方式改变)。

依存树:

LTP的树状图不仅能给出树状图,还可以给出依存关系。依存树上链接词汇的每条弧代表了词汇间的支配和从属关系。

句法分析

PCFG短语结构

基于概率的短语结构分析,Probabilistic CFG。

1. 给定句子W和PCFG G, 如何快速计算P(W|G)?

内向算法

外向算法

2. 如何找出最佳句法树

Viterbi算法

3. 如何估计参数G,使得P(W|G)最大?

EM算法

NLP中的深度学习

LSMT

RNN的变种,通过对循环层的刻意实际来避免长期依赖和梯度消失等问题。

信息的筛选

由sigmoid完成的忘记门

通过传入,使用sigmoid函数输出0或者1。

新信息的存放

其中的sigmoid函数被称为输入门。

更新状态

输出

损失函数

参考:

  • 《NLP自然语言处理原理与实践》,郑捷
  • 百度回答https://know.baidu.com/question/c9c8b81854d213df494fbcdc7dda42a27a0aed3,沉夜孤星rjvaw8e3e5f

新手探索NLP(十五)——终章相关推荐

  1. 新手探索NLP(五)

    命名实体识别 简介 命名实体识别(NER)(也称为实体识别.实体分块和实体提取)是信息提取的一个子任务,旨在将文本中的命名实体定位并分类为预先定义的类别,如人员.组织.位置.时间表达式.数量.货币值. ...

  2. 新手探索NLP(六)——全文检索

    全文检索技术--Lucene的介绍 转载自https://blog.csdn.net/yerenyuan_pku/article/details/72582979 查看全文 http://www.ta ...

  3. 新手探索NLP(四)

    学习NLP需要一个比较系统的概要.所以理论上这个应该写在第一篇. [NLP的技术概貌] NLP里细分领域和技术实在太多,根据NLP的终极目标,大致可以分为自然语言理解(NLU)和自然语言生成(NLG) ...

  4. 新手探索NLP(三)

    目录 NLP语言模型 词的表示方法类型 1.词的独热表示one-hot representation 简介 不足 2. 词的分布式表示distributed representation 简介 建模类 ...

  5. 【OpenCV新手教程之十五】水漫金山:OpenCV漫水填充算法(Floodfill)

    本系列文章由@浅墨_毛星云 出品.转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/28261997 作者:毛星云(浅墨) ...

  6. 新手探索NLP(十二)——文本聚类

    简介 聚类又称群分析,是数据挖掘的一种重要的思想,聚类(Cluster)分析是由若干模式(Pattern)组成的,通常,模式是一个度量(Measurement)的向量,或者是多维空间中的一个点.聚类分 ...

  7. 新手探索NLP(十)——对话系统

    转载自知乎https://zhuanlan.zhihu.com/p/50095779 SLU 1. 简介 对话系统按功能来划分的话,分为闲聊型.任务型.知识问答型和推荐型.在不同类型的聊天系统中,NL ...

  8. 新手探索NLP(八)——序列标注

    转载自知乎https://zhuanlan.zhihu.com/p/50184092 NLP中的序列标注问题(隐马尔可夫HMM与条件随机场CRF) Introduction 序列标注问题(sequen ...

  9. 山海演武传·黄道·第一卷 雏龙惊蛰 第十五 ~ 十七章 紫气凌霄再生龙

    相传混沌初开,阴阳始列,分鸿蒙为清浊二气.轻清上浮者为天,质阳也.重浊下凝者为地,质阴也.清浊相混者为人,质兼有也.两气卓然独立,互不示下,各生一山相抗,以分清浊,以擎寰宇. 清气所凝者,至清至阳,无 ...

最新文章

  1. 通过BeanShell获取UUID并将参数传递给Jmeter
  2. Liunx下的日志清理shell脚本实战之日志备份
  3. Shell-实际业务操作03
  4. Javaweb基础——Servlet
  5. TempDB为什么要根据CPU数目来决定文件个数
  6. MySQL索引底层实现原理
  7. WordPress登陆插件Erphplogin Pro QQ登陆/微博/微信登录/弹窗登录
  8. python自动抓取论文_用python抓取某期刊最近5年发表的所有文章的关键词和摘要...
  9. 演讲(1)--演讲小故事
  10. Python如何从社交用户信息中寻找潜在客户?
  11. 从伪随机数的产生到高大上的蒙特卡洛算法(C语言实现)
  12. Matlab图形修饰之裁剪处理
  13. 基于S3C2440A的DM9000A的调试笔记
  14. 购物也能乐开花 淘宝搞笑评价集萃--2
  15. Adobe Photoshop CC 2019 精简版
  16. git 记住账号密码、忽略部分文件、合并分支、将远程分支拉取到本地
  17. 面试题之10亿正整数问题--完整解答
  18. oracle的 listagg() WITHIN GROUP () 函数使用
  19. 超兔指纹浏览器(TO12345)是什么?
  20. pubmedy安装不聊了_摆脱单身全靠这个比Pubmed还6的神器啦~

热门文章

  1. Spring Boot相关知识(二) Spring Boot项目启动的执行顺序和原理
  2. Spring MVC集成Spring Data Reids和Spring Session实现Session共享
  3. 《Docker容器:利用Kubernetes、Flannel、Cockpit和Atomic构建和部署》——2.2 容器式Linux系统的Docker配置...
  4. linux常见协议对应端口(后期补充)
  5. Centos配置终端的快捷键
  6. 教你如何反编译Android安装文件apk来偷窥源代码
  7. 3.C#中泛型类的进一步探讨
  8. 跨终端响应式页面设计入门
  9. openpose_net随机搜索网络源代码
  10. VC四种程序启动画面的制作方法