Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AIGO Speech Recognition

本專案為 113 年度 AIGO 潛力新星盃 競賽作品,主題為 教學品質監控:AI 聲紋分析與情緒辨識,透過 AI 技術分析一對一線上教學錄音,完成 Speech-to-Text、Speaker Diarization、Emotion Recognition 與教學分析等功能。


專案簡介

本專案以線上一對一教學錄音為分析對象,透過多種 AI 模型完成下列功能:

  • Speech-to-Text(語音轉文字)
  • Speaker Diarization(聲紋辨識)
  • Emotion Recognition(情緒辨識)
  • 對話紀錄生成
  • 教學分析報告

競賽要求 Speech-to-Text 準確率須達 95% 以上,並透過 AI 協助提升教學品質分析能力。


資料集

本專案使用主辦單位提供之教學錄音資料。

資料內容包含:

  • 超過 100 筆 MP3 錄音
  • 約 10 位教師
  • 每筆錄音長度約 30~40 分鐘
  • 菲律賓老師與台灣學生之一對一英文教學內容

系統流程

教學錄音
    │
    ▼
Speech-to-Text
(Whisper / AssemblyAI)
    │
    ▼
Speaker Diarization
(Pyannote / AssemblyAI)
    │
    ▼
對話紀錄生成
    │
    ▼
Gemini 判斷老師與學生身份
    │
    ├──────────────┐
    ▼              ▼
Emotion         教學分析
Recognition

專案實作

本專案共實作兩種處理流程。

方法一:Whisper + Pyannote

Speech-to-Text

  • 嘗試不同降噪參數改善音訊品質。
  • 使用 Whisper Base 模型進行語音轉文字。

Speaker Diarization

  • 使用 Hugging Face 的 Pyannote 進行聲紋辨識。
  • 因資料僅包含老師與學生,因此固定設定:
num_speakers = 2

對話紀錄生成

整合 Whisper 與 Pyannote 的辨識結果,依照時間軸配對說話內容,產生完整對話紀錄,再透過 Gemini 判斷各說話者分別為老師或學生。


方法二:AssemblyAI

使用 AssemblyAI API 直接完成:

  • Speech-to-Text
  • Speaker Diarization

由於兩項功能已整合於同一流程,因此可避免時間軸不同步問題,再透過 Gemini 判斷老師與學生身份。


結果比較

方法 Speech-to-Text Speaker Diarization 優點 缺點
Whisper + Pyannote 支援 支援 可完全本地執行 時間軸可能不同步
AssemblyAI 支援 支援 已整合完整流程,辨識率較高 需使用雲端 API

專案成果

方法一

Speech-to-Text 準確率:

94%~96%

主要問題:

  • Whisper Base 對部分發音辨識較不穩定。
  • Whisper 與 Pyannote 的時間軸偶爾無法完全對應。

方法二

Speech-to-Text 準確率:

95%~98%

優點:

  • Speech-to-Text 與 Speaker Diarization 已整合。
  • 不會產生時間軸不匹配問題。
  • 辨識率較高。

量化成果

Speech-to-Text

將音檔前十分鐘內容與官方逐字稿進行比對,並使用 Confusion Matrix 評估辨識結果。

隨機抽樣測試之音檔皆達:

  • Speech-to-Text 準確率 95% 以上

Speaker Diarization

比對音檔與官方身分標註。

本專案已完成 Speaker Diarization 功能,但因競賽時間限制,未完整統計量化成果。

Emotion Recognition

使用 SpeechBrain 對每句語句進行情緒分類,輸出:

  • Positive
  • Neutral
  • Negative

質化成果

除模型驗證外,本團隊亦完成整合式 Web 使用者介面,提供:

  • 音檔上傳
  • Speech-to-Text
  • Speaker Diarization
  • Emotion Recognition
  • AI 教學分析報告

使用者可透過單一介面完成整體分析流程。


使用技術

  • Python
  • Whisper
  • Pyannote Audio
  • SpeechBrain
  • AssemblyAI API
  • Gemini
  • Hugging Face
  • Transformers
  • Librosa
  • Pydub

Repository 內容

本 Repository 主要包含:

  • Speech-to-Text 實作
  • Speaker Diarization 實作
  • 涉及企業授權與隱私,不便於此處提供音檔內容、語音轉文字和情緒辨識結果

獲獎成果

  • 113 年度 AIGO 潛力新星盃-實證結果優等獎
  • 113 年度 AIGO 潛力新星盃-潛力獎

About

AIGO競賽成果簡介

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages