「AI語音評測」技術簡述與應用層級 | 人人都是產品經理

編輯導語:隨著科技的發展,AI人工智慧已經運用於我們的學習生活中;語音測評基於在線教育場景,使用語音識別、特徵提取、聲學模型等技術,提供成人和兒童的口語發音評測;本文作者分享了關於AI語音評測的技術簡述與應用層級,我們一起來看一下。

一、前言

「AI語音評測」技術,指的是針對口語發音水平和差錯,進行自動評價、檢錯並提供指導糾正的技術。

該技術經過幾十年的發展,在中英文發音標準程度、口語表達能力等評測任務上已經超越了人類口語評測專家水平,目前該技術被普遍使用在中英文的口語評測和定級中。

接下來我們會討論:

  • 「AI語音評測」技術簡述;
  • 「AI語音評測」多維度應用層級。

二、AI語音評測基本技術簡述

1. AI語音評基本規則

對於AI語音評測技術,目前相對流行的是基於DNN-HMM的聲學模型,獲得音素級別的解碼結果以及單詞和音素級別的強制對齊結果的方法。

音素:根據語音的自然屬性劃分出來的最小語音單位。

DNN-HMM:深層神經網路-隱藏馬爾科夫模型(Deep Neural Network-Hidden Markov Model),是目前相對流行的聲學模型。它的出現基本替代了之前的GMM-HMM模型。

簡單的說,能夠對音素、單詞、句子、段落等多個級別的發音情況進行評價和指導反饋;測評維度包括發音準確度(音素/聲調)和流利度、語調、斷句、完整度等。

使用該技術方法須滿足以下條件:

  • 開發前確定針對的評測語種(如英語、日語、德語等);
  • 以評測語種母語者標準語音為藍本;
  • 針對評測發音特點設計評測維度;
  • 針對學習者母語(如漢語)發音特點定位可能存在的缺陷。

可以得到的結果:

  • 段落、句子、單詞、音素多個級別維度的,包括語調、斷句、完整度、 流利度等多個方面的指導反饋;
  • 針對各個級別和維度的分項和綜合得分。

2. AI語音評測基本原理

1)整體架構

流程:

  • 用戶根據給定的文本生成語音;
  • 前端產品通過「評測介面」上傳音頻至「語音評測引擎」;
  • 引擎以「語音評測模型」為基準,通過解碼計算處理得到評測結果;
  • 通過「評測介面」將評測結果返回至用戶。

幾個概念:

  • 語音評測引擎:AI評測解碼和計算的核心模塊,通過語音識別(ASR)解碼轉譯,與給定的文本強制對齊,通過不同維度的演算法得出指導反饋和評測得分。
  • 後台配置系統:語音評測前,需將給定的文本拆分成獨立的單詞或單音/音素並存儲在後台配置系統中,為語音評測引擎提供對齊標準。
  • 語音評測模型 & 訓練所需語料:使用評測引擎前,需使用適量的語料離線訓練形成語音評測模型,該模型是引擎進行解碼計算處理的依據。

2)語音評測引擎原理

通過對整體架構的解讀,我們不難發現很大部分工作都是由「AI評測引擎」完成的,接下來我們再簡單了解一下評測引擎內部的流程和原理。

流程:輸入聲音訊號→ASR語音識別→多維度演算法→反饋&得分。

輸入聲音訊號:通過介面將音頻文件傳輸至後台語音評測引擎。

語音識別(ASR):ARS(Automatic Speech Recognition)是一種將人類語音轉換為文本的技術。在這裡的作用是將上傳的音頻內容轉換成文本。

