同濟大學綜述論文:基於深度生成模型的藥物研發
利用人工智慧技術進行小分子設計以及新藥研發是製藥領域的熱點研究問題之一。人工智慧技術有望縮短藥物研發時間,減少藥物研發成本。近日,國際計算化學領域著名期刊 WIREs 系列刊物《WIREs Computational Molecular Science》發表同濟大學劉琦教授課題組長文,系統探討了基於深度生成模型(Deep Generative Models)進行藥物研發的計算問題。機器之心經授權對此論文進行編譯介紹,感興趣的讀者可檢視原英文論文。
論文:Advances and challenges in deep generative models for de novo molecule generation
論文連結:http://onlinelibrary.wiley.com/doi/10.1002/wcms.1395/abstract
摘要:分子的 de novo 生成需要按預期屬性生成新的或修正過的分子結構。 深度生成模型 與傳統機器學習方法中的判別模型不同,它利用深度學習模型強大的表徵學習能力,提供了直接生成預期分子的可能性。儘管 深度生成模型 在機器學習社群中一直被廣泛討論,但與分子的 de novo 生成相關的 深度生成模型 的計算問題還需要具體研究。本文簡潔深入地討論了在分子的 de novo 生成問題上應用 深度生成模型 的最新進展,特別強調了在這一特定領域成功應用深度生成網路所要面臨的重要挑戰。
1 引言
在計算分子科學中,新分子的 de novo 設計和結構與屬性分析是一個很重要的問題。近幾年,基於人工智慧的新方法,尤其是深度學習模型,在新分子的 de novo 設計與分析這一問題上展現出了光明的前景。深度學習模型通過級聯非線性特徵變換在訓練樣本上形成了抽象的表徵學習(如分子表徵),能夠有效提取任意輸入-輸出關係的基本特徵,從而促進分子計算科學中的定量構效關係(QSAR)分析。此外,這樣的深度表徵能力也促進了能夠處理分子的 de novo 生成問題的生成模型的發展。
分子的 de novo 生成需要按照預期屬性生成新的或修正過的分子結構。一般而言,解決這個問題離不開逆 QSAR 問題,即,要在已知 QSAR 模型的約束下生成新結構。逆 QSAR 問題的重點在於定義一個把分子活性對映到化合物描述符上的逆對映函式,然後將這個化合物描述符轉化為新的化合物結構。定義一個將描述符轉化為化學結構的顯式逆對映函式仍極具挑戰性;由於大部分正向轉換函式都是非線性的,因此獲得逆向對映十分困難。然而,與傳統機器學習方法中的判別模型不同, 深度生成模型 可以基於具有強大表徵學習能力的深度學習模型,在不使用顯式逆對映函式的情況下直接生成預期分子。這為分子的 de novo 生成開闢了一條新的道路。
儘管機器學習社群一直在廣泛討論 深度生成模型 ,但它們在分子計算科學中的具體應用卻尚未被開發。這說明缺乏針對分子 de novo 生成的 深度生成模型 相關計算問題的具體研究。本文針對在分子的 de novo 生成問題上應用 深度生成模型 的最新進展,提供了一個簡潔而又深入的探討。我們在此也特地強調了在這一特定領域成功應用 深度生成模型 所面臨的若干重要挑戰。
2 利用 深度生成模型 進行分子的 de novo 生成的最新進展
2.1生成模型與判別模型
我們從區分生成模型和判別模型開始討論。這兩者的主要區別在於分佈型別——判別模型直接學習條件概率分佈,而生成模型學習的是聯合概率分佈。就分子分析而言,如果要預測給定分子 x 的屬性 y,我們既可以用判別模型直接計算 P(y|x),也可以用生成模型計算 P(x,y)——再通過貝葉斯規則推導 P(y|x)。應用生成模型的優勢在於可以用它們以監督(即建模 P(x,y))或無監督(即建模 P(x))的方式推斷真實資料的分佈。這種學習資料分佈的方式可以用於資料模擬或新資料合成。
生成模型旨在學習訓練集的真實資料分佈以便生成具有變化的新資料點。但它不可能總是能以顯式或隱式的方式瞭解資料的確切分佈。因此,需要對與真實資料分佈相似的分佈進行建模。和傳統的淺層模型(如高斯混合模型和樸素貝葉斯模型)相比, 深度生成模型 利用了 深度神經網路 的強大力量,它旨在學習近似真實分佈的函式。下文討論了 深度生成模型 及其在分子的 de novo 生成方面的應用。
2.2 用於分子的 de novo 生成的 深度生成模型 分類
2.2.1 問題設定
就下列所有不同的 深度生成模型 而言,輸入資料集一般都包含 T 個帶有特定標籤的訓練分子,標記為 Line"/> ,其中 x_i 表示一般由特徵向量表示的分子(如 SMILES 表徵或結構分子指紋),y_i 表示分子活性的數值,或指向某個特定分子屬性的離散值。以下生成模型的目的是根據這些訓練資料生成特定的資料分佈,該分佈可用於資料取樣以及生成 N 個新分子
。這些分子應該來自於同樣的訓練域,它們屬性相似但分子結構不同。在實踐中,訓練資料的標籤 y_i 不是必須的,而整個訓練過程能夠以無監督的方式進行。
圖1:用於分子 de novo 生成的不同 深度生成模型 :(a) 基於自編碼器的模型;(b) 基於生成對抗網路的模型;(c) 基於迴圈神經網路的模型;(d) 與強化學習結合的混合模型
我們一般將 深度生成模型 分為四類,它們分別是:基於自編碼器的模型、基於生成對抗網路的模型、基於迴圈神經網路的模型以及將 深度生成模型 和強化學習結合在一起的混合模型(圖 1,表 1)。
2.2.2 基於自編碼器的模型:變分自編碼器和對抗自編碼器
自編碼器是一種針對無監督特徵表徵學習的、基於神經網路的架構。基本的自編碼器包括編碼器、解碼器以及距離函式。編碼器是高維輸入資料到低維表徵的對映,而解碼器則是在給定低維表徵的情況下對原始輸入的重建。距離函式量化了原始輸入和重建輸出之間偏差的損失資訊。但是基礎的自編碼器不能直接應用於分子的 de novo 生成,因為模型可能只學習到了一些訓練資料的顯式對映,而不是分子的泛化樣本函式。因此,這些模型要根據這一約束進行修改,如變分自編碼器或對抗自編碼器即需要從輸入資料中學習隱變數 z。變分自編碼器提供了一個公式,其中連續表徵 z 被解釋為概率生成模型中的隱變數。假設 P(z) 為連續表徵上的先驗分佈,Q(z|x) 是概率編碼分佈,P(x|z) 為概率解碼分佈。Q(z|x) 和 P(x|z) 的引數可以在變分自編碼器的訓練過程中通過反向傳播推斷出來(表 1a)。對變分自編碼器而言,我們一般假設隱變數 z 的先驗分佈 P(z) 必須遵循零均值化和單位方差的多元高斯分佈(圖 1a)。至於對抗自編碼器,它與變分自編碼器的差別在於其架構中添加了額外的判別器神經網路來強化編碼器 Q(z|x) 的輸出,使其遵循特定的目標分佈,同時解碼器的重構誤差被最小化(圖 1b)。這一想法借鑑了生成對抗網路模型的主流思想(圖 1c)。對這兩個模型來說,通過解碼器學到 P(x|z),即可以實現分子的 de novo 生成。
表 1 分子 de novo 生成的 深度生成模型 的分類
已經有研究者提出了一些在分子的 de novo 生成上應用 VAE 和 AAE 模型的研究(表 1)。通過 VAE 或 AAE 從 ZINC 分子資料庫定向取樣了 2 型多巴胺受體和 MCF-7 細胞系化合物,但沒有很好地記錄其模型生成能力,也沒有對這些模型進行比較。Lim 等人提出使用條件 VAE 生成有五個目標屬性的類藥性分子。Dai 等人通過在解碼器上引入句法和語義約束提出了一種新的句法導向的變分自編碼器(SD-VAE)來生成句法有效且語義合理的化合物。這種方法極具啟發性和創造性,因為在分子的 de novo 設計方面,生成合理的分子也是一個具有挑戰性的問題。和 VAE 相比,AAE 一般會更靈活,也更適用於分子的 de novo 生成,因為從理論上講,AAE 可以在不需要之前的高斯分佈要求的情況下擬合特定分佈。此外,AAE 中分子生成時的重構誤差也比 VAE 更低。但這兩種模型都缺少在大範圍訓練資料集上的綜合客觀的表現基準。
2.2.3 基於 GAN 的模型
GAN 是一個極具吸引力的 AI 模型,該模型由兩個在零和博弈中存在競爭關係的神經網路的框架實現。其中,一個網路生成候選資料(生成模型),另一個評估這些資料(判別模型)。一般而言,生成網路學習從潛在空間到想要的特定資料分佈的對映,而判別網路判斷真實的資料分佈和由生成器產生的候選資料的距離(圖 1c)。和基於 AE 的模型相比:1)通過同時最小化生成器和判別器的損失,GAN 可以具備更強的約束;2)和基於 AE 的模型相比,GAN 沒有先驗分佈的要求;3)基於 AE 的模型本質上還是側重於特徵表徵和隱變數的建模,生成任務是次要的。因此,為優化生成任務而生的 GAN,會更有效更直接地生成分子。儘管 GAN 廣泛應用於影象生成,但在 de novo 分子生成方面應用得很少(表 1)。在 RL 設定中提出了目標強化的生成對抗網路(ORGAN),這是 GAN 框架中第一個用於分子生成的研究工作。隨後提出了基於 ORGAN 框架的分子 GAN(MolGAN)模型,該模型的設計是為了解決在 ORGAN 中的分子圖表徵而非 SMILES 表徵的問題。我們推測將 GAN 應用於 de novo 分子生成的最大阻礙是通過維持兩個對抗過程的平衡來訓練 GAN。在訓練 GAN 時出現的這樣的問題常稱作模式崩塌(mode collapse)。基本思想是生成器可能會意外產生幾個完全相同的樣本(完全崩塌),或者是有一些共同屬性的相似的樣本(部分崩塌)。在這樣的情況下,生成器生成的樣本會呈現出很差的多樣性,這就限制了學習後的 GAN 的有用性。這在分子生成中是一個大問題,因為生成分子的多樣性是評估生成模型效能的一個重要指標。
也有人提出了一些改進 GAN 中模式崩塌(mode collapse)問題的辦法。有人將提出的不同形式的 GAN 收集在 GAN ZOO(https://github.com/hindupuravinash/the-gan-zoo)中,但對模型的訓練來說依舊存在巨大的挑戰。研究者熱切期望未來能解決這一問題並將 GAN 應用於 de novo 分子的生成過程中。
2.2.4 基於 RNN 的模型
基於 RNN 的模型被廣泛用於自然語言處理中的統計語言模型。最近的一些研究提出了將 RNN 用於 de novo 分子生成的方法(見表 1)。Segler 等人探索了通過首先訓練通用的先驗模型使用 RNN 生成針對特定目標的庫的可能性,接著,基於一小組針對特定目標的活性化合物對我們所關注的模型進行微調。這種遷移學習的理念在影象識別中得到了成功的應用。RNN 的基本架構維護一個內部狀態,這對於跟蹤序列中前面看到的符號是必要的。通過使用如長短期記憶(LSTM)單元和門控迴圈單元(如圖 1d)等微架構,RNN 的效能得到了很大的提高。為了將分子設計和自然語言處理聯絡起來,我們可以用一種序列形式表示分子,例如使用 SMILES 表徵。在大量的 SMILES 字串上進行訓練後,RNN 模型可以被用來生成新的沒有被包含在訓練集中的有效 SMILES 字串。在這種情況下,RNN 可以被看做是分子結構的生成模型。RNN 的應用已經成為近年來 de novo 分子生成的主流方式。與基於自編碼器(AE)和對抗生成網路(GAN)的模型相比,RNN 具有以下的優勢:(a)序列化的分子的 SMILES 表徵天生適用於 RNN 模型;(b)RNN 模型可用於處理各種長度的表徵,而基於自編碼器或生成對抗網路的模型通常要求分子由固定長度的向量表示;(c) 與訓練基於自編碼器和生成對抗網路的模型相比,訓練 RNN 模型較為容易一些。
2.2.5 將 深度生成模型 和強化學習相結合的混合模型
研究人員已經提出了一些將 深度生成模型 與強化學習相結合的混合模型用於 de novo 分子生成的方法(見表 1)。強化學習是用於解決動態決策問題的人工智慧的一類人工智慧演算法。在分子生成中使用強化學習的基本思想是通過強化學習引導或約束整個分子生成過程,以獲得所需的性質。在這一動態過程中,通常會設計出一個用於分子生成的生成模型,並用一個預測模型進行分子評估。評估結果會被作為獎勵或懲罰反饋給系統,從而引導生成器以一種互動的方式生成所需的分子(見圖 1e)。目前有兩種典型的將 深度生成模型 與強化學習相結合的模式,即包括 ORGAN 、MolGAN 在內的基於 GAN 的模型,以及基於 ANC 的(對抗性神經計算機)模型。前者是自然語言處理研究社群之前使用的SeqGAN模型的擴充套件,使用 RNN 或簡單的多層感知器作為核心生成器。後者是基於對抗性神經計算機的模型,包括基於對抗性閾值神經計算機(ATNC)的和基於增強對抗性神經計算機(RANC)的模型,它們使用可微神經計算機(DNC)作為核心生成器,比基於 GAN 的模型更有效。將 深度生成模型 和強化學習耦合的混合模型是未來深度生成 de novo 分子生成的方向,但這種較高的模型複雜度和模型訓練方法仍然是十分具有挑戰性的問題。
3 新分子生成領域的 深度生成模型 面臨的挑戰
3.1 分子表徵——阿基琉斯之踵
對於所有可以用於 de novo 分子生成的模型來說,恰當的分子表徵是應用程式成功的關鍵。不恰當的分子表徵可能成為 de novo 分子生成任務中的阿基琉斯之踵。在這個特定的應用場景中,分子表徵任務需要考慮的關鍵因素是:(a)表徵應該儘可能資訊豐富,以表示分子屬性;(b)表徵應該能夠容易地逆向生成分子式。如表 1 所示,我們總結了兩類目前用於生成分子的分子表示,包括基於 SMILE 表徵和基於分子圖表徵的 one-hot 編碼。
目前,大多數深層生成模型使用 SMILE 表徵和 one-hot 編碼來表示小分子。SMILE 是一種從分子圖推導而來的基於字串的表徵方式。因此,RNN 是處理此類表示的理想候選模型。RNN 模型的缺點是既要學習句法規則又要學習表徵的順序歧義。SMILE 字串是由基於圖的分子表示生成的,而在原始圖空間中工作可以去除額外開銷。最近的進展還包括直接應用 GAN 等其它 深度生成模型 來處理這種圖表徵。例如,MolGAN 是一種基於 GAN 的用於分子生成的 深度生成模型 ,專門用於處理圖表徵 [18 ]。Li 等人 [39] 還提出了多目標 de novo 藥物設計的兩種圖生成模型,即基於馬爾可夫過程的圖生成(MolMP)和基於 RNN 的圖生成(MolRNN)。然而,這兩種型別的表徵都不能完全、具體地表示分子資訊(見第 3.4 節)。新的和資訊豐富的分子表徵需要被繼續關注並應用於 深度生成模型 。
3.2 模型對比基準測試—如何評估生成樣本的合理性和多樣性
de novo 分子生成的模型對比基準測試和驗證是非常具有挑戰性的。驗證新生成的分子最直接的方法是合成它們並通過實驗驗證它們的預期特性。顯然,以這種方式定量評估生成模型的效能是不可能的。為此,現有的對比基準常常涉及到設計各種評價指標來評估生成樣本的質量和多樣性。在這裡,醫藥化學家和統計學家做出了很大的貢獻。通常,這些指標可以被分為四類,它們包括:(a)用於評估模型重構能力的指標,即模型在潛在空間中將資料編碼為一種表徵方法的能力,並通過對這種表徵解碼來重構輸入。這些指標特別適合對基於自編碼器的模型進行評估;(b)用來評估生成樣本多樣性的指標,包括 Fréchet Chembl——淨距離 [42],內部化學多樣性、外部的化學多樣性 [43,44];(c)用來評估生成樣本的有效性的指標,包括生成有效分子的比率;(d)用來評估生成分子特性的指標,包括分子成藥性,可合成性及可溶解性。多數現有模型通過使用 RDKit [45] 評估生成樣本的有效性來進行評估。一些其它的模型評估了生成樣本的多樣性(見表 1)。然而,目前的 深度生成模型 尚不能完全重現待生成的分子的自然化學多樣性 [43]。研究人員提出了一個協作平臺 DiversityNet(見表 2),它可以對化學領域的人工智慧生成模型進行對比基準測試。我們在這裡還提出了一些新的指標,這些指標從 GAN 社群借鑑,並期望可以用於分子生成模型進行對比基準測試,這些指標包括核最大平均差(MDD)、推土機距離(Wasserstein)和 1-近鄰分類器 [48]。這些指標本質上是為了評估兩種不同分佈的距離而設計的,在這裡可以將它們用於評估基於 GAN 的 de novo 分子生成模型。
表 2:與深度生成分子 de novo 設計相關的開源平臺
3.3 需要開源工具和平臺實現可重用性和可復現性
訓練用於 de novo 分子生成的 深度生成模型 是非常具有技術性和挑戰性的。迫在眉睫的是,我們需要開發開源工具和平臺實現可重用性和可復現性。表 2 列出了一些與 de novo 分子生成相關的開源平臺。其中,ChemTS 提供了一個 python 庫,用於使用 RNN 實現蒙特卡洛樹搜尋,用以 de novo 分子生成。ORGANIC 和 REINVENT 分別實現了相關文獻中提出的特定模型。當前所有可用的平臺都沒有被專門設計用來解決 de novo 分子生成問題,或者說他們只實現一個特定的演算法,但這限制了這些工具(見表 2)的廣泛使用。研究人員還需要再接再厲,設計出更全面、有效的工具來專門解決 de novo 分子生成問題。
3.4 從影象和文字生成到分子生成還有很長的路要走!
最後,這些深度學習模型起源於影象處理和文字挖掘研究社群。這些社群已經開發出了魯棒性很強的技術,我們可以借鑑這些技術來設計 de novo 分子。例如,最初用於大規模影象資料庫 ImageNET 的影象處理的基於遷移學習的微調技術已經被成功應用於 de novo 分子生成。雖然分子生成可以與影象和文字生成進行類比,但是將這些模型直接應用到分子上是非常具有挑戰性的,原因如下:(a)影象和文字的表徵與分子的表徵有很大的不同。用整個畫素或整個單詞的集合來具體地表示一個完整的影象或句子是很直接的,基於這些表徵的重構也是如此。同時,深度學習模型的抽象能力可以直接應用到影象和文字中進行特徵表示學習,從而避免了手動標註的特徵工程。然而,像 SMILE 模式這樣的分子表徵是手工設計的,並且是基於線性的,通常不能表示關於分子的其他有意義的資訊。目前,我們缺乏一個有效的分子表徵,包含適合 深度生成模型 解析的完整分子資訊。(b)影象和文字具有容錯性。修改單個畫素或單個字母一般不會影響對整個影象或文字的理解。然而,分子對錯誤是十分敏感的。原子水平的變化將極大地影響分子的性質,因此,為了獲得所需的性質,產生一個分子的生成模型必須是高精度的。
4 結語
總而言之,從影象和文字生成到分子生成還有很長的路要走!我們希望利用影象和文字挖掘社群開發的技術來設計更有針對性的深度學習技術,這些技術可以成功地被用來解決 de novo 分子生成的特定需求。這一特殊領域未來的前景是光明的,我們現在只是剛剛開始將複雜的人工智慧技術應用於藥物研發。
作者介紹:本論文由同濟大學劉琦教授課題組受邀撰稿完成,劉琦教授課題組以 AI 和機器學習計算技術為基礎,重點關注關於藥物研發、腫瘤精準治療及基因編輯領域的交叉計算問題研究,曾獲 2017 年吳文俊人工智慧自然科學獎三等獎。同時積極進行電腦科學和生物醫學交叉領域的科普宣傳。
ofollow,noindex" target="_blank">理論 同濟大學 深度生成模型 藥物研發 人工智慧
相關資料
Adversarial Autoencoder
對抗自編碼器通過使用對抗學習(adversarial learning)避免了使用 KL 散度。在該架構中,訓練一個新網路來有區分地預測樣本是來自自編碼器的隱藏程式碼還是來自使用者確定的先驗分佈 p(z)。編碼器的損失函式現在由重建損失函式與判別器網路(discriminator network)的損失函式組成。
來源: Makhzani, A., Shlens, J., Jaitly, N., Goodfellow, I., & Frey, B. (2015). Adversarial autoencoders. arXiv preprint arXiv:1511.05644. 機器之心
Artificial Intelligence
在學術研究領域,人工智慧通常指能夠感知周圍環境並採取行動以實現最優的可能結果的智慧體(intelligent agent)
來源: Russell, S., & Norvig, P. (2003). Artificial Intelligence: A Modern Approach.
Neural Network
(人工)神經網路是一種起源於 20 世紀 50 年代的監督式機器學習模型,那時候研究者構想了「感知器(perceptron)」的想法。這一領域的研究者通常被稱為「聯結主義者(Connectionist)」,因為這種模型模擬了人腦的功能。神經網路模型通常是通過反向傳播演算法應用梯度下降訓練的。目前神經網路有兩大主要型別,它們都是前饋神經網路:卷積神經網路(CNN)和迴圈神經網路(RNN),其中 RNN 又包含長短期記憶(LSTM)、門控迴圈單元(GRU)等等。深度學習是一種主要應用於神經網路幫助其取得更好結果的技術。儘管神經網路主要用於監督學習,但也有一些為無監督學習設計的變體,比如自動編碼器和生成對抗網路(GAN)。
來源:機器之心
Deep neural network
深度神經網路(DNN)是深度學習的一種框架,它是一種具備至少一個隱層的神經網路。與淺層神經網路類似,深度神經網路也能夠為複雜非線性系統提供建模,但多出的層次為模型提供了更高的抽象層次,因而提高了模型的能力。
來源:機器之心 Techopedia
Discriminative Model
在機器學習領域,有一種分類方法將模型分為判別模型和生成模型(generative model)兩種。 判別模型是一種對未知資料y與已知資料x之間關係進行建模的方法,是一種基於概率理論的方法。已知輸入變數x,判別模型通過構建條件概率P(y|x)分佈預測結果,或試圖直接從輸入x的空間學習對映到標籤{0,1}(如感知器演算法)的函式。生成模型則是考慮x與y之間的聯合分佈。 在實際應用中判別模型非常常見,如:邏輯迴歸(logistic regression),支援向量機(support vector machine), 提升方法(Boosting),條件隨機場(conditional random fields),神經網路(neural network),隨機森林(random forests)典型的生成模型則包括:高斯混合模型(Gaussian Mixture Model),隱馬爾科夫模型(hidden markov model),簡單貝葉斯(naive Bayes)等。不難看出兩者的區別。
來源: Wikipedia
Conditional probability (distribution)
條件概率分佈(Conditional Probability Distribution,或者條件分佈,Conditional Distribution )是現代概率論中的概念。 已知兩個相關的隨機變數X 和Y,隨機變數Y 在條件{X =x}下的條件概率分佈是指當已知X 的取值為某個特定值x之時,Y 的概率分佈。
來源: 維基百科
Deep generative model
深度生成模型基本都是以某種方式尋找並表達(多變數)資料的概率分佈。有基於無向圖模型(馬爾可夫模型)的聯合概率分佈模型,另外就是基於有向圖模型(貝葉斯模型)的條件概率分佈。前者的模型是構建隱含層(latent)和顯示層(visible)的聯合概率,然後去取樣。基於有向圖的則是尋找latent和visible之間的條件概率分佈,也就是給定一個隨機取樣的隱含層,模型可以生成資料。 生成模型的訓練是一個非監督過程,輸入只需要無標籤的資料。除了可以生成資料,還可以用於半監督的學習。比如,先利用大量無標籤資料訓練好模型,然後利用模型去提取資料特徵(即從資料層到隱含層的編碼過程),之後用資料特徵結合標籤去訓練最終的網路模型。另一種方法是利用生成模型網路中的引數去初始化監督訓練中的網路模型,當然,兩個模型需要結構一致。
Gated recurrent Units
門控迴圈單元(GRU)是迴圈神經網路(RNN)中的一種門控機制,與其他門控機制相似,其旨在解決標準RNN中的梯度消失/爆炸問題並同時保留序列的長期資訊。GRU在許多諸如語音識別的序列任務上與LSTM同樣出色,不過它的引數比LSTM少,僅包含一個重置門(reset gate)和一個更新門(update gate)。
Feature engineering
特徵工程是利用資料所在領域的相關知識來構建特徵,使得機器學習演算法發揮其最佳的過程。它是機器學習中的一個基本應用,實現難度大且代價高。採用自動特徵工程方法可以省去採用人工特徵工程的需求。Andrew Ng 說“挖掘特徵是困難、費時且需要專業知識的事,應用機器學習其實基本上是在做特徵工程。”
來源: Wikipedia
Generative Adversarial Networks
生成對抗網路是一種無監督學習方法,是一種通過用對抗網路來訓練生成模型的架構。它由兩個網路組成:用來擬合數據分佈的生成網路G,和用來判斷輸入是否“真實”的判別網路D。在訓練過程中,生成網路-G通過接受一個隨機的噪聲來儘量模仿訓練集中的真實圖片去“欺騙”D,而D則儘可能的分辨真實資料和生成網路的輸出,從而形成兩個網路的博弈過程。理想的情況下,博弈的結果會得到一個可以“以假亂真”的生成模型。
Gaussian Mixture Model
高斯混合模型(Gaussian Mixture Model,GMM)是單一高斯概率密度函式的延伸,就是用多個高斯概率密度函式(正態分佈曲線)精確地量化變數分佈,是將變數分佈分解為若干基於高斯概率密度函式(正態分佈曲線)分佈的統計模型。
來源: 維基百科
Gaussian distribution
正態分佈是一個非常常見的連續概率分佈。由於中心極限定理(Central Limit Theorem)的廣泛應用,正態分佈在統計學上非常重要。中心極限定理表明,由一組獨立同分布,並且具有有限的數學期望和方差的隨機變數X1,X2,X3,...Xn構成的平均隨機變數Y近似的服從正態分佈當n趨近於無窮。另外眾多物理計量是由許多獨立隨機過程的和構成,因而往往也具有正態分佈。
來源: Wikipedia
Generative Model
在概率統計理論中, 生成模型是指能夠隨機生成觀測資料的模型,尤其是在給定某些隱含引數的條件下。 它給觀測值和標註資料序列指定一個聯合概率分佈。 在機器學習中,生成模型可以用來直接對資料建模(例如根據某個變數的概率密度函式進行資料取樣),也可以用來建立變數間的條件概率分佈。
來源: 維基百科
Image processing
影象處理是指對影象進行分析、加工和處理,使其滿足視覺、心理或其他要求的技術。 影象處理是訊號處理在影象領域上的一個應用。 目前大多數的影象均是以數字形式儲存,因而影象處理很多情況下指數字影象處理。
來源: 維基百科
Machine Learning
機器學習是人工智慧的一個分支,是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、計算複雜性理論等多門學科。機器學習理論主要是設計和分析一些讓計算機可以自動“學習”的演算法。因為學習演算法中涉及了大量的統計學理論,機器學習與推斷統計學聯絡尤為密切,也被稱為統計學習理論。演算法設計方面,機器學習理論關注可以實現的,行之有效的學習演算法。
來源:Mitchell, T. (1997). Machine Learning. McGraw Hill.
Language models
語言模型經常使用在許多自然語言處理方面的應用,如語音識別,機器翻譯,詞性標註,句法分析和資訊檢索。由於字詞與句子都是任意組合的長度,因此在訓練過的語言模型中會出現未曾出現的字串(資料稀疏的問題),也使得在語料庫中估算字串的機率變得很困難,這也是要使用近似的平滑n元語法(N-gram)模型之原因。
來源: 維基百科
Multilayer Perceptron
感知機(Perceptron)一般只有一個輸入層與一個輸出層,導致了學習能力有限而只能解決線性可分問題。多層感知機(Multilayer Perceptron)是一類前饋(人工)神經網路及感知機的延伸,它至少由三層功能神經元(functional neuron)組成(輸入層,隱層,輸出層),每層神經元與下一層神經元全互連,神經元之間不存在同層連線或跨層連線,其中隱層或隱含層(hidden layer)介於輸入層與輸出層之間的,主要通過非線性的函式複合對訊號進行逐步加工,特徵提取以及表示學習。多層感知機的強大學習能力在於,雖然訓練資料沒有指明每層的功能,但網路的層數、每層的神經元的個數、神經元的啟用函式均為可調且由模型選擇預先決定,學習演算法只需通過模型訓練決定網路引數(連線權重與閾值),即可最好地實現對於目標函式的近似,故也被稱為函式的泛逼近器(universal function approximator)。
Natural language processing
自然語言處理(英語:natural language processing,縮寫作 NLP)是人工智慧和語言學領域的分支學科。此領域探討如何處理及運用自然語言;自然語言認知則是指讓電腦“懂”人類的語言。自然語言生成系統把計算機資料轉化為自然語言。自然語言理解系統把自然語言轉化為計算機程式更易於處理的形式。
來源: 維基百科
Naive Bayesian (classifier)
樸素貝葉斯是一種構建分類器的簡單方法。該分類器模型會給問題例項分配用特徵值表示的類標籤,類標籤取自有限集合。它不是訓練這種分類器的單一演算法,而是一系列基於相同原理的演算法:所有樸素貝葉斯分類器都假定樣本每個特徵與其他特徵都不相關。舉個例子,如果一種水果其具有紅,圓,直徑大概3英寸等特徵,該水果可以被判定為是蘋果。儘管這些特徵相互依賴或者有些特徵由其他特徵決定,然而樸素貝葉斯分類器認為這些屬性在判定該水果是否為蘋果的概率分佈上獨立的。
來源: 維基百科
Representation learning
在機器學習領域,表徵學習(或特徵學習)是一種將原始資料轉換成為能夠被機器學習有效開發的一種技術的集合。在特徵學習演算法出現之前,機器學習研究人員需要利用手動特徵工程(manual feature learning)等技術從原始資料的領域知識(domain knowledge)建立特徵,然後再部署相關的機器學習演算法。雖然手動特徵工程對於應用機器學習很有效,但它同時也是很困難、很昂貴、很耗時、並依賴於強大專業知識。特徵學習彌補了這一點,它使得機器不僅能學習到資料的特徵,並能利用這些特徵來完成一個具體的任務。
來源: Wikipedia
Reinforcement learning
強化學習是一種試錯方法,其目標是讓軟體智慧體在特定環境中能夠採取回報最大化的行為。強化學習在馬爾可夫決策過程環境中主要使用的技術是動態規劃(Dynamic Programming)。流行的強化學習方法包括自適應動態規劃(ADP)、時間差分(TD)學習、狀態-動作-回報-狀態-動作(SARSA)演算法、Q 學習、深度強化學習(DQN);其應用包括下棋類遊戲、機器人控制和工作排程等。
來源:機器之心
Transfer learning
遷移學習是一種機器學習方法,就是把為任務 A 開發的模型作為初始點,重新使用在為任務 B 開發模型的過程中。遷移學習是通過從已學習的相關任務中轉移知識來改進學習的新任務,雖然大多數機器學習演算法都是為了解決單個任務而設計的,但是促進遷移學習的演算法的開發是機器學習社群持續關注的話題。 遷移學習對人類來說很常見,例如,我們可能會發現學習識別蘋果可能有助於識別梨,或者學習彈奏電子琴可能有助於學習鋼琴。
來源:機器之心Pan, S. J., & Yang, Q. (2010). A survey on transfer learning. IEEE Transactions on Knowledge and Data Engineering, 22(10), 1345–1359.
zero-sum game
零和博弈,又稱零和遊戲或零和賽局,與非零和博弈相對,是博弈論的一個概念,屬非合作博弈。零和博弈表示所有博弈方的利益之和為零或一個常數,即一方有所得,其他方必有所失。在零和博弈中,博弈各方是不合作的。非零和博弈表示在不同策略組合下各博弈方的得益之和是不確定的變數,故又稱之為變和博弈。
來源: 維基百科
Variational autoencoder
變分自編碼器可用於對先驗資料分佈進行建模。從名字上就可以看出,它包括兩部分:編碼器和解碼器。編碼器將資料分佈的高階特徵對映到資料的低階表徵,低階表徵叫作本徵向量(latent vector)。解碼器吸收資料的低階表徵,然後輸出同樣資料的高階表徵。變分編碼器是自動編碼器的升級版本,其結構跟自動編碼器是類似的,也由編碼器和解碼器構成。在自動編碼器中,需要輸入一張圖片,然後將一張圖片編碼之後得到一個隱含向量,這比原始方法的隨機取一個隨機噪聲更好,因為這包含著原圖片的資訊,然後隱含向量解碼得到與原圖片對應的照片。但是這樣其實並不能任意生成圖片,因為沒有辦法自己去構造隱藏向量,所以它需要通過一張圖片輸入編碼才知道得到的隱含向量是什麼,這時就可以通過變分自動編碼器來解決這個問題。解決辦法就是在編碼過程給它增加一些限制,迫使其生成的隱含向量能夠粗略的遵循一個標準正態分佈,這就是其與一般的自動編碼器最大的不同。這樣生成一張新圖片就比較容易,只需要給它一個標準正態分佈的隨機隱含向量,這樣通過解碼器就能夠生成想要的圖片,而不需要給它一張原始圖片先編碼。
Deep learning
深度學習(deep learning)是機器學習的分支,是一種試圖使用包含複雜結構或由多重非線性變換構成的多個處理層對資料進行高層抽象的演算法。 深度學習是機器學習中一種基於對資料進行表徵學習的演算法,至今已有數種深度學習框架,如卷積神經網路和深度置信網路和遞迴神經網路等已被應用在計算機視覺、語音識別、自然語言處理、音訊識別與生物資訊學等領域並獲取了極好的效果。
來源: LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. nature, 521(7553), 436.
Refactoring
程式碼重構(英語:Code refactoring)指對軟體程式碼做任何更動以增加可讀性或者簡化結構而不影響輸出結果。 軟體重構需要藉助工具完成,重構工具能夠修改程式碼同時修改所有引用該程式碼的地方。在極限程式設計的方法學中,重構需要單元測試來支援。
來源: 維基百科
Text Mining
文字挖掘有時也被稱為文字探勘、文字資料探勘等,大致相當於文字分析,一般指文字處理過程中產生高質量的資訊。高質量的資訊通常通過分類和預測來產生,如模式識別。文字挖掘通常涉及輸入文字的處理過程,產生結構化資料,並最終評價和解釋輸出。'高品質'的文字挖掘通常是指某種組合的相關性,新穎性和趣味性。
來源: 維基百科
Long Short-Term Memory