醫療對話場景的語音識別 |垂直領域(google 2018 論文解讀)

論文:https://arxiv.org/pdf/1711.07274.pdf
題目:Speech recognition for medical conversations

摘要

在本文中,我們記錄了我們在開發用於醫學轉錄的語音識別方面的經驗-一種自動轉錄醫患對話的系統。爲了實現這一目標,我們沿着兩種不同的方法論體系構建了一個系統-基於連接主義時間分類(CTC)音素的模型和基於聽衆和咒語(LAS)字素的模型。爲了訓練這些模型,我們使用了匿名對話的語料庫,它們代表了大約14,000個小時的講話時間。由於語料中的抄本和對齊方式比較嘈雜,因此在數據清理問題上投入了大量精力。我們描述了一種用於分段數據的兩階段策略。匹配語言模型的數據清理和開發對於基於CTC的模型的成功至關重要。但是,發現基於LAS的模型可以抵抗比對和筆錄噪聲,並且不需要使用語言模型。 CTC模型能夠實現20.1%的單詞錯誤率,而LAS模型能夠達到18.3%。我們的分析表明,兩種模型在重要的醫學話語上均表現良好,因此對於轉錄醫學對話非常實用。

1.介紹

20世紀初期,速記員開始在醫學領域進行轉錄。 隨着1990年代中期左右ASR和NLP技術的普及,醫療保健系統開始採用單揚聲器ASR技術來協助醫生聽寫。 最近,隨着電子健康記錄(EHR)系統的廣泛採用,醫生現在在EHR內的11個小時的工作時間中大約花費6個小時,而在文檔上花費大約1.5個小時。 隨着初級保健醫生的日益短缺[1]和更高的倦怠率[2],可以加速臨牀訪視轉錄的ASR技術似乎迫在眉睫。 它是一項基礎技術,可以在此基礎上構建信息提取和摘要技術以幫助減輕文檔負擔。
患者(甚至可能是護理人員)與提供者之間的醫療對話與正常命令具有幾個不同的特徵:(1)涉及多個說話者(醫生,患者以及偶爾的護理人員),對話重疊且距麥克風的距離不同且質量不同,( 2)它涵蓋了從口語到複雜的領域特定語言的一系列語音模式,重音,背景噪音和詞彙。 ASR必須處理長格式的內容(從10到45分鐘長),該內容將臨牀上的重要信息與隨意的聊天聲交織在一起。由於缺乏用於構建系統的大量乾淨的,經過整理的數據,因此開發用於醫療對話的ASR系統變得更加複雜。記錄實際對話而收集的數據會產生非常嘈雜的數據,這是由於真實對話中出現的所有問題-干擾,同步語音,信噪比低等。處理這些因素需要大量的數據預處理工作,否則就很難訓練傳統的語音識別系統。此外,對話中的某些部分比其他部分更重要–醫生和患者之間的隨意對話不如描述潛在症狀,治療等的對話重要。
最近,已經使用相對較小的醫學語音數據(270小時)爲醫學領域構建了基於神經網絡的語音識別系統,並已針對醫學轉錄專家進行了基準測試[3]。 語音識別系統已經在臨牀問題回答任務上進行了評估,並且已經顯示,使用語言模型進行域自適應可以顯着提高口譯臨牀問題的準確性[4]。 使用衆包輸入數據進行語言模型自適應已顯示出可提高醫療語音識別系統的準確性[5]。 已將使用語音識別輔助臨牀文檔的效率和安全性與使用鍵盤和鼠標進行了比較,發現次優的語音識別準確性可能會造成臨牀危害[6]。
端到端語音模型的最新發展提供了有希望的替代方案。 聽力和拼寫(LAS)模型[7]是一種端到端模型,能夠學習作爲ASR模型本身一部分的語言模型。 在本文中,我們比較了我們使用LAS和使用CTC [8]初始化的基於HMM的傳統模型構建語音識別系統的經驗。 我們發現LAS模型對於嘈雜的成績單非常強大,並且不需要語言模型。 另一方面,基於音素的CTC模型僅在進行大量數據清理工作並且爲該領域開發了匹配的語言模型時才能很好地工作。 我們的CTC模型的WER爲20.1%,而LAS模型的WER爲18.3%。
我們評估了兩個模型在捕獲重要醫學短語時的性能。 我們選擇了一部分對話,要求一組專業的醫療抄寫員對對話中的重要短語進行註釋,這些短語對於撰寫醫學筆記非常有用。 在所有重要的短語上,CTC模型的雙向模型的準確率達到92%,召回率達到86%,單向模型的精確度達到88%,召回率達到84%。 我們分析了LAS模型在識別對話中提到的用於治療的藥物名稱方面的有效性,該模型的召回率達到98.2%。

