亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

采用深度學(xué)習(xí)算法為Spotify做基于內(nèi)容的音樂(lè)推薦

gougoujiang / 3121人閱讀

摘要:以下為譯文年夏天,我在網(wǎng)絡(luò)音樂(lè)平臺(tái)紐約實(shí)習(xí),致力于使用卷積神經(jīng)網(wǎng)絡(luò)做基于內(nèi)容的音樂(lè)推薦。深度學(xué)習(xí)預(yù)測(cè)聽(tīng)眾喜好基于音頻信號(hào)的音樂(lè)推薦。深度學(xué)習(xí)預(yù)測(cè)聽(tīng)眾喜好去年十二月,我和同事在上發(fā)表了一篇關(guān)于這個(gè)主題的論文,題目是基于內(nèi)容的深度音樂(lè)推薦。

本文是比利時(shí)根特大學(xué)(Ghent University)的Reservoir Lab實(shí)驗(yàn)室博士研究生Sander Dieleman所撰寫(xiě)的博客文章,他的研究方向是音樂(lè)音頻信號(hào)分類(lèi)和推薦的層次表征學(xué)習(xí),專(zhuān)攻深度學(xué)習(xí)和特征學(xué)習(xí)。以下為譯文:

2014年夏天,我在 網(wǎng)絡(luò)音樂(lè)平臺(tái)Spotify (紐約)實(shí)習(xí), 致力于使用卷積神經(jīng)網(wǎng)絡(luò) (convolutional neural networks)做基于內(nèi)容的音樂(lè)推薦。本文將介紹我使用的方法,并展示一些初步的結(jié)果。

概述

這篇文章很長(zhǎng),所以先對(duì)各節(jié)的內(nèi)容做一個(gè)概述:

協(xié)同過(guò)濾(Collaborative filtering)一個(gè)簡(jiǎn)單的介紹,包括它的優(yōu)缺點(diǎn)。

基于內(nèi)容的推薦(Content-based recommendation)在不能得到使用數(shù)據(jù)時(shí),該怎么辦。?

深度學(xué)習(xí)預(yù)測(cè)聽(tīng)眾喜好(Predicting listening preferences with deep learning)基于音頻信號(hào)的音樂(lè)推薦 。

效率提升(Scaling up)有關(guān)我在Spotify訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)的一些細(xì)節(jié)。

分析(Analysis):它在學(xué)習(xí)什么? ?卷積神經(jīng)網(wǎng)絡(luò)音樂(lè)學(xué)習(xí)一瞥,包含多個(gè)音頻示例。

可以應(yīng)用在哪里(What will this be used for)?我的工作成果的一些應(yīng)用潛力。

今后的工作 (Future work)

結(jié)論(Conclusion)

協(xié)同過(guò)濾

網(wǎng)絡(luò)音樂(lè)平臺(tái)Spotify傳統(tǒng)上 主要依靠協(xié)同過(guò)濾 驅(qū)動(dòng)音樂(lè)推薦。 協(xié)同過(guò)濾 的原理是根據(jù)歷史使用數(shù)據(jù)確定用戶的喜好。 例如,如果兩個(gè)用戶收聽(tīng)大致相同類(lèi)型的歌曲,他們的喜好大概就是類(lèi)似的。反過(guò)來(lái),如果兩支歌曲由同一組用戶所收聽(tīng),這些歌曲聽(tīng)起來(lái)很可能是相似的。這種信息可以被用來(lái)做推薦。

純粹的協(xié)同過(guò)濾方法,除了相關(guān)的消費(fèi)模式信息以外,不涉及被推薦物品本身的任何信息:也就是它是內(nèi)容無(wú)關(guān)的(content-agnostic)。這個(gè)特點(diǎn)使得這種方法可以有非常廣泛的應(yīng)用:例如,同樣的一個(gè)模型就可以用于推薦書(shū)籍、電影或者音樂(lè)。

不幸的是,這個(gè)特點(diǎn)也導(dǎo)致了它較大的不足。由于依據(jù)使用數(shù)據(jù),流行物品就會(huì)比非流行物品更容易得到推薦,因?yàn)榍罢哂懈嗟氖褂脭?shù)據(jù)。而這通常是剛好與我們所希望的相反。由于同樣的原因,這樣的推薦常常是很無(wú)聊的,而且是可預(yù)知的。

特定到音樂(lè)還有另一個(gè)問(wèn)題,就是相似使用模式的內(nèi)容異質(zhì)性(heterogeneity of content with similar usage patterns)。例如,聽(tīng)眾可能一次聽(tīng)過(guò)了整張專(zhuān)輯,而專(zhuān)輯中可能包含引曲、終曲、 插曲、 翻唱曲和混音曲等。它們也許不都是該藝術(shù)家典型的作品,因此不是一些好的推薦??墒菂f(xié)同過(guò)濾算法不能解決這個(gè)問(wèn)題。

而它較大的問(wèn)題,可能還在于不能推薦新的和非流行的歌曲:如果沒(méi)有可供分析的使用數(shù)據(jù),協(xié)同過(guò)濾方法就會(huì)失效。這就是所謂的冷啟動(dòng)問(wèn)題。 我們希望新音樂(lè)能夠在發(fā)行后的第一時(shí)間獲得推薦,而且我們也希望能向聽(tīng)眾介紹那些他們從來(lái)沒(méi)有聽(tīng)過(guò)的很棒的樂(lè)隊(duì)。為了實(shí)現(xiàn)這些目標(biāo),我們就需要有不同的方法。

基于內(nèi)容的推薦

Spotify根據(jù)幾個(gè)月之前從智能音樂(lè)平臺(tái) The Echo Nest 得到的反饋信息,最近已經(jīng)開(kāi)始考慮在推薦管道中結(jié)合其它信息源,以減少這些問(wèn)題??梢詭椭魳?lè)推薦的信息有很多種:比如標(biāo)簽,藝術(shù)家和專(zhuān)輯信息,歌詞,從互聯(lián)網(wǎng)上挖掘到的文稿(評(píng)論、訪談...),以及音頻信號(hào)本身。

在這些信息源中,音頻信號(hào)可能是最難有效利用的。一方面由于音樂(lè)音頻信號(hào)之間的語(yǔ)義差別(semantic gap)很大,另一方面影響聽(tīng)眾喜好的因素又多種多樣。有的信息可以比較容易地從音頻信號(hào)中提取出來(lái),比如音樂(lè)的類(lèi)型和演奏的樂(lè)器;而其他的就比較有挑戰(zhàn)性了,比如音樂(lè)的情緒,和發(fā)行的年份(或者時(shí)期);還有一些實(shí)際上是不可能從音頻中得到的:就像藝術(shù)家所在的地理位置和抒情的主題。

盡管存在這些挑戰(zhàn),但是很明顯地,歌曲的實(shí)際聲音極大地影響到聽(tīng)眾是否愿意收聽(tīng)。于是通過(guò)分析音頻信號(hào),預(yù)測(cè)誰(shuí)可能欣賞這支歌曲,看起來(lái)像個(gè)不錯(cuò)的主意。

深度學(xué)習(xí)預(yù)測(cè)聽(tīng)眾喜好

去年十二月, 我和同事A?ron van den Oord 在NIPS上發(fā)表了一篇關(guān)于這個(gè)主題的論文, 題目是‘ Deep content-based music recommendation’(基于內(nèi)容的深度音樂(lè)推薦) 。我們?cè)噲D這樣解決問(wèn)題:通過(guò)訓(xùn)練回歸模型(regression model),預(yù)測(cè)從協(xié)同過(guò)濾模型輸出歌曲的隱藏表征(latent representations) ,實(shí)現(xiàn)依靠音頻信號(hào)預(yù)測(cè)收聽(tīng)喜好。這個(gè)方法可以使我們?cè)诩词箾](méi)有使用數(shù)據(jù)的情況下,也能夠在協(xié)同過(guò)濾空間中預(yù)測(cè)歌曲表征。(正如可以從論文的題目中推測(cè)出來(lái)的那樣,涉及的回歸模型是一個(gè)深度神經(jīng)網(wǎng)絡(luò))。

這種方法的基本思想是假定許多協(xié)同過(guò)濾模型都是把聽(tīng)眾和歌曲投射到一個(gè)共享的低維度隱空間(latent space)中。在這個(gè)空間中歌曲的位置包含了影響聽(tīng)眾喜好的各種編碼信息。假如有兩首歌曲在空間上臨近,它們很可能是相似的。如果一首歌曲距離一個(gè)聽(tīng)眾很近,這首歌對(duì)他可能就是一個(gè)好推薦(如果他還沒(méi)有聽(tīng)過(guò)這首歌)。如果可以通過(guò)音頻信號(hào)預(yù)測(cè)一首歌曲在這個(gè)空間中的位置,那就能夠把它推薦給合適的聽(tīng)眾,而并不需要?dú)v史使用數(shù)據(jù)。

論文中我們做了可視化效果,即通過(guò)投射隱空間中模型的預(yù)測(cè)結(jié)果到使用 t-SNE 算法 降低的二維空間。從如下的結(jié)果圖中可以看出,相似的歌曲群集到了一起。說(shuō)唱樂(lè)主要出現(xiàn)在左上角,而電聲藝術(shù)家聚集在圖的底部。

t-SNE算法的隱空間可視化(中部)。幾個(gè)特寫(xiě)圖展現(xiàn)了歌曲投射在特定區(qū)域的藝術(shù)家。摘自Deep content-based music recommendation, A?ron van den Oord, Sander Dieleman and Benjamin Schrauwen, NIPS 2013.

效率提升

在我們論文中訓(xùn)練的深度神經(jīng)網(wǎng)絡(luò)由兩個(gè)卷積層和兩個(gè)完全連接層組成。輸入是3秒鐘音頻片斷的聲譜。對(duì)于更長(zhǎng)音頻片斷的預(yù)測(cè),只需要把它分成幾個(gè)3秒鐘長(zhǎng)的窗口,然后把這些窗口的預(yù)測(cè)值作平均。

我在Spotify接觸了大量歌曲的數(shù)據(jù)源,以及從不同的協(xié)同過(guò)濾模型產(chǎn)生的隱藏因素表征(latent factor representations)。我還配備了一臺(tái)高級(jí)的GPU,用于實(shí)驗(yàn)運(yùn)算。它們相當(dāng)?shù)靥嵘诵省,F(xiàn)在我正在訓(xùn)練總數(shù)達(dá)7層或8層的卷積神經(jīng)網(wǎng)絡(luò)(convnets),使用了大得多的中間表征和更多的參數(shù)。

架構(gòu)

下面詳細(xì)介紹的,是我已經(jīng)實(shí)驗(yàn)過(guò)的諸多架構(gòu)中的一個(gè)。它有四個(gè)卷積層和三個(gè)稠密層(dense layers)。你將看到為了音頻信號(hào)設(shè)計(jì)的卷積神經(jīng)網(wǎng)絡(luò),與用于計(jì)算機(jī)視覺(jué)網(wǎng)絡(luò)任務(wù)的傳統(tǒng)神經(jīng)網(wǎng)絡(luò),有一些重要的不同。

警告:下面有可怕的細(xì)節(jié)!如果你不太關(guān)心諸如ReLUs,較大值池化(max-pooling)和小批量梯度下降法(minibatch gradient descent)等細(xì)節(jié),盡管直接跳到“分析”段落。

我試驗(yàn)過(guò)的用于隱藏因素預(yù)測(cè)的一種卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)??v軸是時(shí)間軸(在其上卷積)。

網(wǎng)絡(luò)輸入是一系列梅爾聲譜(mel-spectrograms),它們有599幀(frames)和128 個(gè)頻點(diǎn)(frequency bins)。梅爾聲譜是一種時(shí)間-頻率表證(time-frequency representation)。是從音頻信號(hào)的窄重疊窗口傅立葉變換(Fourier transforms)得到的。每一個(gè)傅立葉變換構(gòu)成一幀。 然后將這些連續(xù)的幀排列成一個(gè)矩陣,就形成了這個(gè)聲譜。最后將頻率軸由線性刻度變成梅爾刻度(mel scale)以降低維數(shù),并且采用對(duì)數(shù)刻度值。

卷積層用紅色矩形顯示, 表現(xiàn)了過(guò)濾器滑過(guò)輸入時(shí)的情形。它們使用了線性修正單位(ReLUs, 使用的激活函數(shù)是max(0, x))。請(qǐng)注意所有這些卷積都是一維的;卷積僅僅在時(shí)間維度出現(xiàn),而不在頻率維度。雖然技術(shù)上可以沿著聲譜圖的兩個(gè)坐標(biāo)軸都進(jìn)行卷積,但現(xiàn)在我并沒(méi)有這樣做。要意識(shí)到與圖像不一樣,聲譜圖兩個(gè)軸的意義是不同的(時(shí)間和頻率),這個(gè)非常重要。結(jié)果就是,在圖像數(shù)據(jù)中典型的方形過(guò)濾器,在這里是沒(méi)有意義的。

在卷積層之間用較大值池化運(yùn)算(max-pooling operations)降低時(shí)域中間表征采樣率,同時(shí)增大過(guò)程的時(shí)不變性。這些操作用“MP”表示??梢钥闯鲈诿總€(gè)卷積層中使用了尺寸為4幀的過(guò)濾器,在第一與第二卷積層之間是池尺寸為4的較大池化(主要是出于性能方面的考慮),而在其他層之間是池尺寸為2的較大池化。

在最后卷積層的后面,我增加了一個(gè)全局時(shí)域池化層(global temporal pooling layer)。這一層覆蓋整個(gè)時(shí)間軸,有效地計(jì)算時(shí)域?qū)W習(xí)特征的統(tǒng)計(jì)值。我引入了三個(gè)不同的池化功能:平均值(mean),較大值(maximum)和L2范數(shù)(L2-norm)。

我這樣做的原因是由于從音頻信號(hào)中檢測(cè)到的位置特征,與手頭任務(wù)的要求不是特別地相關(guān)。這里的情況與圖像分類(lèi)不同:在圖像分類(lèi)中,知道一個(gè)特征的大概位置就可以了。例如,檢測(cè)出云朵特征很可能激活圖像的上半部分。如果激活在下半部分,可能檢測(cè)到羊了。在音樂(lè)推薦場(chǎng)合,我們通常只對(duì)音樂(lè)中某些特征整體上是出現(xiàn)還是缺乏感興趣,所以在時(shí)間上做池化是在情理之中的。

另外一種處理方法可以是用短音頻片段訓(xùn)練網(wǎng)絡(luò),通過(guò)平均這些窗口的輸出得到較長(zhǎng)片段的數(shù)據(jù),就像我們?cè)贜IPS論文中做的那樣。不過(guò)在模型中引用池化似乎更好一些,因?yàn)樵趯W(xué)習(xí)階段就可以開(kāi)始使用這種處理步驟。

2048個(gè)線性修正單位的全局池化特征輸入到了一串完全連結(jié)層(fully-connected layers)。在本網(wǎng)絡(luò)中這一串只有兩個(gè)。該網(wǎng)絡(luò)的最后一層是輸出層(output layer),它選用Spotify用過(guò)的各種協(xié)同過(guò)濾算法中的vector_exp 算法,預(yù)測(cè)40個(gè)隱藏因素。

訓(xùn)練

訓(xùn)練網(wǎng)絡(luò)減少協(xié)同過(guò)濾模型輸出的隱藏因素向量與音頻預(yù)測(cè)之間的均方差(MSE)。這些向量首先要按照單位規(guī)范(unit norm)標(biāo)準(zhǔn)作規(guī)范化。這樣做是為了降低歌曲人氣的影響(許多協(xié)同過(guò)濾模型的隱藏因素向量范數(shù)往往與歌曲的人氣相關(guān))。在稠密層中采用丟棄法(Dropout)作為正規(guī)化方法。

我現(xiàn)在使用的數(shù)據(jù)集是從Spotify保存的一百萬(wàn)條最流行曲目中截取的30秒長(zhǎng)的梅爾聲譜。我使用了大約一半曲目用做訓(xùn)練(0.5M),大約5000條做在線驗(yàn)證,其余的用做測(cè)試。在訓(xùn)練的時(shí)候,通過(guò)沿著時(shí)間軸做隨機(jī)的偏移,稍稍調(diào)整了聲譜,擴(kuò)展了數(shù)據(jù)。

實(shí)現(xiàn)的網(wǎng)絡(luò)采用了英偉達(dá)(NVIDIA )GeForce GTX 780Ti GPU硬件,Theano軟件框架。使用了小批量梯度下降法,和涅斯捷羅夫沖量因子(Nesterov momentum)。用一個(gè)多帶帶的進(jìn)程進(jìn)行數(shù)據(jù)加載和調(diào)整,所以當(dāng)GPU用于大塊數(shù)據(jù)訓(xùn)練時(shí),下一批數(shù)據(jù)可以并行地加載進(jìn)來(lái)。總共執(zhí)行了大約750000個(gè)梯度更新。我已經(jīng)記不清訓(xùn)練這個(gè)特殊架構(gòu)的準(zhǔn)確時(shí)間了,但我記得總的試驗(yàn)時(shí)間在18到36小時(shí)之間。

變化(Variation)

正像我在前面講到的,這只是我試驗(yàn)過(guò)的架構(gòu)中的一個(gè)例子。我已經(jīng)試過(guò),或?qū)⒁囼?yàn)的還有:

更多層級(jí)!

使用較大輸出單位(maxout unit)而不是線性修正單位(rectified linear unit)。

使用隨機(jī)池化(stochastic pooling)而不是較大池化(max-pooling)。

在網(wǎng)絡(luò)的輸出層引入L2規(guī)范化。

在時(shí)域上拉伸或壓縮聲譜擴(kuò)展數(shù)據(jù)。

多重級(jí)聯(lián)各種協(xié)同過(guò)濾模型輸出的隱藏因素向量。

這里是幾點(diǎn)工作效果不如預(yù)期的地方:

用全局時(shí)域池化從每個(gè)卷積層到網(wǎng)絡(luò)完全連結(jié)層增加的‘旁路’(‘bypass’)連接?;A(chǔ)假設(shè)是低級(jí)特征的統(tǒng)計(jì)結(jié)果也對(duì)推薦有用,很不幸的是它對(duì)訓(xùn)練產(chǎn)生了太多的限制。

像混合密度網(wǎng)絡(luò)(mixture density networks)一樣預(yù)測(cè)因素的條件方差,得到預(yù)測(cè)的置信估計(jì),而在隱藏因素預(yù)測(cè)困難的時(shí)候用于識(shí)別歌曲。很不幸的是似乎它使訓(xùn)練變得異常困難,而且置信估計(jì)也表現(xiàn)得與預(yù)期的不同。

分析:它在學(xué)習(xí)什么?

現(xiàn)在到了有點(diǎn)酷的部分:這些網(wǎng)絡(luò)究竟在學(xué)習(xí)什么?特征看起來(lái)是怎樣的? 我選擇卷積網(wǎng)絡(luò)解決這個(gè)問(wèn)題的主要原因,是認(rèn)為根據(jù)音頻信號(hào)的音樂(lè)推薦,是一個(gè)連接多層次抽象的復(fù)雜問(wèn)題。我希望連續(xù)的網(wǎng)絡(luò)層能像在圖像分類(lèi)問(wèn)題中那樣,漸進(jìn)地學(xué)會(huì)更復(fù)雜和更多的不變特征。

實(shí)際情況看起來(lái)確實(shí)如此。首先讓我們看一看第一個(gè)卷積層,它學(xué)習(xí)直接應(yīng)用于輸入聲譜的一組過(guò)濾器。這些過(guò)濾器是容易可視化的。它們顯示在下列圖像中。點(diǎn)擊就能看到高分辨率版本(5584x562, ~600kB)。負(fù)值是紅色,正值是藍(lán)色而白色是零值。注意每個(gè)過(guò)濾器寬度僅僅是四幀。深紅色的垂直線將各個(gè)過(guò)濾器分隔開(kāi)來(lái)。

第一卷積層學(xué)習(xí)過(guò)濾器的可視化。時(shí)間軸是橫軸,頻率軸是豎軸(頻率從頂部到底部是增加的)。點(diǎn)擊就能看到高分辨率版本(5584x562, ~600kB)。

從這個(gè)表示中可以看出,許多過(guò)濾器探測(cè)出了諧波成分,這體現(xiàn)在不同頻率處并行的紅藍(lán)條帶上。有時(shí)候這些條帶是向上或向下傾斜的,表示出現(xiàn)了音高的升高或降低。它證明這些過(guò)濾器有助于檢測(cè)人聲。

低級(jí)特征播放表:較大激活

為了對(duì)過(guò)濾器學(xué)習(xí)的是什么有更好的理解,我準(zhǔn)備了一些較大激活的測(cè)試歌曲集播放表。 下面是幾個(gè)例子。網(wǎng)絡(luò)的第一層有256個(gè)過(guò)濾器,它們被從0到255編號(hào)。注意這個(gè)編號(hào)是任意的,因?yàn)檫^(guò)濾器沒(méi)有排序。

通過(guò)查找在分析的30秒內(nèi)對(duì)給定過(guò)濾器較大激活的歌曲,得到了這四個(gè)播放列表。我從第一卷積層中選擇了幾個(gè)看起來(lái)有趣的過(guò)濾器,計(jì)算了每個(gè)特征表現(xiàn),然后從整個(gè)測(cè)試集中查找較大激活。請(qǐng)注意如果要了解過(guò)濾器正在接收的內(nèi)容,應(yīng)該聽(tīng)取曲目的中段,因?yàn)檫@部分音頻信號(hào)才是被分析的部分。

下面每個(gè)Spotify播放表都有10個(gè)曲目。由于版權(quán)的問(wèn)題有些曲目在有的國(guó)家收聽(tīng)不到。

過(guò)濾器 14:顫音歌唱過(guò)濾器 ? ? ? ? 242: 環(huán)境氣氛(ambience)

過(guò)濾器 250:人聲大三度(vocal thirds) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 過(guò)濾器 253: 低音鼓

過(guò)濾器14,242, 250 和 253的特寫(xiě)圖。

過(guò)濾器 14 似乎探測(cè)出顫音歌聲(vibrato singing)。

過(guò)濾器 242探測(cè)出某種響鈴氛圍(ringing ambience)。

過(guò)濾器 250 探測(cè)出人聲大三度( vocal thirds),即多個(gè)歌唱者同唱一首歌,但音符相隔大三度(四個(gè)半音)。

過(guò)濾器 253 探測(cè)出各種類(lèi)型的低音鼓音。

這些播放表中曲目的流派是很不同的,這表示它們主要是從音頻信號(hào)的低級(jí)特性中檢測(cè)出這些特征的。

低級(jí)特征播放表:平均激活

下面四個(gè)播放表是用稍微不同的方式獲得的:首先對(duì)每個(gè)曲目計(jì)算時(shí)域特征的激活平均,然后找出它們中的較大值。這意味著在這些播放表中,涉及的過(guò)濾器在分析的30秒鐘內(nèi)一直有效(也就是, 它不會(huì)只是一個(gè)‘峰值’)。這對(duì)于檢測(cè)和聲模式更加有用。

過(guò)濾器 1:噪音,失真 ? ? ? ? ? ? ? ?過(guò)濾器 2:音高(A, Bb)

過(guò)濾器 4:嗡嗡聲過(guò)濾器 28:和聲(A, Am)

過(guò)濾器1,2,4和28的特寫(xiě)圖。

過(guò)濾器1 檢測(cè)噪音和(吉他)失真音。

過(guò)濾器2好像檢測(cè)到一個(gè)特殊音高:一個(gè)低音Bb。 它有時(shí)也檢測(cè)出A聲(低半音),因?yàn)槊窢柭曌V的頻率分辨率還沒(méi)有高到足以區(qū)分這兩個(gè)音。

過(guò)濾器 4 檢測(cè)各種低音嗡嗡聲(drones)。

過(guò)濾器 28 檢測(cè)A和弦。看起來(lái)它既檢測(cè)小音階也檢測(cè)大音階版本,所以它可能只檢測(cè)音高A和E(五度音程)。

我覺(jué)得很有趣的是,該網(wǎng)絡(luò)學(xué)會(huì)了檢測(cè)特別的音高和和聲。我以前還以為歌曲中準(zhǔn)確的音高和和聲的出現(xiàn),不會(huì)影響聽(tīng)眾的喜愛(ài)程度。至于為什么會(huì)這樣我有兩點(diǎn)推測(cè):

用不同的諧音訓(xùn)練了各種過(guò)濾器以后,這個(gè)網(wǎng)絡(luò)其實(shí)僅僅學(xué)習(xí)了檢測(cè)調(diào)和性(harmonicity)。然后在更高層級(jí)上它們被池化到一起,以檢測(cè)各種音高的調(diào)和性。

