微軟在語音翻譯領域處於什麼水平?目前最高水平的語音翻譯能達到什麼程度?

如此視頻顯示:微軟!請給翻譯留條活路,字幕, @趣覓,在線觀看:

我個人感覺是神乎其神了,而且是英語與德語互相翻譯,有業內人士來解讀一下嗎?


微軟在語音翻譯領域處於什麼水平?目前最高水平的語音翻譯能達到什麼程度?

業界還沒有出現比微軟當時展示的更牛逼的產品或者demo。


個人認為語音翻譯水平的高低本質上還是取決於文本翻譯的水平。

語音翻譯的流程大致如下:英文語音—英文文本—德語文本—德語語音。可見語音到文本的轉化是語音識別技術需要解決的問題,而文本翻譯才是語音翻譯的關鍵。

所以問題就變成了:目前的文本翻譯技術能達到什麼水平?

簡單來說:目前利用word2vec可以訓練出各種語言的詞向量,對詞向量進行PCA降維之後發現不同語言相同意思的單詞近似處於相同的空間點,隨便舉個例子:one 的詞向量經過PCA之後是(0.564,0.382),而德語的one的詞向量經過PCA之後是(0.561,0.380),利用這個性質就可以實現單詞翻譯。同理,訓練模型的時候也可以訓練句子向量,這樣的話就可以實現句子到句子的翻譯。

我認為這應該是目前最先進的機器翻譯技術。因為關於句子向量最新的研究是14年6月底ICML會議上收錄的一篇論文:「Distributed Representations of Sentences and Documents」


首先,我在這個領域就一業餘愛好者,寫過的deep belief network ,平時偶爾看看報,所以我就是來扔塊轉頭的,你叫我說清除我也很難。

首先論文是這一篇:http://research.microsoft.com/pubs/144412/DBN4LVCSR-TransASLP.pdf

我一直沒有認真拜讀過,剛才下班在公車上看了兩眼,比較有趣的地方如下:

第一,這是用deep learning做的,而且不是用Hinton的Deep belief network那一套,而是用了Lecun http://yann.lecun.com/exdb/lenet/ 的convolutional neural
networks 那一路。

第二,這篇論文很有趣的地方在於,眾所周知,過去作speech recognition一般都是用hidden markov model,既然用了deep learning一般也不會想到說再用HMM,因為這是兩個完全不同的模型。但論文里寫道,他們先用Hidden markov model 和 Gaussian Mixture model 訓練了一邊,然後再把轉成deep neural network(這裡我暫時想不明白怎麼轉的),然後在一層層pretrain,最後在做一次fine-tuning。很有趣的地方就是想到用HMM去做一次pretrain,然後再轉到DNN常有的技巧去一層層pretriain加fine-tuning。

盡我所能了,民科就是民科,砸塊磚,等nlp和deep learning大神來詳解了。


英語和德語是近親,都屬於日耳曼語族西日耳曼語支,拋去正字法導致書寫上的差別,從語音上這兩的接近程度幾乎相當於官話中兩個比較遠的方言,從英語中的底層辭彙和德語幾乎是同一套。

也就是說英德的語音互譯,難度差不多就是四川話和東北話互相翻譯的水準。

稍微難一些的是英語和義大利語,然後是和斯拉夫語,再然後是東南亞各種語言。


恰好在這家公司工作 恰好在nlp和speech相關的部門 不過不是做語音翻譯的。。

看到有些愛好者答題,還是非常用心的,贊一個。

最近在讀木心的文學回憶錄,其中一句話「一個人的知名度來自於對他的誤解。」讓我印象滿深的。

對於愛好者而言,誤解是可是可以原諒的,甚至是可愛的作為學術人員,為了某些利益不斷引導群眾誤解也是可以原諒的。但是我還是比較喜歡真相,雖然真相往往不是那麼有趣。

順便解釋下@Zhang Justin的疑惑

但論文里寫道,他們先用Hidden markov model 和 Gaussian Mixture model 訓練了一邊,然後再把轉成deep neural network(這裡我暫時想不明白怎麼轉的),然後在一層層pretrain,最後在做一次fine-tuning。

