您的位置:首页 > 大数据 > 人工智能

有了开发板和平台资源,AI语音技能开发没有想象那么难

2017-11-07 00:00 543 查看
“学了那么久的机器学习,想不想亲自动手开发一款属于自己的聊天机器人?”
“我也可以吗? 但我从来没有涉及过语音技能开发这个领域”
“没关系,有了开发板和平台资源,AI语音技能开发没有想象那么难,每个人都可以开发自己的聊天机器人……”

最早的聊天机器人


我们先来看看世界上第一款聊天机器人是什么样的:

1966年,在MIT任职的德裔美国计算机科学家Joseph Weizenbaum,开发出了一款名为ELIZA的聊天机器人程序。

通过运行名为DOCTOR的脚本,此程序可以用类似心理学家的方式和人类交谈。下面就是一段ELIZA和用户的经典对话:

User: Men are all alike.(男人都是一样的)

ELIZA: IN WHATWAY(比如)

User: They’real ways bugging us about something or other.(他们总是打探我们各种事情)

ELIZA: CAN YOU THINK OF A SPECIFIC EXAMPLE(你能举一个例子吗)

User: Well, my boyfriend made me come here.(我男票让我来到这里)

ELIZA: YOUR BOYFRIEND MADE YOU COME HERE(你男票。。。。)

User: He says I’m depressed much of the time.(他说我最近很“丧”)

ELIZA: I AM SORRYTO HEAR YOU ARE DEPRESSED(很抱歉你心情这么低落)

“她”的制造者引入了心理学家罗杰斯提出的个人中心疗法(Person-Centered Therapy),更多强调对话态度、尊重与同理心。Eliza并不主动提供内容,它只是引导用户说话。

那么ELIZA背后的计算逻辑是什么样的呢?简单得叫人想哭,其实就是一条条模式匹配和字符替换规则,下面是其中几条:

youare (depressed|sad) * => I AM SORRY TO HEAR YOU ARE \1
all *=> IN WHAT WAY
always* => CAN YOU THINK OF A SPECIFIC EXAMPLE

用户说失望/伤心,ELIZA就回答“我好抱歉啊”;

用户用了“所有”这个词,机器人就追问一句“以何种方式”;

如果用户说“总是”如何如何,程序就引导“你能举个例子吗”……

这样的语义识别模式让ELIZA成为了一款非常会聊天的机器人。

但是,这样一款机器人并不能解决现实的问题。如果用户需要的确定或者咨询某件事,得求助别的机器人。

闲聊机器人vs问题解决型机器人

聊天机器人,根据其具体陪人聊天的目的,至少能分为两个大类:Chitchat Bot (闲聊机器人),和Task Completion Bot(任务完成/问题解决型机器人)。

微软的小冰是前者的代表,这类机器人存在的目的就是陪用户闲聊。

大多数闲聊机器人,会希望用户消耗在聊天上的时间尽量长,但也不排除有些希望用户最好不要多花时间(比如贤二机器僧)。

各种客服机器人,个人助手/语音助手(包括微软小娜/Cortana)则属于后者。

它们存在的目的是为了帮用户解决确实的问题,例如查询某一种信息,或者完成某一个动作(例如:订机票、酒店、餐厅座位等)。

这两种机器人背后的实现机制差异巨大。

聊天机器人的实现技术

从学术研究的角度讲,聊天机器人所需技术涉及到自然语言处理、文本挖掘、知识图谱等众多领域

但具体到实践当中,在没有那么巨量的人工标注数据和大规模计算资源的情况下,于有限范围(scope)内,开发一款真正有用的机器人,更多需要关注的往往不是高深的算法和强健的模型,而是工程细节和用户体验。

此处为大家简单介绍两种当前实践中相对简单的方法:

Solution-1: 用户问题->标准问题->答案

知识库中存储的是一对对的“问题-答案”对(QA Pair)。这些Pair可以是人工构建的,源于专家系统或者旧有知识库的,也可以是从互联网上爬取下来的。

现在互联网资源这么丰富,各种网页上到处都是FAQ,Q&A,直接爬下来就可以导入知识库。以很小的代价就能让机器人上知天文下晓地理。

当用户输入问题后,将其和知识库现有的标准问题进行一一比对,寻找与用户问题最相近的标准问题,然后将该问题组对的答案返回给用户。

Solution-2. 用户问题->答案

知识库中存储的不是问题-答案对,而仅存储答案(文档)。

当接收到用户问题后,直接拿问题去和知识库中的一篇篇文档比对,找到在内容上关联最紧密的那篇,作为答案返回给用户。这种方法维护知识库的成本更小,但相对于Solution-1,准确度更低。

虽然闲聊机器人很萌很可爱,但在现实生活中,更多的场景所需要的还是问题解决型机器人。虽然我们连手机里的Siri都很少启动,但如果能自己开发机器人聊天功能什么的,听起来还是很美妙的...

比如周末在家里“躺尸”无聊的时候,让机器人给你讲个笑话什么的...



说正经的,接下来为大家奉上开发“上手秘籍”

两步教你解锁机器人的花样“聊天技能”



清帆项目 | Rokid语音AI技能创意开发

Rokid是一家强大技术储备的人工智能公司,曾被《乔布斯》杂志评选为2016年度全球最有潜力的50家AI公司之一。Rokid开发者社区与清帆开展深度合作,通过开放社区的自助服务API,开发工具,文档和代码示例,使用Rokid技能工具包,开发者可以通过将自己的技能添加到Rokid,来创造出引人入胜的语音体验。。比如▼




如何解锁

亲测,超容易上手

任务1:创意征集(2017.11.13 — 11.19)

了解Rokid技能开发工具并结合Rokid产品特性,从音乐、有声内容、儿童内容、游戏、娱乐、工具等技能分类中任选一类,发挥创意描述一个技能场景,并提交技能开发创意报告。

任务2:技能开发(2017.11.27 — 12.10)

根据任务1成果描述的场景,使用Rokid开发板(由Rokid提供)进行技能开发,在Rokid开发者社区提交技能,并对开发的技能以视频的形式进行演示。


除了能学会超酷的语音开发技能

你还有机会拿到这些奖励

1. 获赠Rokid开发板

获得项目方认可的前三名技能开发者将各获得一块Rokid开发套件;



2. 与Rokid大Boss的交流机会

Rokid CEO将邀请表现优秀的参与者至Rokid总部面对面沟通交流并为前三名团队颁奖;



3.直播培训

Rokid开发者社区团队将对“如何开发语音技能”进行直播培训;

4.工作机会

项目中表现优秀的参与者将获得Rokid公司实习Offer;

5.项目经历

按要求完成全部任务的参与者,可获得清帆在线项目经历;

☟☟☟

So,要不要来解锁

你的第一次语音AI开发经历呢





↑扫码加入项目↑

项目咨询微信3138932588

— End —

前文部分内容作者:李烨,现就职于微软(Microsoft),曾在易安信(EMC)和太阳微系统(Sun Microsystems)任软件工程师。先后参与聊天机器人、大数据分析平台等项目的开发。微信公众号:yuesiyuedu






戳“阅读原文”,立即加入项目!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: