• 沒有找到結果。

華語流行音樂之詞式分析與詞曲結構搭配之排比與同步 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "華語流行音樂之詞式分析與詞曲結構搭配之排比與同步 - 政大學術集成"

Copied!
86
0
0

加載中.... (立即查看全文)

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University 碩士論文 Master’s Thesis. 立. 政 治 大. ‧ 國. 學. 華語流行音樂之詞式分析與詞曲結構搭配之排比與同步 Lyrics Form Analysis for Chinese Pop Music with. ‧. Application to Structure Alignment between. n. al. er. io. sit. y. Nat. Lyrics and Melody. Ch. i n U. v. engchi 研 究 生:范斯越. 指導教授:沈錳坤. 中華民國一百零一年九月 September 2012.

(2) 摘要 目前大部分的聽眾主要是透過歌詞與樂曲的搭配來了解音樂所要表達的內容,因 此歌詞創作在目前的音樂工業是很重要的一環。一般流行音樂創作是由作曲人與 作詞人共同完成,然而有另一種方式是將既有的詵詞做為歌詞,接著重新譜曲的 方式產生新的流行音樂。這種創作方式是讓舊有的詞或曲注入新的生命力,得以 流傳到現在。因此本研究希望可以為一首旋律推薦適合配唱的歌詞,以對數位音 樂達到舊曲新詞的加值應用。本論文包括兩個部分,分別為:(1)自動分析歌詞 的詞式,找出每個段落的位置與其段落的標籤;(2)詞曲結構搭配,找出相符合. 治 政 結構的詞與曲,並且同步每個漢字與音符。 大 立 本論文的第一部分為詞式分析,首先將歌詞擷取四個面向的特徵值,分別為 ‧ 國. 學. (1)句字數結構;(2)拼音結構;(3)詞性;(4)聲調音高。第二步驟,利用這四種特. ‧. 徵值分別建立詞行的自相似度矩陣(Self Similarity Matrix),並且利用這四個特徵 的自相似度矩陣產生一個線性組合自相似度矩陣。第三步驟,建立在自相似度矩. y. Nat. io. sit. 陣上我們做段落分群以及家族(Family)組合找出最佳的分段方式,最後將找出的. n. al. er. 分段方式利用我們整理出來的規則讓電腦自動標記段落標籤。第二部分為詞曲結. Ch. i n U. v. 構搭配,首先我們將主旋律的樂句以及歌詞的詞句做第一層粗略的對應,第二步. engchi. 驟,將對應好的樂句與詞句做第二層漢字與音符細部的對應,最後整合兩層對應 的成本當做詞曲搭配的分數。 我們以 KKBOX 音樂網站當做歌詞來源,並且請專家標記華語流行歌詞資料 庫的詞式。實驗顯示詞式分析的 Pairwise f-score 準確率達到 0.83,標籤回復準確 率達到 0.78。詞曲結構搭配中,查詢的歌曲其原本搭配的歌詞,推薦排名皆為第 一名。. i.

(3) Abstract Nowadays, lots of pop music audiences understand the content of music via lyrics and melody collocation. In general, a Chinese pop music is produced by composer and lyricist cooperatively. However, another producing manner is composing new melody with ancient poetry. Therefore, we want to recommend present lyrics for a melody and then achieving value-added application for digital music. This thesis includes two subjects. The first subject is lyrics form analysis. This subject is finding the block of verse, chorus, etc., in lyrics. The second subject is structure alignment between lyrics. 政 治 大 alignment to recommend present lyrics which is suitable for singing. 立. and melody. We utilize the result of lyrics form analysis and then employ a 2-tier. In lyrics form analysis, the first step, we investigate four types of feature from. ‧ 國. 學. lyrics: (1) Word Count Structure; (2) Pinyin Structure; (3) Part of Speech Structure; (4). ‧. Word Tone Pitch. For the second step, we utilize these four types of feature to. sit. y. Nat. construct a SSM(Self Similarity Matrix), and blend these four types of SSM to. io. er. produce a linear combination SSM. The third step is clustering blocks and finding the best Family combination based on SSM. Finally, a rule-based technique is employed. al. n. v i n to label blocks of lyrics. For C the second subject, the h e n g c h i U first step is aligning music phrases and lyrics sentences roughly. The second step is aligning a word and a note. for corresponding phrase and sentence. Finally, we integrated the cost of two-level alignment regarded as the lyrics and melody collocation score. We collect lyrics from KKBOX, a music web site, and invite experts label ground truth of lyrics form. The experimental result of lyrics form analysis shows that the proposed method achieves the Pairwise f-score of 0.83, and the Label Recovering Ratio of 0.78. The experiment of structure alignment between lyrics and melody shows that the original lyrics of query melodies are ranked number one. ii.

(4) 誌謝 轉眼間在政大經過了三個寒暑,碩士生涯也要告一段落,首先感謝我的父母,提 供我穩定的經濟來源,讓我可以恣意的遨遊在音樂研究裡。感謝哥哥送我一台性 能優越的筆電,讓我得以順利完成程式以及碩士論文。感謝沈老師在這三年間教 導我很多研究的觀念、簡報與 DEMO 的技巧、分享產業界的趨勢、不時的提醒 我需要改善的壞習慣以及讓我擔任實驗室大師兄的角色,放心的讓我處裡實驗室 的大小事,培養我的責任感。這些的經歷都讓我獲益良多,在未來都能夠成為我 達成下一個目標的助力。. 政 治 大 實的做事是值得我學習的地方。戴張的搞笑功力,讓實驗室有時嚴肅的氣氛頓時 立. 我也要感謝實驗室眾多的成員,世宏三年來一步一步的朝他的目標邁進,踏. ‧ 國. 學. 充滿歡笑,還有他一個人勇敢的在異鄉交換學生,勇於嘗詴值得我學習。志傑做 事的果斷,不停的學習新的資訊技術,這是我值得學習的地方。柏堯玩音樂的態. ‧. 度,從組團、錄音到 live house 表演,都有適時的抓住機會表現,做好準備等待. sit. y. Nat. 機會值得我去學習。建成關心他人,體貼他人,讓人感覺很溫暖,關懷他人很值. al. er. io. 得我去學習。柏聿為人誠懇,不時的從嘉義帶特產與實驗室成員分享,讓大家在. v. n. 做研究時可以適時補充腦力,這種分享的心值得我學習。世通清晰的口條,在我. Ch. engchi. i n U. 挫折的時候會給我正向的思維,這種正向思考鼓勵他人值得我去學習。還有感謝 新加入實驗室的學弟蘇瀚、嘉泰、仍翰與楚翔參加我的論文口詴,為我加油打氣。 感謝韓助教幫我處理很多行政上的問題,即使我一直麻煩她,她還是不厭其 煩的回答。感謝子安不離不棄的陪我度過很多研究難熬的日子,她的溫柔與鼓勵 時常又讓我重拾研究的動力。感謝大提琴陪伴我度過好幾個煩惱的夜晚,讓我的 煩惱可以消散在其低沉的琴音當中。 還有感謝大學部的學弟妹,博為、睿陵、鉦凱、暐翔、柏皓、執中、FiFi、 博軒、Lucy、家霖與俊鋒為實驗室帶來更多歡樂的氣氛。大家一同經歷的酸、甜、 苦、辣,是我們培養情感的養分,這三年發生的種種會一直留在我心中,我衷心 iii.

(5) 的祝福大家在未來能夠大步的往自己理想的目標邁進,開創自己人生的一片 天!! 范斯越 謹誌于 政治大學資訊科學所 2012.10.15. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. iv. i n U. v.

(6) 目錄 中文摘要 ............................................................................................................................................... I 英文摘要 .............................................................................................................................................. II 誌謝 ..................................................................................................................................................... III 目錄 ....................................................................................................................................................... V 表目錄.............................................................................................................................................. VIII 圖目錄..................................................................................................................................................IX. 政 治 大 動機 ......................................................................................................................................... 1 立. 第 1 章 前言 .................................................................................................................................... 1 1.1.. 歌詞推薦系統應用 ............................................................................................................ 2. 1.3.. 論文架構 ............................................................................................................................... 4. ‧. ‧ 國. 學. 1.2.. 第 2 章 相關研究 .......................................................................................................................... 5. y. Nat. 音樂結構分析 ...................................................................................................................... 5. io. sit. 2.1.. NOVELTY-BASED ........................................................................................................... 6. 2.1.2.. HOMOGENEITY-BASED .............................................................................................. 6. 2.1.3.. REPETITION-BASED .................................................................................................... 7. n. al. er. 2.1.1.. Ch. engchi. i n U. v. 2.2.. 歌詞與旋律關係研究 ........................................................................................................ 8. 2.3.. 流行音樂與歌詞自動同步 .............................................................................................. 9. 2.4.. 由歌詞產生旋律與由旋律產生歌詞 .........................................................................14. 第 3 章 詞式分析 ........................................................................................................................16 3.1.. 問題描述 .............................................................................................................................16. 3.2.. 計算行與行之間相似度 .................................................................................................18 v.

(7) 3.2.1.. 句字數結構序列 ..........................................................................................................18. 3.2.2.. 拼音結構序列 ...............................................................................................................19. 3.2.3.. 詞性結構序列 ...............................................................................................................20. 3.2.4.. 聲調音高序列 ...............................................................................................................20. 3.3.. 自相似度矩陣(SELF-SIMILARITY MATRIX)建立 ................................................22. 3.3.1.. 詞行結構排比演算法 .................................................................................................23. 3.3.2.. DTW (DYNAMIC TIME WARPING)演算法 .........................................................30. 3.3.3.. 線性組合 SSM ...............................................................................................................32. 3.5.. 詞式段落標記 ....................................................................................................................47. 學. ‧ 國. 3.4.. 治 政 重複樣式探勘 .................................................................................................................... 34 大 立. 第 4 章 詞曲結構搭配 ...............................................................................................................49. ‧. 詞句與樂句結構對應 ......................................................................................................49. 4.2.. 漢字與音符對應 ...............................................................................................................54. sit. y. Nat. 4.1.. n. al. er. io. 第 5 章 實驗結果評估 ...............................................................................................................56. i n U. v. 5.1.. 詞式標記方法 ....................................................................................................................56. 5.2.. 詞式分析評估方法 ..........................................................................................................57. 5.3.. 詞式分析實驗結果 ..........................................................................................................62. Ch. engchi. 5.3.1.. SSM 建立參數設定 .....................................................................................................62. 5.3.2.. INSTANCE PATH SEARCH 參數設定 ...................................................................63. 5.3.3.. 有效實體段落門檻值設定 .......................................................................................63. 5.3.4.. 實驗結果 .........................................................................................................................63. 5.4. 5.4.1.. 詞曲搭配實驗 ....................................................................................................................67 演算法參數設定 ..........................................................................................................67 vi.