其實這裡是指用神經網路換掉GMM,也就是用一個HMM-NN代替HMM-GMM來作為聲學模型。而不是用NN代替HMM-GMM。

  • GMM是建模的P(O|S)

  • NN是建模的P(S|O)

  • S是HMM中的狀態,O是一幀語音對應的特徵。

至於pretrain和fine-tuning。

  • pretrain是指訓練一個n層網路,將其除了輸出層的權重作為一個n+1層網路的前n-1層權重的初始值。n從3到N,就得到到了一個N層網路的初始權重。這種做法可以得到一個較好的權重。
  • 用這個初始權重,繼續train,用BP或者二階方法。這叫fine-tuning。

說到這,還沒答題,因為題主所說的語音翻譯,在目前的工程上基本等於:

1.語音識別水平如何

2.機器翻譯水平如何

3.語音合成水平如何

1.很重要,現在有了kaldi,其實大家水平都差不多,差距就在數據。

2.很重要,機器翻譯,這個我覺得google的翻譯也確實不差。但是無論誰,還是遠沒有達到「信」的水平!!

3.很重要,尤其是對於產品而言。但對於實用而言當前不是那麼重要。

因為現在並沒有什麼技術難度了,主要是個工程問題,很多比微軟工程能力更好的公司都是可以拿出極具震撼力的demo的,但是做這件事有什麼利益呢,只有不差錢的巨頭公司才會花錢做這些事。

但是,還是要為我廠說些發自內心的好話,微軟確實聚集了太多的牛人,微軟做的研究,遠不止大眾看起來的那樣(比如Simon Peyton Jones,Chris Bishop這些大牛們,不說大眾,很多程序員可能一輩子接觸不到haskell),只是很多東西沒有很好地轉化為產品而已。另外,說到語音,kaldi之前的HTK就是微軟買下並且開源的。


本篇答案的核心思想就是:這東西技術不新也不夠成熟,但微軟此舉是個創舉+好策略。

楊超和dy.zhao的回答已經很詳細了,補充一點技術細節。

正如楊超所說,這件事整個看的是三個子系統的效果:語音識別、翻譯、語音合成。

就識別來說,IBM、M$、Google(以及Apple)等大廠肯定是業內領先的。原因很簡單,因為他們有足夠多的數據。目前為止,業界前沿的語音識別系統應該大多是HMM-DNN混合系統,其原理是用DNN為每一幀語音分類,確定屬於各個音節的概率,再用HMM根據這些概率的觀察,結合語言模型等高層信息做文本輸出。這裡deep learning的用處就是一個強力分類器,相比傳統的HMM-GMM系統而言,DNN比GMM對語音的分類能力強太多了,而且當數據多、模型大的時候效果非常顯著(對比可以參見[4])。至於這裡為什麼會用到HMM-GMM模型,其實是因為我們需要給DNN分類器一個訓練目標,而現有的HMM-DNN系統通用的訓練方法,就是先訓練一個足夠好的HMM-GMM系統,以GMM的輸出作為類標,訓練DNN分類器。直覺上來說這有點類似一個EM的過程(和GMM訓練一樣),就是先給數據用模型假設打類標,再用類標更新模型參數,如此往複。因為現在我們能訓練的DNN規模還不能完全過擬合GMM的類標,所以這個EM過程是有效的(實際上相當於我們在用DNN的規模做正則化)。學界對HMM-DNN(包括HMM-CNN)語音系統已經有了很多研究,所以這種系統已經成熟地商業化,並且得到了很好的效果。最近學界一部分動向是end-to-end speech recognition,即拋棄HMM,整個語音識別系統從信號輸入到文字輸出都用神經網路完成。然而這方面研究還不多,系統效率也很差(訓練、測試都是),雖然方法很有趣,但估計離投產還有一定距離。雖然現在大部分業界HMM-DNN語音識別系統在大多數情況下已經很穩定,但距離解決語音識別還有很多路要走。