2.系統概述

我們探索了用於建立此任務的語音識別模型的兩種機制:一種使用帶有連接器時間分類(CTC)的遞歸神經網絡,另一種使用帶有注意力的端到端模型(LAS)。

2.1 CTC

CTC系統由經過CTC損失訓練的聲學模型,與上下文相關的音素輸出,n元語法模型和發音詞典組成。 使用基於有限狀態換能器(FST)的解碼器進行解碼。 我們爲此任務訓練了單向(用於流識別)和雙向CTC模型。

2.2 LAS

注意的端到端模型由編碼器,注意機制和解碼器組成[7]。 編碼器將語音作爲輸入,生成一系列隱藏狀態,然後解碼器使用注意力機制在每個預測步驟關注編碼器輸出,然後順序生成字素輸出。 在此框架中,編碼器扮演聲學模型的角色,該模型處理語音發聲並將其轉換爲高級表示,然後解碼器處理該輸出序列以生成轉錄本。 解碼器使用注意力結果和上一步的預測來決定當前步驟的注意力。

3. 任務定義和數據處理

此任務中使用的已取消標識的數據是從大型對話研究組織獲得的。 在患者的同意下,通過將錄音設備放在診所中來收集對話的音頻。 然後將錄製的音頻壓縮爲MP3,然後發送給人類註釋者進行轉錄。 最後的成績單包含演講者的發言和演講者的代碼(醫生,患者,護理人員等)。 在轉錄過程中,通過將相應的音頻清零並在轉錄本中使用特殊標籤來取消識別個人數據。 還提供了大概的揚聲器轉向時間戳。 我們發現這些時間戳通常相差幾秒鐘。 對於每個對話,我們還收到元數據,其中包括交互類型,醫生的性別以及醫生的唯一標識符。

3.1 分割

爲了使培訓和測試變得易於處理,我們將對話分爲演講者轉向部分。 我們發現訓練數據中說話者轉彎邊界的準確性在使用這些細分進行訓練的模型的性能中起着重要作用。 我們嘗試了以下方法來獲得更好的揚聲器轉向段。

3.1.1 緩衝轉向對齊

用原始段訓練雙向模型可以得到40%的WER。 爲了解決這些揚聲器轉彎對齊問題,我們在每個轉彎片段的開始和結尾處添加了1秒的音頻緩衝區,並使用轉彎筆錄重新對齊了緩衝的音頻。 最後,我們僅通過保持與轉彎筆錄對齊的音頻來創建新的揚聲器轉彎段。 我們刪除了聲學模型得分最差(按時間範圍標準化)的10%的尾段。 在這些細分市場上進行培訓和評估後,雙向CTC模型得出的WER爲27.5%。

3.1.2 兩遍對齊

