利用深度學習模型進行語音障礙自動評估

? ? ? ?語音的產生涉及器官的復雜協調,因此,語音包含了有關身體各個方面的信息,從認知狀態和心理狀態到呼吸條件。近十年來,研究者致力于發現和利用語音生物標志物——即與特定疾病相關的語音特征,用于診斷。隨著人工智能(AI)的進步,這些生物標志物的學習關聯和臨床預測變得更加可行。自動語音評估利用語音生物標志物、AI和移動技術進行遠程患者健康評估,預期將為早期識別和遠程監測帶來許多好處。

? ? 研究人員對將深度學習應用于自動語音評估,主要有兩種方法:

  • 端到端訓練: 模型直接從音頻中做出臨床預測,但需要大量手動標注數據。
  • 預訓練模型微調: 使用在大型語音語料庫上預訓練的深度學習模型作為特征提取器,并用少量標注數據進行微調。這種模型學習了一組特征,即表示,以捕獲語音的屬性,并可用于各種語音識別任務。

? ? ?語音表示捕獲了人類感知理解,并在語音中保持了一致的屬性,如說話者、語言、情感和年齡。由于語音包含了有關幾個重要器官狀況的豐富信息,隨著這些模型的興起,已有幾項工作探索并評估了它們在識別疾病方面的潛力。然而,深度學習模型缺乏可解釋性,這限制了它們在醫療領域的應用。為了解決這個問題,研究人員開發了工具來理解模型的工作原理,這些工具通常分為兩大類:白盒方法和黑盒方法。

  • 白盒方法:這類方法通過分析數學關系來提供模型如何在特定情況下從輸入推斷輸出的局部解釋。通常需要特定的模型架構和屬性,例如激活函數的存在。在神經網絡中,有基于梯度的方法,如Grad-CAM和Integrated Gradient以及基于注意力的方法,如注意力流和注意力展開。
  • 黑盒方法:這些方法系統地使用各種任務和數據探測模型,以估計其在一般情況中的行為,這被稱為全局解釋。雖然黑盒方法與模型無關,但也有一些方法如LIME和SHAP允許提供局部解釋。

1 方法論

1.1 數據選擇

? ? ? 本研究使用Saarbrücken語音數據庫,該數據庫包含來自1002名說話者的錄音,其中454名男性,548名女性,以及851名對照組(423名男性,428名女性)。

  • 說話者的年齡從6歲到94歲不等(病理組),以及9歲到84歲(對照組)。
  • 每個錄音會話包含/i/、/a/和/u/元音的中性、高、低、上升和下降音調的錄音,以及簡短短語“Guten Morgen, wie geht es Ihnen?”的錄音。
  • 音頻以16位50kHz的采樣率使用專業錄音設備錄制。
  • 將參與者按性別和病理狀態分組,病理狀態分為三類:有機、無機和健康。
  • 僅選擇簡短短語的錄音,并將所有樣本下采樣到16kHz供模型使用。

1.2 模型訓練

? ? ? 使用Audio Spectrogram Transformer (AST),一種無卷積、純基于注意力機制的音頻分類模型。它通過將音頻轉換為頻譜圖來處理音頻數據,并使用視覺變換器(Vision Transformer,ViT)的架構來進行音頻分類任務

  • 模型輸入是t秒的音頻波形,將其填充到模型的最大尺寸T秒,并轉換為128維的log Mel濾波器組(fbank)特征序列,然后將其分割成16x16的塊,并使用線性投影層將其展平,生成768維的嵌入序列。
  • 每個嵌入都添加了可訓練的位置嵌入(大小為768),以提供語譜圖的空間結構,并在序列的開頭添加了類別標記[CLS]嵌入(大小為768),并將其輸入到Transformer編碼器中。
  • 編碼器在類別標記[CLS]處的輸出被提取為語音表示。
  • 使用的模型在AudioSet上進行預訓練,并在HuggingFace Transformers中實現和提供。
  • 訓練模型進行二元分類:病理(有機和無機)或健康受試者。
  • 數據集按分層方式劃分為訓練集、開發集和測試集,比例為80%、10%和10%。
  • 本研究比較了兩種模型配置:

ast_freeze: AST模型設置為不可訓練,并在模型頂部添加一個線性層,將嵌入投影到分類輸出。

