【总结】自然语言处理(NLP)算法:概述与分类

摘要:NLP概述。主要参考自然语言处理(NLP)知识结构总结和知乎上的一些问答。
目录

    • NLP界神级人物
    • NLP知识结构
      • 1.概述
      • 2.形式语言与自动机
      • 3.语言模型
      • 4.概率图模型,生成模型与判别模型,贝叶斯网络,马尔科夫链与隐马尔科夫模型(HMM)
      • 5.马尔科夫网,最大熵模型,条件随机场(CRF)
      • 6.命名实体 识别,词性标注,内容挖掘、语义分析与篇章分析(大量用到前面的算法)
      • 7.句法分析
      • 8.文本分类,情感分析
      • 9.信息检索,搜索引擎及其原理
      • 10.自动文摘与信息抽取,机器翻译,问答系统
      • 11.深度学习在自然语言中的应用
    • NLP用于征信
    • 参考资料

NLP界神级人物

Michael Colins(CU), Jason Eisner(JHU),David Yarowsky (JHU),Chris Manning,Dekang Lin(奇点机智)

  • Michael Colins,英国人,哥伦比亚大学教授。研究领域包括parse re-ranking,tree kernels,semi-supervised learning,machine translation 和 exponentiated gradient algorithms。collins/eisner对NLP结构学习领域贡献极大,研究parsing并一战成名。
    http://www.cs.columbia.edu/~mcollins/

    非常喜欢 Michael Collins, 认为他写的paper看得最舒服最爽,犹如沐浴于樱花之中。Jason Eisner确实是厉害,不过看他paper实在太难看懂,写的语言非常抽象,我等屌丝实在难以深入理解。 经过Collins大侠的一些paper才能对Eisner的paper妙语进行理解。https://www.zhihu.com/question/32318281

  • Jason Eisner (JHU),约翰霍普金斯大学。

    http://www.cs.jhu.edu/~jason/

  • David Yarowsky (JHU),yarowsky早年研究词义消歧,是著名的yarowsky algorithm的作者,后来做了很多跨语言学习的开创性工作。

    http://www.cs.jhu.edu/~yarowsky/

  • Stanford NLP掌门Chris Manning,以《统计自然语言处理基础》一书以及Stanford NLP (toolkit) 而闻名。Dan Jurafsky,著有《语音与语言处理》一书,具有深厚的语言学背景。稍微提一下Manning的学生Richard Socher,近几年声名鹊起,在dl4nlp领域风头一时无两,属年轻一代翘楚。

  • Dekang Lin,林德康老师,前Google高级管理科学家(senior staff research scientist),在加入Google之前是加拿大Alberta大学计算机教授,发表过逾90篇论文、被引用超过12000次,目前做了一家NLP相关的创业公司奇点机智。

NLP知识结构

1.概述

1)自然语言处理:利用计算机为工具,对书面实行或者口头形式进行各种各样的处理和加工的技术,是研究人与人交际中以及人与计算机交际中的演员问题的一门学科,是人工智能的主要内容。

2)自然语言处理是研究语言能力和语言应用的模型,建立计算机(算法)框架来实现这样的语言模型,并完善、评测、最终用于设计各种实用系统。

3)研究问题(主要)

信息检索
机器翻译
文档分类
问答系统
信息过滤
自动文摘
信息抽取
文本挖掘
舆情分析
机器写作
语音识别

4)困难所在

场景的困难:语言的多样性、多变性、歧义性 学习的困难:艰难的数学模型(hmm,crf,EM,深度学习等) 语料的困难:什么的语料?语料的作用?如何获取语料?

2.形式语言与自动机

1)语言:按照一定规律构成的句子或者字符串的有限或者无限的集合

2)描述语言的三种途径:

穷举法

文法(产生式系统)描述

自动机

3)自然语言不是人为设计而是自然进化的,形式语言比如:运算符号、化学分子式、编程语言,主要研究内部结构模式这类语言的纯粹的语法领域,从语言学而来,作为一种理解自然语言的句法规律,在计算机科学中,形式语言通常作为定义编程和语法结构的基础。

