李榮鋒,李學明,柳 楊
(北京郵電大學 數字媒體與設計藝術學院,北京 100876)
工尺譜是應用范圍最廣的中國傳統(tǒng)樂譜.工尺譜的鼎盛年代在清代,也是中國戲曲盛行的年代.而詞唱曲唱大量出現(xiàn)于當時盛行的昆劇中,因此詞曲的工尺譜便作為昆劇中一個重要部分被大量記載,現(xiàn)存有許多珍貴資料.據《中國音樂書譜志》[1]記載,清代至民國年間共約有1071種工尺譜曲本,現(xiàn)存的樂譜是中國傳統(tǒng)樂譜中保存最多的一種.工尺譜在解讀過程中最大的難題在于即興演奏.有關即興演奏,大部分研究者秉持的是一種雖不精確但又不失邏輯的一種觀點.其中,民族音樂研究學者奈特爾[2]認為,盡管影響同一首曲子每一次演奏的即興因素有很多,隨著時間和地點的不同還會有微妙的變化,然而這并不代表即興等同于沒有邏輯或者完全由演奏者根據個性隨機決定的演奏,而是依賴一系列約定俗成的、隱性的規(guī)則.關于工尺譜的即興演奏中的節(jié)奏問題,楊蔭瀏先生在《工尺譜淺說》[3]中明確地回答: “1. 如何決定一板中每個音的長短?有沒有簡捷的口訣可以很快學會?回答是: 沒有.只能結合民間音樂實際學習工尺譜才能學會.2. 每個音的長短可否由應用者自由決定?回答是: 不能.因為在同一曲調中,在這些細微節(jié)奏的處理上,在民間實際流行的唱法中,一般來說是比較固定的.而且在各個流派之間,大體上是一致的.”由此可見,中外學者有關傳統(tǒng)音樂中的即興部分的觀點是一致的.具體到工尺譜節(jié)奏翻譯問題上,關于同一拍內音符時值的分配,雖然工尺譜沒有公式化的規(guī)則,但是演奏者不能完全隨機決定,而需要通過一定的演奏經驗來進行合理的即興演奏.這種經驗通常需要通過長時間的口傳心授,并結合大量的演唱經驗才能獲得,這對本來就相對小眾的中國傳統(tǒng)音樂來說,更加讓學習者望而卻步.通過將工尺譜翻譯成在節(jié)奏上更加精確的簡譜或者五線譜,結果并不唯一但卻可以做到合理,這將會給工尺譜的學習者帶來極大的便利.
關于工尺譜符號的解讀,國內的音樂家已經做了多年的研究.早在20世紀50~60年代,老一輩音樂家楊蔭瀏[3],林石誠[4]就已經對工尺譜的符號規(guī)則作了細致的總結.吳曉萍[5]更在前輩們的基礎上,全面介紹了工尺譜在不同歷史時期以及不同樂種中的變體.許莉莉[6]則開始著手討論將工尺譜符號翻譯為五線譜的可行性,并就翻譯過程中相對確定的部分進行了公式總結,而對于不確定的部分(音符的時值分配)則只提到“需要一些唱曲經驗”.總之,盡管中國音樂家在工尺譜的理論和規(guī)則上面做了大量工作,但是對于工尺譜不確定的節(jié)奏,只能定性地判斷為: 需要根據演唱經驗進行決定,但有經驗的音樂家在關鍵細節(jié)處理上大致相同,并不是隨心所欲.
盡管經過幾代音樂家在曲譜出版方面的努力,我們已經可以看到許多經典昆曲、京劇劇目的簡譜以及五線譜版本,例如《振飛曲譜》[7]、《寸心書屋曲譜》[8]、《中國昆曲精選劇目曲譜大成》[9]已經出版.這些譜本均是通過人工翻譯的方式,由工尺譜的嫡傳音樂家經過多年的學習,花費大量心血譜寫而成.然而類似的翻譯譜本數量依然太少,現(xiàn)存的可以考證的中國傳統(tǒng)曲譜中,絕大多數仍然只有工尺譜版本未被翻譯.能正確解讀工尺譜的專家已經越來越少,工尺譜作為一種非物質文化遺產,其傳承正面臨嚴峻考驗.
目前,利用信息技術處理工尺譜的研究和探索相對較少,并且主要集中在工尺譜的紙質樂譜的數字化上面.例如陳榮鑫[10]為福建南音工尺譜設計了排版軟件,可以使用電腦進行工尺譜的輸入以及排版.陳根方對工尺譜紙質樂譜的數字化,即光學樂譜識別(Optical Music Recognition, OMR)方面做了大量研究,包括工尺譜的音樂信息提取以及有效信息提取的工作[11-13].其中文獻[11-12]分別利用經典的遺傳算法、BP(Back Propagation)網絡和K近鄰(K-Nearest Neighbors, KNN)法等模式識別技術對清代《九宮大成南北詞宮譜》[14]和《納書楹曲譜》[15]的部分工尺譜進行音樂信息識別,但正確識別率較低;而文獻[13]則利用層次聚類分析方法對工尺譜的有效信息進行提取,有效信息的提取正確率達到了90%以上.工尺譜的OMR研究工作為紙質工尺譜的數字化提供了重要技術支持,也是利用數據和統(tǒng)計模型進行工尺譜自動翻譯的前提.
在樂譜自動翻譯問題上,由于節(jié)奏時值分配不明確屬于中國傳統(tǒng)音樂的獨有問題,因此目前還沒有相應的國外研究.由于音樂學與計算機科學之間的知識鴻溝,國內在這個問題上的研究者也極少.周昌樂[16]在古琴的演奏法與記譜方面進行數字化研究,并探討了古琴的減字譜的自動翻譯問題.他主要探討的是古琴打譜過程中指法編配的合理性,并未使用大量數據進行實證.作者在工尺譜自動翻譯問題上做過一些前期研究.文獻[17]探討了影響音符時值分配的因素,并得出其歌詞的聲調具有決定性作用的結論;文獻[18-19]分別嘗試使用序列標注模型(隱馬爾可夫模型、條件隨機場模型)以及貝葉斯分類器進行工尺譜自動翻譯;文獻[20]探討了序列模型中特征的音樂語義,并提出了一種基于時間序列的自動翻譯方法;文獻[21-22]將用于翻譯工尺譜的序列模型用于使用古詩詞進行自動作曲.這些研究的數據來自錢仁康先生編寫的《請君試唱前朝曲》[23].該著作翻譯了《碎金詞譜》[24]中的工尺譜形式的唐詩宋詞,并編寫成了簡譜(等價于五線譜)的形式.盡管作者在這66首曲子的數據庫上取得了90%以上的正確率,然而這些研究依然停留在較淺層階段,具體存在如下問題:
(1) 實驗數據過少,很難證明在一般情況下該模型的通用性;
(2) 這些研究尚停留在就純粹的數據進行分析的階段,并沒有對其中的音樂內涵進行深入探討;
(3) 訓練和評測也是基于簡單的符號比對,演唱者在同樣的一段工尺譜符號的一些即興發(fā)揮,均會造成訓練模型和評測結果的崩潰.
綜上所述,關于工尺譜的自動翻譯研究,雖然已經有一些理論支持以及樂譜數字化的前期研究,但涉及音符時值分配這個關鍵問題的研究工作則剛剛開始,尚待進一步展開.本文主要針對工尺譜對同一段符號的即興演奏問題進行展開.
本文以昆曲、京劇以及古樂器演奏中所使用的工尺譜作為研究對象,研究工尺譜符號,包括音高、節(jié)拍、歌詞及其讀音的組合所產生的音樂學及語言學的可量化的語義,借鑒自然語言處理中運用成熟的基于深度神經網絡的序列轉換模型,建立工尺譜自動翻譯系統(tǒng).同時,利用歌詞語言學上的格律與音符在音樂學上的格律兩者之間的共性與差異性,建立兩者的低維空間映射,以應對自動翻譯時訓練數據不足的問題.針對演唱者的即興演唱問題,利用數據驅動方法,自動生成基于每一拍實際演唱音符的變異字典,所得結果為評測模型的正確性做進一步的準備工作.具體內容如下:
(1) 如何對工尺譜音符提取具有音樂學即語言學語義的特征,以建立高正確率的自動翻譯模型?
在工尺譜符號中,能夠與節(jié)奏型對應的特征有很多,包括與音高相關的特征(如音高、音程、調性),與歌詞相關的特征(讀音、聲調),如何選擇與節(jié)奏型最相關的特征是本問題的關鍵.具體翻譯過程中,由于需要考慮上下文關系,因此除了特征選擇之外,還需要對上下文依賴關系進行建模,例如可以考慮一階模型(每一板只受相鄰的一板影響)或者高階模型(每一板受相鄰的若干板影響),可以考慮因果系統(tǒng)(每一板只受前面的板影響)或者非因果系統(tǒng)(每一板受前后多板影響).
(2) 如何應對工尺譜翻譯的訓練數據不足引起的模型訓練問題?
具體到每一板的音符組合中可能有1~6個音符,每個音符的音高可能值從合到乙10個音符以及它們的高八度低八度版本共30個音名(樂器曲則能達到50個),因此最多有可能有306種音符組合模式.記錄音樂實際演奏過程(即采風)本身是一件代價昂貴的事情,訓練過程中,所收集的工尺譜實際演唱數據不可能涵蓋所有的音符組合,而自然語言處理中的大數據深度學習模型所需要的數據量在本研究中并不具備.因此這就要求抓住音符組合在音樂學和語言學語義上的根本差別,通過有限的數據來對訓練數據中沒有出現(xiàn)的音符組合進行判定.合理利用音樂學和語言學上已有的一些定性結論,建立工尺譜特征符號的一個既定量又具有音樂學、語言學解釋性的度量空間,并將特征空間映射到這個度量空間,將可以有效降低維度,以根據度量涵蓋所有可能的音符組合情況.
(3) 如何進行變異性建模,以模擬演唱者實際演唱中的即興處理?
即興處理是中國傳統(tǒng)音樂區(qū)別于西方古典音樂的典型特點.工尺譜自動翻譯模型必須能夠模擬演唱者在實際演唱中對個別音符的長短進行靈活處理,甚至增加,舍去個別音符的情況.具體來講,就是要對滿足一定條件的音符組合統(tǒng)計其在音樂學上可能即興處理的情況,通過建立即興處理當中的變異字典進行有效的建模.
本文的研究框架如圖1所示.
圖1 總體研究的技術流程圖Fig.1 Technical flow chart of overall research
本文總體研究的技術路線如下: 首先,將工尺譜按照去腰、分拍、分節(jié)和轉寫的步驟,以板為單位轉換成序列數據;其次,選取合適的特征,根據音樂學以及語言學的格調理論,建立度量空間,并將原音符特征映射為低維特征;同時,選取合適的特征,根據即興演奏的結果建立變異字典,在進行節(jié)奏型識別的同時獲取即興特征;最后,用低維特征、節(jié)奏型以及即興特征建立循環(huán)深度神經網絡,完成工尺譜自動翻譯,輸出五線譜.
根據圖1的研究框架,工尺譜即興演奏系統(tǒng)的各個流程如下:
(1) 基于度量空間的音樂、語言格調特征學習
基于度量空間的音樂、語言格調特征學習算法的示意圖如圖2所示.
圖2 基于度量空間的音樂、語言格調特征學習算法的示意圖Fig.2 Schematic map of music and language style feature learning algorithms based on metric space
(2) 即興演奏字典的構建
接下來我們對即興演奏中的變異構建變異字典.
如果演奏者某一板所演奏的音符發(fā)生了音符的增加及減少,或者頭字尾字錯板(音符不符合實板和虛板的要求),則稱之為變異.在本文中,我們只討論變異所帶來的即興演奏.我們總結了錢仁康先生的《請君試唱前朝曲》中的變異情況,共有8種增刪音符(兩譜字3種,三譜字2種,四譜字3種),及頭音錯板,尾音錯板2種情況,共10種變異情況.因此即興演奏特征可以表示為1維標簽形式f∈{0,1,2,…,9}.
(3) 基于循環(huán)深度神經網絡的工尺譜自動翻譯系統(tǒng)
該系統(tǒng)與自然語言處理中的序列匹配模型相似,主要是用于匹配(1),(2)的輸出結果: 低維的可度量的語言格調特征v以及即興特征f.其中,在進入循環(huán)深度網絡之前,我們額外使用2個深度網絡D={d1,d2,…,dL}和C={c1,c2,…,cM},將低維特征以及即興特征轉化為節(jié)奏型特征{S1,S2,…,SN}.
工尺譜自動翻譯的循環(huán)深度神經網絡模型如圖3(第318頁)所示.
實驗中,輸入的低維特征為(1)中所述的2維特征,即興特征為(2)中的一維標簽.網絡D與C均選擇了2層網絡,并使用了tensorflow的tf.nn.rnn_cell模塊進行訓練.
在實驗中,我們的工尺譜翻譯數據來自錢仁康先生所著的《請君試唱前朝曲》[11].該書翻譯了《碎金詞譜》[12]中的96首曲譜,大部分為唐宋以來的著名古詞.我們選擇了其中的60首具備板眼符號的曲目作為時間序列模型的訓練與測試數據.目前該數據使用人工錄入的方式,并存儲在MySQL數據庫.該數據庫包含了969個樂句,6347個拍子.我們將整個數據集隨機分成兩組(在同一樂句的拍子分在同一組),分別用于訓練與測試.其中訓練集的拍子數為3174拍,測試集的拍子數為3173拍,不同音符數的拍子數量統(tǒng)計見表1(第318頁).
我們以晏殊的浣溪沙(圖4,第318頁)為例,經過深度網絡處理后生成的五線譜如圖5(第318頁)所示.
盡管本文的工尺譜即興演奏模型的音樂學內涵仍待進一步挖掘,但至少在人工智能的新時代,使用機器學習的方式來處理樂譜學問題是一個完全值得嘗試的方向,具體體現(xiàn)在: 該模型可以將原本正在流逝的通過口傳心授代代相傳的寶貴經驗得以保存,為研究以工尺譜為基礎的中國傳統(tǒng)音樂,例如昆曲、京劇以及古琴、南音等傳統(tǒng)器樂曲的理論研究提供有力支持.通過本文的模型,可以在短時間內將大量的工尺譜翻譯為五線譜.學生只需接受過義務教育中基本的五線譜基礎即可入門,大大降低了學習門檻.因此,該研究將為中國傳統(tǒng)音樂進入基礎音樂教育提供了可能性,使中國傳統(tǒng)音樂教學不再僅存于專業(yè)音樂院校中.
圖3 工尺譜自動翻譯的循環(huán)深度神經網絡模型Fig.3 Recurrence depth neural network model for automatic translation of Gongchepu
圖4 晏殊《浣溪沙》的工尺譜Fig.4 The Gongchepu of Yan Shu’s “Huanxi Sha”
表1 《請君試唱前朝曲》的工尺譜數據集
圖5 晏殊《浣溪沙》的五線譜翻譯Fig.5 Staff of Yan Shu’s “Huanxi Sha”