劃的可解釋性與可組合技能:從黑盒到白盒的實(shí)踐路徑)
1. 從“黑盒”到“白盒”多智能體規(guī)劃為何需要可解釋技能如果你在深度強(qiáng)化學(xué)習(xí)或者多智能體系統(tǒng)領(lǐng)域摸爬滾打過(guò)一段時(shí)間大概率會(huì)對(duì)一個(gè)場(chǎng)景感到熟悉又頭疼你訓(xùn)練了一群智能體它們?cè)谀硞€(gè)復(fù)雜任務(wù)上比如《星際爭(zhēng)霸》的微操、《Dota 2》的團(tuán)戰(zhàn)或者一個(gè)模擬的物流倉(cāng)庫(kù)協(xié)作表現(xiàn)出了驚人的協(xié)同能力勝率或效率遠(yuǎn)超預(yù)期。但當(dāng)你試圖復(fù)盤(pán)它們?yōu)楹文艽虺瞿遣ň钆浜蠒r(shí)得到的答案往往是一堆難以解讀的神經(jīng)網(wǎng)絡(luò)權(quán)重或者一串意義模糊的動(dòng)作序列。你只知道“它們做到了”卻完全不知道“它們是如何思考并做到的”。這就是典型的“黑盒”困境——性能卓越但原理不明。RELIC這個(gè)工作直指的就是這個(gè)痛點(diǎn)。它的全稱是“Revealed Principles for Learning Interpretable Composable Skills in Multi-Agent Planning”翻譯過(guò)來(lái)是“用于學(xué)習(xí)可解釋、可組合技能的多智能體規(guī)劃揭示性原理”。這個(gè)名字有點(diǎn)拗口但拆解開(kāi)來(lái)每一個(gè)詞都指向了當(dāng)前多智能體學(xué)習(xí)領(lǐng)域最前沿、也最實(shí)際的需求。Interpretable可解釋意味著我們不僅要結(jié)果還要理解智能體決策的內(nèi)在邏輯Composable Skills可組合技能意味著我們希望智能體能像搭積木一樣將基礎(chǔ)的、可理解的技能模塊組合起來(lái)應(yīng)對(duì)復(fù)雜任務(wù)而Multi-Agent Planning多智能體規(guī)劃則是這一切發(fā)生的舞臺(tái)一個(gè)充滿不確定性、部分可觀測(cè)性和高維交互的復(fù)雜環(huán)境。為什么這如此重要想象一下如果你將這套系統(tǒng)用于真實(shí)的自動(dòng)駕駛車(chē)隊(duì)調(diào)度、工業(yè)機(jī)器人協(xié)同裝配或者電網(wǎng)協(xié)同控制。一個(gè)無(wú)法解釋的決策可能導(dǎo)致災(zāi)難性的后果并且無(wú)法追責(zé)和優(yōu)化。而可組合的技能則意味著系統(tǒng)的可維護(hù)性和可擴(kuò)展性大大增強(qiáng)——當(dāng)任務(wù)變化時(shí)你不需要重新訓(xùn)練整個(gè)系統(tǒng)或許只需要調(diào)整或新增幾個(gè)技能模塊。因此RELIC 所探討的遠(yuǎn)不止是一個(gè)學(xué)術(shù)問(wèn)題它是將多智能體系統(tǒng)從實(shí)驗(yàn)室“玩具”推向現(xiàn)實(shí)世界“工具”的關(guān)鍵一步。它試圖回答我們能否讓一群AI智能體不僅學(xué)會(huì)協(xié)作還能以人類(lèi)可以理解的方式告訴我們它們協(xié)作的“藍(lán)圖”是什么2. RELIC的核心思想從策略中“揭示”可解釋的規(guī)劃原理要理解RELIC做了什么我們首先要拋開(kāi)那些復(fù)雜的數(shù)學(xué)公式從直覺(jué)上把握它的核心思想。傳統(tǒng)的多智能體強(qiáng)化學(xué)習(xí)MARL方法無(wú)論是基于值函數(shù)如QMIX還是基于策略梯度如MAPPO其最終產(chǎn)出都是一個(gè)參數(shù)化的策略函數(shù)。這個(gè)函數(shù)接收觀測(cè)可能是全局的也可能是局部的輸出動(dòng)作。這個(gè)映射關(guān)系是高度非線性的隱藏在深度神經(jīng)網(wǎng)絡(luò)的層層變換中這就是“黑盒”的根源。RELIC 采取了一種截然不同的思路。它認(rèn)為在多智能體協(xié)作任務(wù)中智能體群體表現(xiàn)出的高級(jí)別行為背后往往遵循著一些相對(duì)簡(jiǎn)潔、可描述的“原則”或“規(guī)則”。這些原則可能是時(shí)序邏輯公式、是帶有條件的技能調(diào)用序列、或者是某種共享的協(xié)作協(xié)議。RELIC 的目標(biāo)不是直接學(xué)習(xí)一個(gè)端到端的策略而是從智能體與環(huán)境交互產(chǎn)生的軌跡數(shù)據(jù)中逆向“揭示”出這些潛在的、可解釋的規(guī)劃原理。我們可以用一個(gè)簡(jiǎn)單的團(tuán)隊(duì)競(jìng)技游戲來(lái)類(lèi)比。假設(shè)我們觀察一個(gè)訓(xùn)練有素的5人籃球隊(duì)伍的比賽錄像軌跡數(shù)據(jù)。一個(gè)端到端的模型可能會(huì)學(xué)習(xí)每個(gè)球員在每一幀畫(huà)面中該如何移動(dòng)、傳球或投籃但這個(gè)模型本身無(wú)法告訴我們球隊(duì)的戰(zhàn)術(shù)是什么。而RELIC試圖做的就是分析這些錄像然后告訴我們“看這支球隊(duì)在執(zhí)行一個(gè)‘擋拆Pick and Roll’戰(zhàn)術(shù)。原則是當(dāng)控球后衛(wèi)運(yùn)球至弧頂中鋒上前設(shè)立掩護(hù)原則A隨后控衛(wèi)根據(jù)防守情況選擇突破或分球原則B而其他隊(duì)員則進(jìn)行弱側(cè)拉開(kāi)和隨時(shí)準(zhǔn)備接應(yīng)原則C。” 這里揭示出的“擋拆”及其子原則就是可解釋、可組合的技能。知道了這些原則我們不僅可以理解球隊(duì)為何這么打還可以將這些原則擋拆、拉開(kāi)空間組合起來(lái)形成新的戰(zhàn)術(shù)。在技術(shù)實(shí)現(xiàn)上RELIC 通常會(huì)結(jié)合符號(hào)學(xué)習(xí)、程序歸納或神經(jīng)符號(hào)的方法。它可能包含以下關(guān)鍵組件軌跡采集首先通過(guò)一個(gè)基礎(chǔ)的多智能體強(qiáng)化學(xué)習(xí)算法或?qū)<已菔臼占罅砍晒Φ膮f(xié)作軌跡。技能抽象利用無(wú)監(jiān)督或弱監(jiān)督的方法從這些軌跡中自動(dòng)發(fā)現(xiàn)重復(fù)出現(xiàn)的、有意義的子序列或行為模式并將其抽象為離散的“技能”或“選項(xiàng)”。例如在機(jī)器人足球中可能是“短傳配合”、“圍搶”、“交叉跑位”。原理歸納這是RELIC的核心。它使用一個(gè)可解釋的模型如決策樹(shù)、邏輯規(guī)則集、概率圖模型或小型神經(jīng)網(wǎng)絡(luò)來(lái)學(xué)習(xí)這些技能在何時(shí)、由誰(shuí)、以何種條件被觸發(fā)和執(zhí)行。這個(gè)模型就是被“揭示”的規(guī)劃原理。它建立了從環(huán)境狀態(tài)或歷史到技能選擇的清晰映射關(guān)系。組合與驗(yàn)證學(xué)習(xí)到的原理和技能被組合成一個(gè)高層級(jí)的規(guī)劃器。這個(gè)規(guī)劃器不再輸出原始的低級(jí)動(dòng)作如每個(gè)關(guān)節(jié)的扭矩而是輸出技能標(biāo)識(shí)符。然后由每個(gè)技能對(duì)應(yīng)的低級(jí)控制器來(lái)執(zhí)行具體動(dòng)作。最后在環(huán)境中驗(yàn)證這個(gè)由可解釋原理驅(qū)動(dòng)的系統(tǒng)其性能是否能夠媲美甚至超越原來(lái)的“黑盒”策略。這個(gè)過(guò)程的關(guān)鍵在于最終我們得到的不是一個(gè)巨大的神經(jīng)網(wǎng)絡(luò)而是一套可能由幾十條規(guī)則、幾個(gè)技能模塊構(gòu)成的“說(shuō)明書(shū)”。這套說(shuō)明書(shū)是人類(lèi)可以閱讀、理解和修改的。3. 實(shí)現(xiàn)可解釋與可組合性的關(guān)鍵技術(shù)路徑理解了RELIC的思想我們來(lái)看看要實(shí)現(xiàn)它需要跨越哪些技術(shù)障礙以及可能的技術(shù)路徑是什么。這不僅僅是應(yīng)用某個(gè)現(xiàn)成的算法而是一套方法論。3.1 技能發(fā)現(xiàn)從連續(xù)軌跡中提取離散基元第一個(gè)挑戰(zhàn)是如何從連續(xù)、高維的動(dòng)作-觀測(cè)軌跡中自動(dòng)發(fā)現(xiàn)那些有意義的“技能”。這本質(zhì)上是一個(gè)時(shí)間序列分割與聚類(lèi)問(wèn)題。一種常見(jiàn)的方法是變分自編碼器VAE或它的時(shí)序版本。我們將軌跡片段例如過(guò)去k步的觀測(cè)和動(dòng)作編碼到一個(gè)潛空間然后在潛空間中進(jìn)行聚類(lèi)。屬于同一類(lèi)的軌跡片段被認(rèn)為在執(zhí)行同一種技能。例如在多個(gè)智能體圍捕獵物的場(chǎng)景中算法可能會(huì)自動(dòng)發(fā)現(xiàn)“迂回包抄”、“正面驅(qū)趕”、“合圍”等幾種不同的潛空間簇每個(gè)簇對(duì)應(yīng)一個(gè)技能。另一種思路是借鑒選項(xiàng)框架Option Framework。一個(gè)選項(xiàng)由三部分組成內(nèi)部策略執(zhí)行該技能時(shí)的低級(jí)策略、終止條件何時(shí)結(jié)束該技能、以及初始狀態(tài)集在何種狀態(tài)下可以啟動(dòng)該技能。我們可以通過(guò)最大化軌跡的互信息或某種多樣性目標(biāo)來(lái)學(xué)習(xí)一組多樣化的選項(xiàng)。在多智能體場(chǎng)景中選項(xiàng)可以是單個(gè)智能體的也可以是聯(lián)合的多個(gè)智能體協(xié)同執(zhí)行一個(gè)選項(xiàng)。注意技能發(fā)現(xiàn)的粒度至關(guān)重要。技能太細(xì)如“向左移動(dòng)一步”則失去了抽象意義可解釋性差技能太粗如“贏得比賽”則無(wú)法提供有效的規(guī)劃指導(dǎo)。通常需要根據(jù)任務(wù)先驗(yàn)或通過(guò)分層學(xué)習(xí)來(lái)調(diào)整粒度。3.2 原理學(xué)習(xí)構(gòu)建可解釋的決策模型當(dāng)我們將軌跡表示為技能序列后下一步就是學(xué)習(xí)支配這些技能選擇的“原理”。這里的核心是選擇一個(gè)本身具備可解釋性的模型。決策樹(shù)與規(guī)則集這是最直接的可解釋模型。我們可以將環(huán)境狀態(tài)如智能體相對(duì)位置、資源數(shù)量、敵方狀態(tài)等作為特征將當(dāng)前要執(zhí)行的技能作為標(biāo)簽訓(xùn)練一個(gè)決策樹(shù)。生成的樹(shù)形結(jié)構(gòu)或“if-then”規(guī)則例如“如果友方A在目標(biāo)點(diǎn)5米內(nèi)且敵方B距離大于10米則執(zhí)行技能‘護(hù)送’”非常易于人類(lèi)理解。集成方法如隨機(jī)森林可以提升性能但會(huì)犧牲部分可解釋性。線性模型與注意力機(jī)制對(duì)于技能選擇可能是一個(gè)分布的情況可以使用廣義線性模型并為不同的狀態(tài)特征賦予可解釋的權(quán)重。結(jié)合注意力機(jī)制可以進(jìn)一步揭示在決策時(shí)智能體“關(guān)注”了環(huán)境中的哪些關(guān)鍵實(shí)體或信息。例如注意力權(quán)重可以可視化出在決定“傳球”時(shí)智能體主要關(guān)注了接球隊(duì)員的位置和防守隊(duì)員的動(dòng)向。時(shí)序邏輯與有限狀態(tài)機(jī)對(duì)于具有嚴(yán)格時(shí)序約束的任務(wù)線性時(shí)序邏輯LTL或信號(hào)時(shí)序邏輯STL是強(qiáng)大的描述工具。我們可以從軌跡中學(xué)習(xí)滿足特定任務(wù)需求的LTL公式。例如一個(gè)巡邏任務(wù)可能歸納出公式“始終巡視區(qū)域A 最終 巡視區(qū)域B”。有限狀態(tài)機(jī)FSM也是一種直觀的模型狀態(tài)代表宏觀階段轉(zhuǎn)移條件由可解釋的謂詞定義。概率圖模型如動(dòng)態(tài)貝葉斯網(wǎng)絡(luò)DBN或隱馬爾可夫模型HMM可以建模技能之間的概率轉(zhuǎn)移關(guān)系以及它們對(duì)狀態(tài)觀測(cè)的依賴同時(shí)提供一定的不確定性度量。選擇哪種模型這取決于任務(wù)特性。決策樹(shù)適合離散特征和確定性策略時(shí)序邏輯適合有嚴(yán)格順序要求的任務(wù)概率圖模型適合存在大量不確定性和部分觀測(cè)的場(chǎng)景。在實(shí)踐中往往需要結(jié)合領(lǐng)域知識(shí)進(jìn)行選擇。3.3 組合與分層規(guī)劃用原理指導(dǎo)協(xié)作學(xué)習(xí)到技能和原理后我們需要將它們組合起來(lái)形成一個(gè)能解決原始任務(wù)的高層規(guī)劃器。這通常是一個(gè)分層規(guī)劃過(guò)程。高層規(guī)劃器以可解釋的原理模型如決策樹(shù)為核心。它接收當(dāng)前的環(huán)境狀態(tài)可能是經(jīng)過(guò)抽象的如“敵我力量對(duì)比”、“關(guān)鍵目標(biāo)點(diǎn)占領(lǐng)情況”然后根據(jù)原理輸出下一個(gè)要執(zhí)行的聯(lián)合技能如“執(zhí)行戰(zhàn)術(shù)Alpha”。技能控制器每個(gè)聯(lián)合技能對(duì)應(yīng)一個(gè)低層的、已經(jīng)訓(xùn)練好的控制器。這個(gè)控制器可以是一個(gè)小型的神經(jīng)網(wǎng)絡(luò)它接收更原始、更細(xì)粒度的觀測(cè)如每個(gè)智能體的精確坐標(biāo)、速度并輸出每個(gè)智能體的原始動(dòng)作如力、速度指令。執(zhí)行與監(jiān)控技能控制器執(zhí)行該技能直到滿足技能的終止條件如“到達(dá)目標(biāo)點(diǎn)”或“持續(xù)時(shí)間結(jié)束”。同時(shí)高層規(guī)劃器持續(xù)監(jiān)控環(huán)境判斷是否需要根據(jù)原理中斷當(dāng)前技能并切換到另一個(gè)技能。這種分層結(jié)構(gòu)帶來(lái)了巨大優(yōu)勢(shì)可解釋性任何時(shí)刻我們都可以詢問(wèn)高層規(guī)劃器“為什么選擇這個(gè)技能” 規(guī)劃器可以根據(jù)決策樹(shù)路徑或邏輯規(guī)則給出明確回答。可組合性新的任務(wù)可能只需要重新組合現(xiàn)有的技能庫(kù)并微調(diào)高層原理模型而無(wú)需從頭訓(xùn)練所有低級(jí)控制器。零樣本泛化與快速適應(yīng)面對(duì)略微變化的環(huán)境人類(lèi)可以通過(guò)直接修改幾條高層規(guī)則來(lái)調(diào)整系統(tǒng)行為這比重新進(jìn)行數(shù)百萬(wàn)步的強(qiáng)化學(xué)習(xí)試錯(cuò)要快得多。4. 實(shí)戰(zhàn)挑戰(zhàn)與應(yīng)對(duì)策略讓RELIC從論文走向代碼將RELIC的思想落地到實(shí)際項(xiàng)目中會(huì)遇到一系列紙上談兵時(shí)不易察覺(jué)的挑戰(zhàn)。下面結(jié)合我個(gè)人的一些實(shí)驗(yàn)經(jīng)驗(yàn)談?wù)勱P(guān)鍵的實(shí)施難點(diǎn)和應(yīng)對(duì)思路。4.1 挑戰(zhàn)一技能邊界的模糊性與重疊在復(fù)雜任務(wù)中技能之間的邊界往往是模糊的。例如“進(jìn)攻”和“防守反擊”這兩個(gè)技能在軌跡表現(xiàn)上可能有大量重疊。強(qiáng)行進(jìn)行硬聚類(lèi)會(huì)導(dǎo)致技能識(shí)別不準(zhǔn)進(jìn)而影響原理學(xué)習(xí)的質(zhì)量。應(yīng)對(duì)策略軟聚類(lèi)與混合模型采用高斯混合模型GMM或使用軟分配的聚類(lèi)方法允許一條軌跡片段以不同概率屬于多個(gè)技能。在后續(xù)的原理學(xué)習(xí)中可以引入技能選擇的概率分布。層次化技能構(gòu)建層次化的技能樹(shù)。底層是細(xì)粒度的基礎(chǔ)技能如“移動(dòng)至點(diǎn)位”、“瞄準(zhǔn)”高層是由基礎(chǔ)技能組合而成的宏技能如“側(cè)翼突擊”。這樣既保證了底層技能的清晰性又滿足了高層任務(wù)的需求。利用先驗(yàn)知識(shí)不完全依賴無(wú)監(jiān)督發(fā)現(xiàn)可以引入少量的人類(lèi)示范或標(biāo)簽。例如讓專家對(duì)部分軌跡片段進(jìn)行技能標(biāo)注然后用半監(jiān)督學(xué)習(xí)的方法引導(dǎo)整個(gè)技能發(fā)現(xiàn)過(guò)程。4.2 挑戰(zhàn)二可解釋性與性能的權(quán)衡一個(gè)極度簡(jiǎn)單的決策樹(shù)可能非常容易解釋但它的表達(dá)能力有限可能無(wú)法捕捉復(fù)雜的狀態(tài)-技能映射關(guān)系導(dǎo)致規(guī)劃性能下降。反之一個(gè)深度神經(jīng)網(wǎng)絡(luò)原理模型可能性能很好但又成了新的“黑盒”。應(yīng)對(duì)策略模型復(fù)雜度可控在決策樹(shù)學(xué)習(xí)中明確設(shè)置樹(shù)的深度、葉子節(jié)點(diǎn)最小樣本數(shù)等參數(shù)在可解釋性和擬合能力之間取得平衡。可以使用成本復(fù)雜度剪枝。局部可解釋性如果全局模型必須復(fù)雜如一個(gè)較大的神經(jīng)網(wǎng)絡(luò)可以轉(zhuǎn)而尋求局部可解釋性。例如使用LIME或SHAP等方法對(duì)單個(gè)決策點(diǎn)進(jìn)行解釋回答“在這個(gè)特定狀態(tài)下哪些因素最重要地影響了技能A的選擇”神經(jīng)符號(hào)結(jié)合采用神經(jīng)符號(hào)系統(tǒng)。用神經(jīng)網(wǎng)絡(luò)來(lái)處理高維原始輸入如圖像并將其輸出轉(zhuǎn)化為一組低維的、符號(hào)化的命題如“目標(biāo)可見(jiàn)”、“友方在身邊”然后用可解釋的邏輯規(guī)則基于這些符號(hào)命題進(jìn)行決策。這樣神經(jīng)網(wǎng)絡(luò)負(fù)責(zé)“感知”符號(hào)規(guī)則負(fù)責(zé)“推理”兩者各司其職。4.3 挑戰(zhàn)三多智能體信用分配與原理的耦合在多智能體環(huán)境中一個(gè)聯(lián)合技能的成功執(zhí)行是多個(gè)智能體共同作用的結(jié)果。學(xué)習(xí)原理時(shí)我們需要理解是哪個(gè)些智能體的狀態(tài)或動(dòng)作觸發(fā)了技能切換這涉及到多智能體信用分配問(wèn)題在技能層面的體現(xiàn)。應(yīng)對(duì)策略基于注意力的機(jī)制在原理模型中引入注意力機(jī)制。例如學(xué)習(xí)一個(gè)函數(shù)為每個(gè)智能體對(duì)當(dāng)前決策的重要性打分。這可以揭示在戰(zhàn)術(shù)執(zhí)行中誰(shuí)是關(guān)鍵決策者或執(zhí)行者。可視化注意力權(quán)重圖是非常有力的解釋工具。差分貢獻(xiàn)度分析通過(guò)計(jì)算反事實(shí)查詢來(lái)評(píng)估單個(gè)智能體的貢獻(xiàn)。例如“如果智能體i當(dāng)時(shí)不在那個(gè)位置我們還會(huì)選擇執(zhí)行‘包抄’技能嗎” 通過(guò)系統(tǒng)地模擬這種反事實(shí)情況可以量化每個(gè)智能體對(duì)特定決策的影響。分解式原理不學(xué)習(xí)一個(gè)整體的聯(lián)合技能選擇原理而是為每個(gè)智能體學(xué)習(xí)一個(gè)局部原理再通過(guò)通信或共識(shí)機(jī)制進(jìn)行協(xié)調(diào)。這樣每個(gè)智能體的決策邏輯都是獨(dú)立可解釋的。4.4 一個(gè)簡(jiǎn)化的代碼框架示意以下是一個(gè)高度簡(jiǎn)化的、概念性的RELIC實(shí)現(xiàn)框架用于說(shuō)明核心流程并非可直接運(yùn)行的代碼。import numpy as np from sklearn.tree import DecisionTreeClassifier from sklearn.cluster import KMeans # 假設(shè)我們已經(jīng)通過(guò)基礎(chǔ)MARL算法收集了大量軌跡數(shù)據(jù) # trajectories: list of episodes, each episode is a list of (global_state, joint_action, reward, done) tuples class RELICFramework: def __init__(self, n_skills5, skill_length10): self.n_skills n_skills self.skill_length skill_length self.skill_cluster KMeans(n_clustersn_skills) self.principle_model DecisionTreeClassifier(max_depth5) # 可解釋的原理模型 self.skill_library {} # 技能ID - 低級(jí)控制器可以是小神經(jīng)網(wǎng)絡(luò) def discover_skills(self, trajectories): 從軌跡中發(fā)現(xiàn)技能片段 skill_segments [] for traj in trajectories: for i in range(0, len(traj) - self.skill_length, self.skill_length//2): # 滑動(dòng)窗口允許重疊 segment traj[i:iself.skill_length] # 將片段編碼為特征向量例如使用自編碼器的潛變量 segment_feature self._encode_segment(segment) skill_segments.append(segment_feature) skill_segments np.array(skill_segments) # 聚類(lèi)每個(gè)簇代表一種技能 skill_labels self.skill_cluster.fit_predict(skill_segments) # 為每個(gè)技能簇訓(xùn)練一個(gè)低級(jí)控制器略 # self._train_low_level_controllers(trajectories, skill_labels) return skill_labels def learn_principles(self, trajectories, skill_labels): 學(xué)習(xí)技能選擇原理 X, y [], [] for traj, skill_seq in zip(trajectories, skill_labels): # 假設(shè)我們將軌跡按技能片段切分好了 for (state, _), skill_id in zip(traj, skill_seq): # 將原始狀態(tài)state轉(zhuǎn)換為可解釋的特征這一步很關(guān)鍵 interpretable_feature self._extract_interpretable_features(state) X.append(interpretable_feature) y.append(skill_id) self.principle_model.fit(X, y) # 現(xiàn)在我們可以可視化這棵決策樹(shù)它就是可解釋的原理 # from sklearn.tree import plot_tree # plot_tree(self.principle_model, feature_namesfeature_names) def plan(self, current_state): 基于學(xué)習(xí)到的原理進(jìn)行高層規(guī)劃 # 1. 提取可解釋特征 features self._extract_interpretable_features(current_state) # 2. 原理模型決策選擇技能ID skill_id self.principle_model.predict([features])[0] # 3. 調(diào)用對(duì)應(yīng)的低級(jí)技能控制器 low_level_actions self.skill_library[skill_id].execute(current_state) return low_level_actions, skill_id # 返回原始動(dòng)作和可解釋的技能ID def _encode_segment(self, segment): # 實(shí)現(xiàn)軌跡片段編碼例如使用VAE的編碼器 pass def _extract_interpretable_features(self, state): # 實(shí)現(xiàn)從原始狀態(tài)到可解釋特征的轉(zhuǎn)換例如距離、角度、布爾標(biāo)志等 pass這個(gè)框架省略了無(wú)數(shù)細(xì)節(jié)如技能終止條件的學(xué)習(xí)、分層策略的端到端訓(xùn)練、信用分配等但它勾勒出了RELIC方法的核心循環(huán)發(fā)現(xiàn)技能 - 學(xué)習(xí)原理 - 組合規(guī)劃。5. 評(píng)估與展望如何衡量“可解釋性”的價(jià)值當(dāng)我們構(gòu)建了一個(gè)像RELIC這樣的系統(tǒng)后如何評(píng)估它性能如勝率、回報(bào)是基礎(chǔ)指標(biāo)但更重要的是評(píng)估其“可解釋性”和“可組合性”帶來(lái)的附加價(jià)值。5.1 可解釋性的評(píng)估指標(biāo)這是一個(gè)活躍的研究領(lǐng)域尚無(wú)金標(biāo)準(zhǔn)但可以從以下幾個(gè)維度衡量人類(lèi)理解度進(jìn)行用戶研究。讓領(lǐng)域?qū)<一蚍菍<也榭聪到y(tǒng)生成的原理如決策樹(shù)、規(guī)則集然后回答關(guān)于系統(tǒng)行為的問(wèn)題例如“在XX情況下系統(tǒng)會(huì)怎么做”“為什么它剛才做了那個(gè)決策”。計(jì)算回答的正確率。模擬干預(yù)與反事實(shí)查詢?cè)u(píng)估原理模型是否捕捉了真實(shí)的因果關(guān)系。通過(guò)修改原理模型中的某個(gè)條件例如在規(guī)則中將“距離5”改為“距離10”觀察模擬環(huán)境中系統(tǒng)行為的變化是否符合人類(lèi)直覺(jué)。邏輯一致性檢查對(duì)于基于邏輯的原理可以自動(dòng)檢查其是否滿足某些領(lǐng)域特定的約束或安全規(guī)范例如“永遠(yuǎn)不會(huì)同時(shí)執(zhí)行技能A和技能B”。簡(jiǎn)潔性原理模型的復(fù)雜度如決策樹(shù)的節(jié)點(diǎn)數(shù)、規(guī)則集的條款數(shù)、邏輯公式的長(zhǎng)度等。通常更簡(jiǎn)潔的模型更容易理解。5.2 可組合性與泛化能力評(píng)估零樣本/少樣本任務(wù)遷移在訓(xùn)練任務(wù)上學(xué)習(xí)技能和原理后將其直接應(yīng)用于一個(gè)相關(guān)但不同的新任務(wù)觀察性能。例如在“2對(duì)2足球”中學(xué)到的技能和原理能否在“3對(duì)3足球”中通過(guò)簡(jiǎn)單組合快速適應(yīng)這是衡量可組合性價(jià)值的關(guān)鍵。人工修改與快速調(diào)優(yōu)允許人類(lèi)專家根據(jù)學(xué)到的原理直接修改幾條規(guī)則或添加一個(gè)新技能。然后評(píng)估系統(tǒng)在原始任務(wù)或新變體任務(wù)上的性能提升速度。與需要從頭強(qiáng)化學(xué)習(xí)的方法對(duì)比調(diào)優(yōu)效率。模塊化分析通過(guò)“拔出”或“替換”某個(gè)技能模塊觀察系統(tǒng)性能的衰減程度來(lái)分析技能模塊之間的耦合度和獨(dú)立性。一個(gè)好的可組合系統(tǒng)模塊間應(yīng)是松耦合的。5.3 未來(lái)方向與個(gè)人思考RELIC所代表的“可解釋、可組合的多智能體學(xué)習(xí)”方向我個(gè)人認(rèn)為將在以下方面持續(xù)深化與基礎(chǔ)模型結(jié)合利用大語(yǔ)言模型LLM或視覺(jué)基礎(chǔ)模型VLM強(qiáng)大的語(yǔ)義理解和生成能力。例如用LLM來(lái)為自動(dòng)發(fā)現(xiàn)的技能進(jìn)行自然語(yǔ)言命名和描述甚至將人類(lèi)用自然語(yǔ)言描述的高層指令直接編譯成可執(zhí)行的規(guī)劃原理。這將是實(shí)現(xiàn)人機(jī)自然交互協(xié)作的關(guān)鍵。在線學(xué)習(xí)與原理演化當(dāng)前的RELIC多基于離線數(shù)據(jù)學(xué)習(xí)靜態(tài)原理。未來(lái)的系統(tǒng)需要能在與環(huán)境持續(xù)交互中在線更新和演化其技能庫(kù)與原理適應(yīng)動(dòng)態(tài)變化的環(huán)境。可解釋性的“度”針對(duì)不同的用戶系統(tǒng)設(shè)計(jì)者、監(jiān)管者、終端用戶提供不同層次和形式的解釋。例如給設(shè)計(jì)者看詳細(xì)的決策樹(shù)和權(quán)重給監(jiān)管者看合規(guī)性檢查報(bào)告給用戶看簡(jiǎn)單的狀態(tài)描述和意圖說(shuō)明。從“解釋已知”到“發(fā)現(xiàn)未知”可解釋性不僅用于理解已知策略更可用于發(fā)現(xiàn)人類(lèi)未曾想到的、新穎有效的協(xié)作策略。通過(guò)分析學(xué)到的原理我們可能發(fā)現(xiàn)反直覺(jué)但高效的協(xié)作模式從而反哺人類(lèi)對(duì)復(fù)雜系統(tǒng)協(xié)作的理解。在我自己的實(shí)踐中最大的體會(huì)是追求可解釋性不是給系統(tǒng)套上枷鎖而是為它安裝“儀表盤(pán)”和“方向盤(pán)”。一個(gè)只有油門(mén)和剎車(chē)的黑盒系統(tǒng)或許能在特定賽道上跑得很快但一旦偏離軌道或需要應(yīng)對(duì)復(fù)雜路況我們便無(wú)能為力。而RELIC這類(lèi)工作正是在為多智能體系統(tǒng)打造這個(gè)至關(guān)重要的“儀表盤(pán)”和“方向盤(pán)”讓我們不僅能欣賞其性能更能理解、信任并有效地引導(dǎo)它。這條路很長(zhǎng)但每一步都讓智能體離我們的真實(shí)世界更近一步。