ASR過程是相對複雜的,這裡簡述其中幾個步驟:

  • 預處理:在開始語音識別前,需把首尾端靜音切除,降低對後續步驟造成干擾,這一般稱作VAD;這可以減少音頻數據長度,提高識別精準度;如果預處理內容全部在雲端,「信號處理」(降噪)也會在預處理階段進行。
  • 特徵提取:特徵提取將提取出來的特徵作為參數,為模型計算做準備。簡單理解就是語音信息的數字化,然後再通過後面的模型對這些數字化信息進行計算;語音文字識別情況下,主要是提取音素特徵;其他情況如情緒識別,還需要提取響度/音高等參數。

聲學模型(AM)/語言模型(LM)/詞典(lexicon):

  • 聲學模型(AM):將聲學和發音學技術進行整合,以特徵提取模塊提取的特徵為輸入,計算音頻對應音素之間的概率;簡單說就是把聲音轉成音素,類似把聲音轉成拼音;優化聲學模型同時也需要適量的音頻數據進行訓練。
  • 語言模型(LM):將語法和字詞知識整合,計算字詞在句子里出現的概率,簡單理解就是計算幾個字片語成句子的概率。
  • 詞典(lexicon):詞典(lexicon)就是發音字典,中文裡就是拼音與漢字的對應,英文里就是音標與單詞的對應;其目的是根據聲學模型識別出來的音素,來找到對應的單詞,在聲學模型和語言模型建立橋樑,將兩者聯繫起來。

通過以上三者的結合計算,得到音頻的解碼和音頻轉譯文字后的強制對齊結果,此結果用於多維度評測反饋和得分的計算。

評測結果演算法:

評測結果是多維度的,包括音素、語調、流利度、斷句、完整度等內容;但不同語種下評測維度是不同的,這與語言的特性有關,因此需要針對不同語種單獨定製評測的維度。

以日語為例,不僅包括上述常規的語調,流利度等常規維度,同時也有單詞音調、日語音拍、音高等其他維度的分析。

至於每個維度的具體演算法,就牽涉的一些技術性更強和數學演算法的內容了,因此這裡不做過多解釋。如果可能,我們以後單獨探討不同語種下不同維度演算法的原理。

三、「AI語音評測」多維度應用層級

任何AI技術的進步,應該體現在更加適應人類的思維方式,而不再感覺像是一個API終端。

接下來圍繞「AI語音評測」羅列幾個維度的應用層級,看看它具體能做什麼。

1. 評測主體維度

評測主體維度是最容易被理解的,具體分為以下幾個維度:

  • 層級一:音素,例如音標中的[a:],[æ]等。
  • 層級二:單詞/單音,如[英語字母ABCD]或[單詞good],[日語假名あいう]或[單詞お母さん]等。
  • 層級三:句子,由多個獨立的單詞拼接而成。
  • 層級四:段落,由多個獨立的句子拼接而成。
  • 層級五:文章,由多個獨立的段落拼接而成。

針對以上五個層級,「AI語音評測」都給出了對應的解決方案,一般情況下該維度發展至句子層級即可滿足大部分需求。

2. 指導反饋維度

指導反度維度是「AI語音評測」的核心維度,該維度直接展示了不同層級中指導反饋內容角度和粒度。

讓我們以一個用戶練習口語場景為例,每進階一個層級,都應降低用戶的思考負擔,讓用戶得到更接近「口語教師」的指導反饋。

層級一:僅提供用戶發音和標準發音回放功能

層級一與「AI」技術無任何關係,幾乎所有的評測工作都留給了用戶;用戶手動播放每一組自身讀音與標準讀音,用聽覺感知發音差距。

本層級用戶體驗:除非很簡單的發音,否則大多用戶對發音細節、進步程度和改進點感到茫然。

僅提供發音回放功

層級二:提供用戶發音評分

層級二是個巨大的進步,因為這一步進入了「AI」領域;用戶將給定文本的發音上傳至評測引擎,引擎將評測得分反饋至用戶,除此之外再無其他反饋。

在很多情況下這只是一個臨時的解決方案(一般受研發能力或產品階段目標的限制),但無論是產品過渡還是功能嘗試都可能是當時最優解決方案。

