• 沒有找到結果。

A Feature Extraction and Classification Method for Music Objects in MusicXML

N/A
N/A
Protected

Academic year: 2021

Share "A Feature Extraction and Classification Method for Music Objects in MusicXML"

Copied!
11
0
0

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

全文

(1)A Feature Extraction and Classification Method for Music Objects in MusicXML1 Yu-Chih Shen(沈裕智) and Jia-Lien Hau(徐嘉連)2 Department of Computer Science and Information Engineering, Fu Jen Catholic University, Taiwan, R.O.C. [email protected]. 1.1 動機. 摘要 在音樂資訊查詢(music information retrieval)領域 中,「從音樂物件中擷取出代表內涵(content)的 音樂資訊作為特徵值是重要的研究重心」。從音樂 物件中擷取出特徵值之後,可以作為更有效的音樂 分析與查詢,並提供更多樣化的服務。 在這篇論文裡面,我們的資料格式是 MusicXML 。 根 據 樂 理 ( music theory ) 與 曲 式 (music form)的理論為基礎,從古典樂曲的音樂物 件中,擷取出可以呈現音樂結構的特徵。參考「曲 式」的結構特徵(structural feature)之階層性規則 (hierarchical rule)特色,將這擷取出來的音樂特 徵,建立出一棵樹狀資料結構,構成一棵具有樂理 特徵、樂理結構的曲式樹(MF-tree)。同時,我們 也 提 出 曲 式 樹 的 不 相 似 函 數 ( dissimilarity function),利用曲式樹計算出音樂物件的不相似 度 。 最 後 , 採 用 階 層 式 分 群 ( hierarchical clustering)與系統實作來展示分群的效果。. 在音樂資訊查詢領域中,「從音樂物件中擷取出代 表內涵(content)的音樂資訊作為特徵值是重要的 研究重心」。在早期的論文研究中,對於音樂資訊 查詢系統最常使用的方法是:將一首音樂的旋律 (melody)轉換成字串(string)表示,經由字串比 對的方式,得到音樂的相似度。一般而言,主要的 資 料 來 源 有 兩 種 : 一 種 是 symbolic 格 式 , 如 : midi。一種是 wav 格式,如:mp3、CD audio。但 是 , 當 初 midi 的 設 計 是 為 了 連 接 多 樣 化 的 裝 置 (connecting various device),只儲存基本的音樂字 串 , 如 : 旋 律 字 串 ( melody string ) 、 節 奏 字 串 (rhythm string),卻沒有儲存關於音樂結構的相關 訊息。因此,我們資料來源改採用目前普遍的 MusicXML,作為我們音樂資料的來源。 關於音樂的結構特徵(structural feature),最 顯著的特色有:重覆性規則(repeating rule)與階層 性規則(hierarchical rule)。重覆性規則與階層性規 則皆可以呈現出音樂曲式結構的特性。 [Hsu01]利用 重覆性規則找尋音樂物件中的重覆樣型。然而,目 前就我們所知,尚未有利用階層性規則來表示音樂 結構的研究。所以,我們提出一個想法,不只是單 純地利用字串表示音樂特徵,而是加上結構的概 念。參考曲式的階層性規則,擷取出新的音樂特 徵。將古典樂曲的音樂物件,建構成一棵具有樂理 特徵、樂理結構的樹狀結構,我們稱之為曲式樹 (MF-tree)。並且,可以作為音樂資訊系統的有效 分類或是其他相關應用。 接著,關於音樂系統的相關應用,舉例來說: ( 1)以特徵擷取作為分類(feature extraction for classification):藉由樂理特徵的擷取可以作為音樂 分類的應用。(2)找尋重覆的結構樣型:. 關 鍵 詞 : 特 徵 擷 取 ( feature extraction ) , 曲 式 樹 (MF-tree),階層式分群(hierarchical clustering) 。. 1 .序論 音樂資訊查詢系統(music information retrieval), 是近幾年來快速發展的一個新穎研究領域。藉著音 樂特徵的擷取與應用,系統可以提供更多的服務給 使用者,如:推薦(recommendation)、哼唱查詢 (querying by humming)。因此,特徵的擷取就成 為重要的研究重心。. 1. 本論文研究為國科會補助之研究成果,計畫編號為 NSC-93-2213-E-030-005。 本論文的相關聯絡人。(To whom all correspondence should be sent.). 2. 1.

