第三章、 系統分析與設計方法
3.1 系統流程
本研究所提出之系統流程如圖 18 所示,包含了七個流程與描述資訊,在流程當中 所有產生的描述資訊均會依據 IEEE 1599 標準整合描述,再存入 IEEE 1599 描述檔資料 庫中。
圖 18 系統流程圖
透過圖 18 所示,本系統有確立成果目標、搜尋符合目標的音樂片段、MusicXML 曲譜搜尋/轉換、音樂特徵擷取、根據特徵自動作曲、成果分析、應用與評估等七個階段,
並在每一階段執行結束後皆會產生描述資訊,包含成果目標描述資訊、音樂異質描述資 訊、樂譜描述資訊、特徵描述資訊、自動作曲成果描述資訊、成果分析描述資訊、應用 與評估描述資訊等七種描述資訊。惟 IEEE 1599 標準為整合描述異質資訊之用,若要記 載自動作曲相關資訊,必須擴充及修正其 XML 文件大綱。我們將標準中的文件大綱稍 作修改,以符合本系統開發需求。我們透過修正式 IEEE 1599 標準記載流程中所產生的 所有紀錄,再存放於 IEEE 1599 資料庫當中,系統流程於 3.1.1 至 3.1.7 中詳細說明。
3.1.1 確立成果目標
在本系統的目標確立階段,必須先確立產出成果必須滿足的成果目標,倘若沒有定 義明確的成果目標,系統產出成果將無法有效地被客觀的評估。例如,我們可以定義成 果目標為,產出的音樂必須符合特定曲風或情緒,或是特定統計方式下必須有特定比例 的受測者能夠同意已定義的成果目標。我們可以將確立完成的成果目標定義在修正式 IEEE 1599 標準的一般描述層當中,其新增元素內容模型如圖 19 所示。
圖 19 成果目標描述內容模型
3.1.2 蒐集符合目標音樂片段
在確立明確的成果目標後,則必須廣泛蒐集符合訂立的目標音樂片段。此階段目標 為,我們可以透過蒐集符合目標需求的音樂片段,並以能夠達到第一階段確立的曲風及 情緒為要件,在不限制來源的情況下蒐集符合條件的音樂及其異質資訊,避免有所篩選 而造成偏差。最主要的原因為,倘若蒐集的音樂片段過度集中在特定作曲家或是特定歌 手,容易造成在特徵擷取階段,擷取出的特徵可能會呈現出較為偏頗的規則。我們蒐集 到的音樂片段,可以全部紀錄在修正式 IEEE 1599 標準中的一般描述層。related_files 元 素下可以包含多個 related_file 元素,以屬性方式紀錄各異質資訊的資訊,包含檔案名稱、
檔案格式、相關描述、相關備註及唯一識別碼,其內容模型如圖 20 所示。
圖 20 相關檔案記載於一般描述層之內容模型
3.1.3 MusicXML 曲譜搜尋/轉換
在確立成果目標並蒐集完符合其目標的音樂素材之後,素材當中需要包含音樂的原 始樂譜檔案進行分析,倘若僅蒐集到非數位樂譜檔案,則要透過人工或其他工具轉換為 數位樂譜檔案。音樂素材需要包含樂譜的原因有二點:(1) 由於聲音訊號檔案相較於原 始音樂樂譜檔案,相對欠缺音樂內涵意義。(2) 聲音訊號檔案直接轉換為電子樂譜易受 到音樂中其他聲響干擾,轉換為樂譜相當不易。
故在此階段當中,倘若取得作曲者所提供的原始樂譜,或經其他具有公信力的專家 或出版社所提供的樂譜,對於後續分析階段較能得到與原曲相貼近的特徵。除此之外,
雖然 IEEE 1599 標準當中的邏輯層能夠記載樂譜資訊,但由於目前尚無軟體支援從 IEEE 1599 描述檔案當中讀取其樂譜。本系統採用目前大部分商業軟體均支援的 MusicXML 格式記載樂譜資訊,再將 MusicXML 檔案記載於修正式 IEEE 1599 標準中的一般描述層,
其餘圖像檔案格式的樂譜則記錄在樂譜層。譜號層透過 graphic_instance_group 元素的子 元素 graphic_instance 記載,position_in_group 屬性紀錄該譜物件於其 group 的相對位置,
其他屬性則記錄檔案名稱、檔案格式、編碼格式、備註等資料,其資料模型如圖 21 所 示。
圖 21 相關樂譜記載於譜號層之內容模型
3.1.4 音樂特徵擷取
在音樂特徵擷取流程當中,目標為將流程中蒐集的 MusicXML 檔案,進行分析以得 到音樂特徵。本系統在此階段僅定義抽象流程,而不定義任何實作方式,但擷取完成之 特徵必須包含量化資訊,否則無法適用於本系統之架構。音樂特徵擷取方式繁多,針對 不同需求可能必須依賴不同分析方法,而產生出不同分析觀點的結果。
例如,我們可以將 MusicXML 樂譜檔案剖析完畢後,紀錄所有和弦進行的狀態改變,
再以和弦為單位統計小節中出現的旋律音高、音長之變化,再以 Markov Chain 為基礎 建立為模型。除了以和弦為單位統計之外,亦能夠以樂句為單位切割,統計每一樂句的 音高、音長資訊作為特徵,當作重新產生新音樂的規則。當音樂特徵擷取完成後,我們 可以將產生的結構描述檔案儲存在結構層。在結構層當中,於 analysis 的當中如圖 22 所示。
圖 22 音樂特徵記載於結構層之內容模型
3.1.5 根據特徵自動作曲
在根據特徵自動作曲流程中,目標為將量化分析得到的特徵,建立為模型供自動作 曲,並產生出新的音樂。假設我們的音樂特徵為和弦進行的機率模型,以及各和弦下旋 律的音高、音長機率模型,即可以依照該機率模型產生出新的音樂,並以 MusicXML 方 式記載其音樂樂譜,再標示於修正式 IEEE 1599 標準中的一般描述層當中,如圖 20 所 示。在自動作曲的過程當中,可以依據確立的目標調整原創性與蒐集的音樂片段之相似 程度。除此之外,自動作曲可以依據特徵產生出無限首新的音樂,因此可以依據確立目 標定義適應性函數,在自動作曲過程中就先行衡量其結果的好壞程度,避免將該音樂特 徵自身缺陷所導致的較差結果。
3.1.6 成果分析
在自動作曲階段結束之後,必須有客觀標準評估該成果是否符合系統當中在第一階 段所確立的目標。在成果分析階段,可以針對產生出的音高與音長進行分析,以得到量 化特徵。由於音樂與悅耳程度的關係,目前尚難以建立一套描述公式,判定產生出來的 音樂好聽與否。但是根據[58]的論文所提出的觀點,能夠藉由統計旋律的特徵,能夠協 助我們在未來建立一套客觀的評估標準,我們可以透過我們將評估的成果以 XML 為格 式編碼,再標示於修正式 IEEE 1599 標準的結構層,如圖 22 所示。
3.1.7 應用與評估
在評應用與評估階段當中,最重要的目標為大規模廣泛蒐集其他使用者的反饋,再 由專家學者針對其反饋檢視,進而修正系統第二階段所蒐集的音樂、第三階段的自動作 曲演算法。
將自動作曲成果儲存於資料庫當中,並以開放式介面供各種開發者或有興趣的人或 團體進行應用。使用者所反饋的資料,我們以 XML 格式編碼,再標示於修正式 IEEE 1599 標準的結構層。