本層級用戶體驗:用戶收到了量化的反饋,也可以感知到一些自身的進步,但用戶仍不知道怎樣從70分變成100分。

層級三:細粒度評分反饋

層級三是在層級二的基礎上,增加了細粒度的評分反饋。

包括以下粒度的評分:

  • 每個音素的評分;
  • 每個單音/單詞中發音和聲調的單項評分和整體評分;
  • 如果是句子,包括完整、流利、發音、語調、斷句等多個維度的評分。

層級三評測已經進入到細粒度(音素)級別,但除了細粒度的評分結果外,沒有其他內容的反饋。

本層級用戶體驗:用戶可以更精準定位到發音問題所在,但對於「糾正發音問題」還差一步。

層級四:細粒度指導反饋

層級四是在層級三的基礎上,增加了更加細緻精確的指導反饋。

為了更好理解這種指導反饋,這裡舉兩個例子:

① 單詞示例:英語文本grandmother[ˈɡrænmʌðər]。

如用戶實際發音為[ˈɡrændmɔːdər],則可給出的指導反饋有:

層級三中所有的單詞得分反饋。

層級四優化的單詞反饋:

  • 「[m]的發音前不應該有[d]」;
  • 「[ʌ]的發音不應該讀成[ɔː]」;
  • 「[ð]的發音不應該讀成[d]」;

示例小結:以上反饋直接展示了音素級別的錯誤與正確讀法的差別。

② 句子示例:英語文本「I want to go to school.」。

如用戶實際發音為「I…want…to go go?」,則可給出的指導反饋有:

層級三中所有的句子得分反饋。

單詞示例①中單詞示例的每一個單詞音素的反饋。

層級四優化的句子反饋:

  • 完整度:遺漏辭彙—to & school,復讀辭彙—go;
  • 語調:應該為降調,不應該為升調;
  • 流利度:語速過慢,應加快速率;
  • 斷句:停頓過長—I和want之間,want和to之間;

示例小結:以上反饋多維度展示了句子中錯誤與正確情況的差別。

本層級用戶體驗:用戶已經可以精確定位問題並且得到具體解決方法;但目前為止依舊還是文字式的反饋,無論用戶是否懂得音素(音標),自然語音的反饋無疑更加容易接受。

層級五:TTS結合

層級四在語音評測指導反饋方面幾乎達到了頂級,再結合自然語音的反饋會更加契合口語學習的場景。

TTS技術簡述:TTS(Text To Speech,文本轉語音)是語音合成應用的一種,它將文字或者文件轉換成自然語音輸出,主要的技術框架包括「MARY」、「SpeakRight Framework」、「Festival」、「FreeTTS」等。

在層級四中,我們舉例了英語單詞grandmother[ˈɡrænmʌðər]誤讀為[ˈɡrændmɔːdər]的情況。

結合TTS技術后,我們可以給出以下自然語音提示:

  • 自然語音:「[m]前不應該有[d],請注意這個d不發音」;
  • 自然語音:「[ʌ]不應該讀成[ɔː],請注意長大嘴巴,不要髮長音」;
  • 自然語音:「[ð]不應該讀成[d],請注意這是咬舌音」;

本層級用戶體驗:在有足夠細粒度指導反饋的前提下,TTS的結合讓評測結果已經基本達到了「口語教師」級別。

示例:結合TTS更直觀的反饋問題(此處有發音指導)

3. 與其他技術結合的可能性

通過「AI語音評測」技術,在給定文本的前提下,已經可以給出非常精準的指導反饋了;但如果上升到口語學習級別,還是遠遠不夠的——畢竟口語不是簡單的發音練習,語境、語法、迅捷響應等其他方面也是非常重要的。

接下來我們簡單提出一些與其他技術結合或者優化的猜想嘗試解決口語學習的難題。

1)語境模擬:與「交互AI」結合

