iT邦幫忙

2021 iThome 鐵人賽

DAY 25
4
AI & Data

人工智慧在音樂領域的應用系列 第 25

Day 25: 人工智慧在音樂領域的應用 (AI作曲 - 長短期記憶網路 LSTM )

  • 分享至 

  • xImage
  •  

昨天我們聊到了RNN與馬可夫模型在作曲上因為缺乏長期記憶的關係,導致在創作音樂上無法有效的理解曲式與結構而導致創作出來的音樂比較雜亂無章,今天我們就先來聊聊 長短期記憶網路(Long Short Term Memory Network, LSTM) 是怎麼解決這個問題的。

長短期記憶網路(Long Short Term Memory Network, LSTM)

我們在使用RNN來分析資料(文字、語音、音樂片段)時,其中會有一項參數用來表示我們對於每一層資料的重要性的指標,我們在這裡稱為w,如果我們把w的值設置成一個大於1的數字,例如1.1,那麼表示對於越久遠的資料,每一層的重要性都會乘上1.1,所以從結果往回推論的話,每一層都乘上1.1後,隨著層數越來越多,到最後最久遠的資料的重要性已經被放大成了無限多倍,而導致RNN對於越久遠的資料越重視,這就是所謂的梯度爆炸問題 (Exploding Gradient Problem)。想像一下今天你在作曲的時候,你正在思考下個音符或是下個小節該怎麼創作的時候,這時候你卻跑去參考第一個音符或是第一個小節來當作你當下作曲的指標,這就是因為隨著梯度爆炸而導致越前面/久遠的資料重要性大大增加,顯然在大部分的時候這都是不合理的;
如若我們將的值設定為小於1的數字,例如0.9,那麼表示對於越久遠的資料,每一層的重要性都會乘上0.9,所以從結果往回推論的話,每一層都乘上0.9後,隨著層數越來越多,到最後最久遠的資料的重要性已經幾乎被無視,這就是我們提到的缺乏長期記憶的問題,也稱為梯度消失問題 (Vanishing Gradient Problem)

https://ithelp.ithome.com.tw/upload/images/20211010/20140556KiKzUlB39I.png

而LSTM為了解決這個問題,在神經網路模型裡面加了一個記憶的設定,而這個記憶又由三個控制閥(Gate) 來決定是否使用。
1. 輸入閥 (Iuput Gate)
2. 遺忘閥(Forget Gate)
3. 輸出閥 (Ouput Gate)

https://ithelp.ithome.com.tw/upload/images/20211010/20140556wQU2fayMai.png

簡單一點解釋就是,LSTM會透過這三個控制閥來控制記憶的設定,如果當下接收到的文字/語音/音樂 訊息還維持在最一開始接收到的主題範圍內,則一開始的主題會保存在長期記憶裡面,不論接下來收到多少其他的訊息都不會遺忘,直到接收到新的與原先主題完全沒有關聯性的訊息才會更新長期記憶。
我們再次請出主計長的蚵仔麵線來當範例:
https://ithelp.ithome.com.tw/upload/images/20211010/20140556D3QGvEznRB.png

"蚵仔麵線是台灣有名的小吃,但是我們還有鹽酥雞臭豆腐大腸包小腸米粉貢丸珍珠奶茶炸雞腿烤雞腿油蔥雞腿燒肉粽蚵仔煎豆漿豆花,
不過還是希望可以找到一碗20元的_ _ _ _"

前面我們說到RNN對於以上這段話的理解,由於已經被後面太多的資訊影響,導致RNN無法正確地回答出一碗20元的到底是什麼;而LSTM透過記憶的設定,在一開始就將蚵仔麵線放入記憶之中,在LSTM判斷對話進入另一個主題之前,蚵仔麵線都會一直保存著,因此雖然後面突然開始報起了菜名,也不會影醒LSTM最後順利地回答出一碗20元的蚵仔麵線

透過這樣的控制閥記憶的設定,我們可以讓LSTM對於音樂的曲式與架構有了更好的理解,不論是在針對主旋律的創作上還是分析和弦的進行走向,都能大大的克服前述RNN與馬可夫模型的問題,也因此利用LSTM作曲成為了許多主流研究的方法。

https://ithelp.ithome.com.tw/upload/images/20211010/20140556z25iRoezTH.png

那麼明天我們來聊聊對於Creative特別有一套的生成對抗網路 (Generative Adversarial Network, GAN),Day 26見。


上一篇
Day 24: 人工智慧在音樂領域的應用 (AI作曲- RNN作曲)
下一篇
Day 26: 人工智慧在音樂領域的應用 (AI作曲 - 生成對抗網路 Gan (幹) )
系列文
人工智慧在音樂領域的應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言