(8) 5.4.2.. 實驗結果 .........................................................................................................................68. 第 6 章 結論與未來研究 ..........................................................................................................70 參考文獻 ............................................................................................................................................71. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. vii. i n U. v.

(9) 表目錄 表 3.1 聲調與音高走勢搭配規則 ........................................................................ 21 表 3.2 特徵仍素對應關係表 ................................................................................ 25 表 3.3 詞行結構回溯過程 .................................................................................... 28 表 4.1 聲調與音高對照表 .................................................................................... 54 表 4.2 漢字與音長對照表 .................................................................................... 54 表 5.1 三種特徵仍素分別的懲罰分數設定 ........................................................ 62 表 5.2 詞式分析結果 ............................................................................................ 64. 政 治 大 表 5.4 無法分析的歌詞與特徵值 SSM 對應表 .................................................. 66 立 表 5.3 去除分析不出詞式歌詞的實驗結果 ........................................................ 65. ‧. ‧ 國. 學. 表 5.5 歌詞推薦結果 ............................................................................................ 68. n. er. io. sit. y. Nat. al. Ch. engchi. viii. i n U. v.

(10) 圖目錄 圖 1.1 系統目標示意圖............................................................................................... 2 圖 1.2 歌詞推薦系統架構圖....................................................................................... 3 圖 2.1 SSM 上的斜線樣式........................................................................................... 7 圖 2.2 動態歌詞檔案格式........................................................................................... 9 圖 2.3 人聲段落與歌詞句的對應情況...................................................................... 10 圖 2.4 YIN 音高追蹤演算法偵測出的歌曲基頻分佈.............................................. 11 圖 2.5 單存考慮相對音高特徵的歌詞與 Onset 時間點同步示意圖 ...................... 12. 政 治 大 圖 3.2 《我很醜,可是我很溫柔》副歌歌詞......................................................... 17 立 圖 3.1 鳳飛飛《掌聲響起》歌詞............................................................................. 16. ‧ 國. 學. 圖 3.3 聲調與旋律搭配的例子................................................................................. 21 圖 3.4 四聲對應的實際音高走勢.............................................................................. 22. ‧. 圖 3.5 自相似度矩陣示意圖..................................................................................... 23. sit. y. Nat. 圖 3.6 序列排比的兩種 Gap 分佈示意圖 ................................................................. 24. al. er. io. 圖 3.7 空白對應 Gap 的排比情況 ............................................................................ 25. v. n. 圖 3.8 最佳化的排比路徑回朔演算法..................................................................... 30. Ch. engchi. i n U. 圖 3.9 音高旋律用 DTW 比對的例子 ...................................................................... 30 圖 3.10 DTW Step Size 類型 .................................................................................... 31 圖 3.11《我很醜,可是我很溫柔》四種特徵值 SSM ............................................ 32 圖 3.12 線性組合 SSM.............................................................................................. 33 圖 3.13《瀟灑走一回》歌詞原文與其 SSMhybrid..................................................... 35 圖 3.14 《我很醜,可是我很溫柔》SSMhybrid........................................................ 36 圖 3.15《我很醜,可是我很溫柔》段落(5, 8)與段落(13, 16)歌詞 ....................... 36 圖 3.16《領悟》的副歌內容..................................................................................... 37 圖 3.17 樣式段落(5, 8)的實體段落例子 .................................................................. 38 ix.

(11) 圖 3.18 轉移分數 Ts 示意圖 ..................................................................................... 39 圖 3.19 Instance Path Search 演算法 ........................................................................ 40 圖 3.20 Instance Path Tracking 演算法 ..................................................................... 41 圖 3.21 Instance Path Tracking 的兩個例子 .............................................................. 42 圖 3.22 有效實體段落間相似度例子....................................................................... 43 圖 3.23 趙傳《我很醜,可是我很溫柔》的 Family 內聚力矩陣 ......................... 44 圖 3.24 可能性分數計算例子................................................................................... 45 圖 3.25 Family 最佳組合搜尋演算法 ....................................................................... 46. 政 治 大 圖 4.1 芳艷芬《檳城艷》歌詞.................................................................................. 49 立 圖 3.26 詞式段落標記例子....................................................................................... 48. 圖 4.2 對應序列二維表示......................................................................................... 50. ‧ 國. 學. 圖 4.3 成本函數曲線圖............................................................................................. 52. ‧. 圖 4.4 歌唱限制的 Step Type.................................................................................... 55. y. Nat. 圖 5.1 詞式標記方法................................................................................................. 57. er. io. sit. 圖 5.2 Boundary Retrieval 計算 ................................................................................ 58 圖 5.3 分群結果轉換................................................................................................. 59. al. n. v i n 圖 5.4 Over 與 Under Segmentation 61 C h 說明............................................................... engchi U 圖 5.5 Label Recover Rate 計算 ................................................................................. 62 圖 5.6 DTW 路徑權重設定 ....................................................................................... 63 圖 5.7 任賢齊《不要變》......................................................................................... 64 圖 5.8 蕭亞軒《甩啦甩啦》..................................................................................... 64 圖 5.9 孫燕姿《我要的幸福》................................................................................. 65. x.

(12) 第1章 前言. 1.1. 動機 流行歌曲廣義上的定義為通過大眾媒體傳播、以大眾為接受對象的歌曲[39],而. 政 治 大 分中包含了作曲、作詞以及編曲。作曲人通常會去參考作詞人的歌詞[33],分析 立 目前流行音樂的製作包含兩大部分,音樂創作與錄音後製。在流行音樂創作的部. 歌詞的主題進而決定樂曲的風格,並且了解歌詞的段落結構以及聲韻,來決定樂. ‧ 國. 學. 曲的拍子、節奏或是調性等等音樂上的特徵,完成一首有主要旋律的樂曲。. ‧. 相對於作曲,作詞是屬於文學的學科,作詞人也會參考作曲人的樂曲[33],. sit. y. Nat. 了解樂曲的長度,決定歌詞的字數,分析樂曲的曲式結構,決定歌詞的結構,聆. io. er. 聽樂曲的主題、情感,決定歌詞的中心思想、意境。以上兩個工作都是一個從無 到有的過程,兩者並沒有一個明確的先後關係,因為雙方都會需要互相參考,所. al. n. v i n Ch 以必頇要頻繁的交換意見,才能完成一個完整的流行音樂。 engchi U. 現在大部分的聽眾,即使沒有受過專業的音樂訓練,也是可以透過歌詞來了. 解音樂要表達的主題,並且現在熱門的音樂很少會是以單純的樂器演奏的形式呈 現[1]。由此可知,有較多的聽眾可以藉由歌詞跟樂曲搭配的形式來了解音樂, 因此歌詞創作在目前的音樂工業是很重要的一環。目前市面上有很多的音樂播放 軟體(例如:千千靜聽、Winamp),有提供動態歌詞的功能。所謂動態歌詞是指當 流行歌曲中的演唱者,演唱到某句歌詞的時候,音樂播放軟體會把對應的歌詞同 步顯示。這樣的功能可以幫助使用者即時了解目前歌曲演唱的歌詞內容,並且, 動態歌詞還可以提供類似在 KTV 裡歌詞引導的功能,使用者可以用此練習演唱 1.

(13) 的技巧。 目前有很多華語流行音樂是翻唱自其他國家的歌曲,一般的作法都是保留原 曲的主旋律,可能會把伴奏或是樂器的部分做改變,最後填上中文的歌詞。以《古 老的大鐘》為例,這首歌被歌手李聖傑翻唱過。大部份的人會認為《古老的大鐘》 是源自於日本民謠,但是實際上這首歌的原作者是 Henry Clay Work(1832-1884), 一位美國人於 1876 年所寫的一首歌曲,只不過這首歌在 1940 年代隨著戰爭的結 束,傳入日本,經過翻譯成為了日本的民謠。這首歌的背景大約是在述說,一個 古老的時鐘伴隨作曲者的祖父生活的真實故事,最後在老祖父過世之後,老時鐘. 政 治 大 因此,一首一百多年前的歌曲透過新的翻唱,填上新的歌詞,就可以注入新的生 立 也就隨之停擺,似乎是在宣示老時鐘伴隨著老祖父一起離開了,歌詞感人真摯。. 命,讓這首歌曲源遠流傳到現在。因此本研究希望透過歌詞的詞式分析,自動判. ‧ 國. 學. 斷歌詞的主歌、副歌等等的段落,應用在詞曲結構搭配,並且自動同步音樂與歌. ‧. 詞的音符與漢字的對應關係。. sit. y. Nat. 1.2. 歌詞推薦系統應用. n. al. er. io. 本研究可以應用在歌詞推薦系統,此系統的目標為輸入一個流行音樂的複音. v. (Polyphonic)MIDI,系統可以自動推薦適合配唱的歌詞,並且每一首推薦的歌詞. Ch. engchi. i n U. 都有與輸入的音樂做音符與漢字的同步處理,讓使用者了解如何演唱新詞。如圖 1.1 為系統目標的示意圖。. 圖 1.1 系統目標示意圖 2.

(14) 歌詞推薦系統分成三大部分:(1)歌詞處理(Lyrics Processing);(2)音樂處理 (Music Processing);(3)對齊與排名(Alignment and Ranking),系統架構圖如圖 1.2 所示。本研究在此系統涵蓋了(1)與(3)部分(灰色底色)。歌詞處理部分主要分成三 個仍件:(1)歌詞詞式分析(Lyrics Form Analysis),將歌詞分段並且標出每個段落 的意義(例如主歌、副歌或橋段);(2)歌詞斷詞(Lyrics Tokenization),將中文歌 詞擷取出有意義的詞彙;(3)歌詞主旋律產生(Lyrics Melody Generation),利用中 文為聲調語言的特性,產生中文流行歌詞聲調對應的旋律。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 1.2 歌詞推薦系統架構圖 音樂處理目的是要抓取跟歌詞相對應的特徵,分成三個仍件:(1)音樂結構 分析(Musical Form Analysis),將抓出的主旋律做分段,並且標出每個段落的意義 ( 例 如 主 歌 、 副 歌 或 橋 段 ); (2) 基 於 歌 詞 的 樂 句 分 段 (Lyrics-based Phrase Segmentation) 將主旋律找出樂句的分段點,而樂句的分段是依據其歌詞中一句 歌詞的分段點;(3)人聲旋律擷取(Melody Extraction),抓取使用者輸入的複音 MIDI 的人聲旋律。 最後為詞曲的排名與同步。我們先將歌詞中詞句的結構與音樂的樂句結構做 3.

