汉语语义理解

来源:互联网 发布:程序员 转行 编辑:程序博客网 时间:2024/05/21 15:03

汉语语义理解对IT来说,其实是个伪命题。汉语的语义理解其实就是围绕概念展开,可人对概念的理解是以人的感觉为基础的,计算机又没有感觉,它根本就没有办法理解“甜”、“热”等等,当然我们可以接n多的各种各样的传感器,告诉计算机通过哪个接口接收的多大的信号就代表了某个概念。但遗憾的是,人类语言中的很多概念都是模糊的,而目前为止计算机还都是依赖于精确数值的。要想在这个角度上完全拟人化的让计算机来理解语义是不现实的。

笔者一开始也是想通过拟人来完成这个任务,所以有很长一段时间就陷在这,天天琢磨如何让计算机理解“门”这个概念:要有通道传输性、要有开启/关闭特性、还要有钥匙控制特性等等。但又从这引出了一堆问题,什么是通道、钥匙、开启、控制等等。如果按这个法子走下去,那就必须给汉语的去寻找基础性的概念,然后对各种概念进行定量标示。笔者也看了国内也有很多人花了十多年的精力在做这样的事情。这当然很有必要,也自有其极大的价值,但对于汉语语义理解还是无法圆满解题。

换个角度来考虑,我们为什么要用计算机来做汉语的语义理解?自然是希望通过机读海量的web文本进行知识挖掘、或是在线和用户自动沟通降低后台人力投入等等。所以我们的重心不是要解决语义本身,而是语言中所包含的知识,然后将这些知识利用起来。所以计算机做汉语语义理解其实就是从文本中抽取知识,只不过和以前的web数据挖掘相比,需要的颗粒更细、范围更广泛而已。

现在出现了很多小机器人,但他们主要依靠的是基于概率相关性的语用处理,这个效率更高,而且机器学习起来比较简单,但还不能算是真正意义上的语义理解,无法在更细的粒度上有针对性的进行个性化解题。所以还是必须在单句的知识抽取上要做些事情。

对于汉语来说,首先遇到的一个问题就是分词的问题,不过还好,有很多不错的前辈已经做了大量的工作并可以共享。其次一个问题就是短语的识别,比如:修理汽车的师傅和修理汽车的轮胎,这两个短语从语法上完全一样,但从意义上是不能同样处理的,这个问题也困扰了笔者很久。最后就是抽取出来的知识如何进行迭代性的构造,也是个比较麻烦的事情,毕竟很多人看起来一目了然的事,计算机是不会处理的。

最大的麻烦还在于笔者需要将其构造为一个无监督的学习系统,有监督的学习当然效率更高、效果更好,但笔者没这个时间与精力来调教一个笨蛋计算机,嫌麻烦的后果就是会遇到更大的麻烦:)

0 0
原创粉丝点击