(2) 藉由重覆結構樣型(repeating structure pattern)內涵 的音樂資訊,得到重覆樣型音樂字串片段。(3)音 樂查詢(music search):幫助音樂查詢系統的設 計 , 加 快 查 詢 速 度 。 ( 4 ) 音 樂 推 薦 ( music recommendation):促進音樂系統的推薦。(5)音 樂摘要(music summary):藉著音樂結構的呈現, 找尋重要的結構片段,進而作為音樂摘要的呈現。 (6)音樂分析(music analysis):針對特定的音樂 作曲家,執行音樂作品的分析。(7)拷貝偵測 (copy detection):藉由音樂結構的比對與相似計 算,搜尋出結構相似與旋律相似的拷貝作品。. 圖1. 音樂物件的階層性規則(The hierarchical rule of a music object). 1.2 音樂特徵的概述 針對音樂物件的特性,目前音樂特徵的擷取,從 Hsu [Hsu01]我們可以得知,音樂的特徵值可以分成 以下四類: (1)「Static music information 」是指音樂物件中 ,所包含的基本特性(keyword-based description) ,包括:調性、節拍、演奏速度等。例如, 「 Beethoven’s Symphony No. 5, Op. 67 」 的 static music information 是 C minor, 4/4 等。 (2)「Acoustical features」包括 loudness、pitch、 duration、bandwidth 和 brightness 等聲音特徵值。從 音樂物件中的原始資料(raw data)中,經由簡單的 計算可以得到這些特徵值。例如,音樂物件的 loudness 是計算音響訊號(audio signal)的方均根 值(root-mean-square value )所得,常用的單位是 「分貝(decibel)」[Wold96]。 (3)「Thematic features」則是「旋律(melody)」 、「節奏(rhythm)」、「和弦(chord)」等,從 類 似 樂 譜 ( score-like) 的 資 料 格 式 中 求 得 的 特 徵 值。並且此類的特徵值經常以字串表示。例如,“GG-G-E”是一音樂物件的旋律字串、“C-Am-Dm-G7” 則是和弦字串。 (4)「Structural feature」:從「音樂曲式學」的研 究成果得知,古典音樂通常在作曲時會依照一些規 則而構成「曲式(music form)」。其中,最顯著的 特色是:「階層性規則(hierarchical rule)」和「重 覆 性 規 則 ( repetition rule ) 」 [Jone74][Krum90] [Narm90]。階層性規則是指在古典音樂中,會根據 特定形式、由上往下所組成,舉例來說:一個音樂 物件包含了樂章,樂章包含樂段,樂段包含樂句, 樂句包含音形(a music object consists of movements, a movement consists of sentences, a sentence consists of phrases, and a phrase consists of figures)[Hsu01],如 圖 1 所示。重覆性規則是指在古典音樂中,通常會 有一個或數個「動機(motive)」,不斷地重覆出 現在整個音樂中。除了古典音樂之外,在其他類型 的音樂中,也可以觀察到重覆性規則。舉例來說: 在流行音樂中,經常出現的「副歌(refrain)」, 就是一個符合重覆性規則的例子。. 1.3 相關研究 目前的相關研究,我們分別針對音樂特徵的擷取, 音樂的辨識(music recognition),音樂的分類以及 XML 的結構相似(structure similarity)來作介紹: 關於音樂特徵擷取的研究,Miura[Miur03]介紹 旋律的音高頻譜(pitch spectrum),利用音高頻譜 來評量相似度,並且,可以容易地判斷出歌曲中的 移調(transposition)。Wai[Wai03]對於多音音樂資 料庫(polyphonic music database),提出一個串流 分割演算法(stream segregation algorithm),將數 個音高分攤成數個串流(stream),呈現出旋律線 (melody line)概念的音樂特徵。Hsu[Hsu01] 定義 出 「 不 明 顯 的 重 覆 樣 型 ( nontrivial repeating pattern)」的音樂特徵,利用關係矩陣(correlative matrix ) 和 RP-tree 快 速 地 找 到 最 長 的 重 覆 樣 型 (exact repeating patterns),Hsu[Hsu04]更進一步提 出找尋近似的重覆片段,經由切割(cut)與樣型合 併(pattern_join),設計出一個「類似層次(levelwise)」的方法來找尋近似的重覆片段。 對於音樂曲式結構的辨識,Liu[Liu02]以 Johann Strauss waltz centos 為範例,根據樂理提出了三種假 設。以四個小節為單位,設計出一個新的結構(稱 之為:Melody-tree)。一棵 Melody-tree 是一棵三層 的 樹 , 利 用 Melody-tree 作 為 曲 式 識 別 ( form recognition)的重要特徵。Seifert[Seif03]則利用語意 的關係(semantic relationship),根據專家決定出重 要的音樂片段(稱之:characteristic motifs),設計 出 Leadsheet-tree,作為音樂的辨識。 音 樂 分 類 的 研 究 中 , Shan[Shan02] 利 用 和 弦 ( chord ) 特 徵 研 究 不 同 的 特 徵 表 示 法 ( feature representations ) , 設 計 出 一 個 音 樂 風 格 ( music style)的發掘和分類方法,幫助音樂查詢系統發掘 音 樂 風 格 。 Kuo[Kuo02] 提 出 一 個 音 樂 過 濾 系 統 ( music filtering system ) , 根 據 使 用 者 的 行 為 (behavior),利用多重型態旋律風格(multi-type melody style)的分類方法發掘出旋律樣型(melody patterns),推薦音樂物件給使用者。Kuo[Kuo04]針 對旋律風格的查詢,提出四種查詢的類型,查詢結. 2.

(3) 拍(beat)、小節(measure)、音高(pitch)、音 長 ( duration ) 、 旋 律 ( melody ) 、 節 奏 (rhythm)、和弦(chord)、圓滑線(slur)、音 符 類 型 ( type ) 、 裝 飾 記 號 ( grace ) 、 歌 詞 (lyrics)…等的音樂相關資訊。 首先,我們先舉個簡單的例子來說明一個 MusicXML document 的 結 構 。 從 布 拉 姆 斯 ( Johannes Brahms ) 的 「 旋 律 ( Wie Melodien Op.105)」中,選取出的一段樂譜(如圖 2 所示) 。 這 段 樂 譜 的 第 一 部 ( voice ) 之 第 一 小 節 在 MusicXML document 中(如圖 3 所示),相當於節 點<part id=“P1”>包含的子節點之第一小節。在圖 2 中,第一小節的第二個音符在 document 的格式,相 當於在圖 3 中“矩形”框住的部份,節點<measure number=“1”>的第二個子節點<note>,所形成的樹狀 結構,就是在圖 4 中“矩形”框住的部份。. 果會提供給使用者新穎的(new)或是不知道(not known)的樂曲。 關於 XML 結構相似的研究,Wang[Wang04]利 用結構資訊(structural information),提出一個階 層 式 演 算 法 ( hierarchical algorithm , 命 名 為 : SGRACE),減少當 XML documents 儲存在關連式 表格(relational tables)查詢時所需要的合併成本 (join cost)。Canfora[Canf04]提出一個 XML 相似 計 算 的 方 法 , 作 為 資 訊 檢 索 系 統 ( Information Extraction Systems,IES)的評估。Bertino[Bert04]對 於 XML document 與 DTD 利 用 結 構 相 似 度 ( structural similarity ) , 提 出 一 個 比 對 演 算 法 ( matching algorithm ) , 以 及 相 關 的 應 用 , 如 : XML documents 的分類、DTD structure 的評估、結 構 性 的 查 詢 、 XML documents 的 選 擇 性 傳 播 (selective dissemination)、XML document 內容的 保護(protection)。Lee[Lee02]進一步地利用結構 相似度結合語意(semantics)的概念,提出 XClust algorithm,有效地整合 DTD schema。. 1.4 問題的描述 我們的研究目的是針對 MusicXML 格式,從古典樂 曲 的 音 樂 物 件 中 , 擷 取 出 音 樂 特 徵 ( feature extraction ) , 並 藉 此 進 一 步 地 做 分 類 應 用 (classification)。我們面臨的第一個問題是:從古 典樂曲的音樂物件中,擷取出音樂結構特徵,來呈 現音樂的結構,並建構出一棵曲式樹。第二個問題 是:曲式樹的不相似度計算法,以及分類的方法。 這篇論文的內容組織如下:第二章為介紹我們 所提出的方法,其中包括 MusicXML document 的介 紹、系統流程的說明、曲式樹建構的方法、曲式樹 的不相似度計算法,以及階層式分群的方法。第三 章是我們的系統架構與系統介面。而第四章是實驗 結果。最後,第五章則是本篇論文的結論與未來工 作。. 圖2. 布拉姆斯的「旋律(Wie Melodien Op.105)」之第一小節. 2 .方法的介紹 在 這 一 個 章 節 , 我 們 首 先 會 介 紹 MusicXML document,然後是整個方法的系統流程。接下來, 提出建構曲式樹的方法,曲式樹的不相似度計算 法。最後是階層式分群的方法。. 2.1 MusicXML 的介紹 XML 是在資訊交換上,目前廣泛被使用的一種資料 格式。在這樣的趨勢下,以 XML 的技術為基礎, 發展出一種新的音樂資料格式稱之為 MusicXML。 MusicXML 的設計目的是:為了音樂資訊的分析與 擷取。MusicXML 是一種儲存樂譜(score-like)的 資 料 格 式 , 包 含 了 符 號 式 ( symbolic ) 的 音 樂 資 料,以及許多描述資料的資料(metadata)。如: 作者(creator)、譜號(clef)、調性(key)、節. 圖3. A MusicXML document. 3.