爲了獲得更好的對齊數據以進行培訓和測試,我們使用兩遍強制對齊方法將整個會話音頻與會話記錄強制對齊。
第一遍:置信區間 。 我們使用[9]中描述的置信區間方法將對話與成績單對齊。 我們使用如下構造的約束FST語法G識別音頻。
1.構造一個線性FST,其中每個圓弧代表筆錄中的一個單詞。
2.允許start從FST中的開始狀態過渡到所有狀態。
3. FST中的所有狀態均爲最終狀態。
該G僅允許路徑是地面真相成績單中單詞的連續序列。 音頻被分割爲10秒的塊,並使用域外語音郵件聲學模型和上面構造的語法G進行識別。 連接識別結果,並將得到的完整識別文本與實際的人類成績單對齊。 識別結果中與實際人類成績單相匹配的連續部分(至少5個字)(稱爲置信區間)被假定爲具有可信賴的字時間戳。 對於每10秒的片段識別,我們明確地從任何置信區間中排除了第一個和最後一個單詞,因爲它們可能已在固定的10秒邊界處被部分切割。 在第二次強制對齊中固定了沒有落入任何置信度中的單詞的時間戳。 僅通過這種力對準,我們就能夠對準≈80%的單詞。
第二遍:修正剩餘的單詞。 對於地面真相記錄的第一遍中未對齊的連續單詞的任何序列,我們通過使用在地面真相中該序列之前和之後的置信區間的時間戳來計算相應的音頻片段。 由於我們大多數單詞在第一次通過時就已經對齊,因此這些音頻片段並不大,我們能夠針對未對齊單詞的序列對片段音頻進行完全約束的強制對齊。 使用這種第二遍方法,我們可以獲得大約98%的單詞的時間戳。 其餘單詞的時間是從經過強制對齊的相鄰單詞中插入的。 一旦我們獲得了完整音頻的字級對齊,就將其分割爲單個揚聲器匝。 我們發現,通過這種方法獲得的轉彎水平對準對於訓練聲學模型而言足夠準確,並且不需要任何進一步的緩衝音頻方法(如3.1.1節中所述)。

3.2 訓練和測試分割

數據集包括臨牀訪問期間醫生與患者之間大約90,000個單通道轉錄對話。 數據總量約爲14,000小時。 對話代表了用於不同目的的151種醫療訪問,例如健康訪問,II型糖尿病,類風溼性關節炎等。每次對話通常在單個醫生和患者之間進行,有時還包括護士或家庭成員。 平均而言,對話時間爲10分鐘,其中一些特殊的對話時間長達2小時。
我們爲測試集抽樣了100個對話,以確保每個對話都有一名不同的醫生,並且男女醫生的比例相等。 包含這100名醫生的所有其他對話都被排除在外,剩下的76,000條對話是在培訓中沒有醫生與測試集重疊的。 測試對話中有64個代表8個目標疾病區域。 諸如皮膚病學之類的疾病領域包括相互作用類型,諸如溼疹,黑色素瘤和痤瘡。 從非目標疾病地區抽取了36個對話。
對於培訓和測試,我們使用從3.1.2節中解釋的兩次通過強制對準獲得的揚聲器轉向段。 作爲一般的預處理,我們從測試和訓練集中刪除了任何在成績單中包含去識別標記的說話者轉彎片段。 手動檢查表明,大多數與細分有關的問題都是非常小的話語。 爲了減少此類錯誤,我們從測試集中刪除了所有小於5個字的揚聲器轉向。 對於訓練數據,我們刪除了單個單詞轉彎。

4. 模型訓練

爲了同時訓練注意力模型和基於CTC音素的模型,使用的功能是快速傅立葉變換(FFT),具有在25 ms音頻幀上計算的80個濾波器組通道,步幅爲10 ms。 作爲模型輸入,我們堆疊了3個這樣的幀,並跨度爲3,即每30毫秒輸入240個濾波器組。 爲了計算FFT,我們忽略了3800Hz以上的頻率。
爲了使模型對噪聲更魯棒,並防止過度訓練,我們在訓練時向音頻添加了人工噪聲,稱爲多樣式跟蹤(MTR)[10]。 在我們的設置中,每種訓練發聲都與20種不同的噪聲(房間混響,背景音樂,咖啡館噪聲)結合在一起,SNR範圍爲5dB至25dB。 我們發現,當使用CTC /交叉熵(CE)訓練標準添加噪聲並在進行EMBR訓練時使用原始音頻時,可以獲得最佳結果[11]。

