生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

“深耕科技前沿動態,解讀科技背後真相,瞄準科技產品評測”

2021 年 11 月 1 日至 11 月 2 日,三星在線上舉行為期兩天的

2021三星人工智慧論壇(Samsung AI Forum 2021)

。今年是論壇舉辦的第 5 年,主題為「未來的人工智慧研究」,聚集了世界知名的人工智慧領域學者和行業專家,交流思想、見解和研究成果,探討人工智慧未來的方向。

三星人工智慧論壇第一天的主題演講由蒙特利爾大學的 Yoshua Bengio 教授發表,Bengio 也是三星人工智慧論壇的聯合主席,是三星人工智慧教授。在題為

GFlowNets for Scientific Discovery

的主題演講中,Bengio 提出了一種名為 GFlowNets 的新演算法,

不侷限於在單一性質指標下尋找某一個最佳匹配的分子,而是將目標放大,基於生成模型,學習到滿足性質指標的足夠好的多種分子候選,更一般地說,是滿足此性質指標的分子結構的機率分佈函式。

也就是說,結合生成模型來學習科學實驗資料,GFlowNets 使得獲取的可行實驗設定不侷限於在單一的量化目標下的單一候選,而可以生成多樣化的實驗候選分佈,不僅可以提高對科學實驗和測試資料的預測精度,更重要的是提高實驗設定的多樣性。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

實現這一點的關鍵在於

“流”

的建模,也就是從一個侯選開始,逐步取樣其它候選,同時在取樣過程中,要透過獎勵函式設定保證流入和流出是平衡的,也就是

流守恆

。具體而言,如上圖所示,就是從初始候選 s_0 到達終端候選 s_12 的獎勵,與從第二候選 s_1 到達終端候選 s_12 的獎勵,是相等的。

Bengio 表示,

這種取樣方式與 MCMC 有相似之處,但是相比之下少了很多隨機性,從而計算量大幅降低。

此外,這種基於歷史候選逐步生成新候選的取樣方式,與人類在進行科學探索時,參考前人成果的方式有相似之處,也就是閱讀和學習——構建世界模型——提出問題(實驗候選)——向現實世界提問和查詢——獲取反饋——修改世界模型——提出新問題。對於這種不同於傳統的、靜態的監督學習的正規化,Bengio 將其稱為

生成式主動學習

,它讓我們不再侷限於尋找“一個分子”,而可以尋找“一類分子”。

相關論文已經發表在arXiv上,程式碼也已經開源。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

專案地址:http://folinoid。com/w/gflownet/

Yoshua Bengio:蒙特利爾大學的全職教授,也是魁北克人工智慧研究所 Mila 的創始人和科學主任,全球公認的人工智慧領域的領先專家之一。

因在深度學習方面的開創性工作而聞名,與 Geoffrey Hinton 和 Yann LeCun 一起獲得了 2018年AM 圖靈獎。2019年,Yoshua Bengio 獲得了著名的基拉姆獎,並於 2021 年成為世界上被引用次數第二多的計算機科學家。

Yoshua Bengio 教授作為高階研究員共同指導 CIFAR 機器和大腦學習計劃,並擔任 IVADO 的科學總監。他是倫敦和加拿大皇家學會的會員,也是加拿大勳章的官員。

以下是報告全文,AI科技評論進行了不改變原意的整理。

1

論文摘要

這篇論文是關於

從一系列動作中學習生成物件(如分子圖)的隨機策略的問題,這樣生成物件的機率與該物件的給定正獎勵成正比。

雖然標準回報最大化趨向於收斂到單個回報最大化序列,但在某些情況下,我們希望對一組不同的高回報解決方案進行取樣。

例如,在黑盒函式最佳化中,當可能有幾輪時,每輪都有大量查詢,其中批次應該是多樣化的,例如,在新分子的設計中。也可以將其視為將能量函式近似轉換為生成分佈的問題。雖然 MCMC 方法可以實現這點,但它們很昂貴並且通常只執行區域性探索。

相反,訓練生成策略可以分攤訓練期間的搜尋成本並快速生成。使用來自時間差異學習的見解,我們提出了 GFlowNets ,

基於將生成過程視為流網路的觀點,使得處理不同軌跡可以產生相同最終狀態的棘手情況成為可能,

例如,有很多方法可以順序地新增原子以生成一些分子圖。我們將軌跡集轉換為流,並將流一致性方程轉換為學習目標,類似於將 Bellman 方程轉換為時間差分方法。

