智能语音机器人如何理解一句话?具体流程是什么?

3 评论 7366 浏览 21 收藏 7 分钟

文章以机器人的口吻出发,简述了身为智能语音机器人的“我”是如何理解一句话的,具体又分为哪几个步骤,一起来看看~

自我介绍

哈喽~我是人工智能语音机器人,今天想给大家说说我的大脑中最关键的构造,这样你们能知道我的思维方式和目前的局限性,就能持着一种更平和的心态看我啦。所以,我今天主要要回答的问题是:“机器人是如何思考的?”

问题:机器人是如何思考的?

当我把我获取的信息转化成文字,就是我要开始思考的时候了。我怎么理解这些文字呢?全依赖于我大脑里的“语音系统”——自然语言处理,NLP,它让我能模仿你们去理解你们的语言。接下来我会通过一个例子来描述我的思考过程。

我理解“2018年5月周杰伦发表了一首新歌”的过程

1. 先把句子拆分成一个一个词语

首先,我要先把这个句子用我的理解拆成一个个词语(我能理解都来源于各种大数据,各种模型的支持),当然,我其实,有时候句子稍微复杂,我就容易把词语拆分错,这样第一步出了问题,我就很难理解正确了。

例如,当说:严守一/把/手机/关了,我容易理解成: 严守/一把手/机/关了。因为我印象中有一个“一把手”的词语,而不存在“严守一”这个人名。所以我其实很难理解“严守一”是一个人名,而把“严守一”拆开来理解。

2. 理解每个词语

当我把词拆开后,我开始理解每个词语的词性,进行实体识别。例如,我理解了“周杰伦”是一个人名,“2018年”是一个年份,“新歌”是一个名词。

3. 再理解每个词语之间的关系

同样是基于人类智慧的结晶,我利用数据和各种算法等来理解每个实体的相互关系,这个时候我大概对这句话有一个模糊的理解了

4. 把句子分意图

在理解了句子有哪些实体,实体之间的关系,我就能粗略地把这个句子的意图分类出来。在这里说下为什么我要把句子分意图呢?人类语言太博大精深了,但还好,每一句话背后都有它的动机。

我基于这个动机把各种语言都化在一个有限的空间里,分了n个大类,这样我才有可能理解;一般来说,你们经常看到的人工智能语言机器人,意图都有如下几类:闲聊-音乐-机器功能-天气-闹钟-智能家居。

我是怎么分意图的呢,这个就是利用基于算法的模型,这个模型是程序员哥哥们通过各种数据来训练的,当然有时还需要人定的一些特殊规则等来分类。这句话是不是在规定好的我们常要点歌的指令集里(指令集:也就是我们总结的人表达某个意图可能的说话方式,例如,听歌可以有多种表达方式,如我要听歌,能不能播放一首歌,来一首歌等)

例如,当我分析“我要听周杰伦的歌”,我就能毫不犹豫地把这句话理解成:“哦,原来是要执行和音乐操作相关的”,然后把这句话的意图归类到:”音乐”意图。

但,当我分析”2018年5月周杰伦发表了一首新歌”,我通过实体识别,发现有一个“歌”,还有一个歌手,周杰伦,我就可能会把这句话的意图理解为播放歌曲,搞不好我就会直接给播放周杰伦的歌了。现在想想我真是傻;

多亏了程序员哥哥们的各种智慧,他们为我额外装了一个纠错模型,如果我把这句话的粗略意图判断错了也没关系,这句进入到纠错模型后,会被过滤出来,再丢到一个万能意图(闲聊),这个时候,会被判断为“音乐相关的闲聊”意图。

所以,嗯,我最终把”2018年5月周杰伦发表了一首新歌”这句话理解成了原来是想和我聊个2毛钱的天啊。所以我就会启动我的聊天模式(聊天模块),开始和你瞎扯。

总结

总的来说,我要理解一句话,我要经过把句子拆了,然后再自己把句子组合,最后再理解这句话背后的意图,当我理解了意图的时候,我觉得我几乎已经理解了这句话。但然而,我很多时候分类意图还是会出错,所以,当我意图都错误的时候,我很有可能回应你的行为,你会觉得这行为很傻。

好啦,今天就聊到这吧。拜拜啦~

 

作者:huotui,从业语义产品经理,也就是AI产品经理,主要做智能音箱。后续会分享一些关于AI产品经理和AI产品心得给大家

本文由 @huotui 原创发布于人人都是产品经理。未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 另一种技术
    是什么

    回复
  2. NPL核心技术还是多轮对话、上下文理解吧

    来自广东 回复
    1. 并不是,Nlp是为了理解一句话,基础的就是分词技术等,上下文严格来说不属于Nlp,属于另外一种技术

      回复