为什么Siri总是像个智障?智能助手背后的技术到底有多难?

导读:本文带你简单了解一下智能助手背后的会话式人工智能技术。

作者:木羊同学

来源:大数据DT(ID:hzdashuju)

01 大话智能助理

智能助理应该是当前人工智能技术最为成功的落地方向之一。我还记得,当初iPhone4S率先推出著名的人工智能助理Siri,马上就有不少评论家预测,Siri也将像iPhone一样,为人类开创一个全新的时代,而调戏Siri也成了当时最流行的游戏之一。当时我们在看视频演示的时候,心中都对Siri充满的期待。

我们一直说,智能手机智能手机,但以前总感觉所谓智能手机,也就是传统的手机+迷你版的电脑,“智能”体现在什么地方呢?现在有了Siri,手机真的能像个老友一样和你聊天打屁,感觉要名副其实得多了。

我们都听过智能助理,可是你是否认真想过一个问题:智能助理对于用户,到底意味着什么?也许不同人能给出很多不同的看法,不过,业界最常见的答案是,提供了全新的交互界面。

我们说Windows是桌面霸主,它的成功,就成功在提供了在当时来说相当友好的交互界面,相比黑乎乎的命令输入,Windows的桌面简单、直观,一下降低了PC的使用门槛。

而智能助理则是在这个已经不太高的门槛上再打一个“骨折”,几乎不需要额外的学习曲线,不用学习使用键盘鼠标,也不用熟悉系统界面,只需要用对话这种最自然的交互方式就能操控机器。相信在今年疫情期间,很多人说话最对的对象,就是家里各式各样的智能助理,譬如智能音箱。

02 新的交互界面

采用对话作为交互方式有很多优点,我觉得有两样最为重要。一样就是自然,人类从一出生就开始学习的技术也就两样,除了蹒跚学步,就只有牙牙学语,说话应该是我们日常中最常见也是最习惯的交互方式。

另一样是便捷,回想一下,手机也好、电脑也好,虽然给我们带来了种种便利,但也禁锢了我们最为重要的双手,而现在回归了用说话的方式操控机器,双手就被解放出来可能干别的事情。

正因为这两样有点,现在智能助理的应用场景很多,所以产品也很多,智能手机、智能音箱,甚至不少汽车也将智能助理作为重要卖点,现在我家电梯里经常播的一个汽车广告就是这样,里面的车载智能助理细心得就像亲妈一样,车主一回到车里就各种嘘寒问暖,就差非要加上一条秋裤。

不过,从今天往回看,智能助理的优势很大,推出自然是理所当然,但是,智能助理背后运用了一整套互相配合的智能技术,发展也是一波三折充满坎坷。

就拿Siri来说吧,别看今天Siri好像是一位高冷的知识女性,在它波折的成长路途中,说伤痕累累都是轻的,感觉好几次都差点在一片唾沫星子当中遭到灭顶之灾。

Siri的槽点很多,第一个就是语种。没错,虽然Siri可以算是iPhone 4S最大的卖点,很多人干脆就是冲着Siri去果断卖了肾。可是到手一看,发现自己吃了没文化的亏,人家Siri只听得懂英文,说完Hello以后,95%的用户都猛然发现自己像是头一次相亲一样,接下去就不知道该说什么好,词穷了。好不容易找到点句子吧,结果口音还必须纯正。

在大多数时候,Siri需要识别半天不说,最后返回结果经常是牛头不搭马嘴。语音识别时间长、识别结果不准在后来很长一段时间都是Siri的重要槽点,给人一种蠢笨难忍的感觉。哪怕后来iOS 6以后,Siri终于学会了中文,仍然距离那种与用户谈笑生风的形象相去甚远。

03 智能助理的耳朵和嘴巴

当时大家对智能助手还很新奇的时候,最想知道的问题之一,就是这个小葫芦里面究竟装了一副怎样的药,是不是真的把人缩小了然后塞进里面去。