我們證明了提議目標的任何全域性最小值都會產生一個策略,該策略從所需的分佈中取樣,並證明 GFlowNets 在獎勵函式有多種模式的簡單域和分子合成任務上的改進效能和多樣性。

2

引言

強化學習 (RL) 中預期回報 R 的最大化通常是透過將策略 π 的所有機率質量放在最高回報的動作序列上來實現的。在本文中,我們研究了這樣一種場景,

我們的目標不是生成單個最高獎勵的動作序列,而是取樣軌跡分佈,其機率與給定的正回報或獎勵函式成正比。

這在探索很重要的任務中很有用,即我們想從返回函式的前導模式中取樣。這相當於將能量函式轉化為相應的生成模型的問題,其中要生成的物件是透過一系列動作獲得的。透過改變能量函式的溫度(即乘法縮放)或獲取返回的冪,可以控制發生器的選擇性,即僅在低溫下從最高模式附近產生或探索更多更高的溫度。

這種設定的一個激勵應用是迭代黑盒最佳化,其中學習者可以訪問一個 oracle,該 oracle 可以為每一輪的大量候選者計算獎勵,例如,在藥物發現應用中。當 oracle 本身不確定時,生成的候選者的多樣性尤其重要,比如,它可能由細胞檢測組成,這是臨床試驗的廉價代理,或者它可能由對接模擬的結果組成(估計候選者小分子與目標蛋白結合),這是更準確但更昂貴的下游評估(如細胞檢測或小鼠體內檢測)的代表。

當呼叫 oracle 很昂貴時(例如涉及生物實驗),Angermueller 等人(2020年)已證明在此類探索環境中應用機器學習的標準方法是獲取已經從 oracle 收集的資料(例如一組( x, y) 對,其中 x 是候選解,y 是來自 oracle 的 x 的標量評估)並訓練一個監督代理 f(被視為模擬器),它從 x 預測 y。函式 f 或 f 的變體包含其值的不確定性,如貝葉斯最佳化(Srinivas 等人,2010 年;Negoescu 等人,2011 年),然後可以用作獎勵函式 R 來訓練生成模型或一項政策,這將為下一次實驗測定產生一批候選物。

搜尋使 R(x) 最大化的 x 是不夠的,因為我們希望為一批查詢取樣具有高 R 值的一組代表性 x,即圍繞 R(x) 的模式。請注意,存在獲得多樣性的替代方法,例如,使用批次貝葉斯最佳化(Kirsch 等人,2019)。所提出的方法的一個優點是計算成本與批次的大小呈線性關係(與比較候選對的方法相反,這至少是二次的)。由於可以使用合成生物學對十萬個候選物進行分析,線性縮放將是一個很大的優勢。

因此,在本文中,

我們專注於將給定的正獎勵或回報函式轉換為生成策略的特定機器學習問題,

該策略以與回報成正比的機率進行取樣。在上面提到的應用中,我們只在生成一個候選後才應用獎勵函式,即除了終端狀態外,獎勵為零,返回的是終端獎勵。我們處於 RL 所謂的情節環境中。

我們的方法將給定狀態下分配給動作的機率視為與節點為狀態的網路相關聯的流,而該節點的輸出邊是由動作驅動的確定性轉換。進入網路的總流量是終端狀態(即分割槽函式)中獎勵的總和,可以顯示為根節點(或開始狀態)的流量。我們的演算法受到 Bellman 更新的啟發,並在流入和流出每個狀態的流入和流出流量匹配時收斂。選擇一個動作的機率與對應於該動作的輸出流成正比的策略被證明可以達到預期的結果,即取樣一個終端狀態的機率與其獎勵成正比。

此外,我們表明由此產生的 RL 設定是離策略的;即使訓練軌跡來自不同的策略,只要它有足夠大的支援,它也會收斂到上述解決方案。本文的主要貢獻如下:

我們提出了 GFlowNets ,這是一種基於流網路和本地流匹配條件的非歸一化機率分佈的新生成方法:

進入狀態的流必須匹配輸出流。

我們證明了 GFlowNets 的關鍵特性,包括流匹配條件(許多訓練目標可以提供)與生成的策略與目標獎勵函式的匹配結果之間的聯絡。我們還證明了它的離線特性和漸近收斂性(如果訓練目標可以最小化)。此外,我們還證明了Buesing 等人之前(2019 年)將生成過程視為一棵樹,當存在許多可導致相同狀態的動作序列時,該工作將失敗。

我們在合成數據上證明了從尋求一種回報模式,而是尋求對整個分佈及其所有模式進行建模的有用性。

