最近不少人在后台问我,说自己在外面用语音输入,旁边一吵就识别得乱七八糟,有没有什么办法能救一救。其实这个问题,做语音识别的圈子早就在想办法了,其中被提得比较多的一个方向就是声对。说白了,声对就是让设备不光听你说了什么,还要去“对”一下声音是从哪来的、周围都有哪些噪音,然后再决定哪些该留、哪些该扔。我自己拿几款带声对功能的耳机和会议麦克风试了小半个月,下面就把真实感受和一些踩过的坑,跟你们唠一唠。

很多人以为语音识别不准,是因为模型不够聪明。其实在真实环境里,一大半错误都来自噪音干扰和混响。你在地铁上说话,声音传到麦克风的时候,已经混进了报站声、风噪、旁边人聊天。传统降噪的做法是直接压低所有非人声频段,但这样容易把你自己的声音也削掉一块,识别出来就缺字。声对的思路不太一样,它会同时分析多个麦克风收到的信号,算出说话人和噪音源在空间上的位置差异。简单讲,就是先“对”一下方向,再决定保留哪一路。我实测在路边打电话,开启声对之后,对方说听我这边明显干净了,语音转文字的错误率也降了不少。这里要提醒一句,声对不是万能药,如果噪音源和你在同一个方向,效果会打折扣,这也是我踩过的坑之一。
我专门挑了三种场景来试:办公室开放区、地铁车厢、还有家里开着电视。办公室这种持续性的键盘声和空调声,声对处理起来最轻松,识别准确率基本能到九成五以上。地铁里就比较考验算法了,因为噪音是忽大忽小的,但比起不开声对,还是能明显感觉到识别出来的句子更完整,不会动不动就断片。家里开电视这个场景有点意思,如果电视声音和你说话方向差得远,声对能把电视声压得很低;但如果电视就在你正前方,它偶尔会把电视里的人声也当成目标,这时候就得手动调一下拾音角度。所以我的建议是,买带声对功能的设备,最好选那种能自己调指向性的,别买完全固定的。

第一,别把麦克风捂得太严实。有些人用领夹麦喜欢藏在衣服里面,声对需要多个麦克风同时工作,你堵住一个,它就算不准方向了。第二,说话的时候尽量别来回转头,虽然声对有跟踪能力,但转太快还是会丢。第三,如果你用的是软件里的声对开关,记得看一下有没有“强降噪”和“弱降噪”的选项,安静环境下开弱降噪反而更自然,强降噪会把你的呼吸声都干掉,听起来很怪。第四,定期检查固件更新,我手上一个麦克风就是更新完固件之后,声对的响应速度明显快了一截。这些小细节看着不起眼,但实际用起来差别挺大的。

说实话,声对也不是没毛病。最明显的就是功耗,开启之后设备耗电会快一些,无线耳机尤其明显。还有就是成本,带声对的硬件通常要贵几百块,预算有限的话得掂量一下。另外,声对对突发性噪音的处理还是不够完美,比如旁边突然有人拍桌子,那一瞬间识别还是会抖一下。不过整体来看,如果你经常需要在嘈杂环境里用语音输入或者开线上会,声对带来的提升是实打实的。我现在的习惯是,只要出门就开着声对,回家安静环境就关掉,这样既能保证识别准确率,又不会白白耗电。希望这些经验能帮到正在纠结要不要用声对的你。