(4) 圖4. The structure of MusicXML document. 圖5. 系統流程. 2.3 曲式樹(MF-tree)的建構. 接下來,對於 MusicXML document 有了基本的 瞭 解 之 後 , 我 們 先 說 明 不 採 用 目 前 計 算 XML document 相似度方法的原因。由於,我們的資料格 式 是 MusicXML document , 相 對 於 目 前 的 XML document 的差別,在於結構(structure)的不同。 我 們 可 以 從 網 際 網 路 中 , 獲 得 許 多 的 XML document。從這些 XML document 中,我們 可以觀 察到一件事:在眾多的 XML document 中,每一個 XML document 的結構都是不相同的,各自有各自 獨特的結構。然而,目前的許多研究方法,都是以 結 構 來 計 算 XML document 的 相 似 度 [Wang04] [Canf04] [Bert04] [Lee02]。但是,對於 MusicXML documents 來說,大部分的 MusicXML document 都 有相似的階層與高度。如圖 4 所示,score-partwise 會包含 movement-title、identification、part-list、part id=“P1” , part id=“P1” 包 含 measure number=“1” , measure number=“1” 包 含 note , note 包 含 pitch 、 duration、voice、type、stem…等相似的結構。在這 樣 的 情 況 下 , 如 果 , 採 用 目 前 已 有 的 XML document 相似度計算方法,我們無法從結構中,求 得音樂物件的相似度。所以,我們也將在本篇論文 中的第 2.4 節,提出一個適合樹狀結構的不相似度 計算法,得到音樂物件的不相似度。. 我們知道 MusicXML 是一種描述音樂資訊的格式, 但是 MusicXML 包含了許多與樂曲曲式結構不相關 的音樂資訊,如:作者(creator)、譜號(clef)、 調性(key)。所以,我們參考曲式的階層性規則, 針對 MusicXML 格式,古典樂曲的音樂物件中,建 構出一棵具有樂理特徵、樂理結構的曲式樹(MFtree)。一棵曲式樹包含的音樂特徵,可以呈現出音 樂的結構,又不會失去音樂本身的內涵,如:旋 律、節奏。 一個音樂物件會建構出一棵曲式樹。對於一個 音樂物件而言,一個音樂物件就是一首古典樂曲。 一首古典樂曲,可以是由一個樂章或是多個樂章所 組成。舉例來說:一首古典交響樂曲,可以分成多 個樂章,如:貝多芬的「C 小調第五號交響曲(命 運交響曲)」,共分成四個樂章。另外,如果一首 古典樂曲沒有所謂的樂章,則我們將這一首古典樂 曲視為一個樂章,如:布拉姆斯的「旋律 (Melodien Op.105)」就是一首的古典樂曲,並沒 有分所謂的樂章部分,所以,我們將這首古典樂曲 視為一個樂章。 因此,我們將一個古典樂曲的音樂物件,並參 考曲式的階層性規則,擷取出「音樂物件(music object ) 」 、 「 樂 章 ( movement ) 」 、 「 片 斷 (segment)」、「子片斷(subsegment)」等特徵 值,建構出一棵具有樂理特徵、樂理結構的樹(命 名為:MF-tree),如圖 6 所示。一棵曲式樹包含音 樂物件、樂章、片斷、子片斷…等節點,好比是一 篇文章(document)包含「段落(paragraph)」、 「句子(sentence)」、「單字(word)」。曲式樹 的結構概念就類似於文章的結構概念。. 2.2 系統流程 系統流程的介紹,如圖 5 所示。首先,我們會針對 MusicXML 格式的古典音樂物件,參考曲式的階層 性規則,得到音樂特徵,並建構出一棵曲式樹。接 著,提出曲式樹的不相似度計算法。最後,由階層 式分群得到分群的結果。. 4.