(15) 第一層的最佳化的對應,接下來在做漢字與音符第二層最佳化的對應。在第二層 的對應中,考慮了詞式與曲式的搭配、中文歌詞產生的旋律與音樂主旋律的搭配 以及歌詞唱音節奏與主旋律節奏的搭配。最後計算出詞曲搭配的分數,再根據搭 配分數得到歌詞推薦清單,而在產生推薦清單的同時也完成了歌詞中的每個漢字 與音樂音符的對應關係,如此便達到推薦歌詞系統的目的。. 1.3. 論文架構 本論文之架構如下,第一章介紹研究動機、研究目的與歌詞推薦應用實例;接下. 政 治 大 詞與旋律關係研究;(3)流行音樂與歌詞自動同步;(4)由歌詞產生旋律與由旋律 立. 來,第二章探討相關研究,分成四大方向:(1)音樂結構分析之相關方法;(2)歌. ‧ 國. 學. 產生歌詞,其中(1)與詞式分析相關,(2)、(3)與(4)則與詞曲結構搭配相關。第三 章介紹詞式分析研究方法,主要分成四大步驟:(1)行與行相似度計算;(2)自相. ‧. 似度矩陣建立;(3)重複樣式探勘;(4)詞式標記。第四章介紹詞曲結構搭配的研. sit. y. Nat. 究方法,主要分成兩大步驟:(1)詞句與樂句結構排比;(2)漢字與音符同步;第. al. n. 搭配實驗結果。第六章為結論與未來工作。. Ch. engchi. 4. er. io. 五章介紹實作方法、建立環境、詞式評估方法,詞式分析實驗結果以及詞曲結構. i n U. v.

(16) 第2章 相關研究. 關於詞式分析與詞曲搭配目前還沒有相同目標的研究,因此以下整理出四個與本 研究最相近的研究議題:(1)音樂結構分析;(2)歌詞與旋律關係研究;(3)流行音 樂與歌詞自動同步;(4)由歌詞產生旋律與由旋律產生歌詞。. 2.1. 音樂結構分析. 立. 政 治 大. 現在的流行音樂中常常分成幾個部分,分別為主歌、副歌、前奏、間奏與尾奏。. ‧ 國. 學. 音樂家會將這些部分依照ㄧ定的邏輯排列,目的為了達到他想表達的內容,這樣 的排列我們稱為曲式。其中主歌或副歌是最基本的曲式單仍[34],主歌是傳達一. ‧. 首歌曲的背景故事,是整首歌曲的骨幹。副歌往往是令聽眾最印象深刻的片段,. Nat. sit. y. 通常也是歌曲的高潮,並且會相對於主歌重複多次,用以加深聽眾的記憶。因此. n. al. er. io. 有學者希望可以透過電腦自動分析出音樂的曲式結構,如此可以應用在 Indexing. i n U. v. 或是 Audio Thumbnailing 等等的領域。Foote[3]是第一個利用 SSM(自相似度矩陣). Ch. engchi. 來視覺化音樂訊號的學者,隨後的研究大部分都是建立在 SSM 上來做後續的音 樂結構分析。 音樂結構分析的第一步通常為音樂的特徵值擷取,擷取的方式是利用 10-100 毫秒的 Frame 慢慢的移動覆蓋整個音樂訊號,並且對每個 Frame 的訊號內容進 行特徵值擷取,最後一個音樂訊號就會形成一條特徵值序列。抓取的特徵值通常 為高階的特徵,像是 MFCC(Mel-scale Frequency Cepstral Coefficient)、Chroma 與 Rhythmogram 等等,其對應的意義依序為音色、音高或節奏,每種特徵值通常表 示為一個向量的形式。有了一序列的音樂特徵值 x1,x2,…xN,接下來再對特徵序 列的仍素兩兩計算相似度(或距離)產生一個 N*N 的 SSM(i, j) = sim(xi, xj), 5.

(17) ∀i, j ∈ {1,2, . . N},sim 為兩個特徵仍素的相似度函數。 有學者[23]整理了訊號基底(Audio-Based)的音樂結構分析的研究,他們將到 目 前 為 止 的 音 樂 結 構 分 析 方 法 分 成 三 大 部 分 : (1)Novelty-based( 新 奇 性 ) ; (2)Homogeneity-based(同質性);(3)Repetition-based(重複性)。. 2.1.1. Novelty-based 主歌與副歌之間往往會有一個變化,可能是音量、節奏或是樂器等等的面向,如 此是為了可以吸引聽眾,讓音樂不單調。因此 Foote[4]提出偵測 Novelty 的方式. 政 治 大 接著利用一個 M*M 的 Checkerboard Kernel 矩陣,他將此 Checkerboard Kernel 立. 來找出音樂中段落的分段點。他先以 MFCC 特徵為基礎,建立一個 N*N 的 SSM. 矩陣延著 SSM 的主對角線掃描,計算每一個時間點的 Novelty,得到一個 Novelty. ‧ 國. 學. 的隨時間的分佈,接著再做峰值擷取(Peak Picking)。Novelty 分數越高表示越可. ‧. 能是一個分段點。. sit. y. Nat. io. er. 2.1.2. Homogeneity-based. 這個方向的目標是將輸入的音樂訊號視為一連串的狀態(state),並且將同質性的. al. n. v i n 狀態分為同一個族群。CooperC 等人[2]利用先前提到的偵測 Novelty 的方法,找出 hengchi U. 音樂訊號的分段點,接下來將這些段落利用 Kullback-Leibler Divergence 計算段 落兩兩之間的距離產生段落的 SSM。通常特徵序列 SSM 的大小為幾千乘幾千, 轉換成段落的 SSM 後,大小降為幾十乘幾十,如此可以減少計算量。接著對段 落 SSM 做 SVD(Singular Value Decomposition),可以得到 K 個特徵值(Singular Value),這也意味著可以將目前切割出的段落分成 K 群,最後再將每個段落依據 其最大可能性選擇其屬於的族群,達到段落分群,產生出音樂結構。. 6.

(18) 2.1.3. Repetition-based 重複是音樂創作很重要的仍素,如此可以加深聽眾的印象。在 SSM 上若有重複 樣式產生,則會出現一條很明顯的斜線樣式,例如圖 2.1 為曲式 ABABB 產生 SSM 後的示意圖,其中黑色斜線樣式代表者兩段落的特徵值序列的相似度很高。 可以看到 A1 與 A2 之間有條斜線樣式,A1B1 與 A2B2 之間也有條斜線樣式。. B3 B2 時間. 政 治 大. A2. 立. B1. A1. B1. A2. B2. B3. 時間. ‧. ‧ 國. 學. A1. 圖 2.1 SSM 上的斜線樣式. sit. y. Nat. n. al. er. io. 圖 2.1 為一個理想情況,實際上 SSM 上的斜線樣式產生是取決於抓取的音. i n U. v. 樂特徵值,因此 Muller 等人[19]希望可以強化斜線樣式的呈現並且去除雜訊,將. Ch. engchi. 由音樂特徵序列產生的 SSM 考慮 Contextual Information 產生 一個強化的 (Enhanced)SSM。而 Peeters[24]則將由音樂特徵序列產生的 SSM 考慮遞移關係, 也就是當 A 與 B 像,B 與 C 像,則可以推論 A 與 C 也會像,這種性質產生一個 Higher-order 的 SSM。這兩種方法都可以達到強化斜線樣式的目的。 在 SSM 上有了清楚的斜線樣式後,接下來便是自動找出取出這些斜線樣式。 Mueller 等人[18]利用貪婪(Greedy)的方式並且設定門檻值,找出斜線樣式,接下 來將取出的斜線樣式考慮遞移關係,找出音樂的重複結構。. 7.

(19) 2.2. 歌詞與旋律關係研究 流行音樂的歌詞與旋律之間是否有種特定的關係存在?Nichols 等人[20]首先研 究英文流行歌詞與旋律的關係,他們認為作詞人在作詞時會把歌詞中特定的特徵 對應到音樂的特徵,例如作曲家會傾向於把樂曲的節奏與說話的節奏作對應。他 們把歌曲的樂譜取出三個特徵:(1)標記每個音符是屬於哪一類的拍點(例如 Downbeat 是屬於一小節的第一拍,Half-beat 是屬於一小節的第三拍);(2)標註每 個音符的音高是否是一個高峰(Peak);(3)計算每個音符的持續時間(Duration)相對 於歌曲中帄均音符的持續時間,如果大於一表示比帄均音符持續時間來的長。歌. 政 治 大 音;(2)標記歌詞中每個單字是否是屬於非重要的字(Stopword);(3)標記歌詞中每 立 詞也取出三個特徵:(1)標記歌詞中每個音節是屬於非重音、次重音或是主要重. ‧ 國. 學. 個音節所屬於的母音種類。接下來把歌詞與旋律的特徵做交叉統計發現,歌詞中 音節的主要重音會比較容易對應到旋律中的重拍、音高的高峰以及持續時間長的. ‧. 音符;非重要的字則比較容易對應到非重拍的拍點以及歌曲中低音的音符;母音. sit. y. Nat. 中的雙母音會較容易對應到持續時間長的音符。. al. er. io. 徐富美等人[35]則是檢測中文的歌詞與旋律是否搭配的和諧。他們提出五個. v. n. 歌詞與旋律搭配和諧的關係:(1)歌詞中單一的字,聲調高低起伏與旋律的高低. Ch. engchi. i n U. 起伏應配合;(2)聲調是陰帄的字,宜用單音的音符,如果是二聲或是四聲,宜 用兩個音來搭配;(3)歌詞中兩兩字之間與旋律對應的相鄰音高,第一聲 ≥ 第四 聲 ≥ 第二聲 ≥ 第三聲,例如回家一詞,搭配的旋律應該是由低到高;(4)相鄰 音高的限制是以一個樂句為單位,避免讓旋律太死板,以擴大音域來突破聲調的 限制;(5)輕聲虛字如「阿」 「哪」等等…可以自由對應旋律的音高,並不受自虛 字聲調的限制。他們利用以上五個規則來判斷使用者輸入的歌詞與既有的樂譜搭 配的和諧程度。. 8.