ast_finetuned: 與ast_freeze的構建相同,但AST模型設置為可訓練,并對整個模型進行微調。

1.3 模型決策解釋

? ? ?本研究使用注意力回放方法可視化模型的決策過程。

  • 該方法使用模型的注意力層生成相關圖,以可視化語譜圖區域的相關性分數。
  • 通過將相關圖與語譜圖拼接成一個圖像,并用色調表示相關性分數,用亮度表示頻譜功率,從而可視化模型的注意力分布。
  • 為了更好地理解語譜圖區域,本研究使用Montreal Force Aligner生成與音頻對應的語音音素標注,并將其添加到圖像中。
  • 根據兩個模型的預測結果手動選擇樣本,分為四種情況:

O:ast_freeze和ast_finetuned都預測正確。

X:ast_freeze和ast_finetuned都預測錯誤。

A:ast_finetuned預測錯誤,ast_freeze預測正確。

B:ast_finetuned預測正確,ast_freeze預測錯誤。

2 結果

2.1 模型性能

下表顯示了模型的性能指標,包括:

  • 加權平均召回率 (UAR):不考慮類別樣本大小的情況下,所有類別的平均召回率。
  • ROC曲線下面積 (AUC):曲線衡量模型在不同分類閾值下的真正例率和假正例率。

與基礎AST模型相比,ast_finetuned模型具有更好的性能,表明微調對模型預測的改善作用。

2.2 分析

當基礎AST模型未完全訓練(A, ast_freeze)時,表示顯示出性別之間的分離而不是病理狀態(病理性與健康),換句話說,語音表示包含更多關于說話者性別而不是潛在聲音病理狀態的信息。另一方面,當基礎AST模型完全訓練(B, ast_finetuned)時,顯示出相反的趨勢。兩個模型都無法清晰地分離有機和無機病理。

上圖展示了兩個女性語音樣本的頻譜圖(左)和ast_freeze(中)與ast_finetuned(右)的相關性圖(頂部:健康,底部:病理性):這兩個樣本的預測結果被標記為B,即ast_finetuned預測正確,而ast_freeze預測錯誤。

從可用的可視化中,我們可以看到最高相關性分數并不一定分配給最高強度區域,如基頻和諧波。在兩種模型中都出現的更常見模式是,它們給音素“/?/”和音段“/e/ /s/ /i/ /n/”更高的分數。當模型微調后,我們發現更多的集中度,位置經常改變/移動,然而,沒有得出明顯一致的模式。

? ? 本研究訓練和比較了兩種Audio Spectrogram Transformer (AST) 配置,用于語音障礙檢測,并使用注意力回放方法生成了模型的相關圖。

? ? 通過分析相關圖,發現模型無法完全識別有機和無機語音障礙之間的差異,并且模型對音素“/?/”和片段“/e/ /s/ /i/ /n/”給予更高的分數。

? ? 當模型進行微調時,發現注意力范圍往往會減少,這表明模型更加關注特定的音素區域。

3 模型配置

3.1 ast_freeze

  • 模型類: ASTForAudioClassification
  • 模型路徑: MIT/ast-finetuned-audioset-10-10-0.4593
  • 類別數量: 2
  • 凍結: TRUE
  • 評估策略: epoch
  • 保存策略: epoch
  • 學習率: 0.001
  • 每個設備訓練批次大小: 8
  • 梯度累積步驟: 4
  • 每個設備評估批次大小: 8
  • 訓練周期數量: 10
  • 預熱比率: 0.1
  • 日志記錄步驟: 50
  • 評估步驟: 50
  • 推送到Hub: FALSE
  • 移除未使用的列: FALSE
  • 早停耐心: 5
  • 早停閾值: 0

3.2 ast_finetuned

  • 模型類: ASTForAudioClassification
  • 模型路徑: MIT/ast-finetuned-audioset-10-10-0.4593
  • 類別數量: 2
  • 凍結: FALSE
  • 評估策略: epoch
  • 保存策略: epoch
  • 學習率: 0.00025
  • 每個設備訓練批次大小: 8
  • 梯度累積步驟: 4
  • 每個設備評估批次大小: 8
  • 訓練周期數量: 40
  • 預熱比率: 0.1
  • 日志記錄步驟: 50
  • 評估步驟: 50
  • 推送到Hub: FALSE
  • 移除未使用的列: FALSE
  • 早停耐心: 8
  • 早停閾值: 0

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/39510.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/39510.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/39510.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