(5) Property 3. 對於每一個內部(internal)節點而言, 所有子節點的音樂序列,會形成父節點的一個分割 (partition)。 Example 2: 同樣地,參考圖 7。對於圖 7 中的樂章節點的音樂 序 列 (1, 40)來 說 , 包含的兩個片斷節點之音樂序 列,分別是(1, 9),(10, 40),兩個片斷節點都形成 樂。 ■. 圖6. 曲式樹的結構. 關於建構曲式樹的方法,請參考圖6。我們將針 對古典樂曲的音樂物件,提出建構曲式樹的方法 (heuristics),分述如下: 1. 音樂物件節點:一首古典樂曲的音樂物件代表 一個音樂物件節點。一個音樂物件是由一個 MusicXML document 或 是 多 個 MusicXML document 所儲存。 2. 樂章節點:對於一首古典樂曲的音樂物件,包 含的樂章個數而言,一個樂章代表一個樂章節 點。一個樂章就是由一個 MusicXML document 所儲存。 3. 片斷節點:對於一個樂章節點來說,從樂章中 切割出數個片斷特徵。根據休止符的音長,得 到片斷特徵。在樂章節點包含的音樂序列中, 從序列的第一拍算起,計算至一個音符為休止 符,其音長大於等於一拍時,則得到一個音樂 序列,將此音樂序列視為一個片斷特徵。若 是,計算至最後一個音符,得到的音樂序列, 也視為一個片斷特徵。 4. 子片斷節點:對於一個片斷節點來說,從片斷 中切割出數個子片斷特徵。根據音符的音長, 得到子片斷特徵。在片斷節點包含的音樂序列 中,從序列的第一拍算起,計算至一個音符的 音長大於等於兩拍時,則產生一個音樂序列, 將此音樂序列視為一個子片斷特徵。若是,計 算至最後一個音符,得到的音樂序列,也視為 一個子片斷特徵。. 另外,對於 MusicXML 來說,如:貝多芬的 C 小調第五號交響。則利用四個 MusicXML document 來儲存,一個 MusicXML document 表示一個樂章。 然而,就布拉姆斯的旋律(Wie Melodien)來說, 這一個音樂物件就是一個樂章,利用一個 MusicXML document 來儲存。一個音樂物件就是一 個樂章由一個 MusicXML document 來儲存。所以, 在我們的實作方面(本篇論文的第 3 章節),目前 是以一個 MusicXML document 為主,一個音樂物 件,就是一個樂章,由一個 MusicXML document 來 儲存。 接下來,我們先介紹曲式樹(MF-tree)的定 義,然後,介紹建構曲式樹的方法。 Definition 1 :曲式樹是一棵四層的樹,並擁有以下 三個性質: Property 1. 一棵曲式樹有四層。從根節點計算起, 第一層是音樂物件節點,第二層是樂章節點,第三 層是片斷節點,第四層是子片斷節點。 Property 2. 對對於每一個節點而言,一個節點會對 映到一個「音樂序列(music sequence)」,記為 (b1, b2);表示在音樂物件中,從第 b1 拍到第 b2 拍的 音樂序列。 Example 1: 參考圖 7 中的樂章節點,對映的音樂序列(1, 40), 表示在音樂物件中,從第 1 拍到第 40 拍的音樂序 列。. Example 3: 我 們 選 取 巴 哈 ( J.S. Bach ) 的 「 郭 得 堡 變 奏 曲 (Goldberg Variation BWV 988)」的第四變奏之十 一個小節來舉例說明,並且,將此音樂片段視為一 個音樂物件,參考圖 8。對於圖 8 的音樂片段來 說,整個音樂片段就是一個音樂物件,所以對映到 圖 9 的音樂物件節點(1, 40)。同時,也就是一個樂 章,相對於圖 9 的樂章節點(1, 40)。在樂章節點包 含的音樂序列中,從序列的第一拍算起,計算至第 九拍為休止符,其音長大於一拍,得到一個音樂序 列,將此音樂序列視為一個片斷特徵,相對於圖 9 的第一個片斷節點(1, 9)。在片斷節點包含的音樂序 列中,從序列的第一拍算起,計算至第七拍的音長 大於等於兩拍時,得到一個音樂序列,將此音樂序. 圖7. 節點的音樂序列. 5.

(6) 其中,M 是包含 u 節點之音樂物件節點的音樂序列 之個數,N 是包含 v 節點之音樂物件節點的音樂序 列之個數。. 列視為一個子片斷特徵,相對於圖 9 的第一個子片 斷節點(1, 7)。. Example 4: 如圖 10 所示,給予 t1 與 t2 為曲式樹的兩棵子樹,將 所有節點的音樂序列正規化於 0 至 1 之間後,如: 片斷節點 a 的音樂序列(1, 11)之正規化等於(0, 1), 子 片 斷 節 點 a1 的 音 樂 序 列 (1, 5) 之 正 規 化 等 於 (0, 0.45),同樣地,將片斷節點 b 的音樂序列(1, 9)之 正規化等於(0, 1),子片斷節點 b2 的音樂序列(5, 8)之 正規化等於(0.44, 1)。所有的節點都正規化於 0 至 1 之間後,然後,根據節點的位置,得到片斷節點 a 與片斷節點 b 重疊,子片斷節點 a1 與 b1 重疊、a1 與 b2 重疊、a2 與 b2 重疊、a3 與 b2 重疊。. 圖8. 巴哈(J.S. Bach)的郭得堡變奏曲第 四變奏之十一個小節. 圖10. 曲式樹的兩棵子樹 ■. 接下來,關於曲式樹的不相似度計算法。如先 前所說,如果節點重疊,則計算出節點的不相似 度,對於每一個內部節點來說,其不相似度是由子 節點的不相似度得到。因此,我們先定義出 DSsub(a, b)計算出子片斷節點的不相似度。接下來, DSseg(a, b)計算出片斷節點的不相似度,片斷節點的 不相似度是由子片斷節點的不相似度得到。同樣 地 , DSmov(a, b) 計 算 出 樂 章 節 點 的 不 相 似 度 , DSobj(a, b)計算出音樂物件節點的不相似度,兩者的 不相似度都是由子節點的不相似度得到。. 圖9. 曲式樹的示意圖 ■. 2.4 曲式樹的相似度演算法 在上一個章節中,我們已經介紹了建構曲式樹的方 法,利用曲式樹呈現出音樂的結構。接下來,我們 介紹曲式樹的不相似度計算法。首先,我們根據節 點之間是否重疊,決定節點是否相似。如果重疊, 則計算節點之間的不相似度,否則就視為不相關, 且不予計算,利用節點的重疊隱含著結構的概念。 然後,對於每一個內部節點來說,其不相似度是利 用子節點的不相似度得到。因此,我們先介紹 over(u, v),將節點代表的音樂序列正規化於 0 至 1 之間後,判斷出節點之間是否重疊,然後,再介紹 曲式樹的不相似度計算法。. Definition 3: DSsub(a, b) 給予兩個子片斷節點 a 與 b,則 a 與 b 的不相似 度: DS sub (a, b ) = ⎧⎛ vi ⋅ v j ⎞ ⎟ , v i is the pitch histogram of a ⎪⎜⎜1 − ⎟ || v ⎪⎝ i || || v j || ⎠ (a ) ⎪⎨ ⎪ , v j is the pitch histogram of b, if over (a,b ) = 1, ⎪ N/A ⎪ , otherwise. ⎩. Definition 2:over(u, v)節點重疊(overlapping) 給予兩個節點 u : (a1, a2)與 v : (b1, b2),則節點重 疊:. ⎧⎛ vi ⋅ v j ⎞ ⎟ , v i is the duration histogram of a ⎪⎜⎜1 − ⎪⎝ || v i || || v j || ⎟⎠ ⎪ (b ) ⎨ ⎪ , v j is the duration histogram of b, if over (a,b ) = 1, ⎪ N/A ⎪ , otherwise. ⎩. b1 a1 b2 a b a ⎧ ≤ < , or 1 ≤ 1 < 2 ⎪1 , if over (u, v ) = ⎨ N M N M N M ⎪⎩0 , otherwise.. 6.

