詹雯 河南師范大學(xué)計(jì)算機(jī)與信息工程學(xué)院
近年來(lái),很多學(xué)者開(kāi)始嘗試以進(jìn)化算法進(jìn)行測(cè)試樂(lè)譜編寫的研究,而且已經(jīng)成為了該領(lǐng)域的研究熱點(diǎn)。該方法是收到自然進(jìn)化發(fā)展思想的影響而逐步形成的,屬于一種全局概率收縮。近年來(lái),國(guó)內(nèi)外很多學(xué)者都開(kāi)始在音樂(lè)創(chuàng)新作曲中嘗試運(yùn)用進(jìn)化算法,而且取得的成果也是十分可喜的。然而,由于基于進(jìn)化算法得到測(cè)試數(shù)據(jù),要求全部的測(cè)試數(shù)據(jù)都需要進(jìn)行插裝運(yùn)行,進(jìn)而實(shí)現(xiàn)對(duì)測(cè)試數(shù)據(jù)性能的有效分析,這就導(dǎo)致了所需耗費(fèi)的時(shí)間是較長(zhǎng)的。
遺傳算法是一類借鑒生物界的進(jìn)化規(guī)律(適者生存,優(yōu)勝劣汰遺傳機(jī)制)演化而來(lái)的隨機(jī)化搜索方法。它是由美國(guó)的J.Holland教授1975年首先提出,其主要特點(diǎn)是直接對(duì)結(jié)構(gòu)對(duì)象進(jìn)行操作,不存在求導(dǎo)和函數(shù)連續(xù)性的限定;具有內(nèi)在的隱并行性和更好的全局尋優(yōu)能力;采用概率化的尋優(yōu)方法,能自動(dòng)獲取和指導(dǎo)優(yōu)化的搜索空間,自適應(yīng)地調(diào)整搜索方向,不需要確定的規(guī)則。遺傳算法的這些性質(zhì),已被人們廣泛地應(yīng)用于組合優(yōu)化、機(jī)器學(xué)習(xí)、信號(hào)處理、自適應(yīng)控制和人工生命等領(lǐng)域。它是現(xiàn)代有關(guān)智能計(jì)算中的關(guān)鍵技術(shù)。
對(duì)于音樂(lè)創(chuàng)新作曲問(wèn)題,從本質(zhì)上是可將其歸入到測(cè)試數(shù)據(jù)問(wèn)題的,可將其概述為,對(duì)于測(cè)試程序,給定其特定的目標(biāo)路徑,要求從程序輸入空間中找尋能夠使得輸入之后經(jīng)過(guò)目標(biāo)路徑的測(cè)試數(shù)據(jù)。為了能夠得到符合要求的測(cè)試數(shù)據(jù),所需要經(jīng)歷的時(shí)間是較長(zhǎng)的,對(duì)該問(wèn)題的自動(dòng)求解,能夠使得測(cè)試人員所需承擔(dān)的工作量大大降低,而且音樂(lè)創(chuàng)新作曲效率也能夠得到極大提高,進(jìn)而推動(dòng)軟件質(zhì)量的提高。
在近年,將進(jìn)化算法運(yùn)用到音樂(lè)創(chuàng)新作曲中,已經(jīng)成為了當(dāng)前音樂(lè)創(chuàng)新作曲領(lǐng)域中的重要研究方向,而且該方法的潛力也是十分巨大的。該方法的實(shí)現(xiàn)首先要求能夠確定最佳的適應(yīng)值函數(shù),進(jìn)而使得測(cè)試數(shù)據(jù)生成問(wèn)題能夠進(jìn)行轉(zhuǎn)換,形成等價(jià)的函數(shù)優(yōu)化問(wèn)題。而且進(jìn)化階段中,要求插裝后的程序在輸入測(cè)試數(shù)據(jù)后才可運(yùn)行,以此方式獲得音樂(lè)節(jié)拍,因此所產(chǎn)生的程序運(yùn)行代價(jià)是較大的。目前很多學(xué)者都對(duì)音樂(lè)創(chuàng)新作曲進(jìn)行了深入研究,取得的研究成果也是眾多的。在本文中對(duì)于音樂(lè)節(jié)拍以遺傳進(jìn)行有效模擬,以此方式使得程序運(yùn)行時(shí)間得以有效控制,故此,進(jìn)行測(cè)試樂(lè)譜編寫時(shí),僅需利用較為基本的方法即可,由于在被測(cè)程序中,所對(duì)應(yīng)的目標(biāo)音樂(lè)節(jié)拍并不是唯一的,而每次算法運(yùn)行,僅能夠?qū)ζ渲械囊环N音樂(lè)節(jié)拍進(jìn)行測(cè)試,由此得到對(duì)應(yīng)音樂(lè)節(jié)拍的測(cè)試數(shù)據(jù),因此音樂(lè)節(jié)拍數(shù)量對(duì)應(yīng)著算法需要進(jìn)行的次數(shù)。
遺傳算法針對(duì)以往音樂(lè)計(jì)算研究中使用符號(hào)特征的不足(計(jì)算機(jī)更容易理解數(shù)字表達(dá)),以及GAN的優(yōu)勢(shì),訓(xùn)練預(yù)測(cè)數(shù)據(jù)為作者下載的古典MIDI音樂(lè),使用Tone length, Frequency, Intensity 和Timing作為特征。生成網(wǎng)絡(luò)結(jié)構(gòu)為2層單向LSTM,對(duì)抗網(wǎng)絡(luò)為2層雙向LSTM,每次生成指定長(zhǎng)度×88音階數(shù)據(jù)。
首先,要求能夠得到一定的測(cè)試數(shù)據(jù),可將程序進(jìn)行插裝以獲得真實(shí)適應(yīng)值,由此得到實(shí)驗(yàn)需要的樣本數(shù)據(jù)。隨后,通過(guò)樣本使得遺傳得到訓(xùn)練,當(dāng)訓(xùn)練完成之后以這些遺傳來(lái)對(duì)音樂(lè)節(jié)拍進(jìn)行大致評(píng)估,從中選擇優(yōu)秀的個(gè)體,即那些具有較好適應(yīng)值的,隨后進(jìn)行程序運(yùn)行以此方式從中得到實(shí)際的適應(yīng)值水平。此外,因?yàn)樵诒疚姆椒ㄖ袑?duì)于音樂(lè)節(jié)拍是以遺傳進(jìn)行的評(píng)估,故此,如果目標(biāo)音樂(lè)節(jié)拍是相同的,只需要在初始階段對(duì)遺傳進(jìn)行訓(xùn)練,在后期的運(yùn)行中是無(wú)須對(duì)其進(jìn)行更新的。為了提高分析結(jié)果的科學(xué)性,我們需要對(duì)于各項(xiàng)分析指標(biāo),包括時(shí)間、覆蓋率等都利用T檢驗(yàn)展開(kāi)了分析。而且還需要對(duì)時(shí)間和評(píng)價(jià)次數(shù)采取歸一化處理,以確保全部的程序所得到的結(jié)果處于相同的數(shù)量級(jí)上。本文所提出的方法能夠確保算法性能的基礎(chǔ)上使得算法時(shí)間得到有效控制,降低時(shí)間消耗,尤其是在大規(guī)模程序中,這種時(shí)間優(yōu)勢(shì)更加突出,是能夠確保時(shí)間得到極大節(jié)省的。
在本文中則通過(guò)遺傳將被測(cè)音樂(lè)節(jié)拍進(jìn)行了替代,以此方式來(lái)評(píng)估音樂(lè)節(jié)拍,由此大大減少了由于程序運(yùn)行而導(dǎo)致的時(shí)間代價(jià)。而且本文方法對(duì)于規(guī)模較大、結(jié)構(gòu)較為復(fù)雜的程序具有的優(yōu)勢(shì)更加突出。