網(wǎng)絡(luò)學(xué)會(huì)了在某些流派的音樂(lè)中,某個(gè)和弦以及和弦進(jìn)行 (chord progressions)比其他和弦更加常用。

我還沒(méi)有驗(yàn)證上述兩點(diǎn)中的任何一點(diǎn),但看起來(lái)后者對(duì)于網(wǎng)絡(luò)有更大的挑戰(zhàn),因此我認(rèn)為前者的可能性更大。

高級(jí)特征播放表

網(wǎng)絡(luò)的每一層都從下一層取得特征表現(xiàn),然后從中提取一組高級(jí)特征。在網(wǎng)絡(luò)最上面的完全連接層,即最靠近輸出層的前面一層,學(xué)習(xí)過(guò)的過(guò)濾器對(duì)某些副主題是非常有選擇性的。 顯而易見(jiàn),在聲譜級(jí)可視化這些過(guò)濾器的檢測(cè)結(jié)果不是一件簡(jiǎn)單的事情。下面是六個(gè)測(cè)試集歌曲的播放表,這些歌曲較大激活了其中的幾個(gè)高級(jí)過(guò)濾器。

過(guò)濾器 3:基督教搖滾(christian rock) ? ?過(guò)濾器 15:合唱/無(wú)伴奏合唱+時(shí)尚爵士

過(guò)濾器 26: 福音歌 ? ? ? ? ? ? ? ? ? ?過(guò)濾器 37:華語(yǔ)流行

過(guò)濾器 49:合成電子樂(lè),8比特過(guò)濾器 1024:deep house音樂(lè)

很明顯,其中每個(gè)過(guò)濾器都識(shí)別一種特定的類(lèi)型。有趣的是有些過(guò)濾器,比如第15號(hào),似乎是多模式的(multimodal):它強(qiáng)烈地被兩種或更多種風(fēng)格的音樂(lè)激活,而那些音樂(lè)經(jīng)常是完全不相關(guān)的。大概這些過(guò)濾器在結(jié)合了所有其它過(guò)濾器的激活以后,消除了輸出歧義。

過(guò)濾器37很有趣,因?yàn)樗坪蹩梢宰R(shí)別中文語(yǔ)言。這不是完全不可能的,因?yàn)橹形牡恼Z(yǔ)音庫(kù)與其他語(yǔ)言相比是很獨(dú)特的。有其他幾個(gè)過(guò)濾器似乎學(xué)習(xí)了特定的語(yǔ)言:比如有一個(gè)能檢測(cè)出西班牙語(yǔ)的rap音樂(lè)。也有可能性是華語(yǔ)流行音樂(lè)存在其它可區(qū)分的特性,而那個(gè)模型就是檢測(cè)到了此特性。

我花了一些時(shí)間對(duì)開(kāi)始的約50個(gè)過(guò)濾器作了詳細(xì)的分析。我想出的其他幾個(gè)過(guò)濾器種類(lèi)還有:酒廊音樂(lè),雷鬼樂(lè)(reggae),暗潮(darkwave),鄉(xiāng)村音樂(lè), 金屬核(metalcore),莎莎舞樂(lè)(salsa),荷蘭和德國(guó)的狂歡節(jié)音樂(lè),兒童歌曲,人聲電音(vocal trance),朋克(punk),土耳其流行樂(lè),還有我最喜愛(ài)的 ‘exclusively Armin van Buuren’。很明顯由于他有那么多的曲目,所以他才有了自己的過(guò)濾器。

經(jīng)過(guò)Alex Krizhevsky ImageNet網(wǎng)絡(luò)學(xué)習(xí)的過(guò)濾器,已經(jīng)被重復(fù)用在各種計(jì)算機(jī)視覺(jué)任務(wù)中,并獲得了極大的成功。基于這些過(guò)濾器的多樣性和不變性特性(invariance properties),這些學(xué)習(xí)音頻信號(hào)的過(guò)濾器,除了能預(yù)測(cè)隱藏因素之外,也可以用于其他音樂(lè)信息檢索任務(wù)。

基于相似度的播放列表

預(yù)測(cè)的隱因素向量也可以用來(lái)查找聽(tīng)起來(lái)相似的歌曲。下面是這樣產(chǎn)生的幾個(gè)播放表:首先預(yù)測(cè)給定歌曲的因素向量,然后從測(cè)試集中查找出這樣的歌曲,其預(yù)測(cè)因素向量的余弦距離,靠近給定的歌曲。這樣播放列表中的第一個(gè)曲目永遠(yuǎn)是查詢曲目本身。

The Notorious B.I.G. – Juicy ? ? ? ? ? ? ? ? Cloudkicker - He would be riding on

? ? ? ? ? (嘻哈舞曲) ? ? ? ? ? ? ? ? ? ? ? ? the subway...后現(xiàn)代搖滾,前衛(wèi)金屬)

Architects - Numbers Count For Nothing ? ? ? ?Neophyte - Army of Hardcore