4.1 CTC

爲此,我們訓練了帶有上下文相關(CD)音素輸出的CTC模型。該模型體系結構是LSTM層的堆棧,可提供softmax輸出,預測8K CD電話單元加1個CTC空白符號。如[12]中所述,CD電話是根據來自域外語音郵件模型的初始訓練數據從訓練數據中計算出來的。一旦我們在此CD手機上訓練了具有CE丟失的域內模型,我們便將訓練數據與CE模型重新對齊,並計算出用於訓練CTC模型的新CD手機。我們爲此任務訓練了雙向和單向模型。由於這是會話數據,因此片段通常不會以足夠的靜默結束,無法給模型時間輸出所有幀的音素。我們發現,要獲得良好的單向模型,我們必須訓練具有輸出延遲的模型,其中我們忽略了前T個幀的模型輸出,然後重複了最後一個輸入幀T次。
在解碼過程中,我們使用了經過醫學和語音搜索/聽寫數據混合訓練的5-gram語言模型,並使用貝葉斯插值[13]組合了來自不同域的數據。對於發音,我們使用監督發音詞典(佔發音的77%)和音素-音素(G2P)模型(佔發音的23%)。

4.2 LAS

我們的序列到序列注意模型由編碼器,注意機制和解碼器組成。 編碼器體系結構是堆疊的雙向LSTM。 雙向LSTM結合了前向和後向信息,從而使輸出隱藏狀態可以訪問整個話語,並且在局部話語幀達到峯值。 可以訪問整個語音幫助編碼器作爲聲學模型將語音信號與環境噪聲區分開。 另一個好處是使注意力機制更易於學習。 由於每個輸出隱藏狀態主要包含局部話語信息,並且可以訪問整個話語以區分噪聲,因此關注機制可以學習將注意力主要集中在與當前預測目標相對應的幀上。
我們的模型使用多頭注意力[14],將傳統的注意力機制擴展爲具有多個頭,其中每個頭可以生成不同的注意力分佈。 我們使用調度採樣[15]來訓練解碼器。 最初,我們將地面真實性作爲先前的預測,隨着訓練的進行,我們將模型預測的採樣概率線性提高到30%,然後以該採樣率保持直到結束。 解碼器執行字素預測。
表1:不同數據對齊方式的WER。 這裏的LAS模型是基本版本,沒有我們爲最終模型應用的技術。
在這裏插入圖片描述

5. 結果和分析

我們使用第3.2節中定義的基於說話者回合的訓練數據訓練了LAS注意模型和基於CTC音素的模型。 我們從訓練數據中隨機抽取了約0.5%的語音,並以此作爲我們的開發集。 CTC和注意力模型共享相同的訓練/測試/開發數據。

5.1 ctc 結果

我們訓練了單向和雙向CTC模型。 對於單向模型,我們增加了10步的輸出延遲。 該模型具有5個LSTM層,每層700個單位,並且在進行CTC培訓後達到了28.8%的WER,通過EMBR培訓提高到23.5%。 訓練具有5個雙向LSTM層和每層700個單位(任一方向350個單位)的模型,可以得到25.2%的WER,經過EMBR訓練後,WER可以提高到20.1%。 表2顯示了測試集不同子集上CTC模型的WER編號。

5.2 LAS結果

當不使用MTR進行訓練時,我們嘗試在編碼器中的LSTM層之前添加捲積層。 所得模型的WER爲22.4%。 添加計劃的採樣將其降低到21.6%。 在添加MTR時,卷積層沒有幫助,而且往往會提供較差的質量,因此我們從編碼器中刪除了卷積層。 如果使用MTR而沒有卷積層,則WER達到18.9%。 增加多頭關注將導致18.3%的WER。 我們還嘗試了EMBR培訓,但並沒有進一步提高WER。 編碼器具有6層雙向LSTM,每個方向具有768個單位,而解碼器具有3層單向LSTM,具有768個單位。
表2:分析CTC結果
在這裏插入圖片描述

