【導語】本文對傳統(tǒng)的人工數(shù)學建模和機器學習的優(yōu)缺點進行了介紹和比較,并介紹了一種將二者優(yōu)點相結合的方法——解耦表示學習。之后,作者利用 DeepMind 發(fā)布的基于解耦表示學習的 beta-VAE 模型,對醫(yī)療和金融領域的兩個數(shù)據(jù)集進行了探索,展示了模型效果,并提供了實驗代碼。
這篇文章會對傳統(tǒng)數(shù)學建模與機器學習建模之間的聯(lián)系進行討論。傳統(tǒng)數(shù)學建模是我們在學校里都學過的建模方法,該方法中,數(shù)學家們基于專家經驗和對現(xiàn)實世界的理解進行建模。而機器學習建模則是另一種完全不同的建模方式,機器學習算法以一種更加隱蔽的方式來描述一些客觀事實,盡管人類并不能夠完全理解模型的描述過程,但在大多數(shù)情況下,機器學習模型要比人類專家構建的數(shù)學模型更加精確。當然,在更多應用領域(如醫(yī)療、金融、軍事等),機器學習算法,尤其是深度學習模型并不能滿足我們需要清晰且易于理解的決策。
本文會著重討論傳統(tǒng)數(shù)學建模和機器學習建模的優(yōu)缺點,并介紹一個將兩者相結合的方法 —— 解耦表示學習 (Disentangled Representation Learning)。
如果想在自己的數(shù)據(jù)集上嘗試使用解耦表示學習的方法,可以參考 Github 上關于解耦學習的分享,以及 Google Research 提供的關于解耦學習的項目代碼。
深度學習存在的問題
由于深度學習技術的發(fā)展,我們在許多領域都對神經網絡的應用進行了嘗試。在一些重要的領域,使用神經網絡確實是合理的,并且獲得了較好的應用效果,包括計算機視覺、自然語言處理、語音分析和信號處理等。在上述應用中,深度學習方法都是利用使用線性和非線性轉換對復雜的數(shù)據(jù)進行自動特征抽取,并將特征表示為“向量”(vector),這一過程一般也稱為“嵌入”(embedding)。之后,神經網絡對這些向量進行運算,并完成相應的分類或回歸任務:

