如何让机器人像人类一样听懂世界上的每一声响动

别光在安静的房间里待着,我们得让机器人像人类一样听懂世界上的每一声响动。比如在嘈杂的餐厅里,你想让人帮你找服务员点菜,它得先听懂你喊的那句话。这就好比给机器装上了一双会抓重点的耳朵,要是学不会这门技术,智能体就没法真正跟人聊天。想让机器做到这点,得走三步:第一步把混在一起的声音拆分开来,用计算听觉场景分析(CASA)或者深度聚类的方法把一堆乱糟糟的音频流变成一条条单独的“事件”;第二步通过卷积神经网络(CNN)或者循环神经网络(RNN)来判断这是谁、在说什么;第三步还要把听的东西和看到的、读到的东西合在一起,就像人一样眼观六路、耳听八方。要想在这方面更进一步,就得攻克那个经典的鸡尾酒会问题,让机器在选听和处理声音上更像人。还得让视觉和听觉配合得更好,别让一个模态太厉害盖住了另一个。最后要让机器在很多不同的地方都能听懂话,这就得先在海量数据上练一练,遇到新环境再稍微调调参数。至于数据不够的问题,可以用一些自监督或者半监督的方法来帮忙。 丰田HSR这款护理机器人,想在一个充满混响的家庭环境里追踪多个声源。这个场景里有很多麻烦事:卧室、客厅、厨房都有高回声,电视、冰箱和婴儿哭声让周围充满噪音,再加上机器人自己还有老人们都在动,这时候想听清楚就变成了一个大难题。为了搞定这个问题,技术上要从麦克风阵列开始做起。先做降噪、回声消除和语音活动检测(VAD)把声音理一理。接着用到达时间差(TDOA)和广义互相关(GCC)算法来锁定说话的位置。再用盲源分离(BSS)加上深度学习U型网络把重叠的语音拆分开来。然后用粒子滤波或者概率假设密度(PHD)滤波来估计到底有几个人在说话以及他们怎么走的位置,最后用K-均值聚类把这些人对号入座。还得把视觉信息比如人脸和唇动也拉进来一起分析。 把这些东西装到机器人上可不容易。计算资源有限不说,还得做到实时响应才行。比如定位的误差不能超过几厘米,不然搞不好就会误抓伤人。而且算法要在一块小小的嵌入式板子上运行得非常快才行。 Pepper机器人想用WaveNet技术让硅芯片拥有情感。情感语音合成可不是简单的读一遍文章那么简单,而是要让机器像演员一样有情绪。核心方法有几个:用效价—唤醒度二维模型来控制情绪的变化;通过采集少量语音来克隆别人的声音;还要让头部、眼睛和身体动作跟语音情绪同步起来。 不过真正把这玩意儿用起来也挺费劲。得平衡好算力问题;要把大模型变小装进机器人的身体里;还得把语音合成模块集成到NAOqi框架里去;最后还要让灯光颜色跟着情绪变。未来它能做的事儿可不少:在医院大厅用情绪语音安抚排队的人;给小朋友讲故事时调整语调让故事更生动;甚至可以用你熟悉的人或者明星的声音陪你聊天。 战场机器人要在枪林弹雨里听懂紧急口令。它们得先满足像GB/T 28181、GB 50348这样的军用标准。关键技术在于用功率归一化倒谱系数(PNCC)和短时能量分析来找准语音的起止点;再用波束形成或者空间谱估计把噪音压下去。之前的“反恐突击-2019”挑战赛就是用排爆场景的标准来测它们能不能听明白口令并且少出错。 要保障系统能在战场上正常工作也不容易。硬件上得用高灵敏度的麦克风阵列加上低功耗的嵌入式单元;还要通过高温、低温、湿热、振动这些极端环境的测试。软件上算法得跑得飞快才行;最后还要把实验室的指标拿到真正的战场上验证一下。