(7) 其中,ai 是 a 的孩子(child), 1 ≤ i ≤ m ,m 是 a 的 片斷節點數目,bj 是 b 的 child, 1 ≤ j ≤ n ,n 是 b 的 片斷節點數目, ∑ over (ai , b j ) = k 。. 對於 DSsub(a, b)而言,我們目前提出了兩種計算 方式。第一種是將節點內含的音樂序列,根據音符 種類(c, d, e, f, g, a, b, r),得到的音高分佈,計算出 兩個節點的不相似度。第二種是將節點內含的音樂 序列,根據音長的種類,(全, 2 分, 4 分, 8 分, 16 分, 32 分, 64 分, 休止符),得到的音長分佈,計算出兩 個節點的不相似度。. 1≤ i ≤ m ,1≤ j ≤ n. Definition 6:DSobj(a, b) 給予兩個音樂物件節點 a 與 b,則 a 與 b 的不相似 度: ⎧ ∑ DS mov (ai ,b j ) ⎪1≤i ≤ m,1≤ j ≤ n , if over (a,b ) = 1 and over (ai , b j ) = 1 k ⎪ ⎪ DS obj (a, b ) = ⎨ ⎪ ⎪ ⎪⎩ N/A , otherwise.. Example 5: 延續 Example 4,將兩個子片斷節點 a2 與 b2,將內 含的音樂序列,得到的音高分佈分別為 (0, 3, 0, 1, 2, 0, 1, 1)與(3, 3, 0, 1, 0, 1, 0, 4),由於 a2 與 b2 重疊,則: ⎛ (0,3,0,1,2,0,1,1) ⋅ (3,3,0,1,0,1,0,4 ) ⎞⎟ × 1 DS sub (a 2 , b 2 ) = ⎜ 1 − ⎜ || (0,3,0,1,2,0,1,1) || || (3,3,0,1,0,1,0,4 ) || ⎟ ⎝ ⎠ = 0 .42. 其中,ai 是 a 的孩子(child), 1 ≤ i ≤ m ,m 是 a 的 樂章節點數目,bj 是 b 的 child, 1 ≤ j ≤ n ,n 是 b 的 樂章節點數目, ∑ over ai , b j = k 。. (. 我們利用曲式樹的不相似度計算法,計算出兩 棵曲式樹的不相似度,然後,利用階層式分群,得 到音樂分類的結果。. Definition 4:DSseg(a, b) 給予兩個片斷節點 a 與 b,則 a 與 b 的不相似度: ⎧ ∑ DSsub (ai ,bj ) ⎪1≤i≤m,1≤ j ≤n , if over(a,b) = 1 and over(ai , b j ) = 1 k ⎪ ⎪ DSseg (a, b) = ⎨ ⎪ ⎪ , otherwise. ⎩⎪N/A. 2.5 階層式分群 在介紹曲式樹的不相似度計算法之後,我們採用階 層式分群(hierarchical clustering)[Theo99],將音 樂物件作分類。初始設定每一個音樂物件分別為一 個叢集,在所有的叢集中,利用單一鏈結(singlelink)的方法,找到兩個叢集之間的距離為最小,合 併成一個新的叢集,重覆至所有的叢集合併成一個 叢集則終止。採用階層式分群的原因是由於方法彈 性,可以不必事先預設分群的個數。並且,具有視 覺化(visualization)的效果。. 其中,ai 是 a 的孩子(child), 1 ≤ i ≤ m ,m 是 a 的 子片斷節點數目,bj 是 b 的 child, 1 ≤ j ≤ n ,n 是 b 的子片斷節點數目,. ∑ over (a , b ) = k 。 i. ). 1≤ i ≤ m ,1≤ j ≤ n. ■. j. 1≤ i ≤ m ,1≤ j ≤ n. Example 6: 延續 Example 4。由於,片斷節點 a 與片斷節點 b 重 疊,並且,子片斷節點 a1 與 b1 重疊、a1 與 b2 重疊、 a2 與 b2 重疊、a3 與 b2 重疊。計算出 a1 與 b1 的不相 似度為 0.3,a1 與 b2 的不相似度為 0.1,a2 與 b2 的不 相似度為 0.42,a3 與 b2 的不相似度為 0.2,則得到 兩 個 片 斷 節 點 的 不 相 似 度 , 為 DS seg (a, b ) = (0.3 + 0.1 + 0.42 + 0.2 ) 4 = 0.255 。. 3 .系統實作 關於我們的系統實作部分,我們撰寫的程式軟體是 Borland C++ Builder 6.0,程式語言是 C++,所使用 的 電 腦 配 備 是 Pentium IV 2.00 GHz , 768 MB memory,作業系統是 Windows XP sp1。在我們目前 的實作中,剖析 MusicXML document 的模組是來自 於 Delphi K. Top 討論區[Delp]。. ■. 3.1 系統架構 同樣地,我們利用計算片斷節點的方法,得到 樂章節點與音樂物件節點的不相似度。. 我們所設計的系統架構,如圖 11 所示,包含下列模 組: z MusicXML document parser : MusicXML document 的剖析。將 MusicXML document 進行剖析 之後,並且可以呈現 MusicXML document 的樹狀結 構。 z MF-tree module:建構曲式樹。由得到的音樂 特徵,將音樂物件建構出曲式樹後,並且可以展示 節點的音樂序列之相對位置。. Definition 5:DSmov(a, b) 給予兩個樂章節點 a 與 b,則 a 與 b 的不相似度:. ⎧ ∑ DS seg (a i ,b j ) ⎪1≤i ≤ m,1≤ j ≤ n , if over (a,b ) = 1 and over (a i , b j ) = 1 k ⎪ ⎪ DS mov (a, b ) = ⎨ ⎪ ⎪ , otherwise. ⎩⎪ N/A. 7.