根據已成熟和可實現的交互AI技術,基於用戶提供的口語語音內容,反饋的層級包括:

  • 層級一:僅提供固定回復(非AI);
  • 層級二:提供非固定回復,可智能判斷回復優先順序;
  • 層級三:主動式對話介入,能主動引起/轉換關聯話題
  • 層級四:能夠反饋用戶語音場景契合度(用戶內容是否符合當前語境)。

小結:「交互AI」是一個非常龐大的體系,但應用的廣泛性正在使其形成產業化規模化,中小企業也能夠對接高級「交互AI」也許很快就能實現。

2)語法:與「AI語法檢查」結合

AI語法檢查技術是指將提供的句子或段落進行語法檢查並指出語法問題和指導反饋;通過該技術,口語學習者可以獲得語音內容語法方面的指導反饋。

舉例1:給定文本「I want to fly to the Moon.」,如用戶發音「I want to fly to Moon.」此時在提示語法檢查應給予對應提示:

  • 發音問題:「漏讀—the」(AI語音評測結果);
  • 語法問題:「Moon是唯一的,應在Moon前加冠詞the」;

但在給定文本的情況下並不能完全體現語法檢查的優勢,一般在交互AI介入的場景下會更加合理。

舉例2:

AI:「What is your dream?」,用戶:「My dream is flying to Moon.」

結果反饋:

  • 發音問題:…(AI語音評測結果);
  • 語法問題:「Moon是唯一的,應在Moon前加冠詞the」;

以此,用戶可以在類真實語境下練習口語,並可以同時得到發音和語法兩大方面的反饋。

3)AI引擎本地化

在我們的產品使用AI技術初期,一般會選擇「前端產品調用AI介面——雲端後台引擎計算——結果返回至前端產品展示」的模式,目的是盡量不影響產品主體功能和提高研發效率。

但隨著AI在我們的產品中權重越來越高,用戶對AI功能的效率要求日益嚴格——「零延遲響應」、「離線響應」逐步成為用戶體驗很重要的部分;如果我們的產品正被大量用戶訴求高效率AI,AI引擎本地化就不得不提上日程了。

AI引擎本地化是指將之前已經在後台構建好的計算引擎遷移至前端產品中(前提是前端產品必須是有能力承載這些引擎的,如App或其他客戶端,網頁或小程序就比較困難了);遷移后在使用AI功能時,前端產品內部即可完成計算並給予反饋,從而實現了「零延遲/離線響應」的效果。

以「AI語音評測」為例,引擎本地化即是將原本在雲端後台處理的「預處理」模塊、「聲學模型」模塊和「聲學處理」模塊全部遷移至前端產品中。

但引擎本地化影響並不全是正向的,以下羅列了部分引擎本地化的優劣:

由此我們可以看出,AI引擎本地化需要根據產品實際情況來決定是否要進行,或者設置一系列的配置項來規避本地化帶來的問題,如:

  • 提取後台引擎核心模塊進行本地化,非核心模塊保留後台服務,大幅度提高響應效率;
  • 自動檢測低配置設備,對於低配置設備不運行本地化計算;

以上分別介紹了「交互AI」、「AI語法檢查」、「AI引擎本地化」與「AI語音評測」技術的一些結合。

以上技術之間並沒有絕對的依賴關係,也沒有順序差別,是否需要結合或者怎樣結合完全依據對產品本身的需求分析。

當然也會有其他技術結合的可能(如自適應AI、表情識別AI),這裡就不再一一列出。

四、總結

在上述討論中,我們通過介紹「AI語音評測」技術和應用層級作為切入點,上升到口語學習並引出與其他技術結合的應用場景;相信通過AI技術的融會貫通,口語學習也終究會變得易如反掌。

儘管很多相關的AI技術目前還沒有達到即插即用的程度,但他們中的大多數已經處於孵化或者初級階段,「萬物皆AI」的趨勢已經不可逆轉。