在找機器人女友前,你還需要看下這篇最強自然語言處理科普貼
原文 http://www.36kr.com/p/219209.html
電影《 Her 》里,語音交互成為普遍的交互方式:孤獨的作家西奧多,有語音操控的隨身計算設備,用語音撰寫感人的書信安撫受傷人,還找到了“機器人女友”莎曼薩。
作為一個懶人,每次看這部電影,都對語音交互充滿期待。這一天真的就那么遠么?造出機器人女友真要到電影里的2025年么?我也找出門問問的CEO雷欣分(ke)享(pu)了下。
造出莎曼薩需要分幾步
打造莎曼薩這樣的機器人,本質上是建立一套自然語言操作系統。這背后最重要的工作應該是自然語言處理,主要包括: 語音識別、語義分析、語音合成 。
模擬出像莎曼薩那樣迷人的聲音,就是語音合成。這個過程其實可以理解成語音識別的反過程。現在有不少開源的項目,簡單合成并不困難,但是如果要合成和具體某個人的聲音,就需要個性化定制了。
僅有語音識別、語義分析、語音合成這些初級技能,薩曼莎肯定就像一般韓劇里的女主,顏值超高,智商超低。要真正討人喜歡,還需要自然語言搜索、智能推薦這些高階技能。
這個看起來挺抽象,舉幾個例子就很容易懂了。
-
語音識別:語音輸入法、微信的聲音轉文字就是最典型的案例。
</li> -
語義分析:Siri、微軟小冰、小娜就是比較典型的案例了。
</li> -
自然語言搜索:比如Moto360視頻里展示的語音提問、搜索。
</li> -
智能推薦:還沒有看到明顯的案例,像《 Her 》里莎曼薩那樣主動提供建議,這個還是有點難度的。Google現在也在做這個,當你達到某個地點時,會主動語音推薦一些可能你需要的東西。
</li> </ul>造出莎曼薩還有哪些困難要解決
要造出莎曼薩,當然不是一件容易事,還有很多問題要解決。
一、語音識別
1、算法
最近幾年,算法方面基本有了定論,深度學習(DNN、RNN)已經成為核心算法,但是還沒有大規模的實踐,而且有好多問題要解決。
(1) 噪音:人在噪音環境下,也很難聽清楚別人在說什么。而算法只能解決部分問題。之前小魚在家的 CEO 宋程楓就表示他們花費了大量的人力物力財力解決噪音問題。
(2) 方言:這個就果斷不解釋了。你確定你能聽懂全國各地方言么?更何況是機器呢。
(3) 遠場:聲音的傳播會隨著距離指數衰減。當人距離聲源遠時,可能就很難聽清,機器也一樣。
2、數據
機器學習是現階段最好的方法,但需要大量的數據訓練模型和機器,一般往往需要上萬小時的聲學、語音數據學習。聲學數據可以從網上挖掘,但都是通用的數據資料。而要做得深入、更好用,還需要某個領域的垂直的數據,這可能就需要企業自己去搜集數據。
3、工程
語音識別其實是一個浩大的工程,涉及到:大規模訓練、CPU/GPU 集群、云端實時識別等。要做到這些都不容易。如果是移動端,還需要考慮在線 / 離線結合的問題,同時適配眾多的手機機型,這一點也不容易。
二、語義分析
1、算法
我們說的話往往是口語,同樣一句話有可能有十種說法。比如,可能會說“我想去從東直門去西直門”,也可能會是“去西直門,從東直門”。人很容易理解這些,但對機器來說,就太難了。
另外,與語音識別類似,NLP 處理也要做很多領域的定制的結構化的學習方法。很多時候,人類都無法正確、準確的描述問題,很難從對話中或者直接搜索得到他想要的確切信息。這就會增加機器理解語義的難度。這種時候就只能一邊猜,一邊問了,用戶體驗就會下降。
2、數據
機器學習需要大量的數據學習,但目前還缺乏INDOMAIN的標注數據。有些時候,一個詞就可以指代不同的東西;有些時候,一個固定的聲音,還會 有不同的文字和解釋。比如,中文的 shangwujiudian,既可以理解成上午 9 點,也可以理解成商務酒店;英文的 buy 和 by 同音,但意義并不同;用戶說周杰倫時,既有可能是想知道周杰倫的歌,也可能是想看周杰倫的百科。同時,目前現有的自然語言的數據質量比較差,還需要做篩 選,什么樣的可以用,什么不能用。
另外,現有的數據還不足以建立起大規模的知識圖譜,還需要挖掘大量的知識,放在庫里,并不斷積累。比如,提到劉德華,一個優質的知識圖譜,應該涵蓋劉德華的生平經歷、歌曲、電影等各種資料。
3、工程
自然語言處理的過程比較復雜。聲音信號轉化成文字后,還需要后期處理,比如分詞、分類、糾錯,確定是哪一類信息,明確用戶要做什么事,再找到關鍵參數。這些復雜的流程都對應著龐大的工程。
何時能夠造出莎曼薩?
雖然有不少困難,但目前在語音識別、語義分析方面都還是有進展的。
語音識別方面的進展是突破性的。深度學習最成功的應用就是在語音識別上。首先,顯著提高準確率,并簡化了系統,而且可以更有效的利用海量數據。據說語音識別的準確率已經從 80% 多提升到了 90% 多。
語義識別方面也有進展。2 年前,Google發布“知識圖譜”,為用戶提供有完整知識體系的搜索結果,為機器搭建更豐富的知識圖譜。IBM Watson 也做過深度問答系統,2011 年參加智力競賽節目“Jeopardy!”,戰勝了兩位人類冠軍選手。目前,手機廠商也推出了比較成熟的語義識別產品,我們最熟悉的就是 Google Now、Siri、Cortana。
近幾年,隨著智能硬件興起,在智能車載、智能家居領域,傳統輸入方式受限,語音交互開始被接受,交互技術逐漸成熟,近幾年語音交互使用量已經開始增長,今后 2-3 年會更普及。但要做出莎曼薩,估計至少還要 10 年。
莎曼薩能說中文(普通話)嗎?
這個肯定是可以的。不過,與英文相比,中文(普通話)識別與分析的難度更大。現階段,英文句法分析準確率能達到 90% 以上,但中文只有 80% 多,這主要還是因為漢語太博大精深了。
(1)變調:漢語里兩個以上音節在連續的時候,由于受前后音節的影響,有些音節的聲調會發生變化。普通話的連讀變調在上聲字里表現最為突出,識別難度更大。
(2)同音:漢語音節少,造成的一個后果就是同音字太多,聲音轉文本信號的難度增加。
(3)多意:漢語一個字、一個詞往往能表達多種含義,比如“聞”既可以指嗅,也可以指聽。
(4)沒有形態變化:比如“建議”,既可以是名詞,也可以是動詞,但英文里就直接用 suggest 和 suggestion 兩個詞表示。
(5)難分詞斷句:像“小王死了爸爸”這種句子,斷句不同意義就不同,漢語里有很多。
(6)語序靈活:比如,“海淀橋怎么去,從東直門”在中文里是能被理解的,但在英文里一般有固定的語序。
(7)多成語、俗語、俚語:這個就不解釋了吧,想想我們高考的時候就天天被虐,機器的日子估計也不好過呢。
不過,目前國內也有幾家做自然語言處理相關的創業公司,比如訊飛、云知聲、出門問問等,一直在做相關的研究和探索。目前在安靜環境下特定領域定制過的語音識別系統識別準確率已經相當高。但對于語音交互而言語音識別不是瓶頸,對語言的理解更為重要。
[ 36氪 原創文章,作者: 小石頭]
</section></div>本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!