(8) z Clustering module:階層式分群。利用曲式樹的 不相似度計算法,得到所有曲式樹之間的不相似 度。然後,再利用階層式分群得到我們想要的分群 數目。 z Interface module:系統介面。經由實作之後, 得到的系統介面實圖。. 樹中的某一個節點,展示節點的音樂序列,在音樂 物件上的相對位置。 第三個項目是曲式樹的相似計算,分群結果的 呈現,如圖 14 所示。在圖 14 中總共可以分成三個 部分,圖 14 中的 A 部分,是可任選兩種方法其中 的一種方法,計算出曲式樹的不相似度。圖 14 中的 B 部分,是決定分群的群數,以及執行階層式分 群。圖 14 中的 C 部分,展示經由階層式分群,得到 分群的結果。 第四個項目是階層式分群的樹狀圖示,如圖 15 所示。在圖 15 中的距離(distance)座標軸,表示 兩棵曲式樹之間的不相似度。. 圖11. 系統架構. 3.2 系統實作 目前我們系統的實作中,我們將介面分成四個項 目 : MusicXML document Parser 、 MF-tree 、 Clustering、Hierarchical Clustering。 第一個項目是進行 MusicXML document 的剖 析,如圖 12 所示。在圖 12 中總共可以分成四個部 分,圖 12 中的 A 部分,展示我們讀入的檔案數 目、檔名,以及每一個音樂物件的作者、曲名、小 節數、音符數等相關資訊。圖 12 中的 B 部分,顯示 我們點選的某一個 document 的內容。圖 12 中的 C 部分,是關於點選的 document 之相關資訊,如:元 素(element)數目。圖 12 中的 D 部分,展示點選 的 document 之樹狀結構。 第二個項目是音樂特徵的擷取,曲式樹的展 示,片斷節點位置的展示。如圖 13 所示。在圖 13 中總共可以分成四個部分,圖 13 中的 A 部分,按 鈕(Feature Extraction)用來得到音樂特徵。圖 13 中的 B 部分,展示點選的 document,建構成曲式樹 之後的相關資料,如:片斷節點的數目。圖 13 中的 C 部分,是曲式樹的呈現。另外,我們將節點加入 編號表示。例如:目前展示的曲式樹之片斷節點數 目 18 個,則將第一個片斷節點表示為片斷 1,以此 類推。若要表示第十三個片斷節點的第一個子片斷 節點,則第十三個片斷節點的第一個子片斷節點表 示為子片斷 13-1。圖 13 中的 D 部分,是點選曲式. 圖12. MusicXML document 的剖析. 圖13. 曲式樹的建構. 8.

(9) 段,每一個片段讓人聽起來都很相似,但是其包含 的音高分佈與音長分佈並不相似。所以,我們將莫 札 特 ( Mozart ) 的 「 小 星 星 變 奏 曲 ( Zwolf Variation)KV 265」,依變奏產生的位置切出音樂 片段,同樣地從巴哈(J.S. Bach)的「郭得堡變奏 曲 ( Goldberg Variation ) BWV 988 」 切 出 音 樂 片 段 , 加 上 舒 伯 特 冬 之 旅 ( Franz Schubert’s Winterreise, D.911)的一首古典樂曲「勇氣(Mut)」, 一個音樂片段,總共有十個音樂片段,視為十個音 樂物件,每一個音樂物件的節拍數,如表 1 所示。 我們是利用評估版的 TaBazar[TaBa]工具,將小星星 變奏曲與郭得堡變奏曲等九個音樂物件,轉換成 MusicXML document , 剩 餘 的 一 個 音 樂 物 件 的 document 來 自 於 Recordare[Reco] 網 站 。 每 一 個 document 只儲存音樂物件的第一部之第一樂譜。我 們將實驗資料依作者分類,分成三個類別,對於小 星星變奏曲兩個音樂片段而言,由於是從同一首曲 子中,切出來的兩個音樂片段,所以,將這兩個音 樂片段視為一個類別,同樣地,將郭德堡變奏曲的 七個音樂片段,視為一個類別,剩餘的一個音樂片 段視為一個類別,如表 1。. 圖14. 分群結果的展示. 表1. 實驗資料. 圖15. 階層式分群的樹狀展示. 4 .實驗分析 我們提出曲式樹的目標,參考曲式的階層性規則, 將音樂物件用樹狀結構呈現出音樂的結構。利用曲 式樹的不相似度計算法,計算出曲式樹的不相似 度,讓我們在音樂分類上,得到較好的效果。在計 算不相似度時,加上了結構的概念,可以提高音樂 物件不相似度的準確率,進而提升分群的正確性。 我們測試了實驗,測試曲式樹對於音樂物件分群的 效果。. 我們利用 F-measure[Larsen99] 評估兩個群組之 間分群結果的好壞。假設,專家預先將實驗資料分 成 X 類,然後,我們的方法將實驗資料分成 T 群, X 類為我們分群結果的標準。首先,我們先計算每 一群與每一類的 Recall 與 Precision,然後,求得每 一 類 與 每 一 群 的 F-measure , 最 後 , 由 全 部 的 (overall )F-measure 的數值來評估分群結果的好 壞。其公式如下:. 4.1 實驗設定. 對於每一個 T 群(cluster T)和 X 類(class X), n ij n Recall ( X , T ) = ij , Precision ( X , T ) = 。 ni nj. 關於資料來源的部分,由於,沒有音樂物件相似的 標準(benchmark)。於是,我們將同一首變奏曲 中,切割出來的音樂片段視為相似,作為相似的標 準,並且,選取出音樂片段具有相似的音高分佈與 音長分佈。雖然,從同一首變奏曲中得到的音樂片. nij = the number of documents of class X in cluster T ni = the number of documents of class X nj = the number of documents of cluster T. 9.

