自然语言处理--从规则到统计

      目前各大互联网公司都如火如荼的在研发者自己的推荐业务,因此机械学习、人工智能,数据统计分析建模变成了一个当下很热门的研究方向,那么计算机如何智能的处理自然语言呢,比如最近流行的小黄鸡应用,你的一问一答,他都会憨态可掬的作出很黄很暴力的回答。那么他是怎么处理和分析语言的呢,其实任何一种语言都是一种编码方式,人说话其实就是把想表达的意思进行编码, 编码形式 可以使声音 也可以是电流也可以是手语,接受者在对应相应的解码便得到 信息 ,这其实就是语言的数学本质。 其实在早期针对计算机如何对语言处理,我们的先人也是这么认为,就是计算机如果想处理自然语言就必须想人脑一样去处理事情,看过西游记吧,孙悟空经常说的一句就是,妖精那里逃,这里的妖精其实就是像人一样,但不是人,但是又让你看不出来他不是人。怎么感觉像一句经典台词,you know i don't know you know i don't know ,其实这就是人工智能,伟大的先贤们苦苦思索如果让计算机的处理器想人脑一样去做事情,结果各种失败,于是一些自然语言处理的先驱们变开始重新思考这个问题,就像Cpu一样 处理器的处理速度由零点几一次又一次升级到三点几一样,突然发现,当前的技术已经无法再提高cpu的频率来提高运算速度了(或者提高需要很大的成本),怎么办,于是双核出现了,四核出现了,多核出现了,工程师很聪明,知道换一种方法去解决问题,如果有一天拥有一定的技术(或者成本降低了) cpu的频率会进一步提高的,并接应该是高频加多核。使用统计模型去进行自然语言的处理其实也是这样,当使用计算机模拟人脑出现瓶颈,当前技术无法成功的模拟人脑去做自然语言的处理,但是事情又不得不做时,基于统计模型的方法便提了出来,经过验证发现能成功解决很多问题,随着模型越来越完善,出错率也越来越低。这便成为一种对自然语言处理的主流方法。就像cpu采用多核一样,如果有一天我们能使用足够计算机模拟人的神经网络 再结合 统计模型的建模,我认为那才是真正的人工智能,据说google模拟神经网络系统成功得是系统自己识别了猫这个概念。这真是让人期待啊!

     其实基于统计模型分析处理自然语言也经历了先是通过语法分析,发现太困难了,语法总是变得,而且有的还具有二义性,不太可行,后来便提出了基于统计规则处理,也就是如果计算机问你吃了没,你会回答 1.吃了 2,都饿死了你说呢?3,都消化的差不多了,4,各种方言版,计算机如果真想分析你到底吃了没,如果你的回答根本就不合乎语法,比如流行语,根本不代表吃了,但是当前就代表吃了的语义,基于语法分析根本无法处理这种 "元芳你怎么看?" 或者很困难,但是基于统计规则就简单多了,例如如果大家针对元芳你怎么看提问,计算机会根据分析词库,针对“元芳你怎么” 看回答各个词出现的 词频 分析应该出什么结果,计算机可能会给出“老衲没意见”,他不明白“老衲没意见” 代表什么意义,但是大家都这么说,这个回答针对元芳你怎么看出现的次数很多而已。好了简单记录这么多。

欢迎喜欢深入了解推荐系统和mahout的兄弟加入群     推荐系统之Mahout  135918911