前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >零AI基础,教你搭建一个讨女友欢心的聊天机器人

零AI基础,教你搭建一个讨女友欢心的聊天机器人

作者头像
小小詹同学
发布2018-12-24 15:52:05
2.5K0
发布2018-12-24 15:52:05
举报
文章被收录于专栏:小詹同学小詹同学

文末有彩蛋】

最近我身边的后端小哥哥心态有点崩,女朋友控诉他老加班不回微信,闹分手!我给他出一招,找个聊天机器人啊,兄弟,加班恋爱两不误,皆大欢喜啊。小哥哥一听,嘿,有谱。

现在人工智能技术发展出的聊天机器人已经具备了相当全面的功能。像会讲笑话,会作曲的微软小冰;能叫我们起床,播放音乐的亚马逊Alexa......很多推荐系统会读取我们的个人信息并帮助我们做智能推荐。

小哥哥立马找市面上的AI聊天机器人玩了一圈,发现话都说不好的太多了。很多机器人只能用“傻”来形容,更别说联系上下文回答女朋友的问题了。小哥哥心一横,自己造一个得了。

我们先把聊天机器人的基础理论来简单撸一遍。

任务导向聊天机器人

大家最常用的Siri被称为Dialog System,是任务导向聊天机器人的一种,Siri最早出现是在2011年,它血统纯正,出自是美国军方一个研究项目,最早只能做单轮的知识性对话,比如用户提问“武大靖是做什么的”,系统给出回答。

所以它在预订机票、导航、客服等一系列以完成某项有明确目标的任务为导向的人机对话场景中做的很好。

当然现在技术提升,它已经可以做很多比较完整的多个回合的对话了,不过其本质没有改变--即系统根据用户的问题给出正确答案。现在Siri可以集成历史数据来回答问题,一些基本的统计规律也会有意想不到的精确度。

举个例子:女朋友想吃饭,告诉你随便。你该怎么去寻找这附近有什么好吃的?

(意图是)饮食-(是想吃)食物-(想吃)饭-(因为附近跟地点有关,所以想找)餐厅

我们来分析一下:从ROOT(根目录)一直往下走到叶节点,每个节点都代表着某种任务讯息,不断地从子节点中,挑选出与句子最相关的语任务节点,这最终就形成了一条任务路径,我们便能从路径认知出这句话的含义,附近有什么好吃的,经过走访后,就得出了找卖饭的餐馆这个意图。

看,只要数据库足够大,Siri在短程路径的每一步都很精确。

但当你询问:“给我多一些第二个餐馆的信息”时,Siri就不明白“第二个餐馆”所指代的是具体是哪一个。这也是我们普遍认为Siri有点“傻”的原因。

闲聊聊天机器人

随着NLP自然语言处理技术的发展,真正意义上的“闲聊聊天机器人”登上舞台,典型的例子就是微软小冰,它能够模拟人类聊天,可以视为一种无目的的对话系统。

有人对任务导向的Siri和闲聊代表的“小冰”从不同角度,不同的方向进行交叉对比,发现Siri在自然语言理解(NLU)方面就是一个傻瓜,(但执行能力一流)如果让Siri和“小冰”对话,那么不可否定的是SIRI会在三个回合内败下阵来。

我们来做个实验:

微软小冰

Siri

看出区别了吗?假定你有两个朋友,Siri看起来嘴笨但执行能力一流,小冰善解人意特别会聊天,在自然语言理解方面更胜一筹,但如何衡量回复质量是一个难点。

当然,这两种机器人并不是完全独立毫无相交的,他们的不同特点在不同的领域都发挥着各自的价值,场景应用包括但不限于儿童陪伴,老人陪伴、无人驾驶、IOT场景、智能客服、咨询行业、订单、购买等。

搭建一个聊天机器人

如果想要自己去尝试搭建一个聊天机器人,其实也不难。你可以从以下渠道窥探一二:

▲工具

  • 首先可以去NTLK,NTLK里面有大量的自然语言处理工具,比如之前提到的Eliza的代码,可以拿着代码跑一跑。
  • 另外一个不错的资源是Stanford Parser,对自然语言处理(NLU)非常有帮助,比如说它能帮助你理解哪些是城市、哪些是地名、哪些是人名,而且它还有中文版的,我们都可以去尝试一下。
  • Github code:是基于AIML语言的聊天机器人的版本,基于这个Code大家应该可以做出一个类似小冰或者贤二机器僧的一个Chatterbot。

▲书籍:

大牛推荐的一本叫《Speech and language Processing》的书,大牛说他的很多聊天机器人的背景知识都来自于这里,大家可以去一起学习一下。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小詹学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 任务导向聊天机器人
  • 闲聊聊天机器人
  • 搭建一个聊天机器人
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档