js基礎學習

1、js概述 js是javascript的簡稱&#xff0c;作用是實現頁面和用戶的交互 js由瀏覽器解析運行&#xff0c;不需要編譯 js由es基礎語法&#xff0c;bom瀏覽器相關&#xff0c;dom文檔操作相關 三大部分組成 2、html引入js <!DOCTYPE html> <html lang"zh-CN&qu…

Vue項目打包上線

Nginx 是一個高性能的開源HTTP和反向代理服務器&#xff0c;也是一個IMAP/POP3/SMTP代理服務器。它在設計上旨在處理高并發的請求&#xff0c;是一個輕量級、高效能的Web服務器和反向代理服務器&#xff0c;廣泛用于提供靜態資源、負載均衡、反向代理等功能。 1、下載nginx 2、…

k8s學習--k8s群集ELK日志收集部署最詳細的過程與應用(收集k8s群集日志)(圖形化界面手把手教學)

文章目錄 FilebeatFilebeat主要特點Filebeat使用場景 ELK簡介Elasticsearch簡介Elasticsearch主要特點Elasticsearch使用場景 Logstash簡介Logstash主要特點Logstash使用場景 Kibana簡介Kibana主要特點Kibana使用場景 簡單理解 環境一、ELK集群部署1.軟件安裝2.軟件配置及啟動(…

Webpack: Loader開發 (2)

概述 在上一篇文章中&#xff0c;我們已經詳細了解了開發 Webpack Loader 需要用到的基本技能&#xff0c;包括&#xff1a;Loader 基本形態、如何構建測試環境、如何使用 Loader Context 接口等。接下來我們繼續拓展學習一些 Loader 輔助工具&#xff0c;包括&#xff1a; 了…

telegram支付

今天開始接入telegram支付,參考教程這個是telegram的官方說明,詳細介紹了機器人支付API。 文章公開地址 新建機器人 因為支付是一個單獨的系統,所以在做支付的時候單獨創建了一個bot,沒有用之前的bot了,特意這樣將其分開。創建bot的方法和之前不變,這里不過多介紹。 獲…

Linux文件數據寫入

結構體 fd fd也就是文件描述符&#xff0c;用于標識已經打開的文件、管道、socket等。是進程和內核的橋梁&#xff0c;允許進程執行各種文件操作 struct fd {struct file *file;unsigned int flags; };file Linux內核中表示打開文件的結構體&#xff0c;包含了文件操作所需…

什么是自然語言處理(NLP)?詳細解讀文本分類、情感分析和機器翻譯的核心技術

什么是自然語言處理&#xff1f; 自然語言處理&#xff08;Natural Language Processing&#xff0c;簡稱NLP&#xff09;是人工智能的一個重要分支&#xff0c;旨在讓計算機理解、解釋和生成人類的自然語言。打個比方&#xff0c;你和Siri對話&#xff0c;或使用谷歌翻譯翻譯一…

2024廣州國際米粉產業展覽會暨米粉節

2024廣州國際米粉產業展覽會 時間&#xff1a;2024年11月16-18日 地點&#xff1a;廣州中國進出口商品交易會展館 主辦單位&#xff1a;企陽國際會展集團 【展會簡介】 米粉作為一種歷史悠久&#xff0c;人們日常食用的食物&#xff0c;其市場需求穩定&#xff0c;且隨著人…

學習.NET 8 MiniApis入門

介紹篇 什么是MiniApis&#xff1f; MiniApis的特點和優勢 MiniApis的應用場景 環境搭建 系統要求 安裝MiniApis 配置開發環境 基礎概念 MiniApis架構概述 關鍵術語解釋&#xff08;如Endpoint、Handler等&#xff09; MiniApis與其他API框架的對比 第一個MiniApis…

WSL2安裝ContOS7并更新gcc

目錄 WSL2安裝CentOS7下載安裝包安裝啟動CentOS7 CentOS7更換國內源gcc從源碼安裝gcc卸載gcc CMake中使用gcc關于linux配置文件參考 WSL2安裝CentOS7 Windows11官方WSL2已經支持Ubuntu、Open SUSE、Debian。但是沒有centos&#xff0c;所以centos的安裝方式略有不同。 下載安…

【面試題】網絡IP協議(第六篇)

1.簡述IP協議的作用。 IP協議&#xff08;Internet Protocol&#xff09;是TCP/IP協議族中的核心協議之一&#xff0c;主要用于在互聯網上進行數據傳輸。它的主要作用包括&#xff1a; 尋址&#xff1a;IP協議通過IP地址來唯一標識網絡中的每一臺設備&#xff0c;確保數據包能…

家政小程序的開發:打造現代式便捷家庭服務

隨著現代生活節奏的加快&#xff0c;人們越來越注重生活品質與便利性。在這樣的背景下&#xff0c;家政服務市場迅速崛起&#xff0c;成為許多家庭日常生活中不可或缺的一部分。然而&#xff0c;傳統的家政服務往往存在信息不對稱、服務效率低下等問題。為了解決這些問題&#…

mindspore打卡之量子測量

mindspore打卡之量子測量 我們可以看到&#xff0c;采樣1000中&#xff0c;00’出現了503次&#xff0c;11’出現了497次&#xff08;由于測量具有隨機性&#xff0c;每次運行結果會略有不同&#xff09;&#xff0c;采樣結果符合概率分布&#xff0c;細微的誤差是由模擬器噪聲…

【D3.js in Action 3 精譯】1.2.2 可縮放矢量圖形(三)

當前內容所在位置 第一部分 D3.js 基礎知識 第一章 D3.js 簡介 1.1 何為 D3.js&#xff1f;1.2 D3 生態系統——入門須知 1.2.1 HTML 與 DOM1.2.2 SVG - 可縮放矢量圖形 ?? 第一部分第二部分【第三部分】?? 1.2.3 Canvas 與 WebGL&#xff08;精譯中 ?&#xff09;1.2.4 C…

gameui C++的代碼

gameui C的代碼 #include <graphics.h> #include "gameboard.h" const int WIDTH 560; const int HEIGHT 780; const int GRID_SIZE 120; class GameUi { private: public:GameUi(GameBoard& gb) {// 初始化圖形窗口initgraph(WIDTH, HEIGHT);// 設置…

小米內推官

小米硬件提前批開始啦&#xff01;&#xff01;&#xff01;&#xff01; 請使用小米公司內推碼: Q9BN21S 招聘對象&#xff1a;25屆秋招 中國內地:畢業時間2025.01-2025.12 中國港澳臺及海外:畢業時間2025.07-2025.12 工作地點&#xff1a;北京、南京、武漢、深圳、上海等…

C++中Ranges庫的基本用法,如何簡化和增強對集合的操作。

Ranges庫的基本用法 什么是Ranges庫&#xff1f; C20引入的Ranges庫&#xff08;<ranges>&#xff09;是一個強大的工具集&#xff0c;旨在簡化和增強對集合&#xff08;如數組、向量等序列容器&#xff09;的操作。它提供了一套用于操作序列的功能性接口&#xff0c;使…

獨立站新風口:TikTok達人帶貨背后的雙贏合作之道

TikTok以其龐大的用戶基礎、高度互動性和創新的內容形式&#xff0c;為獨立站帶來了前所未有的發展機遇。獨立站與TikTok達人的合作&#xff0c;不僅能夠幫助獨立站快速提升品牌知名度和銷售額&#xff0c;還能為TikTok達人帶來更多商業機會和影響力。本文Nox聚星將和大家探討獨…

Android sdk 安裝已經環境配置

&#x1f34e;個人博客&#xff1a;個人主頁 &#x1f3c6;個人專欄&#xff1a;Android ?? 功不唐捐&#xff0c;玉汝于成 目錄 正文 一、下載 二、安裝 三、環境配置 我的其他博客 正文 一、下載 1、大家可去官網下載 因為需要魔法 所以就不展示了 2、去下面這…

經典shell運維實用腳本~

以下腳本可謂日常工作常用到的經典腳本案例。希望可以幫助大家提升提升自動化能力&#xff01; 1、監控100臺服務器磁盤利用率腳本 #!/bin/bashHOST_INFOhost.infofor IP in $(awk /^[^#]/{print $1} $HOST_INFO); do USER$(awk -v ip$IP ip$1{print $2} $HOST_INFO) P…