? ? ? ? ? ? ? ? ? (金屬核, 硬核) ? ? ? ? ? ? ? ? ?(硬式電子音樂(lè), 蓋巴舞曲)

Fleet Foxes - Sun It Rises(獨(dú)立民謠) ?John Coltrane - My Favorite Things(爵士樂(lè))

絕大多數(shù)相似的曲目都是很合適向查詢?cè)撉康母杳酝扑]的。當(dāng)然這些列表并不是很完美的,但是考慮到僅僅依靠音頻信號(hào),就獲得了這樣的結(jié)果,應(yīng)該算是相當(dāng)不錯(cuò)了。有一個(gè)有錯(cuò)誤的例子出現(xiàn)在John Coltrane的‘My Favorite Things’播放表中,此播放表的一個(gè)不同點(diǎn)是包含幾個(gè)奇異值(outliers),最明顯的地方是在Elvis Presley的‘Crawfish’中。其原因可能是在被分析的音頻信號(hào)段(從8:40 到9:10)包含一段瘋狂的薩克斯獨(dú)奏。如果分析整首歌曲,可能會(huì)有比較好的結(jié)果。

它們有什么用?

Spotify已經(jīng)在其推薦管道中使用了一大堆不同的信息源和算法,因此我的工作最明顯的應(yīng)用就是添加成另外一個(gè)信號(hào)源。當(dāng)然它也可以用來(lái)過(guò)濾由其它算法推薦的異常結(jié)果。我在前面已經(jīng)指出,協(xié)同過(guò)濾算法趨向于在推薦中包含引曲、終曲、翻唱曲和混音曲。這些可以通過(guò)基于音頻的方法有效地過(guò)濾。

我在這項(xiàng)工作中的一個(gè)主要目標(biāo)是可以用它推薦新的,以及尚未流行的音樂(lè)。我希望這樣提供幫助,那些不太知名和未來(lái)的樂(lè)隊(duì),通過(guò)允許Spotify向適合的聽(tīng)眾推薦他們的音樂(lè),得到公平的競(jìng)爭(zhēng)環(huán)境。(宣傳未來(lái)的樂(lè)隊(duì)碰巧也是我一個(gè)非營(yíng)利網(wǎng)站got-djent.com的主要目標(biāo)。)

希望不久它們的部分功能就能開(kāi)始 A/B 測(cè)試 ,于是我們可以知道這個(gè)基于音頻的推薦,能不能在實(shí)踐中表現(xiàn)非凡。這是我非常興奮的一件事情,因?yàn)樗皇窃趯W(xué)術(shù)界輕松做到的。

今后的工作

Spotify收集到的另一種用戶反饋形式是用戶對(duì)電臺(tái)播放曲目的向上拇指和向下拇指。這類(lèi)信息對(duì)于確定哪些曲目是類(lèi)似的十分有用。不幸的是其中的噪音也很大。我目前正在嘗試在‘排序?qū)W習(xí)’(learning to rank)設(shè)置中使用這些數(shù)據(jù)。我也在實(shí)驗(yàn)各種距離度量學(xué)習(xí)方案,比如DrLIM。如果有任何很酷的結(jié)果我可能會(huì)寫(xiě)一篇新的文章。

結(jié)論

本文中我概述了在Spotify機(jī)器學(xué)習(xí)實(shí)習(xí)中到目前為止所做的工作。我解釋了使用卷積網(wǎng)絡(luò)做基于音頻的音樂(lè)推薦的方法,并提出了有關(guān)該卷積網(wǎng)絡(luò)的實(shí)際學(xué)習(xí)效果的心得。有關(guān)這個(gè)方法更詳細(xì)的內(nèi)容,請(qǐng)參考由我和 A?ron van den Oord在NIPS 2013合寫(xiě)的論文 ‘基于內(nèi)容的深度音樂(lè)推薦’(Deep content-based music recommendation)。

如果你對(duì)深度學(xué)習(xí),特征學(xué)習(xí)以及它在音樂(lè)中的應(yīng)用有興趣,可以到我網(wǎng)站的research中看看,了解一下我在這個(gè)領(lǐng)域做過(guò)的其它工作。如果你對(duì)在音樂(lè)推薦中Spotify的方法有興趣,參考一下Slideshare和Erik Bernhardsson在其博客中的介紹。

Spotify是一個(gè)很酷的工作場(chǎng)所。他們對(duì)其使用的方法很開(kāi)放(同時(shí)允許我寫(xiě)這篇博客文章),這在工業(yè)界并不是很常見(jiàn)的。

如果你對(duì)本文有任何問(wèn)題或者反饋意見(jiàn),請(qǐng)留下你的評(píng)論!

原文鏈接:Recommending music on Spotify with deep learning

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/4294.html