4)形式语言与自动机基础知识:

集合论

图论

5)自动机的应用:

  1. 单词自动查错纠正
  2. 词性消歧(什么是词性?什么的词性标注?为什么需要标注?如何标注?)

6)形式语言的缺陷:

  1. 对于像汉语,英语这样的大型自然语言系统,难以构造精确的文法
  2. 不符合人类学习语言的习惯
  3. 有些句子语法正确,但在语义上却不可能,形式语言无法排出这些句子
  4. 解决方向:基于大量语料,采用统计学手段建立模型

3.语言模型

1)语言模型(重要):通过语料计算某个句子出现的概率(概率表示),常用的有2-元模型,3-元模型

2)语言模型应用:

语音识别歧义消除例如,给定拼音串:ta shi yan yan jiu saun fa de

可能的汉字串:踏实烟酒算法的 他是研究酸法的 他是研究算法的,显然,最后一句才符合。

3)语言模型的启示:

  1. 开启自然语言处理的统计方法

  2. 统计方法的一般步骤:

    • 收集大量语料
    • 对语料进行统计分析,得出知识
    • 针对场景建立算法模型
    • 解释和应用结果

4)语言模型性能评价,包括评价目标,评价的难点,常用指标(交叉熵,困惑度)

5)数据平滑:

  • 数据平滑的概念,为什么需要平滑
  • 平滑的方法,加一法,加法平滑法,古德-图灵法,J-M法,Katz平滑法等

    6)语言模型的缺陷

  • 语料来自不同的领域,而语言模型对文本类型、主题等十分敏感

  • n与相邻的n-1个词相关,假设不是很成立。

4.概率图模型,生成模型与判别模型,贝叶斯网络,马尔科夫链与隐马尔科夫模型(HMM)

1)概率图模型概述(什么的概率图模型,参考清华大学教材《概率图模型》)

2)马尔科夫过程(定义,理解)

3)隐马尔科夫过程(定义,理解)

  • HMM的三个基本问题(定义,解法,应用)

注:第一个问题,涉及最大似然估计法,第二个问题涉及EM算法,第三个问题涉及维特比算法,内容很多,要重点理解

5.马尔科夫网,最大熵模型,条件随机场(CRF)

1)HMM的三个基本问题的参数估计与计算
2)什么是熵
3)EM算法(应用十分广泛,好好理解)
4)HMM的应用
5)层次化马尔科夫模型与马尔科夫网络

提出原因,HMM存在两个问题
6)最大熵马尔科夫模型
优点:与HMM相比,允许使用特征刻画观察序列,训练高效
缺点: 存在标记偏置问题
7)条件随机场及其应用(概念,模型过程,与HMM关系)
参数估计方法(GIS算法,改进IIS算法)
CRF基本问题:特征选取(特征模板)、概率计算、参数训练、解码(维特比)
应用场景:
+ 词性标注类问题(现在一般用RNN+CRF)
+ 中文分词(发展过程,经典算法,了解开源工具jieba分词)
+ 中文人名,地名识别
8) CRF++

6.命名实体 识别,词性标注,内容挖掘、语义分析与篇章分析(大量用到前面的算法)

1)命名实体识别问题

2)未登录词的解决方法(搜索引擎,基于语料)

3)CRF解决命名实体识别(NER)流程总结:

  • 训练阶段:确定特征模板,不同场景(人名,地名等)所使用的特征模板不同,对现有语料进行分词,在分词结果基础上进行词性标注(可能手工),NER对应的标注问题是基于词的,然后训练CRF模型,得到对应权值参数值。
  • 识别过程:将待识别文档分词,然后送入CRF模型进行识别计算(维特比算法),得到标注序列,然后根据标 注划分出命名实体

4)词性标注(理解含义,意义)及其一致性检查方法(位置属性向量,词性标注序列向量,聚类或者分类算法)