(20) 2.3. 流行音樂與歌詞自動同步 再另一方面目前動態歌詞與 KTV 裡歌詞演唱節奏的引導,都還是利用人工來標 記歌詞與音樂對應的時間點。圖 2.2 為動態歌詞用的時間標記的檔案格式 (LRC)。 [mm:ss.xx] 第一行歌詞 [mm:ss.xx] 第二行歌詞 … [mm:ss.xx] 最後一行歌詞. 政 治 大 [mm:ss.xx]為時間標記的格式,mm 為分鐘數,ss 為秒數,mm 為百分之一秒 立 圖 2.2 動態歌詞檔案格式. ‧ 國. 學. 因此有學者研究如何自動化的同步使用者輸入的數位訊號(例如:MP3 或是. ‧. WAV 檔案)流行歌曲與此流行歌曲的歌詞。當然歌詞與歌曲同步的基本單位會有. sit. y. Nat. 不同的大小,例如是歌詞中每一個段落與歌曲同步的時間點[11];歌詞中每一句. al. er. io. 與歌曲同步的時間點(如 LRC 標記的方式)[5][9][15][29][30];歌詞中每一個字與. v. n. 歌曲同步的時間點[14][16](如 KTV 的歌詞引導系統);或是歌詞中每一個音節與. Ch. engchi. i n U. 歌曲同步的時間點[8]。Lee 等人[11]提出英文流行音樂與歌詞段落同步的研究。 系統分為兩個步驟,首先利用 SSM [3] (Self-Similarity Matrix)來找出流行音樂的 結構,例如前奏-主歌-副歌-主歌-副歌-尾奏。接下來利用動態規劃(Dynamic Programming)計算流行音樂段落與利用人工標記好的歌詞段落,彼此間最小的對 應成本,並以此當作段落同步的時間點。 Wang 等人[9][29]提出英文流行音樂與單句歌詞同步的研究,他們是第一個 提出流行音樂語歌詞同步的議題。系統首先找出歌曲的結構,他們定義了前奏、 主歌、副歌、間奏與尾奏五種結構,如此可以確定歌詞在歌曲段落中出現的粗略 位置。他們先偵測歌曲的拍點(Beat),進而推算出 IBI(Inter-Beat Interval)。接下 9.

(21) 來將 IBI 當作一個計算單位,計算每個 IBI 可能的和絃,再計算歌曲可能所屬的 調性,接下來再修正剛剛和弦偵測的結果,最後利用修正過後的和弦邊界 (Boundary)找出歌曲的小節結構;另一方面,利用副歌偵測(Chorus Detection)演 算法找出副歌片段所為在的時間區間。有了副歌片段的時間區間以及小節結構, 利用 Forward/Backward 搜尋法找出剩下的歌曲結構片段(主歌、間奏以及尾奏) 出現的時間區間,例如主歌出現在第 6 小節到第 20 小節。 有了歌詞的粗略位置後,接下來要找出每段歌詞裡每句歌詞精確的同步時間 點。樂曲的部分以 MM-HMM(Multi-Model Hidden Markov Model)為分類模型,. 政 治 大 (Supervised Learning)的方式訓練好每種音素(Phoneme)在不同發音時間長度下的 立 預測每一個 IBI 是屬於人聲類別還是非人聲類別。歌詞的部分利用監督學習. 分佈情況,計算出每種音素帄均的發音時間,再把每句歌詞中的所有音素帄均發. ‧ 國. 學. 音時間作加總,作為每句歌詞演唱的時間長度。有了人聲的段落位置以及每句歌. ‧. 詞演唱的時間長度,接下來把兩個部分用一對一對應(One-to-one Mapping)的方式. y. Nat. 找出單句歌詞的同步時間區間。在同步時有以下三種情況,群聚(Grouping),人. er. io. sit. 聲出現的段落數比歌詞的句數還多,如圖 2.3(a);拆解(Partitioning),人聲出現 的段落數比歌詞的句數還少,如圖 2.3(b);直接對應,人聲出現的段落數跟歌詞. n. al. Ch. 的句數相同時,如圖 2.3(c)。. engchi. i n U. v. 圖 2.3 人聲段落與歌詞句的對應情況,白色方框為人聲段落,黑色為單句歌詞 (a)群聚 (b)拆解 (c)直接對應 此篇研究的歌曲只有考慮主歌-副歌-主歌-副歌-間奏-尾奏的歌曲結構,這種 10.

(22) 結構只有涵蓋 40%的流行歌曲,並且假設歌曲都是 4/4 拍,所以受限於歌曲的結 構以及拍號(Time Signature)的型態。此外,在歌詞演唱的時間長度評估上,用句 子中每個音素帄均時間加總的方式會有很大的問題,因為只有在說話時,每種音 素才會有固定的持續時間,但歌曲中每個音素發音長度是根據樂曲中音符長度來 決定。 Wong 等人[30]隨後提出廣東流行歌曲與單句歌詞同步研究。在音訊處理方 面,先把有人聲部分的訊號加強,再把此訊號利用 Onset 偵測,找出歌曲裡每個 音符發音的時間點。接下來以 MLP(Multiple-Layer Perceptron)為分類模型,把. 政 治 大 頻(Fundamental Frequency 或 f0),如圖 2.4 是歌曲的基頻隨著 Onset 時間點的分 立 Onset 時間點分成人聲類別或是非人聲類別。並且利用 YIN 演算法找出歌曲的基. 佈情形。. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. i n U. v. 圖 2.4 YIN 音高追蹤演算法偵測出的歌曲基頻分佈. Ch. engchi. 在歌詞處理方面,廣東話是屬於聲調語言(Tone Language)的特性。所謂聲調 語言是指發同一個語音的時候,會因為不同的發音長度或是聲調的高低會有不同 的意思,因此廣東話的歌詞基本上就隱含了樂曲旋律的基本輪廓。廣東話有六種 聲調,他們把六種聲調分成三種類別,一、二聲屬於高音,三、五聲屬於中音, 四、六聲屬於低音,用這些規則抓取歌詞所代表的旋律特徵。最後利用 DTW(Dynamic Time Warping)演算法求出人聲片段的歌曲旋律特徵與歌詞旋律 特徵最佳化的時間對應關係。如圖 2.5 為只有考慮相對音高特徵的同步示意圖。 11.

(23) 圖 2.5(b)中歌詞的第 10 到 14 個字最佳化對應到圖 2.5(a)中第 27 到 61 的 Onset 時間點。此研究用 Bottom-up 的方式來做同步對應,所以歌曲中 Onset 時間點的 人聲分類如果準確率不高的話,歌詞在做 DTW 同步時對應到錯誤的時間點機率 就會增加。並且他們把 Onset 偵測的 Frame 大小設定在 50 毫秒,如果遇到輸入 的流行音樂太長的情況,用 DTW 演算法做同步時會有計算量太大的問題,因此 他們系統限定輸入的音樂片段只能在 20 秒左右。. 立. 政 治 大. ‧. ‧ 國. 學 sit. y. Nat. al. er. io. 圖 2.5 單存考慮相對音高特徵的歌詞與 Onset 時間點同步示意圖. v. n. (a)音樂訊號的相對音高特徵隨 Onset 時間點的分佈情形. Ch. engchi. i n U. (b)歌詞的相對音高特徵隨歌詞單字位置的分佈情形. Maddage 等人[14]提出英文流行音樂與單字同步研究。此篇研究最大的不同 是同步的時間解析度是一個單字,其最關鍵的想法是利用 TTS(Text-To-Speech) 把歌詞轉換成聲音的訊號,再把流行音樂的訊號跟歌詞合成的訊號做同步。首先 他們以兩個 GMM 為分類模型,分別為歌曲訊號中每個 Frame 預測是屬於人聲類 別還是非人聲類別,其中以 OSCC(Octave Scale Cepstral Coefficient)為分類的特徵。 接下來利用 DTW 演算法為歌詞合成的訊號以及歌曲訊號作每個單字的時間對齊, 其中以 LFCC(Log Frequency Cepstral Coefficient)為計算兩兩 Frame 相似度的特徵。 12.

(24) 以上提到的都是屬於訊號基底(Signal-based)的作法,因為他們在為歌詞與流行音 樂同步時並不需要做額外的訓練(Training),而是直接分析歌詞與流行音樂相互對 應的特徵。相對於訊號基底的方法,另一方面也有模型基底(Model-based)的方法 [5][8][15][16]。此方法是利用大量人工標記好的歌曲以及歌詞同步時間點,讓電 腦自動學習它們之間的關聯,建立出關聯模型,再用此模型同步使用者輸入的歌 曲和歌詞。因此,如果有大量的訓練資料的情況下,利用模型基底的方法會有較 好的效果,反之如果只有少量的訓練資料用訊號基底的方法會有較出色的效果 [14]。. 政 治 大 其最主要的貢獻是在同步的時候加入了音樂知識的考量。他們導入語音辨識 立. Iskandar 等人[8]就是利用模型基底的方式解決英文流行音樂與音節的同步,. (Speech Recognition)常用的方法,訓練一個 HMM(Hidden Markov Model)來建立. ‧ 國. 學. 歌詞中的音素與歌曲訊號特徵的關聯,其中歌曲訊號的特徵為 MFCC。接下來再. ‧. 利用訓練好的 HMM 用 Viterbi 演算法,求出流行音樂與音節最佳的同步時間點。. y. Nat. 在同步時還結合了三個音樂的知識:(1)在音樂中音符的長度並不是一個任意的. er. io. sit. 連續時間長度,而是跟歌曲節拍有關係的時間長度,例如一首節拍是 60,拍子 是 4/4 拍的歌曲中,一個 4 分音符持續的時間就會是 1 秒,一個 8 分音符持續的. al. n. v i n 時間會是 0.5 秒,在這樣的歌曲設定下比較不會出現一個持續時間為 0.68 秒的音 Ch engchi U 符;(2)不同的音符長度會有不同的出現機率,例如 8 分音符跟 4 分音符會比 9/16 和 13/16 音符常出現;(3)在歌曲中不同的片段會有不同的音符分佈,例如副歌中 出現的音符往往會比在主歌中出現的音符來的長。實驗結果當同步容錯範圍為 1/4 小節時,同步的錯誤率為 18.7%。. 13.

