旷视研究院夺得 NeurIPS 2021 ML4CO 组合优化比赛 Dual task 赛道第一
近日,頂級(jí)國(guó)際會(huì)議 NeurIPS 的 The Machine Learning for Combinatorial Optimization(以下簡(jiǎn)稱:ML4CO) 組合優(yōu)化比賽結(jié)果揭幕,來(lái)自曠視研究院的代表隊(duì)榮獲 Dual Task 賽道冠軍。
ML4CO 全稱基于機(jī)器學(xué)習(xí)的組合優(yōu)化,本次比賽由加拿大蒙特利爾理工大學(xué)和蒙特利爾大學(xué)機(jī)器學(xué)習(xí)研究所 (Mila) 主辦。Mila是全球領(lǐng)先的深度學(xué)習(xí)研究中心,由蒙特利爾大學(xué)約書亞·本希奧(Yoshua Bengio)教授創(chuàng)立。約書亞·本希奧也是“深度學(xué)習(xí)三巨頭”之一,曾在2018年奪得ACM圖靈獎(jiǎng)(又稱“計(jì)算機(jī)領(lǐng)域的諾貝爾獎(jiǎng)”)。
組合優(yōu)化問題介紹
假如我們周末要去跳蚤市場(chǎng)擺攤,最多可以帶 15 千克的商品,每個(gè)商品有對(duì)應(yīng)的重量和價(jià)值,我們?cè)撊绾芜x擇商品組合,才能使包里的東西總價(jià)值最大呢?
因?yàn)橛?5 件物品,每件物品帶還是不帶,合起來(lái)有 2 的 5 次方,即 32 種選擇。從這些選擇中找到最優(yōu)的解,這樣的“背包問題”就是一個(gè)組合優(yōu)化問題的典型例子。
一般的情況,把 n 個(gè)物品的重量和價(jià)值分別記為?W=(w1,w2,...,wn)?和?V=(v1,v2,...,vn),記背包中放置物品的總重量最大為?wmax。
從組合優(yōu)化的角度求解這個(gè)問題,就是將這個(gè)問題轉(zhuǎn)化為求解?X=(x1,x2,...,xi,...,xn),其中?xi 是一個(gè)只能取 0 或 1 的離散變量,代表第 i 個(gè)物品取或者不取。
我們希望得到的?X?能滿足背包重量?WXT≤Wmax?的限制,并最大化背包中物品的總價(jià)值?VXT。
得到“背包問題”的數(shù)學(xué)表達(dá)形式后,我們可以使用專業(yè)的組合優(yōu)化問題求解器(例如開源求解器 SCIP)求解上述問題。
組合優(yōu)化問題的求解在現(xiàn)實(shí)生活中同樣存在廣泛的應(yīng)用,例如上圖中的貨物運(yùn)輸問題,我們需要調(diào)度貨車從中央倉(cāng)庫(kù)運(yùn)輸貨物到門店,在滿足門店需求的限制下使得總運(yùn)輸成本最小。
實(shí)際中的組合問題具有搜索空間大(也意味著優(yōu)化空間大)、混合離散與連續(xù)變量等特點(diǎn)。
賽題介紹
(基于深度學(xué)習(xí)的組合優(yōu)化)
有很多組合優(yōu)化是 NP-hard 的,因此使用的一般是一些啟發(fā)式算法。近年來(lái),伴隨著深度學(xué)習(xí)在多個(gè)領(lǐng)域的成功應(yīng)用,使用深度學(xué)習(xí)技術(shù),從大量的數(shù)據(jù)中自主學(xué)習(xí)啟發(fā)式算法,輔助甚至替代求解器求解組合優(yōu)化問題,成為學(xué)界研究的一個(gè)新的熱點(diǎn)。
本次挑戰(zhàn)賽的重點(diǎn)是通過機(jī)器學(xué)習(xí)方法替代現(xiàn)有組合優(yōu)化求解器中的啟發(fā)式組件,來(lái)達(dá)到提升現(xiàn)有的組合優(yōu)化求解器求解性能的目的。
基于開源求解器? SCIP 和它的Python封裝 Ecole,本次比賽專門針對(duì)組合優(yōu)化問題中的混合整數(shù)線性規(guī)劃問題 (MILP)進(jìn)行優(yōu)化;
主辦方提供了三個(gè) MILP 數(shù)據(jù)集,它們來(lái)自完全不同的現(xiàn)實(shí)問題,參賽者可以針對(duì)這三個(gè)數(shù)據(jù)集提交不同的模型。
其中 Dual Task 賽道研究如何更快收緊 MILP 問題的約束邊界,參賽者需要最小化 Dual Integral(如下圖所示,最小化積分區(qū)域面積),模型效果最后轉(zhuǎn)化為一個(gè)累計(jì)的獎(jiǎng)勵(lì)函數(shù)。
曠視奪冠算法介紹
曠視研究院參賽隊(duì)針對(duì)三個(gè)數(shù)據(jù)集的不同特點(diǎn),在數(shù)據(jù)收集,模型結(jié)構(gòu)和訓(xùn)練策略等方面進(jìn)行改進(jìn),最終取得綜合排名第一(表中 Nuri 隊(duì))。
比賽官方提供的基準(zhǔn)算法使用了"Exact combinatorial optimization with graph convolutional neural networks"[1] 中的方法。
在該篇文獻(xiàn)中,作者將經(jīng)典的啟發(fā)式搜索算法"Strong Branching"[2] 作為專家知識(shí),使用圖神經(jīng)網(wǎng)絡(luò)模仿專家行為,訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)可以替換組合優(yōu)化求解器中的部分組件,并提升求解器的最終求解性能。
Nuri 隊(duì)最終提交的模型表現(xiàn)與Baseline在驗(yàn)證集上的對(duì)比如下表所示。
"Anonymous" Benchmark
針對(duì)基準(zhǔn)方法中收集的訓(xùn)練數(shù)據(jù)和實(shí)際與求解器交互得到的測(cè)試數(shù)據(jù)分布不一致的問題,我們使用了數(shù)據(jù)聚合 (DA) 方法:
數(shù)據(jù)聚合從一個(gè)隨機(jī)初始化的模型開始,不斷讓新訓(xùn)練的模型與求解器交互,獲得新的訓(xùn)練數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行專家知識(shí)標(biāo)注,通過對(duì)模型和數(shù)據(jù)的不斷迭代,最終縮小訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)差異。
我們還修改了基準(zhǔn)中圖神經(jīng)網(wǎng)絡(luò)的卷積方式(CM),并通過添加 Dropout 層的方式避免數(shù)據(jù)過擬合,最終驗(yàn)證集的提升效果參考下圖 (DA 后數(shù)字代表模型和數(shù)據(jù)的交替迭代輪次)。
"Item?Placement"?Benchmark
對(duì)于 Item Placement 數(shù)據(jù)集,我們同樣使用數(shù)據(jù)聚合的方法,相較于基準(zhǔn)算法,表現(xiàn)有一定的提升。
我們進(jìn)一步對(duì)數(shù)據(jù)聚合訓(xùn)練出的多個(gè)模型集成,最終將模型在驗(yàn)證集的表現(xiàn)從 4992 提升至?7562。
如下圖所示,我們從驗(yàn)證集中取出一個(gè)問題作為示例,在 15 分鐘的時(shí)間限制內(nèi),集成后的模型獎(jiǎng)勵(lì)曲線要比基準(zhǔn)模型的獎(jiǎng)勵(lì)曲線上升更快。
更多方法細(xì)節(jié)將在 NeurIPS 后續(xù)活動(dòng)中公布。
參考文獻(xiàn):
[1] Exact combinatorial optimization with graph convolutional neural networks (NIPS 2019)
[2] Branching rules revisited (Operations Research Letters, 2005)
實(shí)習(xí)生招聘
本次冠軍隊(duì)由來(lái)自曠視研究院 AI 計(jì)算組的四位同學(xué)組成。AI 計(jì)算組此前產(chǎn)出了 DoReFa-Net(量化網(wǎng)絡(luò)),EAST(OCR),GeneGAN(圖像生成),LearningToPaint(強(qiáng)化學(xué)習(xí))和 RIFE (光流插幀) 等工作。
更多內(nèi)容請(qǐng)點(diǎn)擊文末“閱讀原文”,在知乎專欄了解詳情。
對(duì)組合優(yōu)化、強(qiáng)化學(xué)習(xí)、量化算法和 3D 建模、AI 插幀等方向?qū)嵙?xí)感興趣的同學(xué),歡迎投遞簡(jiǎn)歷,標(biāo)記“ 姓名+學(xué)校+年級(jí)+AIC 組實(shí)習(xí)生”,發(fā)送至?ur@megvii.com
聯(lián)系我們
如有任何問題,歡迎大家添加【曠視研究院小姐姐】微信,回復(fù)【學(xué)生交流群】與我們聯(lián)系哦!
總結(jié)
以上是生活随笔為你收集整理的旷视研究院夺得 NeurIPS 2021 ML4CO 组合优化比赛 Dual task 赛道第一的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java毕业生设计中小型饭馆餐饮管理系统
- 下一篇: Access 查询的IIF的写法