國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
18
3.2. 計算行與行之間相似度
我們針對歌詞的每一行分別從四個角度做特徵值擷取,分別是:(1)句字數結構 序列;(2)拼音結構序列;(3)詞性結構序列;(4)聲調音高序列,以下分別依序詳 述。
3.2.1. 句字數結構序列
每一行歌詞通常會由數個句子構成,句子之間用空白隔開,例如趙傳《我很醜,
可是我很溫柔》中的第一行歌詞為:
每一個晚上 在夢的曠野 我是驕傲的巨人
可以看到此行有包含兩個空白符號,所以是由三個句子構成。每個句子由數個漢 字所組成。ㄧ般來說主歌與主歌的之間相對應詞行的句數、空白數以及每一句的 字數往往會差不多,例如趙傳《我很醜,可是我很溫柔》中主歌 1 的第一行與主 歌 2 的第一行分別如下:
主歌 1 第一行: 每一個晚上 在夢的曠野 我是驕傲的巨人 主歌 2 第一行: 每一個早晨 在都市的邊緣 我是孤獨的假面 若將每一行根據每一句歌詞的字數轉換成一個序列,則主歌 1 第一行表示為序列
<5, _, 5, _, 7>,主歌二的第一行表示為序列<5, _, 6, _, 7>,底線代表空白符號。
可以看出只差在第二句的字數不同。而如果是主歌與副歌的詞行內容則有較大的 差異,例如趙傳《我很醜,可是我很溫柔》的主歌 1 第一行與副歌 1 的第一行:
主歌 1 第一行: 每一個晚上 在夢的曠野 我是驕傲的巨人 副歌 1 第一行: 我很醜 可是我很溫柔
將主歌 1 第一行表示為序列<5, 5, 7>,副歌 1 第一行表示為序列<3, 5>,發 現句字數以及句數都有差異。因此總共 N 行歌詞的 L = l1
,l
2,…,l
N,中的任一行 li表示成句字數的序列 Seni = <s1
, s
2,…,s
M>, s
j∈ {句字數, _ },底線代表空白符 號。‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
19
3.2.2. 拼音結構序列
我們發現主歌與主歌相對應的詞行,雖然字面上的漢字不一樣,但是有時候發音 會有相似的情況,例如五月天《擁抱》裡主歌 1 第一行與主歌 2 第一行的內容分 別如下:
主歌 1 第一行: 脫下長日的假面 奔向夢幻的疆界 主歌 2 第一行: 隱藏自己的疲倦 表達自己的狼狽
兩行的歌詞的總字數、空白數都一樣,並且可以看到有些字詞的發音有些相似,
像是「下」與「藏」,「面」與「倦」,「奔」與「表」,「疆」與「狼」。根據拼音 相似度的想法我們發現有學者[38]在研究自動判斷形聲字的注音,其中他們有請 語言學家一同訂定注音的拼音相似度。
注音分為拼音及聲調兩部分,其中拼音又分成聲母與韻母兩部分。例如「我」
字的拼音為「ㄨㄛ」,「ㄨ」為聲母,「ㄛ」為韻母。兩個字之間的拼音相似度 p 分別是將聲母對聲母、韻母對韻母的相似度相加除以二,0 ≤ p ≤ 1。例如「空」
與「回」,拼音分別是「ㄎㄨㄥ」與「ㄏㄨㄟ」,「ㄎ」與「ㄏ」聲母的相似度為 0.9,「ㄨㄥ」與「ㄨㄟ」韻母的相似度為 0.5,兩字的拼音相似度為 0.9 + 0.5 / 2=0.7。
我們利用此方法看回前面五月天《擁抱》的兩行歌詞中相似的字詞,這些字 詞的拼音相似度分別是:「下」與「藏」為 0.7,「面」與「倦」為 0.4,「奔」與
「表」為 0.5,「疆」與「狼」為 0.4,可以看到這些字詞的拼音的確存在ㄧ定的 相似度。
有學者[40]發現目前流行音樂的歌詞的作詞者,大部分還是創作有押韻的歌 詞,例如黃鶯鶯《哭砂》的主歌 2 中所有句子押的韻腳集合為「ㄛ」與「ㄜ」,
而副歌中所有句子押的韻腳集合為「一」。然而現今流行歌曲之唱法,並不特別
要求咬字發音的精確,常常有合韻的現象。此學者整理了七個合韻的韻腳:(1)
「ㄧ」與「ㄩ」;(2)「ㄣ」與「ㄥ」;(3)「ㄢ」與「ㄤ」;(4)「ㄛ」與「ㄜ」;(5)
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
20
「ㄜ」與「ㄡ」;(6)「ㄛ」與「ㄡ」;(7)「ㄝ」與「ㄟ」。其中第一、四、五項的 合韻的韻腳在學者[38]定義的拼音相似度為零,因此我們將此三項的相似度調整 為 0.1 用以表示有相似度存在。因此我們將歌詞 L = l1
,l
2,…,l
N,其中任一行 li表 示成拼音結構序列 Pinyini,Pinyini = <p1, p
2,…p
M>,pj∈ {拼音, _ },1 ≤ j ≤ M,底
線代表空白符號。例如 Pi=<ㄨㄟ, ㄏㄜ, _ , ㄎㄢ, ㄨㄛ, ㄒㄧㄠ>。3.2.3. 詞性結構序列
對聯一般會講求對丈,也就是上下聯對應的字、詞需用同類詞性,例如名詞對名 詞,形容詞對形容詞等等。而在歌詞中我們發現有有這樣的現象存在,例如趙傳
《我很醜,可是我很溫柔》中主歌 1 的第一行與主歌 2 的第一行分別如下:
主歌 1 第一行: 每一個晚上 在夢的曠野 我是驕傲的巨人 主歌 2 第一行: 每一個早晨 在都市的邊緣 我是孤獨的假面 可以發現「晚上」對「早晨」是名詞對名詞,「夢」對「都市」是名詞對名 詞,「曠野」對「邊緣」是名詞對名詞,「驕傲」對「孤獨」是形容詞對形容詞,
「巨人」對「假面」是名詞對名詞。剛好此兩行也是一個互相對應的詞行,因此 是一個可以尋找詞式的線索。因此我們將歌詞 L = l1
,l
2,…,l
N,其中任一行 li表示 成詞性結構序列 Posi,Posi = <p1,p
2,…p
M>,pj∈ {詞性, _ },1 ≤ j ≤ M,底線代表
空白符號。例如 Ti=<名詞, 動詞, _, 形容詞, 受詞>。3.2.4.
聲調音高序列
學者楊蔭瀏[32]有提到字調與音樂關聯性,其中提到:『因為我國漢族語言文字 中的帄仌、四聲,它們本身就已包含著音樂上的旋律因素。每一個自各有高低 升降的傾向;連接若干字構成歌句之時,前後單字互相制約,又蘊蓄著對樂句 進行的ㄧ種大致上的要求。』由此可知漢字聲調與音樂旋律有互相影響的關聯,
其中的關聯包含正字與倒字的關係。正字關係代表歌詞的聲調走勢與音樂的旋 律有互相搭配,因此歌手在唱歌的時候可以正確的表達歌詞的意義。倒字關係
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
21
則是當歌詞的聲調走勢與音樂的旋律有牴觸時,歌手在唱歌的時候可能會傳達 不正確的歌詞。例如圖 3.3(a)是一個旋律與聲調有正字關係的例子,旋律是 Do, Re, Mi, Do,歌詞是「兩隻老虎」,這就是我們一般兒歌的唱法。而圖 3.3(b)是一 個旋律與聲調有倒字關係的例子,旋律是 So, Re, Mi, Do,歌詞依然是「兩隻老 虎」,可是實際唱的時候,會聽起來像「亮紙老虎」,無法傳達出歌詞正確的意 義。
圖 3.3 聲調與旋律搭配的例子 (a)正字關係例子 (b) 倒字關係例子
因此我們利用學者徐富美等人[35]研究出預防倒字關係的旋律與聲調搭配 的規則,如表 3.1,T1 與 T2 分別表示第一個漢字的聲調與下一個漢字的聲調,
表格中每一格代表前後聲調所要搭配的音高走勢,其中任意包含高低、水帄與 低高。例如「回家」一詞,分別是二聲與一聲,搭配的旋律應該是由低到高。
表 3.1 聲調與音高走勢搭配規則
第一聲 第二聲 第三聲 第四聲 輕聲
第一聲 任意 高低 高低 高低 任意
第二聲 低高 任意 高低 低高 任意
第三聲 低高 低高 任意 低高 任意
第四聲 低高 高低 高低 任意 任意
輕聲 任意 任意 任意 任意 任意
T1 T2
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
22
接下來為了要訂定出確切的音高數值,我們參考[25]所定義的四聲實際的音 高走勢,並且我們重新修改至符合表 3.1 避免倒字關係的規則,四聲所對應的實 際音高走勢如圖 3.4,如果是輕聲,則我們將其音高走勢設定與前一個漢字的聲 調一樣。
圖 3.4 四聲對應的實際音高走勢
因此我們根據聲調與旋律的特性,將歌詞 L = l1