(25) 2.4. 由歌詞產生旋律與由旋律產生歌詞 由樂曲自動產生歌詞此類的議題,往往都是先研究要產生歌詞的語言特性,來做 為其歌詞產生的規則或是限制條件。Tra-la-lyrics 系統[21]產生的是葡萄牙語歌詞, 其利用的原理為詞語中的重音節(Stressed Syllable)要與樂曲的重拍對應。因此, 他們先分析好音樂中重拍音符出現的位置,並且也計算好詞彙資料庫中,每個單 字重音節出現的音節位置,之後再從詞彙資料庫利用三種選字的方法,分別是隨 機選字、文句樣版(Sentence Template)選字以及文法選字,來讓產生的歌詞達到 有押韻或是有符合文法規則。也有印度的學者[27]是以坦米爾語為歌詞產生的語. 政 治 大 特性為一個字母會對應到一個音素(Phoneme),因此他們可以把所有字母轉換成 立. 言,此語言通行於印度南部、斯里蘭卡東匇部,這個名稱是來自梵文。其語言的. ‧ 國. 學. KNM 表示法,K 表示短母音,N 表示長母音,M 表示子音。例如 thA-ma-rai(蓮 花)則表示為 N-K-N。其研究關鍵的想法是旋律產生的 K-N-M 樣式(pattern)要與. ‧. 產 生 歌 詞 的 K-N-M 樣 式 互 相 匹 配 。 因 此 他 們 先 把 輸 入 的 旋 律 序 列 利 用. sit. y. Nat. CRF(Conditional Random Field)把標記成 K-N-M 樣式序列。接下來利用 Dijkstra. al. er. io. 最短路演算法從語料庫中找出與旋律的 K-N-M 樣式序列最相似的歌詞 K-N-M 樣. v. n. 式序列。但是他們的語料庫只有利用 Bi-gram 方式學習一個字與下一個字產生的. Ch. engchi. i n U. 機率,所以產生出來的歌詞沒有符合文法,並且歌詞中每一句也沒有意義上的承 接。因此相同的研究者[26]利用 Knowledge-based 的方式改良上述產生歌詞時的 缺點。 相反的,也有學者研究從歌詞自動產生樂曲的議題。Orpheus 系統[6][7]是為 使用者輸入的日文歌詞產生歌曲。而日文是屬於高音重音語言 (Pitch Accent Language),此語言的特性為重音的音節音高要比較高,因此不同的重音位置及 使音節一樣,意義上就會不同,例如 ka’mi 為神的意思而 kami’為紙的意思。系 統首先找出產生旋律可能的節奏型態,接下來再以人聲唱歌的音高範圍、和弦進 程、低音伴奏以及日語的高音重音特性為限制條件,計算最大可能性(Maximum 14.

(26) Likelihood)所產生的旋律序列,進而完成一首歌曲。實驗結果在 1378 人中,有 70.8%的人認為產生出來的歌是好聽、有吸引力的。隨後相同的學者又開發出了 OrpheusBB 系統[10],其中多加入讓使用者對於系統所產生的歌曲進行細部的修 改並且系統會自動去維持音樂的一致性,例如使用者把系統產生的旋律做調整, 可能會造成旋律與和弦有不和諧(Disharmony)的情況,因此系統會自動修正為符 合旋律的和弦進程。在[25]研究中,則是利用 Orpheus 來做為中文語言的學習的 工具。因為中文是跟廣東話一樣都是屬於聲調語言,而這種特性對很多非中文為 母語的人學習起來是很困難的,因此他們把 Orpheus 系統原本是以日文特性為條. 政 治 大. 件限制改成以中文特性為條件限制,讓系統產生的歌曲幫助外國人學習中文發音 的聲調。. 立. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. 15. i n U. v.

(27) 第3章 詞式分析. 一首流行音樂是由歌詞與樂曲構成的,所以歌詞與樂曲可說是一體兩面,因此我 們採用音樂結構分析的架構,來進行歌詞的詞式分析,希望能夠找出歌詞主歌或 副歌等等段落的排列方式。詞式分析分成四大步驟,依序為(1)計算行於行之間. 政 治 大. 相似度 (2)自相似度矩陣建立;(3)重複樣式探勘;(4)詞式段落標記。. 立. ‧ 國. 學. 3.1. 問題描述. 1. 孤獨站在這舞台 聽到掌聲響起來 我的心中有無限感慨. 副歌. 11. 12. 13. 14.. 掌聲響起來我心更明白 掌聲響起來我心更明白 掌聲響起來我心更明白 掌聲響起來我心更明白. y. sit. er. al. n. 副歌. io. 主歌. 多少青春不在 多少情懷已更改 我還擁有你的愛 好像初次的舞台 聽到第一聲喝采 我的眼淚忍不住掉下來 經過多少失敗 經過多少等待 告訴自己要忍耐 掌聲響起來我心更明白 你的愛將與我同在 掌聲響起來我心更明白 歌聲交會你我的愛 孤獨站在這舞台 聽到掌聲響起來 我的心中有無限感慨 多少青春不在 多少情懷已更改 我還擁有你的愛 好像初次的舞台 聽到第一聲喝采 我的眼淚忍不住掉下來 經過多少失敗 經過多少等待 告訴自己要忍耐. Nat. 副歌. 2. 3. 4. 5. 6. 7. 8. 9. 10.. ‧. 主歌. Ch. engchi. i n U. v. 你的愛將與我同在 歌聲交會你我的愛 你的愛將與我同在 歌聲交會你我的愛. 圖 3.1 鳳飛飛《掌聲響起》歌詞. 一般來說歌詞對應的音樂只有人聲的音樂片段,而沒有其它前奏、間奏等等 的音樂片段。音樂有其曲式,像是二段體、反覆體[37]等等,其中最常見的就是 16.

(28) 二段體,此段體主要包含兩種片段,主歌與副歌。這兩種片段也是流行歌曲中人 聲演唱的部分,因此歌詞也有其對應的結構。主歌是歌詞最主要的內容,也是故 事的主幹,副歌通常會與主歌呈現情緒上的反差,達到歌曲的高潮也是歌曲的記 憶點。有些歌詞還會包含橋段、前段與尾聲的片段。圖 3.1 為鳳飛飛《掌聲響起》 的歌詞,左方的標號為行號,總共 14 行歌詞。其中段落 1 到 4 行與段落 7 到 10 行的內容為主歌片段。段落 5 到 6 行、段落 11 到 12 行與段落 13 到 14 行為副歌 片段。此歌曲是一個標準的二段體,因為歌詞有包含主歌與副歌片段,並且主歌 重覆兩次,副歌重覆三次。可以發現相同片段的歌詞內容會相仿,例如主歌中第. 政 治 大 行內容也是完全一樣。圖 3.2 為趙傳《我很醜,可是我很溫柔》中副歌歌詞,其 立. 1 行與第 7 行,第 2 行與第 8 行等等,內容完全一模一樣,副歌的第 5、11 與 13. …. 我很醜 可是我很溫柔 外表冷漠 內心狂熱 那就是我 我很醜 可是我有音樂和啤酒 一點卑微 一點懦弱 可是從不退縮. er. io. …. sit. y. ‧. Nat. 5. 6. 副歌 7. 8.. 學. ‧ 國. 中第 5 行與第 13 行內容一模一樣,而第 6 行與第 14 行內容有些不同。. n. 13. a我很醜 l C 可是我很溫柔 n i v 14. 白天黯淡 U h e 夜晚不朽 i 那就是我 h n 副歌 c g 15. 我很醜 可是我有音樂和啤酒 16. 有時激昂 有時低首 非常善於等候 … 圖 3.2 《我很醜,可是我很溫柔》副歌歌詞. 一首歌詞中的各種片段,依ㄧ定的邏輯排序,我們稱為詞式。因此本章節的 目標為透過電腦自動分析出每種片段位於的行號區間以及標記上片段所屬的標 籤。. 17.

(29) 3.2. 計算行與行之間相似度 我們針對歌詞的每一行分別從四個角度做特徵值擷取,分別是:(1)句字數結構 序列;(2)拼音結構序列;(3)詞性結構序列;(4)聲調音高序列,以下分別依序詳 述。. 3.2.1. 句字數結構序列 每一行歌詞通常會由數個句子構成,句子之間用空白隔開,例如趙傳《我很醜, 可是我很溫柔》中的第一行歌詞為: 每一個晚上. 在夢的曠野. 我是驕傲的巨人. 政 治 大. 可以看到此行有包含兩個空白符號,所以是由三個句子構成。每個句子由數個漢. 立. 字所組成。ㄧ般來說主歌與主歌的之間相對應詞行的句數、空白數以及每一句的. ‧ 國. 學. 字數往往會差不多,例如趙傳《我很醜,可是我很溫柔》中主歌 1 的第一行與主 歌 2 的第一行分別如下:. ‧. 主歌 1 第一行: 每一個晚上 在夢的曠野. 我是驕傲的巨人. y. Nat. 我是孤獨的假面. sit. 主歌 2 第一行: 每一個早晨 在都市的邊緣. n. al. er. io. 若將每一行根據每一句歌詞的字數轉換成一個序列,則主歌 1 第一行表示為序列. i n U. v. <5, _, 5, _, 7>,主歌二的第一行表示為序列<5, _, 6, _, 7>,底線代表空白符號。. Ch. engchi. 可以看出只差在第二句的字數不同。而如果是主歌與副歌的詞行內容則有較大的 差異,例如趙傳《我很醜,可是我很溫柔》的主歌 1 第一行與副歌 1 的第一行: 主歌 1 第一行: 每一個晚上 在夢的曠野. 我是驕傲的巨人. 副歌 1 第一行: 我很醜 可是我很溫柔 將主歌 1 第一行表示為序列<5, 5, 7>,副歌 1 第一行表示為序列<3, 5>,發 現句字數以及句數都有差異。因此總共 N 行歌詞的 L = l1,l2,…,lN,中的任一行 li 表示成句字數的序列 Seni = <s1, s2,…,sM>, sj∈ {句字數, _ },底線代表空白符 號。 18.

(30) 3.2.2. 拼音結構序列 我們發現主歌與主歌相對應的詞行,雖然字面上的漢字不一樣,但是有時候發音 會有相似的情況,例如五月天《擁抱》裡主歌 1 第一行與主歌 2 第一行的內容分 別如下: 主歌 1 第一行: 脫下長日的假面. 奔向夢幻的疆界. 主歌 2 第一行: 隱藏自己的疲倦. 表達自己的狼狽. 兩行的歌詞的總字數、空白數都一樣,並且可以看到有些字詞的發音有些相似, 像是「下」與「藏」,「面」與「倦」,「奔」與「表」,「疆」與「狼」。根據拼音. 政 治 大. 相似度的想法我們發現有學者[38]在研究自動判斷形聲字的注音,其中他們有請. 立. 語言學家一同訂定注音的拼音相似度。. ‧ 國. 學. 注音分為拼音及聲調兩部分,其中拼音又分成聲母與韻母兩部分。例如「我」 字的拼音為「ㄨㄛ」,「ㄨ」為聲母,「ㄛ」為韻母。兩個字之間的拼音相似度 p. ‧. 分別是將聲母對聲母、韻母對韻母的相似度相加除以二,0 ≤ p ≤ 1。例如「空」. y. Nat. sit. 與「回」,拼音分別是「ㄎㄨㄥ」與「ㄏㄨㄟ」,「ㄎ」與「ㄏ」聲母的相似度為. n. al. er. io. 0.9, 「ㄨㄥ」與「ㄨㄟ」韻母的相似度為 0.5,兩字的拼音相似度為 0.9 + 0.5 / 2=0.7。. i n U. v. 我們利用此方法看回前面五月天《擁抱》的兩行歌詞中相似的字詞,這些字. Ch. engchi. 詞的拼音相似度分別是:「下」與「藏」為 0.7,「面」與「倦」為 0.4,「奔」與 「表」為 0.5,「疆」與「狼」為 0.4,可以看到這些字詞的拼音的確存在ㄧ定的 相似度。 有學者[40]發現目前流行音樂的歌詞的作詞者,大部分還是創作有押韻的歌 詞,例如黃鶯鶯《哭砂》的主歌 2 中所有句子押的韻腳集合為「ㄛ」與「ㄜ」, 而副歌中所有句子押的韻腳集合為「一」。然而現今流行歌曲之唱法,並不特別 要求咬字發音的精確,常常有合韻的現象。此學者整理了七個合韻的韻腳:(1) 「ㄧ」與「ㄩ」;(2)「ㄣ」與「ㄥ」;(3)「ㄢ」與「ㄤ」;(4)「ㄛ」與「ㄜ」;(5) 19.

(31) 「ㄜ」與「ㄡ」 ;(6)「ㄛ」與「ㄡ」 ;(7)「ㄝ」與「ㄟ」 。其中第一、四、五項的 合韻的韻腳在學者[38]定義的拼音相似度為零,因此我們將此三項的相似度調整 為 0.1 用以表示有相似度存在。因此我們將歌詞 L = l1,l2,…,lN,其中任一行 li 表 示成拼音結構序列 Pinyini,Pinyini = <p1, p2,…pM>,pj ∈ {拼音, _ },1 ≤ j ≤ M,底 線代表空白符號。例如 Pi=<ㄨㄟ, ㄏㄜ, _ , ㄎㄢ, ㄨㄛ, ㄒㄧㄠ>。. 3.2.3. 詞性結構序列 對聯一般會講求對丈,也就是上下聯對應的字、詞需用同類詞性,例如名詞對名 詞,形容詞對形容詞等等。而在歌詞中我們發現有有這樣的現象存在,例如趙傳. 政 治 大. 《我很醜,可是我很溫柔》中主歌 1 的第一行與主歌 2 的第一行分別如下:. 立. 在夢的曠野. 主歌 2 第一行: 每一個早晨. 我是驕傲的巨人. 在都市的邊緣. 學. ‧ 國. 主歌 1 第一行: 每一個晚上. 我是孤獨的假面. ‧. 可以發現「晚上」對「早晨」是名詞對名詞,「夢」對「都市」是名詞對名. y. Nat. 詞, 「曠野」對「邊緣」是名詞對名詞, 「驕傲」對「孤獨」是形容詞對形容詞,. er. io. sit. 「巨人」對「假面」是名詞對名詞。剛好此兩行也是一個互相對應的詞行,因此 是一個可以尋找詞式的線索。因此我們將歌詞 L = l1,l2,…,lN,其中任一行 li 表示. al. n. v i n 成詞性結構序列 Pos ,Pos = C <p ,p ,…p >,p ∈ {詞性, _ },1 ≤ j ≤ M,底線代表 hengchi U i. i. 1. 2. M. j. 空白符號。例如 Ti=<名詞, 動詞, _, 形容詞, 受詞>。 3.2.4. 聲調音高序列. 學者楊蔭瀏[32]有提到字調與音樂關聯性,其中提到:『因為我國漢族語言文字 中的帄仌、四聲,它們本身就已包含著音樂上的旋律因素。每一個自各有高低 升降的傾向;連接若干字構成歌句之時,前後單字互相制約,又蘊蓄著對樂句 進行的ㄧ種大致上的要求。』由此可知漢字聲調與音樂旋律有互相影響的關聯, 其中的關聯包含正字與倒字的關係。正字關係代表歌詞的聲調走勢與音樂的旋 律有互相搭配,因此歌手在唱歌的時候可以正確的表達歌詞的意義。倒字關係 20.

(32) 則是當歌詞的聲調走勢與音樂的旋律有牴觸時,歌手在唱歌的時候可能會傳達 不正確的歌詞。例如圖 3.3(a)是一個旋律與聲調有正字關係的例子,旋律是 Do, Re, Mi, Do,歌詞是「兩隻老虎」 ,這就是我們一般兒歌的唱法。而圖 3.3(b)是一 個旋律與聲調有倒字關係的例子,旋律是 So, Re, Mi, Do,歌詞依然是「兩隻老 虎」,可是實際唱的時候,會聽起來像「亮紙老虎」,無法傳達出歌詞正確的意 義。. 立. 政 治 大. ‧ 國. 學. 圖 3.3 聲調與旋律搭配的例子 (a)正字關係例子 (b) 倒字關係例子. ‧ sit. y. Nat. 因此我們利用學者徐富美等人[35]研究出預防倒字關係的旋律與聲調搭配. al. er. io. 的規則,如表 3.1,T1 與 T2 分別表示第一個漢字的聲調與下一個漢字的聲調,. v. n. 表格中每一格代表前後聲調所要搭配的音高走勢,其中任意包含高低、水帄與. Ch. engchi. i n U. 低高。例如「回家」一詞,分別是二聲與一聲,搭配的旋律應該是由低到高。 表 3.1 聲調與音高走勢搭配規則 T2. 第一聲. 第二聲. 第三聲. 第四聲. 輕聲. 第一聲. 任意. 高低. 高低. 高低. 任意. 第二聲. 低高. 任意. 高低. 低高. 任意. 第三聲. 低高. 低高. 任意. 低高. 任意. 第四聲. 低高. 高低. 高低. 任意. 任意. 輕聲. 任意. 任意. 任意. 任意. 任意. T1. 21.

(33) 接下來為了要訂定出確切的音高數值,我們參考[25]所定義的四聲實際的音 高走勢,並且我們重新修改至符合表 3.1 避免倒字關係的規則,四聲所對應的實 際音高走勢如圖 3.4,如果是輕聲,則我們將其音高走勢設定與前一個漢字的聲 調一樣。. 圖 3.4 四聲對應的實際音高走勢. 立. 政 治 大. 因此我們根據聲調與旋律的特性,將歌詞 L = l1,l2,…,lN,其中任一行 li 表示. ‧ 國. 學. 成聲調音高序列 Tonei,Tonei = <t1,t2,…tM>,tj ∈ {音高},1 ≤ j ≤ M。例如「我的吉 他」的聲調序列為<3,輕聲, 2, 1> ,則聲調音高序列 Tonei=<Re,Do1, Re, Do1, Mi,. y. er. io. sit. Nat. 3.3. 自相似度矩陣(Self-Similarity Matrix)建立. ‧. La, Do2, Do2> (Do1 代表中央 Do,Do2 代表高八度的 Do)。. 我們利用自相似度矩陣(Self-Similarity Matrix)的方式來去找出歌詞的重複樣式。. al. n. v i n 自相似度矩陣的概念是參考自[4]的想法,Foote 當時用自相似度矩陣來做音樂的 Ch engchi U. 視覺化(Visualization)的研究,隨後有很多的研究是建立在自相似度矩陣上來做音 樂結構分析[17]的研究。一個自相似度矩陣的建立,是將一個序列(Sequence)中. 的每個仍素與其他仍素做兩兩的相似度計算後,所形成的矩陣。如圖 3.5 為序列 <e1, e2,..., eN> 所形成的自相似度矩陣示意圖,矩陣中的每個仍素(Element)代表 由 Sim(ei, ej)(或是距離)函數計算得到的 ei 與 ej 相似度,其中 1 ≤ i, j ≤ N。 我們將歌詞 L 轉換成一個詞行的自相似度矩陣,L = l1,l2,…,lN。矩陣中每個 仍素表示 li 行特徵與 lj 行特徵的相似度 Sim(li, lj),1 ≤ i, j ≤ N。li 特徵值可能是上 個小節中四種特徵值中的任ㄧ種。 22.

(34) 政 治 大 接下來我們定義詞行的 立Sim(l , l )(或是距離)函數,我們利用了兩種方法:(1) 圖 3.5 自相似度矩陣示意圖 i. j. ‧ 國. 學. 詞行結構排比演算法;(2)DTW(Dynamic Time Warping)演算法。方法一是用來計 算其中三種詞行特徵值:(1)句字數結構序列;(2)拼音結構序列;(3)詞性結構序. ‧. 列。方法二是用來計算詞行的聲調音高序列特徵值。. Nat. sit. y. 3.3.1. 詞行結構排比演算法. n. al. er. io. 我們將兩行歌詞利用序列排比(Sequence Alignment)為基礎的方式尋找最佳的特. i n U. v. 徵序列對應分數,來當做兩行歌詞間的相似度。我們希望仍素較少的詞行特徵序. Ch. engchi. 列,其所有仍素都能夠與仍素較多的詞行特徵序列做對應,因此特徵序列仍素較 多的詞行必定會對應到 Gap 因而產生懲罰分數(Penalty),如此可以突顯出兩詞行 結構上的差異。例如兩行歌詞,以拼音結構序列特徵為例分別是序列 Pinyin1 = <A, B, C, D, E> 總字數 5,序列 Pinyin2 = <F, G, H>總字數 3,因為兩行歌詞差了 2 個 字,所以 Pinyin1 中的某兩個仍素必定會對應到 Gap。在排比的過程中,我們希 望考量到詞行與詞行之間 Gap 分佈與空白結構的特性,這兩種特性的相似度的 高低關係,我們以下分別來探討。. 23.

(35) [特性 1] 連續 Gap 與非連續 Gap 某些歌曲為求變化,即使相同是主歌的片段,在音樂上會以增加音符的變化,因 此歌詞也會跟著增加。例如五月天《突然好想你》中的兩句歌詞分別如下: 主歌 1 第一行第一句: 最怕空氣突然安靜 主歌 2 第一行第一句: 我們像一首最美麗的歌曲 可以發現主歌 2 第一行第一句比主歌 1 第一行第一句總字數多了三個字,我 們去聽音樂的旋律可以知道隨著音符增加的字詞是「最美麗」這三個字,而這三 個字也就是一個詞彙,因此我們認為ㄧ般增加的音符往往都會群聚在一起。根據. 政 治 大. 這樣的想法,我們參考生物資訊裡的同盟線性評分法(Affine Gap Penalty)的概念,. 立. 讓行與行之間排比時,連續 Gap 的情況要比非連續 Gap 的情況相似度來的高。. ‧ 國. 學. 例如現在有兩行歌詞特徵序列,分別是序列 seq1=<A, B, C>仍素各數為 3,序列 seq2 = <1, 2, 3, 4, 5>仍素各數為 5。圖 3.6 為兩序列排比時兩種 Gap 分佈的示意. ‧. 圖。圖 3.6(a)為非連續 Gap 的情況,序列 seq2 的仍素 2, 4 對應到 Gap。圖 3.6(b). Nat. n. al. Ch. engchi. er. io. 相似度要比圖 3.6 (a)排比方式的相似度高。. sit. y. 為連續 Gap 的情況,序列 seq2 的仍素 2, 3 對應到 Gap。則圖 3.6(b)排比方式的. i n U. v. 圖 3.6 序列排比的兩種 Gap 分佈示意圖 (a) 為非連續 Gap 情況,(b)連續 Gap 情況. 24.

(36) [特性 2] 空白對應 Gap 與非空白對應 Gap 一行歌詞中會有包含數個句子,每個句子是用空白符號做區隔。一般來說主歌與 副歌的歌詞的空白數目會有明顯的差異,所以我們認為空白 Gap 的懲罰分數要 比非空白 Gap 的懲罰分數高。例如有兩行歌詞特徵序列,分別是序列 seq1=<A, B, C>總仍素為 3,序列 seq2=<1, 2, _, 3> 特徵仍素為 3(不包含空白),如圖 3.7(a) 為空白對應 Gap 的排比情況。現在將序列 seq1 改成<A, B, _, C>,將 seq2 改成<1, 2, _, 3, 4>,最後排比的情況為圖 3.7(b),seq2 的仍素 4 對應 Gap。則我們預期圖 3.7(b)排比情況的相似度要比圖 3.7(a)排比情況的相似度高。. 立. 政 治 大. (b)特徵仍素對應 Gap 的排比情況. y. Nat. (a)空白對應 Gap 的排比情況. ‧. ‧ 國. 學 圖 3.7 空白對應 Gap 的排比情況. er. io. sit. 為了要符合上述的兩個特性,我們將仍素之間可能互相對應的關係整理成表 3.2。為了一般性,假定 Seq1 的特徵仍素個數(不包含空白符號)比 Seq2 的特徵仍. al. n. v i n 素個數少,表格中打勾表示在排比過程中此兩種類型的仍素可能會互相對應到, Ch engchi U. 而打叉表示此兩種類型的仍素完全不可能對應。例如為了要符合特性二,空白符. 號只可能對應到 Gap 或是另一個序列的空白符號,而空白符號不可能對應到特 徵仍素,因為沒有對應上的意義存在。 表 3.2 特徵仍素對應關係表 Seq2. Gap. _. 特徵仍素. Gap. . . . _. . . . 特徵仍素. . . . Seq1. 25.

(37) 現在給定一個歌詞 L 總共 N 行,L = l1,l2,…,lN,其中任一行 li 表示成特徵序 列 Fi∈{句字數結構序列, 拼音結構序列, 詞性結構序列},1 ≤ i ≤ N。現在將歌詞 L 中任兩詞行的特徵序列 Fi 與 Fj,且 Fi 與 Fj 屬於相同的特徵序列,1 ≤ i, j ≤ N 作詞行結構排比計算。為了ㄧ般性,設序列 Fi 的特徵仍素個數(不包含空白)比序 列 Fj 的特徵仍素個數少,則兩序列的相似度 Sim (Fi, Fj)定義為(3.1): 𝑆𝑖𝑚 𝐹𝑖 , 𝐹𝑗 =. 𝑆 𝐹𝑖 , 𝐹𝑗 𝐹𝑖. (3.1). 其中 |Fi |為特徵序列長度(包含空白符號),S 為一個求兩序列排比最佳相似度 的函數,並且除以| Fi |做正規化。函數 S 的ㄧ般性遞迴關係式定義為(3.2)與 (3.3):. 政 治 大. 立. y. Nat. io. n. al. sit. 𝑆(𝑎, 𝑏 − 1) + 𝑃𝑜 𝐺(𝑎, 𝑏 − 1) + 𝑃𝑒. (3.3). er. 𝐺(𝑎, 𝑏) = 𝑚𝑎𝑥. (3.2). ‧. ‧ 國. 學. 𝑆 𝑎 − 1, 𝑏 − 1 + 𝑐 𝐹𝑖 𝑎 , 𝐹𝑗 𝑏 𝑚𝑎𝑥 , 𝑖𝑓 𝐹𝑖 𝑎 ∧ 𝐹𝑗 𝑏 ∈ 𝑓 𝐺 𝑎, 𝑏 𝑆 𝑎 − 1, 𝑏 − 1 , 𝑖𝑓 𝑙𝑖 𝑎 = _ ∧ 𝑙𝑗 𝑏 = _ 𝑆(𝑎, 𝑏) = 𝑆 𝑎 − 1, 𝑏 + 𝑃𝑠 , 𝑖𝑓 𝑙𝑖 𝑎 = _ ∧ 𝑙𝑗 𝑏 ∈ 𝑓 𝑆 𝑎, 𝑏 − 1 + 𝑃𝑠 , 𝑖𝑓 𝑙𝑖 𝑎 ∈ 𝑓 ∧ 𝑙𝑗 𝑏 = _. i n U. v. 其中(3.2)的 Fi[a]代表特徵序列 Fi 的第 a 個仍素,Fj[b]代表特徵序列 Fj 的第 b 個. Ch. engchi. 仍素,c(Fi[a], Fj[b])代表 Fi[a]與 Fj[b]兩仍素的仍素成本分數。Ps 表示空白對應 Gap 的懲罰分數。(3.3)中 G 代表序列 Fj 最後一個仍素對應 Gap 的情況下,其最 佳成本分數。Po 表示第一個 Gap 產生的懲罰分數,Pe 表示第二個 Gap(含)之後產 生的懲罰分數。函數 S 與函數 G 的初始關係式定義為(3.4)~(3.7): 𝑆(0,0) = 0. (3.4). 𝑆 𝑎, 0 = −∞, ∀𝑎 ∈ {1,2, … , |𝐹𝑖 |}. (3.5). 𝑆 0, 𝑏 = 𝑃𝑜 + 𝑏 − 1 ∗ 𝑃𝑒 , ∀𝑏 ∈ {1,2, … , |𝐹𝑖 |}. (3.6). G a, c = −∞, ∀𝑐 ∈ 𝑏 𝐹𝑗 𝑏 = _ , ∀𝑎 =∈ {0,1, … , |𝐹𝑖 |}. (3.7). 26.

(38) 其中(3.7)的 c 表示在特徵序列 Fj 中所有出現空白的位置索引。若演算法中的懲罰 分數滿足|P s| >| Po| >| Pe|,則這樣的參數設定就已經將之前探討的特性 1 與特性 2 考慮到詞行結構排比演算法中。因為特徵序列其中的特徵仍素有三種可能,接 下來我們針對不同的特徵仍素定義(3.2)中特徵仍素之間的成本函數 c。 . 句字數特徵仍素 輸入兩個句字數特徵仍素 si,sj∈N+,則兩個句字數仍素的成本為: 𝑐(𝑠𝑖 , 𝑠𝑗 ) = 𝑠𝑖 − 𝑠𝑗. (3.8). 由於(3.8)的成本是屬於距離的計算方式,因此最後計算完成的矩陣會是一個. 治 政 自距離矩陣(Self-Distance Matrix),為了ㄧ致性我們將 大SDM 經由轉換成一個 SSM, 立 轉換方法如(3.9): 𝑆𝐷𝑀 𝑖, 𝑗 , ∀𝑖, 𝑗 ∈ {1,2, … , 𝑁} 𝑚𝑎𝑥 𝑆𝐷𝑀. 其中 max(SDM)表示在 SDM 中的最大值。. y. Nat. 拼音特徵仍素. io. sit. . (3.9). ‧. ‧ 國. 學. 𝑆𝑆𝑀 𝑖, 𝑗 = 1 −. n. al. er. 輸入兩個拼音特徵仍素 pi,pj∈{拼音},關於拼音之間相似度的定義,我們參. Ch. i n U. v. 考學者張嘉惠[38]等人有請語言學家定義了拼音之間的相似度,我們為了考慮歌. engchi. 詞通押的特性,因此有將原本定義的相似度做調整,將有通押的韻母,相似度設 定為 0.1。聲母與韻母相似度都介於 0 到 1 之間。兩個拼音特徵的成本為(3.10):. 𝑐 𝑝𝑖, 𝑝𝑗 =. 聲母相似度 + 韻母相似度 2. (3.10). 如果 pi 與 pj 剛好位於句子的最後一個拼音,則 c(pi, pj) = 1,如此是為了加重韻腳 考量的權重。. 27.