我当时就十分好奇Siri的原理,究竟要做到以自然语言的形式,做到自然对话来控制机器,背后是怎样的一套机制在运行呢?但是查了好多资料,感觉大家也都还不甚清楚,只是模模糊糊说很高大上。

大家都容易高估不了解的东西的难度。其实,智能助理还真不太“复杂”,说起来,结构和我们熟悉的电脑还十分类似。

先说外设,智能助理要开口说话,同样需要一套输入输出设备,具体来说,我们不妨将智能助理的大脑当作电脑的CPU,CPU是需要得到数据输入,然后经过计算,在将结果输出,而所谓外设,就是能够能够将外部的语音转化为机器能懂的输入,以及将机器经过运算得到的结果转化成语音输出。

这是两项独立的任务,当然也都是采用人工智能技术来完成,分别为负责将语音转化为机器输入的自动语音识别技术(ASR),以及将结果转化为语音输出的语音生成技术(TTS)。这两项技术虽然听着复杂,背后的技术原理也确实足以写一本书,不过已经发展得较为成熟,人工智能方面有较为丰富的技术积累。

简单来说,ASR负责将声音转成文本,而TTS则负责将文本转成声音。具体就不介绍了,市面上已经有太多类似的技术,譬如微信就有声音转文本,这就是典型的ASR,而许多读书工具都有AI朗读功能,虽然吧效果一言难尽,从感情到灵魂一路都缺,不过用来理解ASR应该没有问题。

04 智能助理的大脑

最难也是最复杂的部分,就是实现智能语音助手的大脑,通常可以切分为三项独立的任务,分别为自然语言理解(NLU)、对话管理(DM)和自然语言生成(NLG)。这里出现了很多缩写,其实核心就是自然语言处理(NLP)。

自然语言处理,被誉为人工智能皇冠上的宝石,也是现在人工智能研究的重点方向,不断有模型推陈出新,很有一点一代版本一代神的意思。现在NLP的扛把子叫Bert,各大顶会只要和NLP沾边,都会现在肯定都会有一个占比颇重的环节,叫花式玩弄Bert。

说远了说回来。在智能助手的大脑中,NLU、DM和NLG就是NLP的两项重要任务。

NLU很好理解,人的语言和机器指令有个很大的不同点,就是前者属于非结构化数据,而后者属于结构化数据。非结构化数据机器是听不懂的,必须转化成结构化数据,机器才好理解和执行。那谁来扮演中介商呢?就是NLU。道理很好懂,但是实现很复杂,还有无数的坑在前面等着大家去填。

在智能助手中,NLU的角色是这样的,首先ASR将声音转成文本,当然,是非结构化文本,然后将这些文本输入给NLU,有NLU做一些阅读理解,把理解以后的意思按固定格式填写,也就是形成机器能懂得结构化文本,交给下游环节处理。

NLU的下游环节就是DM,对话管理,名字起得有点莫名其妙,其实就干两件事,一件事是状态追踪,解释起来很复杂,不过可以简单理解为根据上下文理解当前输入的意思,也就是做了个阅读理解。另一件事就是动作生成,你得根据人说话的意思作出回答。

那NLG是什么呢?和NLU正好反过来,是文本生成。上游不是通过DM作了阅读理解,输入了结构化文本吗?那根据这个输入,咱得通过动作生成思考一下该回答啥,一般的机器知道回答个Yes和No就了不起了,顶多再多给一点选项,不过光这样一点也不像自然对话,还得扩展扩展,也就是根据某个意思,“生成”一点文本内容,这就是NLG的工作。到了这一步,整条链子就串起来了。

现在这种智能助理应用已经非常多了,而还有一种类似但应用更广的技术,叫对话机器人技术,譬如双十一肯定能遇到的淘宝机器人客服,这种客服不需要听说能力,直接用文字对文字的形式进行沟通,相信看完了上文,大家应该也清楚对话机器人技术的基本原理。

