一、自然语言处理概述
1)自然语言处理:利用计算机为工具,对书面实行或者口头形式进行各种各样的处理和加工的技术,是研究人与人交际中以及人与计算机交际中的演员问题的一门学科,是人工智能的主要内容。
2)自然语言处理是研究语言能力和语言应用的模型,建立计算机(算法)框架来实现这样的语言模型,并完善、评测、最终用于设计各种实用系统。
3)研究问题(主要):
信息检索
机器翻译
文档分类
问答系统
信息过滤
自动文摘
信息抽取
文本挖掘
舆情分析
机器写作
语音识别
研究模式:自然语言场景问题,数学算法,算法如何应用到解决这些问题,预料训练,相关实际应用
自然语言的困难:
场景的困难:语言的多样性、多变性、歧义性
学习的困难:艰难的数学模型(hmm,crf,EM,深度学习等)
语料的困难:什么的语料?语料的作用?如何获取语料?
二、形式语言与自动机
语言:按照一定规律构成的句子或者字符串的有限或者无限的集合。
描述语言的三种途径:
穷举法
文法(产生式系统)描述
自动机
自然语言不是人为设计而是自然进化的,形式语言比如:运算符号、化学分子式、编程语言形式语言理论朱啊哟研究的是内部结构模式这类语言的纯粹的语法领域,从语言学而来,作为一种理解自然语言的句法规律,在计算机科学中,形式语言通常作为定义编程和语法结构的基础形式语言与自动机基础知识:
集合论
图论
自动机的应用:
单词自动查错纠正
词性消歧(什么是词性?什么的词性标注?为什么需要标注?如何标注?)
形式语言的缺陷:
对于像汉语,英语这样的大型自然语言系统,难以构造精确的文法
不符合人类学习语言的习惯
有些句子语法正确,但在语义上却不可能,形式语言无法排出这些句子
解决方向:基于大量语料,采用统计学手段建立模型
三、语言模型
1)语言模型(重要):通过语料计算某个句子出现的概率(概率表示),常用的有2-元模型,3-元模型
2)语言模型应用:
语音识别歧义消除例如,给定拼音串:tashiyanyanjiusaunfade
可能的汉字串:踏实烟酒算法的他是研究酸法的他是研究算法的,显然,最后一句才符合。
3)语言模型的启示:
开启自然语言处理的统计方法
统计方法的一般步骤:
收集大量语料
对语料进行统计分析,得出知识
针对场景建立算法模型
解释和应用结果
4)语言模型性能评价,包括评价目标,评价的难点,常用指标(交叉熵,困惑度)
5)数据平滑:
数据平滑的概念,为什么需要平滑?
平滑的方法,加一法,加法平滑法,古德-图灵法,J-M法,Katz平滑法等。
6)语言模型的缺陷:
语料来自不同的领域,而语言模型对文本类型、主题等十分敏感。
n与相邻的n-1个词相关,假设不是很成立。
四、概率图模型,生成模型与判别模型,贝叶斯网络,马尔科夫链与隐马尔科夫模型(HMM)
1)概率图模型概述(什么的概率图模型,参考清华大学教材《概率图模型》)
2)马尔科夫过程(定义,理解)
3)隐马尔科夫过程(定义,理解)
HMM的三个基本问题(定义,解法,应用)
注:第一个问题,涉及最大似然估计法,第二个问题涉及EM算法,第三个问题涉及维特比算法,内容很多,要重点理解,(参考书李航《统计学习方法》,网上博客,笔者github)