再谈聊天机器人
最近两年聊天机器人发展非常迅速,不仅有大牌的SIRI、小冰的新版,国内也出现了像图灵机器人这样优秀的产品,给整个产业带来了活力。
但是客观地说,聊天机器人除了在客服等专业领域取得了一些成绩以外,在自身品质方面并没有实质性的进展。当然,我们的确在产品推介会上看到了激动人心的内容,可现实是并没有让人耳目一新的东西出现,这很让人失望。也不奇怪,因为目前看来聊天机器人的发展方向似乎仍存在偏差。
闲言少叙,我们先说说研发聊天机器人的目的和“聊天”的本质。
一、研发聊天机器人的终极目的。
很显然,任何一个有理想的研发人员都会将人工智能作为最终目标,也许他不会说出来,但心里肯定是这么想。这是否能实现呢,大家可能很有信心,但是最终能否完成,谁也没有把握。
为什么要先说一下研发目的?就是为了统一思路。只有以人工智能为最终目的,我下面说的才有意义。否则的话,如果以客服为目的,或者以娱乐为目的,那么目前的发展水平和发展方向都足够了。
二、聊天的本质。
这个问题可能大家各有各的看法,我的观点是:聊天是一场无边界的游戏。为什么这样说?这个“无边界的游戏”是相对于一些有边界的游戏,例如围棋。
围棋据说是最复杂的智力游戏,以前其它游戏电脑都比人强,唯独围棋不行。结果前段时间传来消息,电脑战胜了欧洲冠军。可能中国人对此嗤之以鼻,毕竟欧洲冠军和世界水平还是有很大差距的,但是我非常确信,用不了多久电脑就能战胜所有人类棋手,当然也包括中国棋手。围棋与其它棋类相比,的确在复杂程度上高几个数量级,但这并成为一道不可逾越的鸿沟。随着运算速度的提高以及算法的更加合理,电脑战胜人类棋手是迟早的事情。原因很简单,对于电脑来说,围棋仍然是一种有边界的游戏,即每一步棋的可能性是有限的,而不是无限的。电脑所要做的就是在这有限的一百种、一万种甚至一亿种可能性中进行选择,在这些答案中总有一个是正确的,我们只要帮助电脑提高处理速度、想办法提高命中率,电脑就总有获胜的机会。
但是,聊天不是这样。一问一答中,答案也许有限,但也有可能无限。举一个例子:
我问:今天天气怎么样?这对聊天机器人来说非常容易回答,它可以从若干个答案中随便提取一个,让人完全分辨不出它是不是人类。“天不错!”“最高气温23度”“跟昨天差不多”等等。显然,这是一个有固定答案的问话。放到围棋上来说,这属于棋盘里面的下法。
可是,如果我说:“我教你玩个游戏吧!”没有一个聊天机器人可以给我满意的回答。如果你回答“教吧”,那我就真开始教了,保你马上现原形!可能你会说,你这不是聊天!的确,我这句话相当于把棋子下到棋盘外了,是犯规。可是下棋有犯规,聊天也有犯规吗?正因为如此,同样的方法在围棋的人机对话中可以取得成功,放到聊天里也许永远都不会成功。其关键就在于二者之间的差别:围棋有边界,其应答方式有限,在所有选择中只有优劣的区别,没有无效的回答。而在聊天过程中,应答方式几乎无限,而且在所有的选择中即有优劣之分,也有无效的可能。这一点尤其重要,下围棋的机器人最多走出一步臭棋,效果不好而已,不存在本质上的错误。但是聊天机器人的回答可能是无效的,甚至是完全错误的。
所以说,聊天机器人要想和人真正地聊天,像人工智能一样进行聊天,必须选择一条有别于传统机器智能的道路。目前,聊天机器人的设计思路仍停留在海量数据的过滤阶段,这固然是一个重要的过程,但在我看来,这是远远不够的。
三年前,我在“谈谈聊天机器人”一文中曾经提到我理想中的聊天机器人应具备的三种能力:
1、判断能力。
2、学习能力。
3、记忆能力。
回过头看,前二者判断能力和学习能力可以归在一起,即学习能力。因为判断本身就是学习过程中的一个阶段。
今天我们主要讨论学习。
那么,什么是学习?现在的聊天机器人也都在强调自己的学习功能,小冰在与人聊天时也在学习,正因为如此才导致了早期的它被调教得满嘴脏话,这不正是学习吗?学说脏话也是学习啊,但这显然不是我们所需要的学习。那么什么才是我们想要的学习呢?
我们认为的学习,是以人类道德标准为标准的学习,即学习好的(善的、优的),放弃坏的(恶的、差的),这是一个优化过程。不分好坏的学习只是简单拙劣的模仿,不是真正的学习。早期的小冰就是不分好坏的学习,因为它没有自己的道德标准。
我这里所说的道德标准并不是人们常说的公共道德,而是一种受人类认可的评价体系。例如,说脏话是不好的,不说脏话是好的,这就是一个标准。或者合乎语法是好的,不合乎语法是不好的等等。大家可以看到,“是否说脏话”“说话是否合乎语法”这些问题本身并没有对错,对电脑来说更是如此,可是如果它想学习与人类聊天,那么就要接受人类认可的标准。如果机器人意识不到这一点,或者它的设计者没有意识到这一点,那么它就不是一个合格的聊天机器人。
那么,当电脑面对一句问话,开始在千万条回答中进行检索时,就面临一个最优选择的问题。什么才是最优的?传统思路认为最常被使用的是最优的。例如,在问答网站上,得到最多赞同的回答就是最优。通常情况下,95%以上的被赞同最多的答案可能是最优的,但是可能有剩下的5%是抖机灵、有意误导或者乌合之众等原因造成它的确不是最好的答案。当我们人类上网寻找一个问题答案时,会自己进行判断,用我们的智慧过滤到这5%。可是电脑没有这个能力,原因就在于它没有自己的判断。结果会造成这样一种现象:某个聊天机器人在面对95%的问话时,它表现非常优异,看上去像个大学教授,而在面对剩下5%的问话时,它表现得可能还不如一个小学生。目前的聊天机器人都没有办法解决这个问题。
那么如何让电脑能分辨出好或不好的回答呢,答案就是帮助电脑建立自己的道德评价体系,由它自己对所有回答进行判断。
看上去有点像天方夜谭,有可能实现吗?
让我们首先了解一下人类是如何学习的,准确的说小孩子如何学习。小孩子从不会说话到会说话的过程中会犯很多错误:叫法不对、顺序不对、语气不对、语法不对等等,但最终每个人都能掌握了正确的说话方式,到5、6岁就不会说出明显错误的话了。原因有两个:第一、模仿。小孩子一直在模仿身边的大人说话,这是他学习过程中最重要的手段。因此中国孩子学会了中国话,英国孩子学会了英语,广东孩子学会了广东话,东北孩子学会的是东北话,其原因就在于小孩子的学习方式是模仿。其实我们成人学习的主要方式仍然是模仿,画画要临募、学外语要听范读,写文章也要模仿范文等等。但是单单模仿是不够的,真正的学习还需要有另一个重要的条件,即第二个条件:老师(评价)。小孩子的模仿是很幼稚的,经常犯一些可笑的错误,需要不断纠正,这个纠正就由老师来完成。父母是孩子最早的老师,他们不断纠正孩子说话中的错误。学校里的老师也一样,找到孩子的错误,批评他使他改正。这些老师的作用就是最终让孩子保留正确的说法。与此同时,即在老师(家长、或其它大人)纠正孩子的同时,孩子也学会了使用同样的标准纠正自己。从某种意义上讲,这也是一种模仿。这种模仿更加重要,因为它建立了孩子自己的评价体系。这种评价体系在孩子未来的生活中发挥重要作用,即一方面孩子在模仿和尝试,另一方面自己扮演自己的老师,来判断这种模仿是否是正确和合理的。
为什么一个没有受到良好教育的孩子满嘴脏话,就是因为他没有建立正确的评价体系,这和小冰满嘴脏话的道理是一样的。小孩子满嘴脏话是因为他生活在一个充满脏话的环境中,小冰满嘴脏话是因为它只知道模仿不知判断,而对话的另一方多都是恶搞的制造者,类似于小冰置身于一个充满脏话的环境中,造成了小冰爱说脏话的结果。
那么为什么下围棋的机器人没有出现类似问题呢?原因在于围棋机器人的数据库中都是世界高手的棋谱,即它所模仿的都是围棋高手的下法。虽然设计者可能并未考虑什么评价体系,但在客观上却造成了围棋机器人一直生存在一个全是高手的优秀环境中,因而它的水平很高是不奇怪的。
所以说,如果对聊天机器人的研究若想取得突破,就不能只在算法上做文章,而是要帮助它建立自己的评价体系。只有这样,聊天机器人的被动学习才会变成主动学习,才可能迈出走向人工智能的重要一步。
时间有限,这次只谈这么多吧,希望和大家多交流。
但是客观地说,聊天机器人除了在客服等专业领域取得了一些成绩以外,在自身品质方面并没有实质性的进展。当然,我们的确在产品推介会上看到了激动人心的内容,可现实是并没有让人耳目一新的东西出现,这很让人失望。也不奇怪,因为目前看来聊天机器人的发展方向似乎仍存在偏差。
闲言少叙,我们先说说研发聊天机器人的目的和“聊天”的本质。
一、研发聊天机器人的终极目的。
很显然,任何一个有理想的研发人员都会将人工智能作为最终目标,也许他不会说出来,但心里肯定是这么想。这是否能实现呢,大家可能很有信心,但是最终能否完成,谁也没有把握。
为什么要先说一下研发目的?就是为了统一思路。只有以人工智能为最终目的,我下面说的才有意义。否则的话,如果以客服为目的,或者以娱乐为目的,那么目前的发展水平和发展方向都足够了。
二、聊天的本质。
这个问题可能大家各有各的看法,我的观点是:聊天是一场无边界的游戏。为什么这样说?这个“无边界的游戏”是相对于一些有边界的游戏,例如围棋。
围棋据说是最复杂的智力游戏,以前其它游戏电脑都比人强,唯独围棋不行。结果前段时间传来消息,电脑战胜了欧洲冠军。可能中国人对此嗤之以鼻,毕竟欧洲冠军和世界水平还是有很大差距的,但是我非常确信,用不了多久电脑就能战胜所有人类棋手,当然也包括中国棋手。围棋与其它棋类相比,的确在复杂程度上高几个数量级,但这并成为一道不可逾越的鸿沟。随着运算速度的提高以及算法的更加合理,电脑战胜人类棋手是迟早的事情。原因很简单,对于电脑来说,围棋仍然是一种有边界的游戏,即每一步棋的可能性是有限的,而不是无限的。电脑所要做的就是在这有限的一百种、一万种甚至一亿种可能性中进行选择,在这些答案中总有一个是正确的,我们只要帮助电脑提高处理速度、想办法提高命中率,电脑就总有获胜的机会。
但是,聊天不是这样。一问一答中,答案也许有限,但也有可能无限。举一个例子:
我问:今天天气怎么样?这对聊天机器人来说非常容易回答,它可以从若干个答案中随便提取一个,让人完全分辨不出它是不是人类。“天不错!”“最高气温23度”“跟昨天差不多”等等。显然,这是一个有固定答案的问话。放到围棋上来说,这属于棋盘里面的下法。
可是,如果我说:“我教你玩个游戏吧!”没有一个聊天机器人可以给我满意的回答。如果你回答“教吧”,那我就真开始教了,保你马上现原形!可能你会说,你这不是聊天!的确,我这句话相当于把棋子下到棋盘外了,是犯规。可是下棋有犯规,聊天也有犯规吗?正因为如此,同样的方法在围棋的人机对话中可以取得成功,放到聊天里也许永远都不会成功。其关键就在于二者之间的差别:围棋有边界,其应答方式有限,在所有选择中只有优劣的区别,没有无效的回答。而在聊天过程中,应答方式几乎无限,而且在所有的选择中即有优劣之分,也有无效的可能。这一点尤其重要,下围棋的机器人最多走出一步臭棋,效果不好而已,不存在本质上的错误。但是聊天机器人的回答可能是无效的,甚至是完全错误的。
所以说,聊天机器人要想和人真正地聊天,像人工智能一样进行聊天,必须选择一条有别于传统机器智能的道路。目前,聊天机器人的设计思路仍停留在海量数据的过滤阶段,这固然是一个重要的过程,但在我看来,这是远远不够的。
三年前,我在“谈谈聊天机器人”一文中曾经提到我理想中的聊天机器人应具备的三种能力:
1、判断能力。
2、学习能力。
3、记忆能力。
回过头看,前二者判断能力和学习能力可以归在一起,即学习能力。因为判断本身就是学习过程中的一个阶段。
今天我们主要讨论学习。
那么,什么是学习?现在的聊天机器人也都在强调自己的学习功能,小冰在与人聊天时也在学习,正因为如此才导致了早期的它被调教得满嘴脏话,这不正是学习吗?学说脏话也是学习啊,但这显然不是我们所需要的学习。那么什么才是我们想要的学习呢?
我们认为的学习,是以人类道德标准为标准的学习,即学习好的(善的、优的),放弃坏的(恶的、差的),这是一个优化过程。不分好坏的学习只是简单拙劣的模仿,不是真正的学习。早期的小冰就是不分好坏的学习,因为它没有自己的道德标准。
我这里所说的道德标准并不是人们常说的公共道德,而是一种受人类认可的评价体系。例如,说脏话是不好的,不说脏话是好的,这就是一个标准。或者合乎语法是好的,不合乎语法是不好的等等。大家可以看到,“是否说脏话”“说话是否合乎语法”这些问题本身并没有对错,对电脑来说更是如此,可是如果它想学习与人类聊天,那么就要接受人类认可的标准。如果机器人意识不到这一点,或者它的设计者没有意识到这一点,那么它就不是一个合格的聊天机器人。
那么,当电脑面对一句问话,开始在千万条回答中进行检索时,就面临一个最优选择的问题。什么才是最优的?传统思路认为最常被使用的是最优的。例如,在问答网站上,得到最多赞同的回答就是最优。通常情况下,95%以上的被赞同最多的答案可能是最优的,但是可能有剩下的5%是抖机灵、有意误导或者乌合之众等原因造成它的确不是最好的答案。当我们人类上网寻找一个问题答案时,会自己进行判断,用我们的智慧过滤到这5%。可是电脑没有这个能力,原因就在于它没有自己的判断。结果会造成这样一种现象:某个聊天机器人在面对95%的问话时,它表现非常优异,看上去像个大学教授,而在面对剩下5%的问话时,它表现得可能还不如一个小学生。目前的聊天机器人都没有办法解决这个问题。
那么如何让电脑能分辨出好或不好的回答呢,答案就是帮助电脑建立自己的道德评价体系,由它自己对所有回答进行判断。
看上去有点像天方夜谭,有可能实现吗?
让我们首先了解一下人类是如何学习的,准确的说小孩子如何学习。小孩子从不会说话到会说话的过程中会犯很多错误:叫法不对、顺序不对、语气不对、语法不对等等,但最终每个人都能掌握了正确的说话方式,到5、6岁就不会说出明显错误的话了。原因有两个:第一、模仿。小孩子一直在模仿身边的大人说话,这是他学习过程中最重要的手段。因此中国孩子学会了中国话,英国孩子学会了英语,广东孩子学会了广东话,东北孩子学会的是东北话,其原因就在于小孩子的学习方式是模仿。其实我们成人学习的主要方式仍然是模仿,画画要临募、学外语要听范读,写文章也要模仿范文等等。但是单单模仿是不够的,真正的学习还需要有另一个重要的条件,即第二个条件:老师(评价)。小孩子的模仿是很幼稚的,经常犯一些可笑的错误,需要不断纠正,这个纠正就由老师来完成。父母是孩子最早的老师,他们不断纠正孩子说话中的错误。学校里的老师也一样,找到孩子的错误,批评他使他改正。这些老师的作用就是最终让孩子保留正确的说法。与此同时,即在老师(家长、或其它大人)纠正孩子的同时,孩子也学会了使用同样的标准纠正自己。从某种意义上讲,这也是一种模仿。这种模仿更加重要,因为它建立了孩子自己的评价体系。这种评价体系在孩子未来的生活中发挥重要作用,即一方面孩子在模仿和尝试,另一方面自己扮演自己的老师,来判断这种模仿是否是正确和合理的。
为什么一个没有受到良好教育的孩子满嘴脏话,就是因为他没有建立正确的评价体系,这和小冰满嘴脏话的道理是一样的。小孩子满嘴脏话是因为他生活在一个充满脏话的环境中,小冰满嘴脏话是因为它只知道模仿不知判断,而对话的另一方多都是恶搞的制造者,类似于小冰置身于一个充满脏话的环境中,造成了小冰爱说脏话的结果。
那么为什么下围棋的机器人没有出现类似问题呢?原因在于围棋机器人的数据库中都是世界高手的棋谱,即它所模仿的都是围棋高手的下法。虽然设计者可能并未考虑什么评价体系,但在客观上却造成了围棋机器人一直生存在一个全是高手的优秀环境中,因而它的水平很高是不奇怪的。
所以说,如果对聊天机器人的研究若想取得突破,就不能只在算法上做文章,而是要帮助它建立自己的评价体系。只有这样,聊天机器人的被动学习才会变成主动学习,才可能迈出走向人工智能的重要一步。
时间有限,这次只谈这么多吧,希望和大家多交流。