【導(dǎo)語(yǔ)】本文對(duì)傳統(tǒng)的人工數(shù)學(xué)建模和機(jī)器學(xué)習(xí)的優(yōu)缺點(diǎn)進(jìn)行了介紹和比較,并介紹了一種將二者優(yōu)點(diǎn)相結(jié)合的方法——解耦表示學(xué)習(xí)。之后,作者利用 DeepMind 發(fā)布的基于解耦表示學(xué)習(xí)的 beta-VAE 模型,對(duì)醫(yī)療和金融領(lǐng)域的兩個(gè)數(shù)據(jù)集進(jìn)行了探索,展示了模型效果,并提供了實(shí)驗(yàn)代碼。
這篇文章會(huì)對(duì)傳統(tǒng)數(shù)學(xué)建模與機(jī)器學(xué)習(xí)建模之間的聯(lián)系進(jìn)行討論。傳統(tǒng)數(shù)學(xué)建模是我們?cè)趯W(xué)校里都學(xué)過(guò)的建模方法,該方法中,數(shù)學(xué)家們基于專家經(jīng)驗(yàn)和對(duì)現(xiàn)實(shí)世界的理解進(jìn)行建模。而機(jī)器學(xué)習(xí)建模則是另一種完全不同的建模方式,機(jī)器學(xué)習(xí)算法以一種更加隱蔽的方式來(lái)描述一些客觀事實(shí),盡管人類并不能夠完全理解模型的描述過(guò)程,但在大多數(shù)情況下,機(jī)器學(xué)習(xí)模型要比人類專家構(gòu)建的數(shù)學(xué)模型更加精確。當(dāng)然,在更多應(yīng)用領(lǐng)域(如醫(yī)療、金融、軍事等),機(jī)器學(xué)習(xí)算法,尤其是深度學(xué)習(xí)模型并不能滿足我們需要清晰且易于理解的決策。
本文會(huì)著重討論傳統(tǒng)數(shù)學(xué)建模和機(jī)器學(xué)習(xí)建模的優(yōu)缺點(diǎn),并介紹一個(gè)將兩者相結(jié)合的方法 —— 解耦表示學(xué)習(xí) (Disentangled Representation Learning)。
如果想在自己的數(shù)據(jù)集上嘗試使用解耦表示學(xué)習(xí)的方法,可以參考 Github 上關(guān)于解耦學(xué)習(xí)的分享,以及 Google Research 提供的關(guān)于解耦學(xué)習(xí)的項(xiàng)目代碼。
深度學(xué)習(xí)存在的問(wèn)題
由于深度學(xué)習(xí)技術(shù)的發(fā)展,我們?cè)谠S多領(lǐng)域都對(duì)神經(jīng)網(wǎng)絡(luò)的應(yīng)用進(jìn)行了嘗試。在一些重要的領(lǐng)域,使用神經(jīng)網(wǎng)絡(luò)確實(shí)是合理的,并且獲得了較好的應(yīng)用效果,包括計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理、語(yǔ)音分析和信號(hào)處理等。在上述應(yīng)用中,深度學(xué)習(xí)方法都是利用使用線性和非線性轉(zhuǎn)換對(duì)復(fù)雜的數(shù)據(jù)進(jìn)行自動(dòng)特征抽取,并將特征表示為“向量”(vector),這一過(guò)程一般也稱為“嵌入”(embedding)。之后,神經(jīng)網(wǎng)絡(luò)對(duì)這些向量進(jìn)行運(yùn)算,并完成相應(yīng)的分類或回歸任務(wù):
從特征提取和準(zhǔn)確度來(lái)看,這種 “嵌入”的方法非常有效,但在許多方面也存在不足:
可解釋性:嵌入所使用的N維向量無(wú)法對(duì)模型分析的原理和過(guò)程進(jìn)行很好的解釋,只有通過(guò)逆向工程才能找到輸入數(shù)據(jù)中對(duì)分析影響更大的內(nèi)容。
數(shù)據(jù)需求量龐大:如果只有 10~100 個(gè)樣本,深度學(xué)習(xí)無(wú)法使用。
無(wú)監(jiān)督學(xué)習(xí):大多數(shù)深度學(xué)習(xí)模型都需要有標(biāo)簽的訓(xùn)練數(shù)據(jù)。
零樣本學(xué)習(xí):這是一個(gè)很關(guān)鍵的問(wèn)題,基于一個(gè)數(shù)據(jù)集所訓(xùn)練出的神經(jīng)網(wǎng)絡(luò),若不經(jīng)過(guò)重新訓(xùn)練,很難直接應(yīng)用在另一個(gè)數(shù)據(jù)集上。
對(duì)象生成:除了 GANs(生成對(duì)抗網(wǎng)絡(luò))以外,其他模型都很難生成一個(gè)真實(shí)的對(duì)象。
對(duì)象操作:難以通過(guò)嵌入調(diào)整輸入對(duì)象的具體屬性。
理論基礎(chǔ):雖然我們已經(jīng)掌握了比較通用的逼近理論,但這還不夠。
這些問(wèn)題很難用機(jī)器學(xué)習(xí)框架來(lái)解決,但在最近,我們?nèi)〉昧艘恍┬碌倪M(jìn)展。
數(shù)學(xué)建模的優(yōu)勢(shì)
在 20 年、50 年 甚至 100 年以前,大多數(shù)數(shù)學(xué)家都沒(méi)有遇到過(guò)上述問(wèn)題。其中原因在于,他們主要關(guān)注數(shù)學(xué)建模(mathematical modeling),并通過(guò)數(shù)學(xué)抽象來(lái)描述現(xiàn)實(shí)世界中的對(duì)象和過(guò)程,如使用分布、公式和各種各樣的方程式。在這個(gè)過(guò)程中,數(shù)學(xué)家定義了我們?cè)跇?biāo)題中提到的常微分方程(ordinary differential equations, ODE)。我們通過(guò)對(duì)比深度學(xué)習(xí)存在的問(wèn)題,對(duì)數(shù)學(xué)建模的特點(diǎn)進(jìn)行了分析。需要注意的是,在下面的分析中,“嵌入”代表數(shù)學(xué)模型的參數(shù),如微分方程的自由度集合。
可解釋性:每個(gè)數(shù)學(xué)模型都是基于科學(xué)家對(duì)客觀事物的描述而建立的,建模過(guò)程包含數(shù)據(jù)家對(duì)客觀事物的描述動(dòng)機(jī)和深入理解。例如,對(duì)于物理運(yùn)動(dòng)的描述, “嵌入” 包括物體質(zhì)量、運(yùn)動(dòng)速率和坐標(biāo)空間,不涉及到抽象的向量。
數(shù)據(jù)需求量大:大多數(shù)數(shù)學(xué)建模上的突破并不需要基于巨大的數(shù)據(jù)集進(jìn)行。
無(wú)監(jiān)督學(xué)習(xí):對(duì)數(shù)學(xué)建模來(lái)說(shuō)也不適用。
零樣本學(xué)習(xí):一些隨機(jī)微分方程(如幾何布朗運(yùn)動(dòng))可以應(yīng)用于金融、生物或物理領(lǐng)域,只需要對(duì)參數(shù)進(jìn)行重新命名。
對(duì)象生成:不受限制,對(duì)參進(jìn)行采樣即可。
對(duì)象操作:不受限制,對(duì)參數(shù)進(jìn)行操作即可。
理論基礎(chǔ):上百年的科學(xué)基礎(chǔ)。
我們沒(méi)有使用微分方程解決所有問(wèn)題的原因在于,對(duì)于大規(guī)模的復(fù)雜數(shù)據(jù)來(lái)說(shuō),微分方程的表現(xiàn)與深度學(xué)習(xí)模型相比要差得多,這也是深度學(xué)習(xí)得到飛速發(fā)展的原因。但是,我們?nèi)匀恍枰斯さ臄?shù)學(xué)建模。
將機(jī)器學(xué)習(xí)與基于人工的建模方法相結(jié)合
如果在處理復(fù)雜數(shù)據(jù)時(shí),我們能把表現(xiàn)較好的神經(jīng)網(wǎng)絡(luò)和人工建模方法結(jié)合起來(lái),可解釋性、生成和操作對(duì)象的能力、無(wú)監(jiān)督特征學(xué)習(xí)和零樣本學(xué)習(xí)的問(wèn)題,都可以在一定程度上得到解決。舉個(gè)例子,視頻1中呈現(xiàn)的是對(duì)于人像的特征提取方法。
對(duì)于微分方程和其他人工建模方法來(lái)說(shuō),圖像處理很難進(jìn)行,但通過(guò)和深度學(xué)習(xí)進(jìn)行結(jié)合,上述模型允許我們進(jìn)行對(duì)象的生成和操作、可解釋性強(qiáng),最重要的是,該模型可以在其他數(shù)據(jù)集上完成相同的工作。該模型唯一的問(wèn)題是,建模過(guò)程不是完全無(wú)監(jiān)督的。另外,對(duì)于對(duì)象的操作還有一個(gè)重要的改進(jìn),即當(dāng)我改變 ”胡須“ 這一特征時(shí),程序自動(dòng)讓整張臉變得更像男人了,也就是意味著,模型中的特征雖然具有可解釋性,但特征之間是相關(guān)聯(lián)的,換句話說(shuō),這些特征是耦合在一起的。
β -VAE
有一個(gè)方法可以幫助我們實(shí)現(xiàn)解耦表示,也就是讓嵌入中的每個(gè)元素對(duì)應(yīng)一個(gè)單獨(dú)的影響因素,并能夠?qū)⒃撉度胗糜诜诸?、生成和零樣本學(xué)習(xí)。該算法是由 DeepMind 實(shí)驗(yàn)室基于變分自編碼器開(kāi)發(fā)的,相比于重構(gòu)損失函數(shù)(restoration loss),該算法更加注重潛在分布與先驗(yàn)分布之間的相對(duì)熵。
若想了解更多細(xì)節(jié),可閱讀beta-VAE的論文(https://openreview.net/forum?id=Sy2fzU9gl);也可參考這個(gè)視頻2中的介紹,詳細(xì)解釋了 beta-VAE 的內(nèi)在思想,以及該算法在監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)中的應(yīng)用。
beta-VAE 可以從輸入數(shù)據(jù)中提取影響變量的因素,提取的因素包括物理運(yùn)動(dòng)的方向、對(duì)象的大小、顏色和方位等等。在強(qiáng)化學(xué)習(xí)應(yīng)用中,該模型可以區(qū)分目標(biāo)和背景,并能夠基于已有的訓(xùn)練模型在實(shí)際環(huán)境中進(jìn)行零樣本學(xué)習(xí)。
實(shí)驗(yàn)過(guò)程
我主要研究醫(yī)療和金融領(lǐng)域的模型應(yīng)用,在這些領(lǐng)域的實(shí)際問(wèn)題中,上述模型能夠在很大程度上解決模型解釋性、人工數(shù)據(jù)生成和零樣本學(xué)習(xí)問(wèn)題。因此在下面的實(shí)驗(yàn)中,我使用 beta-VAEs 模型對(duì)心電圖(ETC)數(shù)據(jù)和和比特幣(BTC)的價(jià)格數(shù)據(jù)進(jìn)行了分析。該實(shí)驗(yàn)的代碼在 Github上可以找到。
首先,我使用veta-VAE(一個(gè)非常簡(jiǎn)單的多層神經(jīng)網(wǎng)絡(luò))對(duì)PTB診斷數(shù)據(jù)中的心電圖數(shù)據(jù)進(jìn)行了建模,該數(shù)據(jù)包含三類變量:心電圖圖表,每個(gè)人隨著時(shí)間變化的脈搏數(shù)據(jù),以及診斷結(jié)果(即是否存在梗塞)。在 VAE 訓(xùn)練過(guò)程中,epoch 大小設(shè)置為 50,bottleneck size 設(shè)置為 10,學(xué)習(xí)率為 0.0005,capacity 參數(shù)設(shè)置為 25(參數(shù)設(shè)置參考了這個(gè)GitHub項(xiàng)目)。模型的輸入是心跳。經(jīng)過(guò)訓(xùn)練,該模型學(xué)習(xí)到了數(shù)據(jù)集中影響變量的實(shí)際因素。
下圖展示了我使用其中一個(gè)單一特征對(duì)心跳數(shù)據(jù)進(jìn)行操作的過(guò)程,其中黑線代表心跳,使用的特征數(shù)據(jù)值從 -3 逐漸增大至 3。在這一過(guò)程中,其他特征始終保持不變。不難發(fā)現(xiàn),第 5 個(gè)特征對(duì)心跳形式的影響很大,第 8 個(gè)代表了心臟病的情況(藍(lán)色心電圖代表有梗塞癥狀,而紅色則相反),第 10 個(gè)特征可以輕微地影響脈博。
圖:對(duì)心電圖的心跳進(jìn)行解耦
正如預(yù)期的一樣,金融數(shù)據(jù)的實(shí)驗(yàn)效果沒(méi)有這么明顯。模型的訓(xùn)練參數(shù)設(shè)置與上一實(shí)驗(yàn)相似。使用的數(shù)據(jù)為 2017 年收集的比特幣價(jià)格數(shù)據(jù)集,該數(shù)據(jù)集包含一個(gè)時(shí)間長(zhǎng)度為 180 分鐘的比特幣價(jià)格變化數(shù)據(jù)。預(yù)期的實(shí)驗(yàn)效果為使用 beta-VAE 學(xué)習(xí)一些標(biāo)準(zhǔn)的金融時(shí)間序列模型,如均值回歸的時(shí)間序列模型,但實(shí)際很難對(duì)所獲得的表示進(jìn)行解釋。在實(shí)驗(yàn)結(jié)果中可以發(fā)現(xiàn),第 5 個(gè)特征改變了輸入的時(shí)間序列的趨勢(shì),第 2、4、6 個(gè)特征增加/減少了時(shí)間序列上不同階段的波動(dòng),或者說(shuō)使其更加趨于穩(wěn)定或動(dòng)蕩。
圖:對(duì)比特幣的收盤價(jià)格進(jìn)行解耦
多個(gè)對(duì)象的解耦
假設(shè)在圖像中包含多個(gè)對(duì)象,我們想要找出每一個(gè)對(duì)象的影響因素。下面的動(dòng)圖展示了模型的效果。
總結(jié)
下面針對(duì)于機(jī)器學(xué)習(xí)存在的問(wèn)題列表對(duì) beta-VAE 模型進(jìn)行總結(jié):
可解釋性:特征完全可解釋,我們只需要對(duì)每個(gè)具體嵌入的元素進(jìn)行驗(yàn)證。
數(shù)據(jù)需求量大:由于該模型屬于深度學(xué)習(xí)框架,數(shù)據(jù)需求量依然較大。
無(wú)監(jiān)督學(xué)習(xí):可以實(shí)現(xiàn)完全的無(wú)監(jiān)督學(xué)習(xí)。
零樣本學(xué)習(xí):可以進(jìn)行,在文中展示的強(qiáng)化學(xué)習(xí)應(yīng)用就屬于這一類。
對(duì)象生成:和普通的 VAE 一樣易于對(duì)參數(shù)進(jìn)行采樣。
對(duì)象操作:可以輕松操作任何感興趣的變量。
理論基礎(chǔ):有待研究。
上文的模型幾乎具備了數(shù)學(xué)建模的全部?jī)?yōu)質(zhì)特性,也具有深度學(xué)習(xí)在分析復(fù)雜數(shù)據(jù)時(shí)的高準(zhǔn)確度。那么,如果能使用完全無(wú)監(jiān)督的方式,從復(fù)雜數(shù)據(jù)中學(xué)習(xí)到如此好的表示結(jié)果,是不是意味著傳統(tǒng)數(shù)學(xué)建模的終結(jié)?如果一個(gè)機(jī)器學(xué)習(xí)模型就可以對(duì)復(fù)雜模型進(jìn)行構(gòu)建,而我們只需要進(jìn)行特征分析,那還需要基于人工的建模嗎?這個(gè)問(wèn)題還有待討論。
-
計(jì)算機(jī)視覺(jué)
+關(guān)注
關(guān)注
8文章
1701瀏覽量
46146 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1209瀏覽量
24850 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5518瀏覽量
121608
原文標(biāo)題:什么是解耦表示學(xué)習(xí)?使用beta-VAE模型探究醫(yī)療和金融問(wèn)題
文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論