(10) The F-measure of cluster T and class X:. 這兩種方法得到的分群效果與我們提出的方法比 較。 我們根據表 1 將分群數目設定為 3。圖 16 展示 我們的方法與 Naïve 方法對於音樂分類的效果。實 驗的結果顯示,我們的方法得到的分類效果相對於 Naïve 方法呈現出較好的效果,因此,證實了我們 的想法。由於,在計算音樂物件的相似度時,我們 將音樂物件利用樹狀結構來表示,根據節點的位置 重疊與否,決定節點的是否相似,進而得到曲式樹 的相似度。因此,我們不是單純的選取整個音樂物 件的音樂特徵來計算,而是利用樹狀結構來表示音 樂物件,作為音樂物件的特徵表示。這樣不僅可以 提升音樂物件相似度的準確率,同時也增加了音樂 分類的效果。另外,我們可以觀察到一件事,由 Naïve 的方法得到的分類結果之數值都是相同。但 是,我們得到的分類結果之數值,卻有高低之差。 因為在資料不同的音樂特性下,例如:兩首聽起來 相似的歌曲,他們的音高分佈是相近的,但是音長 分佈是不相近的。利用 Naïve 的方法,是無法區別 出這樣的差異,但是,我們利用結構的概念,讓兩 首即使是聽起來都相似的歌曲,卻可以辨識出這樣 的差異。. 2 × Precision ( X,T ) × Recall ( X,T ) 。 Precision ( X,T ) + Recall ( X,T ) ni max F ( X , T ) , The overall F-measure = ∑ T X n F (X , T ) =. 其中,n is the number of documents。. 由全部的 F-measure 的數值反映出分類結果的 品質,數值的範圍從 0 到 1,數值越大顯示品質越 好。往後,我們將 overall F-measure 以 F-measure 稱 之。 Example. 7 : 假 設 有 五 個 documents D = {doc 1, doc 2, doc 3, doc 4, doc 5} , 已 知 為 兩 個 類 別 , X 1 = {doc 1, doc 2 , doc 3} 為 一 類 別 ,. X 2 = {doc 4 , doc 5} 為另一個類別。我們利用分群 演算法,將 documents 分成兩群, T1 = {doc 1, doc 2} 為 一 群 , T 2 = {doc 3, doc 4 , doc 5} 為 另 一 群 , 用 F-measure 來評估分群的效果,其計算公式如下:. Recall ( X 1 , T1 ) =. 2 2 , Precision( X 1 , T1 ) = , 3 2. Recall ( X 1 , T 2 ) =. 1 1 , Precision ( X 1 , T 2 ) = , 3 3. Recall Recall. ( X 2 , T1 ) = 0 , Precision ( X 2 , T1 ) = 0 , ( X 2 , T 2 ) = 2 , Precision ( X 2 , T2 ) = 2 , 2. 2 2 2× × 3 2 F ( X 1 , T1 ) =. 2 2 + 3 2. 3. = 0.8 , 圖16. MF-tree vs. Naïve 的分類效果. F ( X 1 , T2 ) = 0.33 , F ( X 2 , T1 ) = 0 , F ( X 2 , T2 ) = 0 .8 ,. 5 .結論與未來工作 我們針對 MusicXML 格式的古典音樂物件,參考曲 式的階層性規則,建構出一棵具有樂理特徵、樂理 結構的曲式樹(MF-tree),並提出曲式樹的不相似 度計算法。最後,利用系統實作作為我們成果的展 示。 就音樂特徵擷取的概念來說,我們已經不再拘 泥於使用字串來表示音樂特徵,而進一步的利用結 構來呈現出音樂物件,建構出一棵樹狀結構的曲式 樹,並且,也藉由曲式樹得到音樂物件的不相似 度。不過,對於特徵的擷取以及不相似度計算的方 法,我們認為還有發展的空間。 未來的工作,除了先前提出的音樂特徵,我們 可以學習更多的音樂知識理論,有助於我們找到新 的音樂特徵。對於曲式樹的不相似度計算法,目前 節點的音樂序列之正規化,我們採用線性的方式。 不過,我們可以嘗試利用非線性的方式,將節點的 音樂序列給予正規化。考慮節點重疊的比例。在系. The overall F-measure =. ni. 3. 2. ∑ n max F ( X , T ) = 5 × 0.8 + 5 × 0.8 = 0.8 X. T. 。 ■. 4.2 實驗結果 我們採用同樣的實驗資料,將每一個音樂物件,擷 取出整首音樂音高分佈與音長分佈,將音高分佈與 音長分佈利用向量內積,計算音樂物件的相似度。 最後,再經由階層式分群得到分群的結果,並且, 也利用 F-measure 來評估分群的效果。我們將這兩 種 方 法 稱 之 為 Naïve 的 音 高 長 條 圖 ( pitch histogram,以 Naïve-PH 表示)以及 Naïve 的音長長 條圖(duration histogram,以 Naive-DH 表示),將. 10.