我們成功將 GFlowNet 應用於大規模分子合成領域,並與 PPO 和 MCMC 方法進行了對比實驗。

3

演講全文

今天,我想向大家介紹一種

用於科學發現的新機器學習工具 GFlowNets

。在人們所謂的黑盒最佳化,或者應該稱為黑匣子探索的背景下,GFlowNets 可以應用於科學發現的許多領域,比如,發明新藥物、發現新材料或者探索未知黑盒過程的良好控制設定

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

我採用這種方法的動機之一,是在因果發現的背景下發現良好的因果模型和對觀察的良好解釋。在這些環境中,我們擁有一個 oracle,或一個黑匣子,或現實世界,或一個實驗裝置,我們可以對它進行查詢,進行試驗,或者可以嘗試輸入 x 的一些配置。

這些輸入是查詢 x,它們進入這個黑匣子,然後我們得到一個輸出 f(x)。f 是一個標量,是我們選擇的 x 的好壞指標。例如,一種分子的某個性質有多好?答案一般透過實驗分析得到。我們不知道 f 裡面發生了什麼,但我們想找到 f 的高值。也就是說,我們想找到使得 f 很大的 x。更一般地說,

我們希望獲得大量好的解決方案。

這裡還涉及到一個“多樣性”的概念,以及一個“探索”的概念,因為我們將能夠透過許多路由多次查詢該 oracle。

最初,當我們不太瞭解 f 時,我們更多處於探索模式。我們將嘗試不同的 x 值,並讓學習器對 f 內部發生的事情有所瞭解。在這些過程即將結束時,從而獲得有限資訊時,我們可能更多處於強化學習的“利用”模式

基於池的主動學習

因此,這種方法與強化學習之間存在聯絡,但也存在差異,並與主動學習有關。經典的主動學習,也稱為基於池的主動學習(Pool-based Active Learning),就是這樣工作的。我們有一個像上述一樣的 oracle,它是一個從輸入 x 到某個標量的函式。我們也有一個例子池 s,我們不知道答案,並希望呼叫 oracle 來找出答案。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

所以在主動學習的每個階段,學習器都會主動提出問題。

而在傳統的機器學習中,我們只是觀察一組例子,然後從中學習。

在這裡,除了已有的例子,我們還可以提出問題。例如,“對於一張圖片,正確的標籤是什麼?”這就是主動學習。

這種方法的問題在於,在許多情況下,我們並沒有一組固定的x配置。相反,我們希望能夠在高維空間中提出任何問題,但這又可能遭遇指數爆炸。

我們從主動學習文獻中學到的重要教訓是如何選擇這些查詢,這裡的基本思想是:我們想要估計預測變數f的不確定性。換句話說,

對於要估計的函式,我們希望選擇能夠提供儘可能多資訊的問題。

正如我所說,

基於池的主動學習的問題是無法窮舉

,例如,無法窮舉所有的分子,然後只需查詢那些具有高不確定性的分子。我們需要以某種方式處理數量呈指數級增長的可能問題。

生成式主動學習

所以,我提議遵循的原則是生成式主動學習(Generative Active Learning),這是本次演講最重要的內容

當學習器可以選擇其希望現實世界提供答案的問題時,應該進行哪些實驗?

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

在高維空間中,一個不錯的方案是:

訓練一個生成模型,該模型將對好問題進行取樣。

要怎麼訓練這個模型呢?首先,我們觀察現實世界,然後提出一些問題,接下來進行一些實驗,將這些實驗結果載入到一個數據集中。

因此,有了該資料集,我們就可以進行傳統的機器學習方法。我們可以學習一個模型,比如給定 x 預測 y,我們也可以使用該模型來篩選潛在問題。

根據該模型,如果我們發現一個問題得分很高,比如很高的不確定性,那麼這可能是一個好問題。

正如我所說,困難在於潛在的問題太多了。因此,僅憑預測候選實驗的好壞程度是不夠的,所以我們要訓練這個生成模型。不過,我們將以一種與通常的生成模型不太相同的方式來訓練它。

通常的訓練生成模型的方式是利用一組固定的例子。但在這裡,我們有一個由世界模型計算的函式,它會告訴我們特定的實驗有多大用處。我們將採用這種特殊的方式來訓練生成模型,尋找生成具有高f值的配置。

可能有很多方法可以做到這一點,

但如果目標不僅僅是最佳化,而是找到不同的好的解決方案,那麼合理的做法就是將分數換算。接下來,我們將基於世界模型獲得一種獎勵函式,

使得生成模型不是最大化獎勵,而是獲得具有高回報的樣本問題。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

