什么是解耦表示學(xué)習(xí)?使用beta-VAE模型探究醫(yī)療和金融問題!
【導(dǎo)讀】本文介紹并比較了傳統(tǒng)人工數(shù)學(xué)建模和機(jī)器學(xué)習(xí)的優(yōu)缺點,介紹了一種結(jié)合兩者優(yōu)點的方法——解耦表示學(xué)習(xí)。之后,作者使用DeepMind發(fā)布的基于解耦表征學(xué)習(xí)的貝塔-VAE模型,對醫(yī)療和金融領(lǐng)域的兩個數(shù)據(jù)集進(jìn)行了探索,展示了模型效果,并提供了實驗代碼。
實驗中GitHub項目的地址:
https://github.com/Rachnog/disentanglment
本文將討論傳統(tǒng)數(shù)學(xué)建模和機(jī)器學(xué)習(xí)建模之間的關(guān)系。傳統(tǒng)數(shù)學(xué)建模是我們在學(xué)校都學(xué)過的一種建模方法。在這種方法中,數(shù)學(xué)家基于專家經(jīng)驗和對現(xiàn)實世界的理解來建立模型。機(jī)器學(xué)習(xí)建模是另一種完全不同的建模方法。機(jī)器學(xué)習(xí)算法以更微妙的方式描述了一些客觀事實。雖然人類無法完全理解模型的描述過程,但在大多數(shù)情況下,機(jī)器學(xué)習(xí)模型比人類專家建立的數(shù)學(xué)模型更準(zhǔn)確。當(dāng)然,在更多的應(yīng)用領(lǐng)域(比如醫(yī)療,金融,軍事等。),機(jī)器學(xué)習(xí)算法,尤其是深度學(xué)習(xí)模型,無法滿足我們對清晰易懂決策的需求。
本文將重點討論傳統(tǒng)數(shù)學(xué)建模和機(jī)器學(xué)習(xí)建模的優(yōu)缺點,并介紹一種將它們結(jié)合起來的方法——解耦d表示學(xué)習(xí)。
如果想在自己的數(shù)據(jù)集上嘗試解耦表示學(xué)習(xí)的方法,可以參考Github上解耦學(xué)習(xí)的分享,以及Google Research提供的解耦學(xué)習(xí)的項目代碼。深度學(xué)習(xí)中的問題
由于深度學(xué)習(xí)技術(shù)的發(fā)展,我們在很多領(lǐng)域嘗試了神經(jīng)網(wǎng)絡(luò)的應(yīng)用。在一些重要的領(lǐng)域,使用神經(jīng)網(wǎng)絡(luò)是合理的,并取得了良好的應(yīng)用效果,包括計算機(jī)視覺、自然語言處理、語音分析和信號處理等。在上述應(yīng)用中,深度學(xué)習(xí)方法都是利用線性和非線性變換從復(fù)雜數(shù)據(jù)中自動提取特征,并將特征表示為“向量”,也就是俗稱的“嵌入”。之后,神經(jīng)網(wǎng)絡(luò)對這些向量進(jìn)行運算,完成相應(yīng)的分類或回歸任務(wù):
從特征提取和精度的角度來看,這種“嵌入”的方法是非常有效的,但也存在很多方面的不足:可解釋性:嵌入時使用的N維向量不能很好地解釋模型分析的原理和過程,只有通過逆向工程才能找到對分析有較大影響的輸入數(shù)據(jù)內(nèi)容。對數(shù)據(jù)的巨大需求:如果只有10~100個樣本,深度學(xué)習(xí)就無法使用。無監(jiān)督學(xué)習(xí):大多數(shù)深度學(xué)習(xí)模型需要標(biāo)記的訓(xùn)練數(shù)據(jù)。零樣本學(xué)習(xí):這是一個關(guān)鍵問題?;谝粋€數(shù)據(jù)集訓(xùn)練的神經(jīng)網(wǎng)絡(luò)在沒有重新訓(xùn)練的情況下很難直接應(yīng)用于另一個數(shù)據(jù)集。對象生成:除了GANs(生成對抗網(wǎng)絡(luò)),其他模型很難生成一個真實的對象。操作:嵌入很難調(diào)整輸入對象的具體屬性。理論基礎(chǔ):雖然我們掌握了一般近似理論,但是還不夠。
這些問題很難用機(jī)器學(xué)習(xí)框架來解決,但是最近,我們?nèi)〉昧艘恍┬碌倪M(jìn)展。數(shù)學(xué)建模的優(yōu)勢
20年、50年甚至100年前,大部分?jǐn)?shù)學(xué)家都沒有遇到上述問題。原因是他們主要以數(shù)學(xué)建模為主,通過數(shù)學(xué)抽象來描述現(xiàn)實世界中的物體和過程,比如用分布、公式、各種方程等。在這個過程中,數(shù)學(xué)家定義了我們在題目中提到的常微分方程(ODE)。通過比較深度學(xué)習(xí)中的問題,分析了數(shù)學(xué)建模的特點。需要注意的是,在下面的分析中,“嵌入”表示數(shù)學(xué)模型的參數(shù),比如微分方程的自由度集合。說明:每個數(shù)學(xué)模型都是基于科學(xué)家對客觀事物的描述,建模過程包含了數(shù)據(jù)科學(xué)家對客觀事物的描述動機(jī)和深刻理解。比如對物理運動的描述,“嵌入”包括物體質(zhì)量、運動速率和坐標(biāo)空間,不涉及抽象矢量。大數(shù)據(jù)需求:數(shù)學(xué)建模的大部分突破不需要基于龐大的數(shù)據(jù)集。無監(jiān)督學(xué)習(xí):它也不適用于數(shù)學(xué)建模。零樣本學(xué)習(xí):一些隨機(jī)微分方程(如幾何布朗運動)可以應(yīng)用于金融、生物或物理領(lǐng)域,只需要對參數(shù)進(jìn)行重命名。對象生成:不限,只要采樣參數(shù)即可。操作:不限,只需操作參數(shù)即可。理論:數(shù)百年的科學(xué)基礎(chǔ)。
我們之所以不用微分方程來解決所有問題,是因為對于大規(guī)模的復(fù)雜數(shù)據(jù),微分方程的性能要比深度學(xué)習(xí)模型差很多,這也是深度學(xué)習(xí)發(fā)展迅速的原因。但是,我們?nèi)匀恍枰斯?shù)學(xué)建模。把機(jī)器學(xué)習(xí)和人工建模方法結(jié)合起來。
在處理復(fù)雜數(shù)據(jù)時,如果能夠?qū)⑿阅芰己玫纳窠?jīng)網(wǎng)絡(luò)與人工建模方法相結(jié)合,則可在一定程度上解決可解釋性、生成和操作對象的能力、無監(jiān)督特征學(xué)習(xí)和零樣本學(xué)習(xí)等問題。例如,視頻1介紹了一種用于人像的特征提取方法。
對于微分方程等人工建模方法,圖像處理比較困難,但通過與深度學(xué)習(xí)相結(jié)合,上述模型讓我們可以生成和操作物體,可解釋性很強。最重要的是,該模型可以在其他數(shù)據(jù)集上做同樣的工作。這個模型的唯一問題是建模過程不是完全無人監(jiān)管的。此外,在對象的操作上還有一個重要的改進(jìn),就是當(dāng)我改變“胡子”的特征時,程序會自動讓整張臉變得更像一個男人,這意味著雖然模型中的特征是可解釋的,但這些特征是相關(guān)的,換句話說,它們是耦合在一起的。β -VAE
有一種方法可以幫助我們實現(xiàn)解耦表示,即嵌入中的每個元素對應(yīng)單個影響因素,嵌入可以用于分類、生成和零樣本學(xué)習(xí)。該算法是由DeepMind實驗室基于變分自編碼器開發(fā)的。與重建損失函數(shù)相比,該算法更注重潛在分布與先驗分布之間的相對熵。
更多細(xì)節(jié),請閱讀貝塔-https://openreview.net/forum·VAE的論文?id = sy 2 fzu 9 GL);也可以參考本視頻2中的介紹,詳細(xì)講解一下beta-VAE的內(nèi)在思想,以及這種算法在監(jiān)督學(xué)習(xí)和強化學(xué)習(xí)中的應(yīng)用。
β-VAE可以從輸入數(shù)據(jù)中提取影響變量的因素,包括物理運動的方向、物體的大小、顏色和方向等。在強化學(xué)習(xí)的應(yīng)用中,該模型可以區(qū)分目標(biāo)和背景,并且可以在現(xiàn)有訓(xùn)練模型的基礎(chǔ)上,在實際環(huán)境中進(jìn)行零樣本學(xué)習(xí)。實驗過程
我主要研究模型在醫(yī)療和金融領(lǐng)域的應(yīng)用。在這些領(lǐng)域的實際問題中,上述模型可以在很大程度上解決模型解釋、人工數(shù)據(jù)生成和零樣本學(xué)習(xí)等問題。因此,在接下來的實驗中,我使用了beta-VAEs模型來分析心電圖(ETC)數(shù)據(jù)和比特幣(BTC)價格數(shù)據(jù)。這個實驗的代碼可以在Github上找到。
首先,我使用veta-VAE(一種非常簡單的多層神經(jīng)網(wǎng)絡(luò))對PTB診斷數(shù)據(jù)中的心電圖數(shù)據(jù)進(jìn)行建模,該數(shù)據(jù)包含三種變量:心電圖圖、每個人隨時間變化的脈搏數(shù)據(jù)和診斷結(jié)果(即是否有梗死)。VAE訓(xùn)練時,歷元大小設(shè)置為50,瓶頸大小設(shè)置為10,學(xué)習(xí)率為0.0005,容量參數(shù)設(shè)置為25(參數(shù)設(shè)置參考本GitHub項目)。模型的輸入是心跳。訓(xùn)練后,模型學(xué)習(xí)了影響數(shù)據(jù)集中變量的實際因素。
下圖是我使用其中一個單一特征操作心跳數(shù)據(jù)的過程,其中黑線代表心跳,使用的特征數(shù)據(jù)值從-3逐漸增加到3。在此過程中,其他功能保持不變。不難發(fā)現(xiàn),第五個特征對心跳的形式影響很大,第八個特征代表心臟病的情況(藍(lán)色心電圖代表梗塞的癥狀,紅色則相反),第十個特征可以輕微影響脈搏。
圖:解耦心電圖的心跳
不出所料,金融數(shù)據(jù)的實驗效果并沒有那么明顯。該模型的訓(xùn)練參數(shù)類似于先前實驗的參數(shù)。使用的數(shù)據(jù)是2017年收集的比特幣價格數(shù)據(jù)集,包含一個180分鐘的比特幣價格變化數(shù)據(jù)。預(yù)期的實驗效果是用貝塔-VAE學(xué)習(xí)一些標(biāo)準(zhǔn)的金融時間序列模型,比如均值回歸的時間序列模型,但是在實際中很難解釋得到的表征。在實驗結(jié)果中可以發(fā)現(xiàn),第五個特征改變了輸入時間序列的趨勢,第二、第四、第六個特征增加/減少了時間序列不同階段的波動,或者使其更穩(wěn)定或者更動蕩。
圖:比特幣收盤價脫鉤
多個對象的解耦
假設(shè)圖像中有多個物體,我們想找出每個物體的影響因素。下面的動
展示了模型的效果。
摘要
以下是對機(jī)器學(xué)習(xí)中問題列表的beta-VAE模型的總結(jié):可解釋:特征是完全可解釋的,我們只需要驗證每個特定的嵌入元素。數(shù)據(jù)需求大:因為模型屬于深度學(xué)習(xí)框架,所以數(shù)據(jù)需求還是很大的。無監(jiān)督學(xué)習(xí):可以實現(xiàn)完全的無監(jiān)督學(xué)習(xí)。零樣本學(xué)習(xí):可以進(jìn)行,本文展示的強化學(xué)習(xí)的應(yīng)用就屬于這一類。對象生成:像普通VAE一樣容易對參數(shù)進(jìn)行采樣。操作:你可以很容易地操作任何感興趣的變量。理論:待研究。
上述模型幾乎具備了數(shù)學(xué)建模的所有優(yōu)質(zhì)特征,同時也具備了深度學(xué)習(xí)在分析復(fù)雜數(shù)據(jù)時的高準(zhǔn)確率。那么,如果能以完全無監(jiān)督的方式從復(fù)雜數(shù)據(jù)中學(xué)習(xí)到如此好的表示結(jié)果,是否意味著傳統(tǒng)數(shù)學(xué)建模的終結(jié)?如果一個機(jī)器學(xué)習(xí)模型可以建立一個復(fù)雜的模型,而我們只需要特征分析,那我們還需要人工建模嗎?這個問題有待討論。
下面是本文視頻的網(wǎng)站鏈接和百度網(wǎng)盤鏈接。供參考:視頻1:鏈接:https://youtu.be/O1by05eX424百度網(wǎng)盤:鏈接:https://pan.baidu.com/s/11qsgCVlRF0R4jm7ZLlzF2w提取代碼:f76s視頻2:鏈接:https://youtu.be/ yv 698 fi 2 xze百度網(wǎng)盤:鏈接:https://pan.baidu.com/s/153FBz8YWaw3PWrqJAbPj2A提取代碼:ee8v
原始鏈接:
https://towardsdatascience . com/gans-vs-odes-the-end-of-mathematical-modeling-EC 158 f 04 ACB 9
(本文為AI技術(shù)大本營整理文章,轉(zhuǎn)載請聯(lián)系微信1092722531)