概念
(Natural Language Processing, 简称NLP)就是利用电子计算机为工具对人类特有的书面形式和口头形式的自然语言的信息进行各种类型处理和加工的技术,这种技术现在已经形成一门专门的边缘性交叉性学科,它涉及语言学、数学和计算机科学,横跨文科、理科和工科三大知识领域。自然语言处理的目的在于建立各种自然语言处理系统,如机器翻译系统、自然语言理解系统、信息自动检索系统、信息自动抽取系统、文本信息挖掘系统、术语数据库系统、计算机辅助教学系统、语音自动识别系统、语音自动合成系统、文字自动识别系统等。
自然语言是人类区别于其它动物的重要标志之一。人借助于自然语言交流思想,达到互相了解,组成人类社会生活;人还借助于自然语言进行思维活动,认识事物的本质和规律,创造了人类的物质文明和精神文明。
自然语言起码在下面四个方面与人工语言大相径庭:
- (1) 自然语言中充满着歧义,而人工语言中的歧义则是可以控制的;
- (2) 自然语言的结构复杂多样,而人工语言的结构则相对简单;
- (3) 自然语言的语义表达千变万化,迄今还没有一种简单而通用的途径来描述它,而人工语言的语义则可以由人来直接定义;
- (4) 自然语言的结构和语义之间有着千丝万缕的、错综复杂的联系,一般不存在一一对应的同构关系,而人工语言则常常可以把结构和语义分别进行处理,人工语言的结构和语义之间有着整齐的一一对应的同构关系。
自然语言处理的发展
- 基于句法-语义规则的理性主义方法受到质疑,随着语料库建设和语料库语言学的崛起,大规模真实文本的处理成为自然语言处理的主要战略目标,概率和数据驱动的方法几乎成为了自然语言处理的标准方法。
- 自然语言处理越来越多的使用机器自动学习的方法来获取语言知识
- 统计数学越来越受到重视
- 自然语言处理中越来越重视词汇的作用,出现了强烈的“词汇主义”的倾向。
- 多语言在线自然语言处理技术迅猛发展。随着网络技术的发展,互联网(Web)逐渐变成一个多语言的网络世界,互联网上的机器翻译、信息检索和信息抽取等自然语言处理的需要变得更加紧迫。
自然语言处理的常见运用
信息提取
如下面的这段话:Hi Dan, we’ve now scheduled the curriculummeeting. It will be in Gates 159 tomorrow from10:00-11:30.-Chris
我们通过自然语言处理能够得出如下信息:
- Event: Curriculum mtg
- Date: Dec-18-2017
- Start: 10:00am
- End: 11:30am
- where: Gates 159
语义分析
比如淘宝某个商品的评价,我们能够提取信息,并且根据语义来进行测评.
比如对于一个照相机
提取出如下的主要特征:zoom ,affordability, size and weight, flash ,ease of use
我们根据语义分析,搜集到关于大小和重量的如下三个评价:
1. 拿起来很好很舒适
2. 好轻的照相机,我再也不用拿着又大又笨的机器到处跑了.
3. 这个照相机太娇嫩了,拿在手上必须非常小心.
再进一步的,通过NLP,我们可以得出前两个是好的评价,最后一个是不好的.
通过这些,我们就可以对这款相机做一些基于NLP的测评指标。
- 自动翻译.
谷歌翻译、百度翻译、网易云翻译等等就是实例.
工欲善其事,必先利其器
自己最近爱上了自然语言处理、机器翻译、人工智能,看了老师推荐的《计算机自然语言处理》,真的是云里雾里,不能说都看不懂,但是没有get到有层次的东西,所以自己在网站各个博客、社区,知乎、github上看了一些关于自然语言处理入门的讲解或者简述,了解了一些之后,我其实觉得,自然语言处理就是机器学习。自己根据了解的情况写了这篇杂记,也安排了自己的一个学习计划:
- 《计算机自然语言处理》——上面分词规范特别学习,跟着看一些python在自然语言处理上的应用源码,多看源码在github上,多在练习中更加深刻理解自然语言处理的思想;
- 编程语言我用的是python
现阶段先学习这些写吧,眼看就要考试了,期间看看《数学之美》,应该会很不错。
感觉还是云里雾里。~~~~!