
One sexy utilization of genres in googling “sci fi tv shows to watch” .
在《Embedding #40 》中,我們提到了孔子如何建立禮教與音樂類型之間的關係。在同一時期的西方,古希臘數學家畢達哥拉斯 (Pythagoras) 則是以發現音樂與數學的關係而聞名。傳說有一天,他偶然經過一間打鐵鋪,聽到鎚子敲打鐵塊的聲音,有些和諧動聽,有些刺耳紛亂。出於好奇,他進入鐵鋪研究(古人就是這麼隨意),發現那些和諧的聲音來自鎚子之間的簡單整數比例,如 1:2 或 1:3。這一發現讓他進一步在弦樂器上進行實驗,發現不同的弦長比例會產生不同的音高。當琴橋將琴弦分成 1:2 時,兩邊的音高相同;當分成 2:3 時,則會產生悅耳的和弦聲。畢達哥拉斯因此得出結論:所有和諧的音樂,都基於簡單的整數比例。[1] [2]
這個發現不僅揭示了音樂潛在的數學本質,還提出了「八度」(Octave)的概念,促進了後續音樂與數學的共舞,更讓當代的資訊科學擁有豐富的數學基礎可供使用。 [3] 本期,我們將進一步回答第 40 期提出的問題:可以直接從音樂本身得出音樂類型嗎?

Trident of automatic music generation in Music Information Retrieval / Research.
在 KKCompany 社內的一場 TechSpark Exchange 分享會中,「生成式音樂模型的三叉戟」概念被提了出來。它將音樂生成的主流方法分為三大流派:樂譜 + 合成器、聲波 + 音樂編碼、頻譜 + 聲碼器。這三個流派的核心原料——樂譜、聲波和頻譜,分別透過合成器、音樂編碼技術和聲碼器進行音頻訊號的生成,精確控制音樂的結構、旋律、音色和頻率成分,從而實現高度和諧且具有層次感的音樂創作。
此外,至斌還強調,這些原料不僅能用於音樂生成,還可以用來推估音樂的類型,進一步理解和分類音樂作品。例如,樂譜的音樂結構、聲波的音頻特徵和頻譜的頻率成分分析,都能幫助我們猜測和推薦音樂的風格和類型。某個程度上可以說,音樂類型的推估是音樂生成的前導技術、或是旁支技術。有種一魚雙吃或是一石二鳥感,很不賴吧。
在知道了「可以直接從音檔本身取得原料來使用,推估出音樂的類型」後,那下一步就是接著問:有哪些原料 (特徵) 可以先拿來使用?它們要怎麼計算出來?計算的複雜度與成本?它們本質上的物理意義究竟是什麼? [4][5][6]
這邊有幾個常見且重要的,可以直接從音檔計算出來的特徵:
1. 頻譜圖 (Spectrogram) & 2. 梅爾頻譜圖 (Mel-Spectrogram)

Spectrogram & Mel-Spectrogram by Music genre classification using CNN
頻譜圖就像是一張聲音的地圖。你可以想像把一段音樂分成很多小時間片段,然後顯示每個片段在不同頻率上的能量。這會創造出一個彩色的圖表,其中時間在水平軸上,頻率在垂直軸上,而顏色的強度顯示聲音的能量。這有助於我們看見聲音的頻率能量如何隨著時間改變。
梅爾頻譜圖與頻譜圖非常相似,但有一個不同點:它使用梅爾頻率標度來表示頻率軸。梅爾頻率標度是為了匹配人類的聽覺,強調我們比較敏感的頻率並壓縮我們不太敏感的頻率。這使它特別適用於語音和音樂分析,因為它以更接近我們感知的方式來表示聲音。
3. 梅爾頻率倒譜係數 (MFCC)

MFCC by Music genre classification using CNN
梅爾頻率倒譜係數是一組總結音頻訊號短期功率譜的特徵。它們來自於梅爾頻譜圖,並以緊湊的形式表示音頻頻譜的形狀。可以把 MFCC 看作是捕捉聲音的基本“指紋”,這使它們在語音識別和音樂類型分類中非常有用。
4. 零交越率 (Zero-Crossing Rate)

Zero-Crossing Rate by librosa on MIR
零交越率測量音頻訊號在給定時間框內有多頻繁地穿越水平軸(即從正變負或反之)。數值高可以表示噪聲或打擊聲,而數值低則通常對應到和諧或平滑的聲音。拿下頭這個兩秒的打擊 loop 來說,仔細聽會聽出來它有五個打擊點,對應到到 zero-crossing rate來說,就會有如上圖的五個交點。是一種很簡單的方法可以來了解聲音的質地。
5. 頻譜重心 (Spectral Centroid)

Spectral Centroid by librosa
頻譜重心就像是聲音頻譜的“質心”。它告訴我們頻率內容的“中心”在哪裡。如果頻譜重心高,表示聲音整體上的頻率比較高,聽起來會比較明亮或尖銳;如果頻譜重心低,表示聲音的整體頻率比較低,聽起來會比較暗或柔和。這個特徵有助於區分不同的樂器和音色。
6. 色譜圖 (Chromagram)

Chromagram by librosa
色譜圖表示在各個時間段內 12 個不同音級(如C, C#, D等)的強度,這也意味著它顯示了哪些音符被彈奏以及彈奏的強度。這對分析音樂的和聲與和弦非常有用。
上述的這些特徵 (Spectrogram, Mel-Spectrogram, MFCC, Zero-Crossing Rate, Spectral Centroid, Chromagram) ,每個這些特徵都有助於我們以不同的方式理解和分析音樂,我們能夠把複雜的音樂分解成更易處理和解釋的部分,進而最後成為音樂類型辨識的其中一個原料。下一步,我們將進入使用這些特徵來打造一個屬於我們自己的音樂類型分類器 😎。
結束這一期之前,在好奇心的驅使下,突然想來看看 KKBOX 年度單曲累積榜 (KKBOX Top 100) 都是來自哪些音樂類型。我們挑了去年某個時間點的榜單,六個曲風 (華語、西洋、日語、韓語、台語、粵語),總計 600 首單曲。於是我們有了以下這張圖。 [7]
Pop 是流行樂,Hokkien-Pop 是臺語流行樂,C-Pop 是華語流行樂,Canto-Pop 是粵語流行樂,再加上 K-POP 與 J-Pop,這六個音樂類型包辦了 KKBOX 單曲百大的前六名,的確是道道地地的「流行」。但這是否代表大部分的用戶都只聽流行樂呢?這可不一定。關於這個問題,我們會在未來進行更多的研究與挖掘後,再來深入探討,而且是以數學家或科學家的方式探討 🤩

Genres in KKBOX 年度單曲累積榜 (some day in 2023)