因此,以與獎勵成正比的機率對它們進行取樣。可以定義任何我們想要的獎勵,那麼這個解決方案就合適了。但現在有一個數學問題:

如何將獎勵函式轉換為生成模型,使得這個生成模型可以以與該獎勵函式成正比的機率進行取樣?

原則上,我們可以將該函式寫下來。P_T(x) 是從生成模型中取樣的機率,應該等於 R(x) ,即對所有可能的獎勵進行歸一化。但歸一化是很困難的,這是我們首先遇到的問題。機率工具箱中有一個工具原則上可以做到這一點,它被稱為蒙特卡羅馬爾科夫鏈。

唯一的問題是,在這些高維空間中,對於我們通常關心的資料型別,這種 MCMC 方法可能非常慢,事實上,由於所謂的模式混合挑戰,很難真正找到一組多樣化的解決方案。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

MCMC 方法的工作方式是從初始猜測開始。它們會對初始猜測做一些小改變,然後通常會接受或拒絕這些改變,這樣我們就會傾向於朝著更可能的配置、更高的獎勵配置邁進,如果用正確的數學方法做到這一點,最終,樣本鏈就會收斂到來自正確分佈的樣本,但這個過程很長。

事實上,讓這條鏈訪問所有模式可能需要指數時間,或者先定位大部分模式是高機率獎勵的區域。問題在於,當兩種模式相距較遠時,從一種模式切換到另一種模式可能需要花費大量時間,就像穿越沙漠一樣。

如果是十年前,我會說這是不可行的。我們不能將 MCMC 應用於影象或分子之類的東西,或者有很多模式的高維物體,它們可以被大跨度分開,並且這些模式僅佔據極小的體積,所以我們不能隨便嘗試。

但現在有了機器學習方法,我們可以使用機器學習來代替這種積累試驗而不從中提取有用資訊的盲目過程。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

因此,假設我們已經訪問了三種模式,如我們在右側所見。幸運的是,分佈中有結構。事實上,學習器注意到我們發現的這三種模式都位於網格的點上。所以也許這個網格上的第 4 點是一個嘗試的好地方。這就是泛化,或者實際上被稱為系統泛化,我們在遠離資料的地方進行泛化。

GFlowNets

我們將使用機器學習從模式中泛化,通俗來說,我們基於它執行良好的地方看到的模式來猜測它執行良好的其他地方。我們一直在為此開發一種特殊的方法,我稱之為

GFlowNets,生成流網路,這是一種生成模型。

它用於生成問題或結構化的物件,所以我們構造物件的方式是透過一系列動作。我們不是一次性生成,而是在一系列動作中生成。例如,在分子的情況下,將碎片新增到圖形中,或者將值附加到一組高維值。

我們稱其為生成流網路的原因是它的整個理論基於對非規範化機率的思考

,哪些是流過路徑的流,其中一條路徑告訴我們如何構造一個問題,一個物件x。所有的路徑都從一個根節點開始,到同步節點結束,但是有不同的機率——我們將去選擇一些動作,然後選擇其他動作。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

如果看一下這個有向圖,它的路徑數量呈指數級增長。一般來說,以及我們想要獲得的是,我們按比例對物件進行取樣,對於給定的函式,是非歸一化機率的數量,或在類似於終端邊緣上流動——這是我們構造物件的最後一步,正是我們想要的獎勵函式。所以在某種程度上,我們可以做的是修復這些流。

我們如何安排其他邊緣的流?這意味著構建物件的策略,使得整個事物是一個流網路。如果我們能做到這一點,我們就會得到我們想要的,也就是說,取樣物件的機率將與給定的獎勵函式成正比。

這就是這張幻燈片要討論的內容。這是一系列取自即將線上的技術報告的定義和命題,所有這些數學都表明流程是對應的。對於事件的非歸一化機率,這些事件對應於軌跡上一組屬性,告訴我們如何構造一個物件,因此我們也可以定義與這些流的比率相對應的傳統機率。

最重要的是,

這些流有區域性條件,所以我們將學習一個流函式,學習一個新的網路,它輸出一個數字,一種表示有多少流透過特定邊緣或特定節點的分數。

如果我們檢視每個節點及其輸入邊和輸出邊,並且進入的流等於流出的流。如果所有節點都是如此,則流函式是正確的,它學到了一些東西,使整個包具有非常好的特性。

如果是這樣,那麼取樣物件的機率將與該獎勵函式成正比,並首先使流具有這些屬性,它是特定點發生的事情的區域性屬性,我們將這些軌跡上的狀態稱為當我們構建這些物件時的狀態。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

