1. Introduction to NLP

之前在Coursera上找到了一门NLP的课,也跟过一段时间,但是没跟完。。。本来想再开课时再跟一次,但是从网站上看貌似是短期内不会重开了,好在教学视频都在,只好自学一下了,顺便把笔记记在这里。

第一周的课分成了三个部分,这里是第一部分,对NLP的简单介绍,由于不涉及具体的NLP算法,所以我也只是简单带过了。

什么是自然语言处理

  • NLU:自然语言理解,把languge作为computer的输入,让后者理解输入的是啥;
  • NLG:自然语言生成,把language作为computer的输出,即让后者生成自然语言;个人感觉这应该是在NLU的基础上才能做的。

具体应用的举例

  • 机器翻译:理解源语言,生成目标语言,这个应该是NLU+NLG。
  • 信息抽取:从一段非结构化的自然语言的文本中抽取出关键信息,如这段话描述的时间,位置,事件等结构化信息(这些结构后信息通常存于db中),换句话说就是想把一段文本对应到一条数据库记录上。应该场景可以是复杂的search query或者statistical query。
  • 摘要:同样也是NLU+NLG。需要先理解这段文本的意思,然后进行压缩,输出摘要内容。
  • 对话系统:接受自然语言的问题,理解之,再做出回答,也是NLU+NLG。

基础的NLP问题:这些问题是解决上面具体应用的基石

  • Tagging:标注问题,把一段文本做为输入,为每个单位打上一个标记,输出对应的标记序列。包括POS Tagging(词性标注),Named Entity Recognition(命名实体识别)。
  • Parseing:解析问题,以一句话做为输入,辨识出它的语法结构,输出是一棵语法树。这两个问题后面都有章节具体地讲。

为什么NLP是个难题

一句话可能有各种层次上的歧义,包括acoustic level(like your vs lie cured),syntactic level(不同的语法树,从而造成不同的意义),semantic level(一词多义), discourse level(指代不明)。

课程包含的内容

  • NLP问题:POS tagging,parsing,词义消歧
  • 机器学习技术:PCFG,HMM,EM,log-linear model,estimation/smoothing techniques
  • 应用:信息抽取,机器翻译等

 

Posted by Chilly_Rain 2014年3月08日 16:13