《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

机器之心發表於2020-04-27

如果將人腦的神經訊號也視為一種語言,那麼將機器翻譯架構應用於解讀神經訊號的可行性似乎並不令人驚訝。在《Nature Neuroscience》的一篇論文中,來自加州大學舊金山分校的研究者實踐了這一想法。他們用一個編碼器-解碼器框架將大腦神經訊號轉換為文字,在 250 個詞的封閉句子集中將錯誤率降到了 3%。

《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

論文連結:https://www.nature.com/articles/s41593-020-0608-8

在過去的十年裡,腦機介面(BMI)已經從動物實驗轉變為人類實驗,其中具有代表性的結果是使得四肢癱瘓者恢復一定的運動能力,在空間維度中的兩個自由度上實現連續運動。儘管這種型別的控制也可以與虛擬鍵盤結合使用來生成文字,但即使在理想的游標控制下(目前尚無法實現),碼字率仍受限於單指打字。另一種選擇是直接解碼口語,但到目前為止,這種 BMI 僅限於解碼孤立的音素或單音節,或者在中等數量詞彙(約 100 單詞)構成的連續語音中,正確解碼不到 40% 的單詞。

為了獲得更高的準確度,來自加州大學舊金山分校的研究者利用了「從神經活動解碼語音」與「機器翻譯」兩個任務之間的概念相似性。這兩種任務的目標都是在同一基礎分析單位的兩種不同表示之間建立對映。更確切地說,二者都是將一個任意長度的序列轉化為另一個任意長度的序列(任意是指輸入和輸出序列的長度不同,並且彼此之間沒有決定性的聯絡)。

在這項研究中,研究者試圖一次解碼一個句子,就像當下大多數機器翻譯演算法一樣,因此這兩種任務實際上都對映到相同型別的輸出,即一個單詞序列對應於一個句子。另一方面,這兩種任務的輸入是存在很大區別的:分別是神經訊號和文字。但是,當前機器翻譯架構可以透過人工神經網路直接從資料中學習特徵,這表明機器翻譯的端到端學習演算法幾乎可以直接運用於語音解碼。

為了驗證這一假設,在語音生成過程中,研究者利用從腦電圖(ECoG)獲得的神經訊號以及相應口語的轉錄,訓練了一種「序列到序列」的架構。此外,這項任務和機器翻譯之間最重要的區別在於,後者的資料集可以包含超過 100 萬個句子,但構成該研究基礎的腦電圖研究中的單個參與者通常只提供幾千個句子。

為了在相對不足的訓練資料中利用端到端學習的優勢,研究者使用了僅包含 30-50 個不同句子的限制性「語言」,並且在某些情況下,採用了其他參與者的資料和其他語音任務的遷移學習。

這項研究的參與者從以下兩個資料集之一中大聲朗讀句子:一組圖片描述(30 句,約 125 個不同單詞),通常以一個會話的形式描述;或 MOCHATIMIT14(460 句,約 1800 個不同單詞),以 50 句分組的會話進行(最後一組 60 句),研究者稱之為 MOCHA-1、MOCHA-2 等等。在時間允許的情況下重複分組會話。對於測試,研究者只考慮了至少重複三次的句子集(即提供一組用於測試,至少提供兩組用於訓練),這在實踐中將 MOCHA-TIMIT 集限制為 MOCHA-1(50 句,約 250 個不同單詞)。

方法

這裡首先簡要描述解碼流程,如下圖所示:

《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

研究者要求參與者大聲朗讀句子,同時利用高密度 ECoG 網格(ECoG grid)記錄他們 peri-Sylvian 皮質的神經活動。

在每個電極上,ECoG 訊號的高頻分量(70-150Hz,即「high-γ」)的包絡線(即該範圍內分析訊號的振幅)在大約 200Hz 處提取。然後將所得的序列(每個對應於一個句子)作為輸入資料傳遞到「編碼器-解碼器」式的人工神經網路。

