iT邦幫忙

2025 iThome 鐵人賽

DAY 24
0
AI & Data

AI語音辨識系統:結合聲紋分析與情緒識別系列 第 24

Day 24 AMI Meeting Corpus 資料應用 - 語者標籤錯位問題的發現與原因分析

  • 分享至 

  • xImage
  •  

▋前言


在使用 AMI Meeting Corpus 進行語音分析實驗時,發現一個重要的問題:
逐字稿 (ES2002a.Mix-Headset.txt) 裡的說話者標籤(如 Speaker 0、Speaker 1、teacher)
與 情緒摘要 (summarize_emotion.txt) 裡的標籤(如 Speaker 1、teacher、Speaker 3)無法一一對應。

這代表:
在情緒分析報告裡的 “Speaker 1” 不一定是逐字稿裡的 “Speaker 1”,
造成資料對齊與後續統計的困難。今天就來分析為什麼會發生這個狀況。

▋內容


一、問題現象

以下是實際輸出的片段:

summarize_emotion.txt

Speaker: Speaker 1
  sad: 15 (17.65%)
  hap: 43 (50.59%)
  neu: 27 (31.76%)

ES2002a.Mix-Headset.srt (逐字稿對應)

0:00:01.000 --> 0:00:03.000
(Speaker 0): Good morning everyone.

→ 可以看到兩者標籤不同步,造成「情緒分布」與「逐字稿內容」無法正確比對。

二、問題根源:Speaker Mapping 的邏輯衝突

整個語者標籤的產生流程如下:

NeMo Diarization 輸出

NeMo 會自動將每位講者標記為 Speaker 0, Speaker 1, Speaker 2...

這只是臨時 index,與實際身份(如老師或學生)無關。

Speaker Verification 比對

系統會提取每位講者的 embedding,再與教師樣本比對。

最相似的被標為 teacher,其他依距離排序為 Speaker 0, 1, 2...

❗ 這個排序與 NeMo 原本輸出的順序不同!

speaker_mapping 產生

若為雙人對話:標為 teacher 與 student。

若為多人對話:最像教師的標為 teacher,其餘依 embedding 相似度 重新排序。

結果導致:

NeMo 的 Speaker 0 可能在比對後變成 Speaker 1 或 teacher,
所以逐字稿和情緒統計就對不上。

三、具體範例

在這次分析中:

summarize_emotion.txt 的 Speaker 1 → 原本可能是 NeMo 的 Speaker 0

ES2002a.Mix-Headset.srt 則仍保留 NeMo 的 Speaker index
導致兩份檔案無法直接對應。

四、初步結論

問題來源 影響
Speaker Mapping 依據 embedding 動態排序 不同檔案間的標籤不一致
缺乏固定 identity 映射 難以比對逐字稿與情緒報告
重新標籤時覆寫原始 index 無法回溯原始 NeMo 輸出順序

這其實是多模組整合時的常見陷阱:「語者辨識」與「語者比對」同時存在,但邏輯未同步。

▋下回預告


下一篇將分享如何修正這個邏輯問題,讓逐字稿與情緒報告能對齊,並反思這段經驗帶來的教訓。

▋參考資料


AMI Corpus


上一篇
Day 23 情緒分類準確率與整體評估框架
下一篇
Day 25 AMI Meeting Corpus 資料應用 - 修正語者標籤邏輯與反思
系列文
AI語音辨識系統:結合聲紋分析與情緒識別27
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言