(11) ACM International Conference on Knowledge Discovery in Data Mining(SIGKDD), 1999.. 統方面,延伸目前的系統,提供更多的服務與應 用,系統執行的時間。計算子片斷節點不相似度的 兩種方法合併成一種,讓使用者多一個選擇。最 後,延續我們的實驗,找尋更多的實驗資料一起進 行評估,如:以風格作為分類根據的資料,作為我 們往後的實驗資料,來驗證我們的方法在音樂分類 上的效果。. [Lee02] Lee, Mong Li, Liang Huai Yang, Wynne Hsu, and Xia Yang, “XClust: Clustering XML Schemas for Effective Integration,” in Proc. of ACM International Conference on Information and Knowledge Management(CIKM), 2002. [Liu02] Liu, Dan, Nai-Yao Zhang, and Han-Cheng Zhu, “Form Recognition for Johann Strauss’s Waltz Centos Based on Music Features,” in Proc. of IEEE International Conference on Machine Learning and Cybernetics, 2002.. 參考文獻 [Bert04] Bertino, Elisa, Giovanna Guerrini, and Marco Mesoti, “A Matching Algorithm for Measuring the Structural Similarity between An XML Document and A DTD and its Applications,” Information Systems, Vol. 29, No. 1, March 2004.. [Miur03] Miura, Takao, and Isamu Shioya, “Similarity among Melodies for Music Information Retrieval,” in Proc. of ACM International Conference on Information and Knowledge Management(CIKM), 2003.. [Canf04] Canfora, Gerardo, Luigi Cerulo, and Rita Scognamiglio, “Measuring XML Document Similarity: A Case Study for Evaluating Information Extraction Systems,” in Proc. of 10th IEEE International Symposium on Software Metrics, 2004.. [Narm90] Narmour, E., The Analysis and Cognition of Basic Melodic Structures, The University of Chinese Press, Chicago, 1990.. [Delp]http://delphi.ktop.com.tw/loadfile.asp?TOPICID =13896274&CC=310786. [Reco] http://www.recordare.com/default.asp [Seif03] Seifert, Frank, and Wolfgang Benn, “Semantic Relationship and Identification of Music,” in Proc. of IEEE International Conference WEB Delivering of Music, 2003.. [Hsu01] Hsu, Jia-Lien, Chih-Chin Liu, and Arbee L. P. Chen, “Discovering Nontrivial Repeating Patterns in Music Data,” IEEE Transactions on Multimedia, Vol. 3, No. 3, September 2001.. [Shan02] Shan, Man-Kwan, Fang-Fei Kuo, and Mao-Fu Chen, “Music Style Mining and Classification by Melody,” in Proc. of IEEE International Conference on Multimedia and Expo.(ICME), 2002.. [Hsu04] Hsu, Jia-Lien, Arbee L.P. Chen, and HungChen Chen, “Finding Approximate Repeating Patterns form Sequence Data,” in Proc. of 5th International Conference on Music Information Retrieval, 2004.. [TaBa] http://www.tabazar.de/frame_e.htm. [Jone74] Jones, G. T., Music Theory, Harper & Row, Publishers, New York, 1974.. [Theo99] Theodoridis, S., and Koutroubas, K., Pattern Recognition, Academic Press, 1999.. [Krum90] Krumhansl, C. L., Cognitive Foundations of Musical Pitch, Oxford University Press, New York, 1990.. [Wai03] Wai, Man Szeto, and Man Hon Wong, “A Stream Segregation Algorithm for Polyphonic Music Databases,” in Proc. of 7th IEEE International Database Engineering and Applications Symposium (IDEAS), 2003.. [Kuo02] Kuo, Fang-Fei, and Man-Kwan Shan, “A Personalized Music Filtering System Based on Melody Style Classification,” in Proc. of IEEE International Conference on Data Mining(ICDM), 2002.. [Wang04] Wang, Lian, David Wai-lok Cheung, Nikos Mamoulis, and Siu-Ming Yiu., “An Efficient and Scalable Algorithm for Clustering XML Documents by Structure,” IEEE Transactions on Knowledge and Data Engineering, Vol. 16, No. 1, January 2004.. [Kuo04] Kuo, Fang-Fei, and Man-Kwan Shan, “Looking for New, Not Known Music Only: Music Retrieval by Melody Style,” in Proc. of the 4th ACM/IEEE-CS Joint Conference on Digital Libraries, 2004.. [Wold96] Wold, E. T. Blum, D. Keislar, and J. Wheaton, “Content-based Classification, Search, and Retrieval of Audio,” IEEE Multimedia Magazine, Vol. 3, No. 3, Fall 1996.. [Lars99] Larsen, Bjornar, and Chinatsu Aone, “Fast and Effective Text Mining Using Linear-Time,” in Proc. of. 11.

(12)

參考文獻

相關文件

本書總共分成六個章節: 〈第一章、擁有自信〉 ; 〈第二章、設定願景〉 ; 〈第三章、掌握行動力〉 ; 〈第四 章、建立人際關係〉 ;

因此,許多功能性的周邊商品也就因此而衍生,例如直接相關的錄音套件 組、收音機、高效能喇叭… 等;同時為了改善 iPod

在 Riemann 映射定理中指出, 任意兩個邊界多於一點的單連通域是全純等價的, 即存在 雙方 單值 (即單葉) 的全純映射, 將一個映為另一個。

雙壓力閥在何時才有壓力(訊號)輸出(A) 其中一個輸入口有壓力(訊號)輸出 (B) 經指定的一 個輸入口有壓力(訊號),並且另一個輸入口沒有壓力(訊號) (C)

[r]

如來使:經上說,誦持《法華經》、說《法華經》者,即使只是說一個偈頌,「當知 是人,則如來使、如來所遣、行如來事」 [註 19] ,「是人一切世間所應瞻奉,應以如來供養而

佛陀紀念館的本館除了一樓規劃有四個常設展廳外,二樓另設 有四個特展展廳,自 2011 年落成後,即與中國文物交流中心簽署五 年合作協議,

„ „ 利用電腦來安排與整合多種媒體,可產生 利用電腦來 更多樣化的作品。如某一段背景配樂在影 片中的哪個時間點開始播放、新聞播報中 子母畫面的相對位置、文字字幕出現在畫