機器翻譯來說,也是一個數據為王的任務。當然M$、Google等大廠也走在前沿。之所以說數據為王,是因為機器翻譯早已經脫離了需要人手工編寫模板指定翻譯順序、翻譯風格等的階段,而是直接在並行文本(Parallel Text)訓練機器學習系統。這個想法很簡單也很有道理:如果我知道兩段文字是不同語言里同一件事的對應,那我大概可以根據詞頻(和少量的語法知識)猜出裡面詞的對應。不過值得注意的是,現在大部分學界(包括大廠)用的基於機器學習的翻譯模型還都是接近線性的模型,大多只能做局部詞序的調整,這對歐美語系這種同源語言通常問題不大[1];但對亞洲語言和歐美語言的互譯,一方面投入少,另一方面問題難,還有很多問題沒有解決[2]。就算翻譯達意了,一些口語、敬語、書面語的細節,想來還需要很多努力才能解決[3]。([2][3]來自google translate,實驗了一下bing translator在翻譯水平和語音合成效果上都略勝一籌)

語音合成相對來說是三個任務里最成熟的,而且大廠們都有很不錯的解決方案了(包括M$、Google,但不包括Apple——Siri的聲音還是很奇怪)。除了很奇怪的文字序列,現在大家可能很難在google translate上聽到奇怪的英語、中文的合成語音了[2][3],因為一方面這些語音是基於採集真人語音數據合成的,另一方面現代語音合成系統已經可以考慮句子結構(標點、停頓)和語氣(重音、英語里的升降調)了。

上面的結論是,儘管很多技術還不成熟,M$也絕對是業界個中翹楚,這和它多年積累的數據以及科研實力不無關係。接下來要說,M$此舉是個非常聰明的舉動。首先,它認識到了儘管整個系統里還有兩大塊(識別、翻譯)的問題沒有完全解決,但英語的識別水平已經不錯,而英德翻譯非常簡單。這樣一來,一方面M$可以做出非常好看的demo讓業界(以及不明真相的群眾)為之驚嘆,另一方面隨著更多人的使用,M$可以進一步收集數據來提升這些系統的性能。如果他們在skype界面上放一些反饋信息、讓用戶自願加入到反饋項目中,那skype同聲傳譯業務一上線就可以開始收集很多系統失誤的負例,經過他們的語言專家給出正確結果之後,就可以作為系統的訓練數據,進一步提升整個系統對各種環境和輸入數據的健壯性。

不過這也只能把現有已經解決的不錯的問題解決的更好,想要進一步擴展疆域,解決複雜環境的語音識別、口語識別,以及複雜語言對的機器翻譯、甚至口語翻譯,目測還是要靠腦洞大有閑心的學術界了。

參考文獻

[1] http://www.davidpbrown.co.uk/jokes/european-commission.html

[2] https://translate.google.com/#zh-CN/en/%E8%AF%AD%E9%9F%B3%E8%AF%86%E5%88%AB%E4%BB%8D%E7%84%B6%E6%98%AF%E4%B8%AA%E6%82%AC%E8%80%8C%E6%9C%AA%E5%86%B3%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%8C%E5%9C%A8%E6%AD%A4%E9%97%AE%E9%A2%98%E4%B8%8A%EF%BC%8C%E5%AD%A6%E6%9C%AF%E7%95%8C%E7%9A%84%E7%A0%94%E7%A9%B6%E8%80%85%E4%BB%AC%E4%BB%8D%E7%84%B6%E4%BB%BB%E9%87%8D%E9%81%93%E8%BF%9C%E3%80%82

[3] https://translate.google.com/#zh-CN/en/%E5%90%83%E4%BA%86%E5%90%97%EF%BC%9F

[4] 語音識別系統原理介紹---從gmm-hmm到dnn-hmm


推薦閱讀:

為了參與 Microsoft HoloLens 這樣的項目需要對哪些學術領域的知識有所了解?
虛擬現實(VR)和增強現實(AR)背後的核心技術是什麼?
有什麼讓你瞬間覺得體驗提升的電腦或平板周邊外設產品?
有哪些美國的大學的HCI碩士比較好?
智能硬體交互有什麼發展趨勢?

TAG:微軟Microsoft | 人機交互 | 語音識別 | 翻譯 |