相關(guān)文章

  • 原創(chuàng)翻譯 | 10個(gè)音頻處理任務(wù)讓你開(kāi)始使用深度學(xué)習(xí)應(yīng)用

    摘要:這是機(jī)器學(xué)習(xí)課程中的一個(gè)典型例子,他把演講者的聲音和背景音樂(lè)分開(kāi)。雖然用于啟動(dòng)檢測(cè)的技術(shù)主要依賴(lài)于音頻特征工程和機(jī)器學(xué)習(xí),但在這里可以很容易地使用深度學(xué)習(xí)來(lái)優(yōu)化結(jié)果。 介紹 想象一個(gè)能理解你想要什么,且當(dāng)你打電話給客戶服務(wù)中心時(shí)能理解你的感受的機(jī)器--如果你對(duì)某件事感到不高興,你可以很快地和一個(gè)人交談。如果您正在尋找特定的信息,您可能不需要與某人交談(除非您愿意!)。 ...

    notebin 評(píng)論0 收藏0
  • 遞歸藝術(shù) - 深度遞歸網(wǎng)絡(luò)在序列式推薦應(yīng)用

    摘要:因?yàn)樵诿恳粫r(shí)刻對(duì)過(guò)去的記憶信息和當(dāng)前的輸入處理策略都是一致的,這在其他領(lǐng)域如自然語(yǔ)言處理,語(yǔ)音識(shí)別等問(wèn)題不大,但并不適用于個(gè)性化推薦,一個(gè)用戶的聽(tīng)歌點(diǎn)擊序列,有正負(fù)向之分。 在內(nèi)容爆炸性增長(zhǎng)的今天,個(gè)性化推薦發(fā)揮著越來(lái)越重要的作用,如何在海量的數(shù)據(jù)中幫助用戶找到感興趣的物品,成為大數(shù)據(jù)領(lǐng)域極具挑戰(zhàn)性的一項(xiàng)工作;另一方面,深度學(xué)習(xí)已經(jīng)被證明在圖像處理,計(jì)算機(jī)視覺(jué),自然語(yǔ)言處理等領(lǐng)域都取得了不俗...

    ZweiZhao 評(píng)論0 收藏0
  • cnn卷積神經(jīng)網(wǎng)絡(luò)打造人臉登錄系統(tǒng)

    摘要:本文基于環(huán)境,采用為基礎(chǔ)來(lái)構(gòu)建實(shí)時(shí)人臉檢測(cè)與識(shí)別系統(tǒng),探索人臉識(shí)別系統(tǒng)在現(xiàn)實(shí)應(yīng)用中的難點(diǎn)。對(duì)于人臉檢測(cè)方法,效果好于的方法,但是檢測(cè)力度也難以達(dá)到現(xiàn)場(chǎng)應(yīng)用標(biāo)準(zhǔn)。本文中,我們采用了基于深度學(xué)習(xí)方法的人臉檢測(cè)系統(tǒng)。 git地址:https://github.com/chenlinzho... 本文主要介紹了系統(tǒng)涉及的人臉檢測(cè)與識(shí)別的詳細(xì)方法,該系統(tǒng)基于python2.7.10/opencv...

    jackwang 評(píng)論0 收藏0
  • cnn卷積神經(jīng)網(wǎng)絡(luò)打造人臉登錄系統(tǒng)

    摘要:本文基于環(huán)境,采用為基礎(chǔ)來(lái)構(gòu)建實(shí)時(shí)人臉檢測(cè)與識(shí)別系統(tǒng),探索人臉識(shí)別系統(tǒng)在現(xiàn)實(shí)應(yīng)用中的難點(diǎn)。對(duì)于人臉檢測(cè)方法,效果好于的方法,但是檢測(cè)力度也難以達(dá)到現(xiàn)場(chǎng)應(yīng)用標(biāo)準(zhǔn)。本文中,我們采用了基于深度學(xué)習(xí)方法的人臉檢測(cè)系統(tǒng)。 git地址:https://github.com/chenlinzho... 本文主要介紹了系統(tǒng)涉及的人臉檢測(cè)與識(shí)別的詳細(xì)方法,該系統(tǒng)基于python2.7.10/opencv...

    KavenFan 評(píng)論0 收藏0
  • 達(dá)觀數(shù)據(jù)紀(jì)達(dá)麒:個(gè)性化推薦系統(tǒng)商業(yè)化,五大要素不可或缺

    摘要:在峰會(huì)大數(shù)據(jù)專(zhuān)場(chǎng)上,達(dá)觀數(shù)據(jù)紀(jì)達(dá)麒圍繞數(shù)據(jù)挖掘算法落地實(shí)踐做了主題演講,就個(gè)性化推薦系統(tǒng)商業(yè)化的五大要素進(jìn)行了詳細(xì)探討。在機(jī)器學(xué)習(xí)領(lǐng)域,每一個(gè)單一算法都是針對(duì)一類(lèi)特定的問(wèn)題,因而針對(duì)同一個(gè)推薦任務(wù),不同的算法效果相差很大。 在日前舉行的2017 CSDI 中國(guó)軟件研發(fā)管理行業(yè)峰會(huì)上,包括摩拜單車(chē)創(chuàng)始人及CTO夏一平、華為首席系統(tǒng)工程專(zhuān)家徐琦海、京東云、攜程等一線互聯(lián)網(wǎng)企業(yè)大數(shù)據(jù)平臺(tái)負(fù)責(zé)...

    raoyi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<