我們可以定義一個名為流匹配訓練目標的損失函式,還有其他可以定義的損失函式,但它們都是區域性的,只是說在此處的狀態 s_t 中一些流入的流應與退出的流的總和相匹配。好訊息是,如果從強化學習的角度考慮,這個訓練目標可以使用我們想要的任何方式取樣的軌跡來應用,只要它們為所有可能的軌跡賦予非零機率。換句話說,

這可以離線訓練,不必使用來自根據網路流量訪問的策略的樣本進行訓練。

現在,我想談一些很酷的東西和意想不到的東西。如果我們對這些定義進行推廣,那麼我們的神經網路預測流入邊緣或節點的流現在是有條件的,就像額外的變數輸入。當然我們可以計算條件機率,並使用條件策略進行取樣。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

這有點微不足道,但出乎意料的是,當我們以軌跡本身發生的事件為條件時,例如,以在問題構建過程中遇到過的狀態為條件,就可以計算一種現代化形式,也稱為自由能。換句話說,這個新網路現在可以輸出一個難以處理的數字。這意味著我們還可以計算條件機率,因為我們已經開始構建。我們處於動作序列中的特定點,可以計算和取樣從動作序列下游到達其他一些狀態的機率。

而且,事實上,我們可以用它來計算看起來難以處理的事情,例如熵、條件熵和互資訊。所有這些難以處理的數量,你可能會問我們怎麼可能計算出它們?如果與蒙特卡羅馬爾科夫鏈進行比較,又如何?我們是否遇到了一個根本上難以解決的問題。這裡可以根據能量函式或獎勵函式對機率進行取樣。我們已經把它變成了一旦網路經過訓練就很容易的問題。

生成式主動學習:讓科學實驗從尋找一個分子,變為尋找一類分子

我們已經把一個棘手的問題變成了一個簡單的問題。但是我們隱藏了訓練本身的複雜性,也就是所有這些我說的可以計算的結果。我們可以用正確的機率進行取樣,計算這些自由能和邊緣化。

所有這些結果只有在我們能夠訓練 GFlowNet 的情況下才有可能。因此,如果我們試圖學習的獎勵函式中沒有結構,就不可能了,正確訓練這個網路可能需要指數級的時間。但是如果有結構,如果模式以一種學習器可以泛化的方式組織起來,那麼就不需要訪問整個空間。例如,如果我們可以猜測,如果檢視 GAN 或 VAE 等等生成模型,它們會泛化到從未訪問過的畫素配置,並且不需要對其進行訓練。

它們不需要在所有可能的畫素配置上接受訓練,就可以做到這一點。生成之所以發生是因為底層世界有結構。所以我們可以使用這些結構來潛在地邊緣化高維聯合機率。我們可以使用這些機率來表示圖上集合的分佈,因為圖只是特殊型別的集合。

如果我們有資料,也可以訓練能量函式。到目前為止,我們已經有了這個 GFlowNet,它將學習從一個世界模型中為科學發現過程取樣問題,該模型可以提供獎勵函式。但是我們從哪裡得到這個獎勵函式呢?答案是從資料中訓練它。

現在事實證明,如果想學習高維空間上的聯合分佈,學習完整的聯合是很困難的。我們可以利用從能量函式中取樣的能力來訓練模型的能量函式。此外,還可以使用 GFlowNets 使用經典最大值(如梯度)從資料中訓練能量函式。在發現新分子的科學問題中,我們一直在對此進行一些實驗。

我們已經對此進行了訓練,並與我提到的 MCMC 方法以及強化學習方法進行了比較,我們發現,如果看一下回合順序,在訓練系統的地方訓練有監督的學習器,然後訓練 GFlowNet 使用新模型對新實驗進行取樣,作為獎勵函式,我們在 GFlowNet 訓練後傳送這些查詢。

我們發現,相比其他方法,GFlowNets 能更快地收斂到好的解決方案。此外,它還找到了更多樣化的解決方案。在一些我們知道模式在哪裡的問題中,我們可以計算 GFlowNets 是否找到了與現有模式接近的東西,但它甚至發現了更多模式。所以這是非常令人鼓舞的,我們對發現中的潛在應用感到非常興奮。

參考連結:

https://news。samsung。com/global/samsung-ai-forum-2021-day-1-ai-research-for-tomorrow

免責宣告:內容來源於網路,版權歸原作者所有。本文僅作資訊交流之目的,文中觀點不代表本號觀點。如涉及版權問題,請及時聯絡我們刪除。

想了解更多精彩內容,快來關注追求新知