不过,上面只是很浅显地介绍了会话式人工智能技术,还有很多细节的问题,譬如中文分词问题,需要在实际实践是加以解决。我推荐一本书,叫《会话式AI:自然语言处理与人机交互》,里面系统地介绍了会话式人工智能的相关内容,想要更深入了解该技术的同学可以仔细阅读。

关于作者:莫凡,网名木羊同学。娱乐向机器学习解说选手,《机器学习算法的数学解析与Python实现》作者,前沿技术发展观潮者,擅长高冷技术的“白菜化”解说,微信公众号“睡前机器学习”,个人知乎号“木羊”。

延伸阅读《会话式AI:自然语言处理与人机交互》

点击上图了解及购买

转载请联系微信:DoctorData

推荐语:腾讯、阿里、国家标准委&AIIA人工智能专家多年大型项目经验总结,详解NLP和人机交互核心技术,从技术、算法、实战3维度讲解聊天机器人原理、实现与工程实践。

更多精彩回顾

书讯 | 12月书讯 | 年末上新,好书不断

书单 | 机器人时代已来!推荐几本机器人学硬核好书

资讯 | DB-Engines 12月数据库排名:PostgreSQL有望获得「2020年度数据库」荣誉?

干货 | “九章”计算机助力我国首次实现“量子计算优越性”

收藏 | 你熟悉的新华书店,已经变样了 | 数字化案例

上新 | 全球首本 | 系统介绍深度学习计算机视觉方法

点击阅读全文购买

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/39332.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文把 JavaScript 中的 this 聊得明明白白

文章目录 1.this 是什么?2.this的指向2.1 全局上下文的 this 指向2.2 函数(普通函数)上下文中的 this 指向2.3 事件处理程序中的 this 指向2.4 以对象的方式调用时 this 的指向2.5 构造函数中的 this 指向2.6 在 类上下文中 this 的指向。2.7…

投递简历用什么邮箱最好用?

春招已经开始了,你却还没明白一个问题:为什么你的简历邮件,没有回音?但也许企业根本没有收到你的邮件。邮件,其实是求职中一门不可缺少的基础课。选什么邮箱?邮件如何命名?简历如何命名&#xf…

程序员如何写简历

【面试】程序员如何写简历 一份好的简历可以在整个申请面试以及面试过程中起到非常重要的作用。 一 简历的重要性 简历就像是我们的门面,是 HR 对我们求职者的第一映像,它在很大程度上决定了是否能够获得面试机会。 网申:简历必然经过 HR 的…

大厂程序员手把手教你如何写简历!!(附简历模板)

本文 https://github.com/youngyangyang04/leetcode-master 已经收录,里面还有leetcode刷题攻略、各个类型经典题目刷题顺序、思维导图,可以fork到自己仓库,有空看一看一定会有所收获,如果对你有帮助也给一个star支持一下吧&#…

程序员如何写一份更好的简历

简历中的常见错误 1. 信息过多,缺乏重点 信息过多的常见表现是十几行的技能列表, 我举一个血淋淋的例子: 20 行的技能列表,这位求职者开始就把自己了解的所有工具都列出来,希望能够突显自己的经验和学习能力&#xf…

邮箱投递简历,如何正确书写正文和主题?

前言 又快到了一年一度的春招和毕业季。身边还有许多准备从事IT行业的朋友没有找到工作,基兄特此整理了一份关于自己找工作的经验(也参考了网上的部分数据和内容)。 本文的内容主要分为邮箱投递简历,如何正确书写正文和主题&#…

【干货】如何打造HR无法拒绝的简历?测试开发大牛带手把手你写简历!

通过率90%,优秀的软件测试简历长什么样? 也许口才好的人会觉得简历不重要,能说就行了,那是因为你没有体会过石沉大海的感觉! 很多人觉得疑惑,为什么我投了那么多简历,都没有接到面试通知&…

