1、宗成庆中国科学院自动化研究所模式识别国家重点实验室自然语言处理、计算与 理解11. 引言2. NLP方法概述3. 深度学习方法应用4. 讨论 与结语内容提要1. 引言1946年,世界上第一台计算机 ENIAC诞生Warren Weaver (July 17, 1894 Nov. 24, 1978)信息论 先驱1920至 1932年 Wisconsin 大学数学 教授1932至 1955年担任Rockefeller Institute自然科学部 主任A. D. Booth 数学物理学家 ,二战 中参与计算机研制,在程序化计算机研究中成绩卓著;1947年 3月至 9月,曾在普林斯顿大学参与 Joh
2、n von Neumann 研究组,后来 曾在伦敦大学工作。1. 引言March 4, 1947I wondered if it were unthinkable to design a computer which would translate诺伯特 维纳 (Norbert Wiener) (1894年 11月 26日 1964年 3月 18日 )1. 引言左起: 摩尔、麦卡锡、明斯基、赛弗里奇 (Oliver Selfridge)、 所 罗门诺夫达特茅斯 学院 (Dartmouth College)(成立 于 1769年 )人工智能 夏季 研讨会 (大茅斯会议 , 1956)Summer
3、 Research Project on Artificial Intelligence (Dartmouth Conference)自然语言理解 (natural language understanding, NLU)是人工智能最重要 的研究方向 之一1. 引言计算语言学 (Computational Linguistics, CL)1960S, 形成相对独立的学科 。 1962年 国际计算语言学学会(ACL)成立 , 1965年 国际计算语言学委员会 (ICCL)成立 , 1966年 “ 计算语言学 ” 首次出现在美国国家科学院 ALPAC报告里自然语言处理 (Natural Langu
4、age Processing, NLP)1980S, 面向计算机网络和移到通信 , 从 系统 实现和语言工程的角度开展语言信息处理方法的研究 。 专门针对中文的语言信息技术研究成为 中文信息处理NLU、 CL和 NLP统称 为 人类语言技术 (Human Language Technology, HLT)HLT1. 引言NLU CLNLPHLT 是当前人工智能领域最具挑战性的研究方向之一。NLPCLNLU【 新闻 】 张 小五从警 20多年来, 历尽千辛万苦,立下无数战功, 曾被 誉为孤胆英雄。 然而,谁也未曾想到,就是这样一位曾让毒贩闻风丧胆的铁骨英雄竟然 为了区区小利而铤而走险, 悔恨之下
5、昨晚在家开枪自毙。问题 : 谁开枪自杀 ?张 小五死了没有 ?张 小五是什么警察 ?张小五为什么自杀 ?网上 87.8%为文本内容机器翻译移 到终端:微信、短信 非结构化文本 语义概念关系分析、表示 应用系统1. 引言情感分析关系 抽取自动摘要问答系统观点 挖掘1. 引言全球 数万亿 网页,80%非汉语文字出境游人数破 亿 ,前20出境 游 目的地有 12种 语言64个 国家和地区44亿 人口50多种语言1. 引言6-11 July 2015, Lille, FranceICML20151. 引言1. 引言At DL 2015, Neil Lawrence said “NLP is kind
6、of like a rabbit in the headlights of the deep learning machine, waiting to be flattened.”A Professor of Machine Learning at the University of Sheffield1. 引言问题与挑战 大量的未知现象如: 高山 , 埃博拉,奥特 无处不在的歧义词汇如:苹果 ,粉丝 ,Bank 复杂或歧义结构比比皆是喜欢乡下的孩子。 Time flies like an arrow. 普遍存在的缩略和隐喻表达要把权力装进制度的 笼子 ; 老虎苍蝇 一 起打。破 四旧 ,除
7、四害 ;消灭一切 牛鬼蛇神 。1. 引言问题与挑战 跨语言语义概念不对等如:馒头 : steamed bread1. 引言We do chicken right.我们做鸡的权利 。 (Google Translate, 2016.11.4.)我们是烹鸡 专家 。 (百度翻译 , 2016.11.4.)NLP要解决的问题是从大量不确定性中寻找确定性结论 ,很多背景知识和常识性知识是隐含的 , 是在语义和概念层面上进行的表示 、 处理和变换 。1. 引言2. NLP方法概述3. 深度学习方法应用4. 讨论 与结语内容提要2.1 基本方法理性主义方法 : 1957 1980S词法分析,句法方法,语义
8、分析词典、规则 基于规则的方法经验主义方法 : 1950S, 1980S训练样本统计模型 基于统计的方法2. NLP方法概述2. NLP方法概述以机器翻译为例给定英语句子:There is a book on the desk.将其翻译成汉语。2. NLP方法概述对英语句子进行词法分析There/Ad is/Vbe a/Det book/N on/P the/Det desk/N ./Puc对英语句子进行句法结构分析VP NP NPAd Vbe Det N P Det N PucCS PPCSS基于规则的方法2. NLP方法概述利用转换规则将英语句子结构转换成汉语句子结构P NP VP NP
9、PucPP CSCSSVP NP NPAd Vbe Det N P Det N PucCS PPCSS2. NLP方法概述P NP VP NP PucPP CSCSS根据转换后的句子结构 ,利用词典和生成规则生成翻译的结果句子#a, Det, 一#book, N, 书 ; V, 预订#desk, N, 桌子#on, P, 在 X 上#There be, V, 有输出译文:在桌子上有一本书。基于规则的 NLP方法的基本步骤:词法分析 (汉语分词 ) 句法分析 语义分析 (词义消歧等 ) 语言生成2. NLP方法概述 a r g m a x ( ) ( | )CC P C P E C翻译模型(Tr
10、anslation model, TM)语言模型(Language model, LM)( ) ( | )( | )()P C P E CP C EPE根据贝叶斯公式:基于统计的方法mm eeeeE 211 ll ccccC 211 给定源语言句子 :将其翻译成目标语言句子 :2. NLP方法概述收集大规模双语句子对、目标语言句子参数训练与模型优化主要任务:构建解码器 (decoder),快速搜索最优翻译候选:三 个关键问题:估计语言模型概率 p(C);估计 翻译模型概率 p(E|C);快速 有效地 搜索候选译文 C, 使 p(C) p(E|C)最大 。语言模型p(C)翻译模型p(E|C)解码
11、器C E a r g m a x ( ) ( | )CC P C P E C原文 译文人类 共 有 二十三 对 染色体 。 humans have a total of 23 pairs of chromosomes .澳洲 重新 开放 驻 马尼拉 大使馆 australia reopens embassy in manila中国 大陆 手机 用户 成长 将 减缓 growth of phone users in mainland china to slow外交 人员 搭乘 第五 架 飞机 返国 diplomatic staff will take the fifth plane home .
12、驻 南韩 美军 三千人 奉命 冻结 调防 us freezes transfer of 3,000 troops in south korea姚明 感慨 NBA 的 偶像 来 得 太 快 yao ming feels nba stardom comes too fast 双语句对2. NLP方法概述短语序列 : 在 桌子 上 有 一 本 书英语译文 : There is a book on the desk.短语翻译 : On the desk there ishave短语调序 : There is on the deska booka book2. NLP方法概述汉语句子 : 在 桌子 上
13、有 一 本 书2.2 常用的统计模型和 开 源工具感知机 (perceptron): 二类分类 k-近邻法 (k-nearest neighbor, k-NN): 多类分类问题朴素贝叶斯法 (nave Bayes): 多类分类问题决策树 (decision tree): 多类分类问题最大熵 (maximum entropy):多类分类问题支持向量机 (support vector machine, SVM): 二类分类条件随机场 (conditional random field, CRF): 序列标注隐马尔可夫模型 (hidden Markov model, HMM): 标注2. NLP方法
14、概述条件随机场:CRF+ ( C+版):http:/ ( C语言版):http:/www.chokkan.org/software/crfsuite/MALLET (Java版,通用的 NLP工具包,包括分类、序列标注等机器学习 算法 ): http:/mallet.cs.umass.edu/NLTK (Python版,通用的 NLP工具包,很多工具是从MALLET中包装转成的 Python接口 ): http:/nltk.org/开源工具:2. NLP方法概述贝叶斯分类器 : http:/ 支持向量机 (LibSVM):http:/www.csie.ntu.edu.tw/cjlin/libs
15、vm隐马尔可夫模型 : http:/htk.eng.cam.ac.uk/最大熵 : OpenNLP: http:/incubator.apache.org/opennlp/ Malouf: http:/ Tsujii: http:/www-tsujii.is.s.u-tokyo.ac.jp/tsuruoka/maxent/ 张乐 : http:/homepages.inf.ed.ac.uk/lzhang10/maxent.html 林德康 : http:/webdocs.cs.ualberta.ca/lindek/downloads.htm2. NLP方法概述由字构词的 汉语自动分词(Char
16、acter-based Chinese word segmentation)Nianwen Xue(薛念文 ) and S. Converse, 2002, The 1st SIGHAN Workshop.基本思想 : 将分词过程看作是字的分类问题。该方法认为,每个字在构造一个特定的词语时都占据着一个确定的构词位置 (即词位 )。假定每个字只有 4个词位:词首(B)、词中 (M)、词尾 (E)和单独成词 (S),那么,每个字归属一特定的词位 。2. NLP方法概述2.3 应用举例(1) 上海 / 计划 / 到 / 本 / 世纪 / 末 / 实现 / 人均 / 国内 / 生产 / 总值 / 五千美元 / 。 /(2) 上 /B海 /E计 /B划 /E到 /S本 /S世 /B纪 /E末 /S实 /B现/E人 /B均 /E国 /B内 /E生 /B产 /E总 /B值 /E五 /B千/M美 /M元 /E。 /S在字标注过程中,对所有的字根据预定义的特征进行词位特征学习,获得一个概率模型,然后在待切分字串上,根据字与字之间的结合紧密程度,得到一个词位的分类结果,最后根据词位定义直接获得最终的分词结果。工具 :支持向量机 (SVM)条件随机场 (CRF)2. NLP方法概述