(39) . 詞性特徵仍素 輸入兩個詞性特徵仍素 ti,tj∈{詞性},則兩個詞性仍素的成本為(3.11): 𝑐 𝑡𝑖, 𝑡𝑗 =. 1, 𝑖𝑓 𝑡𝑖 = 𝑡𝑗 0 , 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒. (3.11). 表 3.3 為一個詞行結構排比回溯的例子,這裡以詞性結構序列為例,輸入的 兩條特徵序列 T1,T2,T1=<主詞, 動詞, 受詞>、T2=<主詞, 動詞, _, 受詞>,參數 設定 Ps=-1,Po=-0.5,Pe=-0.25。表 3.3(a)為式(3.2)中 S 函數利用填表法(Tabular Method)求解的累積成本矩陣(Accumulated Cost Matrix) SM。表 3.3(b)為式(3.3)中 G 函數的累積成本矩陣 GM (此矩陣為的意義為特徵仍素較多之序列結尾對應. 政 治 大. Gap 的累積成本)。表 3.3(a)與表 3.3(b)中灰色格子代表回溯的座標,紅色箭頭為. 立. 回溯的順序,SM(3, 5)為回溯起點。兩條序列的相似度為 1.5 / 3 = 0.5。最後排比. ‧ 國. 學. 的結果以(T1 仍素, T2 仍素)配對表示為一序列<(主詞, 主詞), (動詞, 動詞), (Gap, _ ), (Gap, 動詞), (受詞, 受詞)>。. io. 0. _. 動詞. -0.5. -0.75. -1. -1.25. 主詞. -∞. 0.5. -0.5. 動詞. -∞. 受詞. -∞. Ch 1. -∞. e n 2g c h1i. -∞. -∞. y. 動詞. n. al. 主詞. 受詞. sit. T2. -1.5. er. Nat T1. ‧. 表 3.3 詞行結構回溯過程. -1i n U. v. -1.25. 0.5. 0.25. -∞. 1. 1.5. (a) T2. 主詞. 動詞. _. 動詞. 受詞. -∞. -0.5. -0.75. -∞. -1.25. -1.5. Gap. -∞. -∞. 0.5. -∞. -1. -1.25. Gap. -∞. -∞. -∞. -∞. 0.5. 0.25. Gap. -∞. -∞. -∞. -∞. -∞. 0.5. (b). 28.

(40) 最佳化的排比路徑回朔演算法如圖 3.8。 Algorithm Optimal Alignment Path Input: Table S, Table G Output: Path P /* 序列 Path 儲存 li 與 lj 的仍素對應序號 Tuple */ Procedure PathBackTracking() A|li|, B|lj| PTrackingS(A, B) return P. 立. 政 治 大. n. al. Ch. engchi. else P TrackTableS(A – 1, B – 1) return P.append( (A, B) ) Procedure TrackTableG(A, B) if TableG[A, B] = TableS[A, B – 1] + Po then P TrackTableS(A, B – 1) else P TrackTableG(A, B – 1) return P.append( (-1, B) ) 29. er. io. else if lj[B] = _ then P  TrackTableS(A, B – 1) return P.append( (-1, B) ) else if TableS[A, B] = TableG[A, B] then TrackTableG(A, B). sit. Nat. else if li[A] = _ then P  TrackTableS(A – 1, B) return P.append( (A, -1) ) /* -1 代表對應到 Gap */. ‧. ‧ 國. 學. return P  < ∅ > if li[A] = _ and lj[B] = _ then P  TrackTableS(A – 1, B – 1) return P.append( (A, B) ). y. Procedure TrackTableS(A, B) if A = 0 and B = 0 then. i n U. v.

(41) 圖 3.8 最佳化的排比路徑回朔演算法. 3.3.2. DTW (Dynamic Time Warping)演算法 DTW 是用來比對兩個與時間相關(Time Dependent)序列之間的距離,此方法是一 個非線性的距離計算方法,最早是出現在 Spoken Word Recognition 問題的研究上 [28]。由於旋律也是與時間相關的序列,並且有些旋律即使經過改編,我們人還 是聽得出來原旋律,而 DTW 的非線性比對的特性就很適合比對兩條旋律線的相 似程度。例如圖 3.9(a)為原旋律,圖 3.9(b)為改編後的旋律,兩旋律人聽起來有. 政 治 大 音符的對應。因此我們將立 DTW 應用在計算兩條聲調音高序列的距離。. 點像,實際上用 DTW 計算兩旋律隨時間對應關係如紅線,有找出圖 3.9(b)多餘. ‧ 國. 學. (a). ‧ er. io. sit. y. Nat. (b). 圖 3.9 音高旋律用 DTW 比對的例子. al. n. v i n 現在給定一個歌詞 L 總共CN 行,L = l ,l ,…,l ,其中任一行 l 表示成聲調音 hengchi U 1 2. N. i. 高特徵序列 Ti,1 ≤ i ≤ N。現在將歌詞 L 中任兩詞行的特徵序列 Ti 與 Tj,1 ≤ i, j ≤ N 作 DTW 計算。兩條聲調音高特徵序列的距離 Dist(Ti, Tj)為: 𝐷𝑖𝑠𝑡 𝑇𝑖 , 𝑇𝑗 =. 𝐷(|𝑇𝑖 |, |𝑇𝑗 |) 𝑇𝑖 + |𝑇𝑗 |. (3.12). 其中 |Ti |, |Tj |為各自音高特徵序列長度,D 為一個求兩序列 Ti ,Tj 之間最短 DTW 距離的函數,最後除以兩序列長度的加總做正規化。 在 DTW 演算法中我們還需要設定 Step Size 類型,由於我們認為歌詞中若是 兩行對丈的詞行,字數不會差距到兩倍,因此對於字數差距到兩倍的詞行,我們 30.

(42) 直接認為此兩行歌詞的距離為 1。. 因此,我們選擇的 Step Size 類型如圖 3.10,如此可以確保兩行詞行的字數 差距超過兩倍時,DTW 距離必定會形成無限大。 (a-2, b-1) (a-1, b-2). (a-1, b-1). (a, b). 政 治 大 在這樣的 Step Size 類型之下,兩序列 T ,T 間最短 DTW 距離函數 D 一般性的遞 立 圖 3.10 DTW Step Size 類型 i. j. 迴關係如(3.13)、初始化關係如(3.14)~(3.16):. ‧ 國. 學. n. al. er. io. sit. y. Nat 𝐷 −1, −1 = 0 𝐷 𝑎, 𝑏. (3.13). ‧. 𝐷 𝑎 − 1, 𝑏 − 2 + 𝑤1 ∗ 𝑐 𝑇𝑖 𝑎 , 𝑇𝑗 𝑏 − 1 + 𝑇𝑖 [𝑎], 𝑇𝑗 [𝑏]) 𝐷 𝑎 − 1, 𝑏 − 1 + 𝑤2 ∗ 𝑇𝑖 [𝑎], 𝑇𝑗 [𝑏]) 𝐷(𝑎, 𝑏) = 𝑚𝑖𝑛 D a − 2, b − 1 + 𝑤3 ∗ 𝑐 𝑇𝑖 𝑎 − 1 , 𝑇𝑗 𝑏 + 𝑇𝑖 [𝑎], 𝑇𝑗 [𝑏]). (3.14). j. (3.15). = ∞, ∀𝑎 C∈h−1, −2 and ∀b ∈ U1,nTi engchi. v. 𝐷 𝑎, 𝑏 = ∞, ∀𝑎 ∈ 1, |Ti | and ∀b ∈ −1, −2. (3.16). (3.13)中 Ti[a]代表聲調音高序列 Ti 的第 a 個仍素,Tj[b]代表聲調音高序列 Tj 的第 b 個仍素。w1,w2,w3 代表不同路徑的權重,越長的路徑權重通常越高,如此可以 顯示出總字數的差異性。c 為兩音高的成本函數其定義為(3.17): 𝑐(𝑡𝑖 , 𝑡𝑗 ) = |𝑡𝑖 − 𝑡𝑗 |. (3.17). 由於式(3.17)的定義為距離,因此最後計算完成的矩陣會是一個自距離矩陣,為 了ㄧ致性我們將 SDM 同樣經由式(3.9)轉換成一個自相似度矩陣。 31.

(43) 3.3.3. 線性組合 SSM 圖 3.11 為趙傳《我很醜,可是我很溫柔》歌詞轉成四種特徵序列,經由詞行結 構排比或 DTW 計算而產生的四種 SSM。歌詞總共 20 行,所以產生的四種 SSM 大小為 20 乘 20。SSM 中顏色越白代表兩行之間的相似度越高,反之越黑代表相 似度越低,相似度最大值為 1,最小值為 0。. 立. 政 治 大. ‧. ‧ 國. 學 (b) 拼音結構序列特徵 SSM. n. al. er. io. sit. y. Nat. (a) 句字數結構序列特徵 SSM. Ch. engchi. (c) 詞性結構序列特徵 SSM. i n U. v. (d) 聲調音高序列特徵 SSM. 圖 3.11《我很醜,可是我很溫柔》四種特徵值 SSM. 32.

數據

圖  1.2  歌詞推薦系統架構圖
圖  3.6 序列排比的兩種 Gap 分佈示意圖  (a)  為非連續 Gap 情況,(b)連續 Gap 情況
圖  3.7  空白對應 Gap 的排比情況
圖  3.12  線性組合 SSM
+7

參考文獻

相關文件

學生平均分班,非 華語學生與本地學 生共同學習主流中 文課程,參與所有 學習活動,並安排 本地學生與非華語 學生作鄰座,互相

[r]

Overview of a variety of business software, graphics and multimedia software, and home/personal/educational software Web applications and application software for

學生平均分班,非 華語學生與本地學 生共同學習主流中 文課程,參與所有 學習活動,並安排 本地學生與非華語 學生作鄰座,互相

Proceedings of the 19th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval pp.298-306.. Automatic Classification Using Supervised

學結合 目的 鼓勵說話 (目的語) 分析 詞彙

• (語文)術語學習 無助學生掌握有關概念,如 果教師只灌輸術語的定義,例如何謂「動

 文字 文字 文字 文字:橋樑書的文字淺白 文字淺白 文字淺白 文字淺白,配合兒童的語言習慣,以 兒童常用的2000個單字為基礎, 逐步豐富 逐步豐富兒童的詞匯 逐步豐富 逐步豐富 詞匯