5.3 CTC和LAS的比較

在對CTC模型進行EMBR訓練之前,注意模型和可比較大小的CTC模型提供了非常相似的WER。 更大的注意力模型勝過CTC模型。 儘管CTC和注意力模型在小說話時都表現不佳,但是注意力模型的表現要好於CTC。 我們發現在很小的聲音(例如“是”)下,即使音頻令人難以理解,注意力模型在大多數情況下仍能正確輸出。 當語音在語音開始或結束時突然被截斷時,注意力模型的性能也會更好。 通常,注意力模型對數據處理更具彈性。

5.4 誤差分析

孤立的話語通常是完全無法理解的,抄寫員可能會使用上下文來理解它們。 不論是否能聽見,轉錄員都會填寫很多簡短的單詞,例如 “有血液工作”被轉錄爲“我有血液工作”。 人聲品質使語言難以理解,例如 口音,笑聲,耳語等。患者的語音通常更柔和,更遠,主要是由於錄音設置)。 音頻也被壓縮爲MP3,這可能會導致質量下降。

5.4.1 CTC

大多數錯誤似乎都出現在發話的開頭和結尾,例如:“這就是您需要的一切”變成“那就是您需要的一切”。 有趣的是,當說話者彼此交談時,CTC模型會刪除該音頻區域中的單詞。 錯誤的主要部分是由較小的揚聲器轉彎段(<1秒長)造成的,因爲較長的發聲模型錯過了語音的會話部分,例如:“呃我”被轉錄爲“嗯我的意思”。 通常,患者說話者轉彎處的WER要比醫生差,這可能是因爲記錄設備放置在離醫生更近的地方,因此醫生的言語比患者清晰得多。 表2顯示了針對說話人,性別和疾病領域的詳細分析。
爲了查看該模型在重要醫學短語上的性能,我們從這些談話的地面真實成績單中收集了醫學短語的受監管列表,並對我們在音頻片段中正確識別這些短語的頻率進行了評估。 爲了收集這些短語,請一組醫療抄寫員在對話中標記對寫醫學筆記有用的重要短語(例如:症狀,實驗室檢查結果,患者指導等)。 結果表明,基於CTC模型的識別在識別重要醫學短語時,雙向模型的準確率達到92%,召回率達到86%,單向模型的準確度達到88%,召回率達到84%。 還值得注意的是,醫生經常會重複某些信息,特別是患者說明,以確保患者理解並進一步減少錯誤。

5.4.2 LAS

掃描成績單錯誤時,大多數錯誤是對話性的,與醫學術語無關。 在與醫學術語相關的錯誤中,與缺乏醫學術語相比,通常與聲學建模更多相關。 例如,將“不要付一分錢”改寫爲“不要用一分錢便士”,其中模型用醫學術語代替了常用詞。 LAS不使用外部語言模型,並且確實有較少的休閒對話內容可供學習。
我們分析了LAS模型在識別對話中提到的用於治療的藥物名稱方面的有效性,該模型的召回率達到98.2%。

6. 結論

在這項工作中,我們探索了自動語音識別模型的建立,用於轉錄醫生與患者之間的對話。 我們收集了大規模的臨牀對話數據集(14、000 hr),設計了代表真實單詞場景的任務,並探索了幾種對齊方式來迭代地提高數據質量。 我們探索了用於構建語音識別模型的CTC和LAS系統。 LAS對嘈雜的數據更具彈性,而CTC需要清理更多的數據。 提供了詳細的分析以瞭解臨牀任務的性能。 我們的分析表明,語音識別模型在重要的醫學言語上表現良好,而因果對話中卻出現了錯誤。 總的來說,我們相信最終的模型可以在實踐中提供合理的質量。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章