chatgpt赋能python:Python获取数据:更高效的数据获取与分析

Python获取数据:更高效的数据获取与分析 Python是一种高级的编程语言,常用于数据分析、机器学习、Web开发等领域。它的简单易学、高效便捷的特点使其成为了许多数据分析工作的首选语言。本文将介绍如何使用Python获取数据并进行分析。 为什么选择Pytho…

chatgpt赋能python:Python预处理:提高数据分析效率的重要一步

Python预处理:提高数据分析效率的重要一步 在数据分析的过程中,数据预处理是不可避免的一步,能否有效地进行数据预处理,对于后续的数据分析效率以及结果的准确性至关重要。Python作为一种先进的编程语言,不仅在数据分…

PHP使用CURL请求微信接口返回为空

先贴请求代码 /*** 发送post请求* param string $url 需要请求的地址* return json $output 返回的json字符串*/ function postUrl($url, $data){$data json_encode($data);$headerArray array("Content-type:application/json;charsetutf-8","Accept:appli…

关于PHP调用openAI chatGPT一些问题

我是直接使用gpt生成的curl代码区调用的 1:windows可能出现代理访问问题,报443端口问题 解决办法:开启代理后,需要到设置 确认这里打开状态 在curl请求里面加上对应的代码 curl_setopt($ch, CURLOPT_PROXY, "127.0.0.1&qu…

【包装类】

1.包装类的分类 1)针对八种基本数据类型相应的引用类型---包装类 2)有了类的特点,就可以调用类中的方法 3) 基本数据类型 包装类 boolean Boolean char Character byte Byte short Short int Integer long Long …

包装类

一.包装类: 1. 包装类(Wrapper Class): Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的。基本类型的数据不具备"对象"的特性(没有成员变量和成员方法可以调用),因此,ja…

包装类概述

Java中有8中基本数据类型,分别是: 包装类就是这8种数据类型所对应的引用数据类型,分别是: - 可能有同学会问:Java为什么要给基本数据类型提供对应的引用数据呢? - 第一,Java是面向对象的语言&#xff0c…

uni-app使用小图标的方式

1.首先我们需要去这里 随便点入一个进入第二步骤 2.把你需要的小图标加入到购物车 3.点击购物车把小图标【添加至项目】 4.最后下载到本地【解压放到项目中去】 5.如下: 6.在main.js里面引入 import ./style/iconfont.css 7.最后就是在页面中直接通过样式类名使…

教你如何用PS制作iOS端APP应用图标AppIcon.appiconset

开发iOS端APP要准备18个不同尺寸的logo,虽然现在有网站提供在线生成APP应用图标,但是这样可能存在泄露高清logo甚至被抢占的风险,下面我将教大家如何用Photoshop制作iOS端AppIcon.appiconset。 其实很简单,我们只要按照Xcode提示做…

【新拟态】左上角标签样式、ICON图标样式、模仿AppStore的应用图标

效果如图↑ <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, minimum-scale1.0"…

老胡的周刊(第088期)

老胡的信息周刊[1]&#xff0c;记录这周我看到的有价值的信息&#xff0c;主要针对计算机领域&#xff0c;内容主题极大程度被我个人喜好主导。这个项目核心目的在于记录让自己有印象的信息做一个留存以及共享。 &#x1f3af; 项目 nginx-ui[2] Nginx 后台管理 UI&#xff1a;…

【总结】1739- 使用 Pake 一键将网页打包成桌面 App

通常&#xff0c;我们说的软件指的是一个可以独立运行的程序&#xff0c;那么我们前端工程师开发的网页也属于软件吗&#xff1f;从计算机的角度来说&#xff0c;网页也是一个软件&#xff0c;但它很少让人归为软件一类。作为一个前端 web 开发者&#xff0c;我一直被桌面 App …