網路分三個階段處理序列:
  1. 時間卷積:類似的特徵很可能在 ECoG 資料序列的不同點上重現,全連線的前饋網路無法利用這樣的特點。

  2. 編碼器 RNN:下采樣序列被 RNN 按序處理。在每個時間步中,編碼器 RNN 的輸入由每個下采樣序列的當前樣本以及它自己的先前狀態組成。然後最終隱藏狀態(Final hidden state,上圖中的黃色條)提供整個序列的單個高維編碼,與序列長度無關。為了引導編碼器在訓練過程中找到有用的解,研究者還要求編碼器在每個時間步中預測語音音訊訊號的表示,即梅爾頻率倒譜系數的序列 (MFCCs)。

  3. 解碼器 RNN:最後,高維狀態必須轉換回另一個序列,即單詞序列。因此,我們初始化第二個 RNN,然後訓練為在每個時間步驟解碼出一個單詞或序列結束 token(在該點終止解碼)。在輸出序列的每個步驟中,除了自身先前的隱藏狀態外,解碼器還以參與者實際說出句子中的前一個單詞作為輸入(在模型訓練階段),或者它自己在前一步預測的單詞作為輸入 (在測試階段)。與以前針對語音音素進行語音解碼的方法相比,該方法將單詞作為目標。

《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

網路架構。

整個網路同時進行訓練,使編碼器生成值接近目標 MFCC,並使解碼器為每個目標詞分配高機率。請注意,MFCC 目標提供了一個「輔助損失」,這是一種多工學習的形式,其目的僅僅是引導網路找到解決詞序解碼問題的足夠好的解。在測試期間,MFCC 預測被丟棄不管,解碼完全基於解碼器 RNN 的輸出。所有的訓練都是透過反向傳播的隨機梯度下降進行的,並將 dropout 應用於所有的層。

實驗結果

在整個實驗過程中,研究者用平均單詞錯誤率 (WER,基於所有測試句子計算) 來量化效能,因此,完美解碼的 WER 為 0%。作為參考,在語音轉錄中,5% 的 WER 為專業水平,20-25% 為可接受的效能。這也是語音識別技術被廣泛採用的標準,儘管它的參考詞彙量要大得多。

我們首先考慮一個示例參與者說 MOCHA-1 的 50 個句子(大約 250 個不同單詞)時的編碼器-解碼器框架的效能(見下圖)。下圖中參與者的平均 WER 約為 3%。以前最先進方法的語音解碼 WER 是 60%,並使用較小的詞彙量(100 詞)進行實驗。

《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

解碼句子的WERs。

編碼器-解碼器網路的卓越效能源自什麼?為了量化其各種因素的貢獻,研究者系統地刪除或削弱了它們,並從頭開始訓練網路。上圖中的第二個方框顯示了對資料進行空間下采樣以模擬較低密度 ECoG 網格的效能。具體來說,只留下了網格兩個維度上四分之一的通道(也就是說,實際上是 64 個通道,而不是 256 個通道)。WER 大約是原來的四倍,仍然在可用範圍內,這表明了除高密度網格外其它因素對於該演算法的重要性。

第三個方框內顯示當 MFCC 在訓練過程中未被鎖定時的效能,其 WER 與使用低密度網格資料訓練的模型的 WER 接近,但仍然明顯優於先前的語音解碼方法。

接下來,研究者考慮一個輸入層是全連線而不是卷積的網路(第四個框),WER 達到了原來的 8 倍。

然後考慮實現高效能需要多少資料。下圖顯示了四個參與者的 WER,作為神經網路訓練重複次數的函式。沒有任何參與者的訓練資料總量超過 40 分鐘,當至少有 15 次重複訓練時,WER 可能低於 25% 以下。

在下圖中,有兩名參與者,他們在 MOCHA 句子上的訓練次數很少 (參與者 a/綠色實線,參與者 d/棕色實線),因此解碼效能較差。

《Nature》子刊:不僅是語言,機器翻譯還能把腦波「翻譯」成文字

相關文章