從特征提取和準確度來看,這種 “嵌入”的方法非常有效,但在許多方面也存在不足:
可解釋性:嵌入所使用的N維向量無法對模型分析的原理和過程進行很好的解釋,只有通過逆向工程才能找到輸入數(shù)據(jù)中對分析影響更大的內容。
數(shù)據(jù)需求量龐大:如果只有 10~100 個樣本,深度學習無法使用。
無監(jiān)督學習:大多數(shù)深度學習模型都需要有標簽的訓練數(shù)據(jù)。
零樣本學習:這是一個很關鍵的問題,基于一個數(shù)據(jù)集所訓練出的神經網絡,若不經過重新訓練,很難直接應用在另一個數(shù)據(jù)集上。
對象生成:除了 GANs(生成對抗網絡)以外,其他模型都很難生成一個真實的對象。
對象操作:難以通過嵌入調整輸入對象的具體屬性。
理論基礎:雖然我們已經掌握了比較通用的逼近理論,但這還不夠。
這些問題很難用機器學習框架來解決,但在最近,我們取得了一些新的進展。
數(shù)學建模的優(yōu)勢
在 20 年、50 年 甚至 100 年以前,大多數(shù)數(shù)學家都沒有遇到過上述問題。其中原因在于,他們主要關注數(shù)學建模(mathematical modeling),并通過數(shù)學抽象來描述現(xiàn)實世界中的對象和過程,如使用分布、公式和各種各樣的方程式。在這個過程中,數(shù)學家定義了我們在標題中提到的常微分方程(ordinary differential equations, ODE)。我們通過對比深度學習存在的問題,對數(shù)學建模的特點進行了分析。需要注意的是,在下面的分析中,“嵌入”代表數(shù)學模型的參數(shù),如微分方程的自由度集合。
可解釋性:每個數(shù)學模型都是基于科學家對客觀事物的描述而建立的,建模過程包含數(shù)據(jù)家對客觀事物的描述動機和深入理解。例如,對于物理運動的描述, “嵌入” 包括物體質量、運動速率和坐標空間,不涉及到抽象的向量。
數(shù)據(jù)需求量大:大多數(shù)數(shù)學建模上的突破并不需要基于巨大的數(shù)據(jù)集進行。
無監(jiān)督學習:對數(shù)學建模來說也不適用。
零樣本學習:一些隨機微分方程(如幾何布朗運動)可以應用于金融、生物或物理領域,只需要對參數(shù)進行重新命名。
對象生成:不受限制,對參進行采樣即可。
對象操作:不受限制,對參數(shù)進行操作即可。
理論基礎:上百年的科學基礎。
我們沒有使用微分方程解決所有問題的原因在于,對于大規(guī)模的復雜數(shù)據(jù)來說,微分方程的表現(xiàn)與深度學習模型相比要差得多,這也是深度學習得到飛速發(fā)展的原因。但是,我們仍然需要人工的數(shù)學建模。
將機器學習與基于人工的建模方法相結合
如果在處理復雜數(shù)據(jù)時,我們能把表現(xiàn)較好的神經網絡和人工建模方法結合起來,可解釋性、生成和操作對象的能力、無監(jiān)督特征學習和零樣本學習的問題,都可以在一定程度上得到解決。舉個例子,視頻1中呈現(xiàn)的是對于人像的特征提取方法。
對于微分方程和其他人工建模方法來說,圖像處理很難進行,但通過和深度學習進行結合,上述模型允許我們進行對象的生成和操作、可解釋性強,最重要的是,該模型可以在其他數(shù)據(jù)集上完成相同的工作。該模型唯一的問題是,建模過程不是完全無監(jiān)督的。另外,對于對象的操作還有一個重要的改進,即當我改變 ”胡須“ 這一特征時,程序自動讓整張臉變得更像男人了,也就是意味著,模型中的特征雖然具有可解釋性,但特征之間是相關聯(lián)的,換句話說,這些特征是耦合在一起的。
β -VAE
有一個方法可以幫助我們實現(xiàn)解耦表示,也就是讓嵌入中的每個元素對應一個單獨的影響因素,并能夠將該嵌入用于分類、生成和零樣本學習。該算法是由 DeepMind 實驗室基于變分自編碼器開發(fā)的,相比于重構損失函數(shù)(restoration loss),該算法更加注重潛在分布與先驗分布之間的相對熵。
若想了解更多細節(jié),可閱讀beta-VAE的論文(https://openreview.net/forum?id=Sy2fzU9gl);也可參考這個視頻2中的介紹,詳細解釋了 beta-VAE 的內在思想,以及該算法在監(jiān)督學習和強化學習中的應用。
beta-VAE 可以從輸入數(shù)據(jù)中提取影響變量的因素,提取的因素包括物理運動的方向、對象的大小、顏色和方位等等。在強化學習應用中,該模型可以區(qū)分目標和背景,并能夠基于已有的訓練模型在實際環(huán)境中進行零樣本學習。
實驗過程
我主要研究醫(yī)療和金融領域的模型應用,在這些領域的實際問題中,上述模型能夠在很大程度上解決模型解釋性、人工數(shù)據(jù)生成和零樣本學習問題。因此在下面的實驗中,我使用 beta-VAEs 模型對心電圖(ETC)數(shù)據(jù)和和比特幣(BTC)的價格數(shù)據(jù)進行了分析。該實驗的代碼在 Github上可以找到。
首先,我使用veta-VAE(一個非常簡單的多層神經網絡)對PTB診斷數(shù)據(jù)中的心電圖數(shù)據(jù)進行了建模,該數(shù)據(jù)包含三類變量:心電圖圖表,每個人隨著時間變化的脈搏數(shù)據(jù),以及診斷結果(即是否存在梗塞)。在 VAE 訓練過程中,epoch 大小設置為 50,bottleneck size 設置為 10,學習率為 0.0005,capacity 參數(shù)設置為 25(參數(shù)設置參考了這個GitHub項目)。模型的輸入是心跳。經過訓練,該模型學習到了數(shù)據(jù)集中影響變量的實際因素。
下圖展示了我使用其中一個單一特征對心跳數(shù)據(jù)進行操作的過程,其中黑線代表心跳,使用的特征數(shù)據(jù)值從 -3 逐漸增大至 3。在這一過程中,其他特征始終保持不變。不難發(fā)現(xiàn),第 5 個特征對心跳形式的影響很大,第 8 個代表了心臟病的情況(藍色心電圖代表有梗塞癥狀,而紅色則相反),第 10 個特征可以輕微地影響脈博。

圖:對心電圖的心跳進行解耦
正如預期的一樣,金融數(shù)據(jù)的實驗效果沒有這么明顯。模型的訓練參數(shù)設置與上一實驗相似。使用的數(shù)據(jù)為 2017 年收集的比特幣價格數(shù)據(jù)集,該數(shù)據(jù)集包含一個時間長度為 180 分鐘的比特幣價格變化數(shù)據(jù)。預期的實驗效果為使用 beta-VAE 學習一些標準的金融時間序列模型,如均值回歸的時間序列模型,但實際很難對所獲得的表示進行解釋。在實驗結果中可以發(fā)現(xiàn),第 5 個特征改變了輸入的時間序列的趨勢,第 2、4、6 個特征增加/減少了時間序列上不同階段的波動,或者說使其更加趨于穩(wěn)定或動蕩。

圖:對比特幣的收盤價格進行解耦
多個對象的解耦
假設在圖像中包含多個對象,我們想要找出每一個對象的影響因素。下面的動圖展示了模型的效果。


總結
下面針對于機器學習存在的問題列表對 beta-VAE 模型進行總結:
可解釋性:特征完全可解釋,我們只需要對每個具體嵌入的元素進行驗證。
數(shù)據(jù)需求量大:由于該模型屬于深度學習框架,數(shù)據(jù)需求量依然較大。
無監(jiān)督學習:可以實現(xiàn)完全的無監(jiān)督學習。
零樣本學習:可以進行,在文中展示的強化學習應用就屬于這一類。
對象生成:和普通的 VAE 一樣易于對參數(shù)進行采樣。
對象操作:可以輕松操作任何感興趣的變量。
理論基礎:有待研究。
上文的模型幾乎具備了數(shù)學建模的全部優(yōu)質特性,也具有深度學習在分析復雜數(shù)據(jù)時的高準確度。那么,如果能使用完全無監(jiān)督的方式,從復雜數(shù)據(jù)中學習到如此好的表示結果,是不是意味著傳統(tǒng)數(shù)學建模的終結?如果一個機器學習模型就可以對復雜模型進行構建,而我們只需要進行特征分析,那還需要基于人工的建模嗎?這個問題還有待討論。
-
計算機視覺
+關注
關注
9文章
1715瀏覽量
47641 -
數(shù)據(jù)集
+關注
關注
4文章
1236瀏覽量
26208 -
深度學習
+關注
關注
73文章
5599瀏覽量
124420
原文標題:什么是解耦表示學習?使用beta-VAE模型探究醫(yī)療和金融問題
文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
人工數(shù)學建模和機器學習的優(yōu)缺點進行介紹和比較
評論