7.句法分析

1)句法分析理解以及意义

  • 句法结构分析
    • 完全句法分析
    • 浅层分析(这里有很多方法。。。)
  • 依存关系分析
    2)句法分析方法
    1.基于规则的句法结构分析
    2.基于统计的语法结构分析

8.文本分类,情感分析

1)文本分类,文本排重
文本分类:在预定义的分类体系下,根据文本的特征,将给定的文本与一个或者多个类别相关联
典型应用:垃圾邮件判定,网页自动分类
2)文本表示,特征选取与权重计算,词向量
文本特征选择常用方法:
1、基于本文频率的特征提取法
2、信息增量法
3、X2(卡方)统计量
4、互信息法
3)分类器设计
SVM,贝叶斯,决策树等
4)分类器性能评测
1、召回率
2、正确率
3、F1值
5)主题模型(LDA)与PLSA
LDA模型十分强大,基于贝叶斯改进了PLSA,可以提取出本章的主题词和关键词,建模过程复杂,难以理解。
6)情感分析
借助计算机帮助用户快速获取,整理和分析相关评论信息,对带有感情色彩的主观文本进行分析,处理和归纳例如,评论自动分析,水军识别。
某种意义上看,情感分析也是一种特殊的分类问题

9.信息检索,搜索引擎及其原理

1)信息检索起源于图书馆资料查询检索,引入计算机技术后,从单纯的文本查询扩展到包含图片,音视频等多媒体信息检索,检索对象由数据库扩展到互联网
1. 点对点检索
2.精确匹配模型与相关匹配模型
3.检索系统关键技术:标引,相关度计算
2)常见模型:布尔模型,向量空间模型,概率模型
3)常用技术:倒排索引,隐语义分析(LDA等)
4)评测指标

10.自动文摘与信息抽取,机器翻译,问答系统

1)统计机器翻译的的思路,过程,难点,以及解决
2)问答系统
基本组成:问题分析,信息检索,答案抽取
类型:基于问题-答案, 基于自由文本
典型的解决思路
3)自动文摘的意义,常用方法
4)信息抽取模型(LDA等)

11.深度学习在自然语言中的应用

1)单词表示,比如词向量的训练(wordvoc)
2)自动写文本 写新闻等
3)机器翻译
4)基于CNN、RNN的文本分类
5)深度学习与CRF结合用于词性标注

NLP用于征信

近几年,国内P2P和现金贷的大量涌现,说明了个人小额信贷的市场需求巨大。在过去,针对该类小贷用户,一般单纯地依靠地推人员挨家挨户进行实地征信。如今,基于大数据和人工智能技术,可以实现智能征信和审批,极大地提高工作效率。通过多渠道获取用户多维度的数据,如通话记录、短信信息、购买历史、以及社交网络上的相关留存信息等;然后,从信息中提取各种特征建立模型,对用户进行多维度画像;最后,根据模型评分,对用户的个人信用进行评估。同样,对于市场上中小微企业融资难的问题,也可以通过大数据征信得以解决。

信用评分模型案例:

  • 业务目标:建立信用评估系统,当把信用卡用户的信息导入到该系统时,系统会自动输出这批用户的违约风险及信用得分,为信用卡用户的管理提供决策支持。

  • 数据挖掘目标:建立信用卡用户的信用评估模型,该模型以用户的信息指标为输入,以违约为目标,建立预测模型,该模型可以根据输入指标的值,计算预测值(违约)。

  • 建立信用评分模型: 分类预测算法并不局限于神经网络算法,只要是适用于目标变量为字符型的分类预测算法都可以(如决策树、支持向量机、贝叶斯网络、KNN、Logistic回归等)。

    http://bbs.pinggu.org/thread-3823928-1-1.html

参考资料

  • 黄志洪老师的自然语言处理课程
  • 参考书:宗成庆老师的《统计自然语言处理》
  • 自然语言处理(NLP)知识结构总结

你可能感兴趣的:(机器学习)