【新智元導讀】近日,DeepMind 設計了一個新的智能體獎勵機制,避免了不必要的副作用 (side effect),對優化智能體所在環境有著重要的意義。

我們先來考慮一個場景:

在強化學習過程中,有一個智能體的任務是把一個盒子從 A 點搬運到 B 點,若是它能在較短時間內完成這個任務,那麼它就會得到一定獎勵。

但在到達 B 點的最路徑上有一個花瓶,智能體是沒有任何動機繞著花瓶走的,因為獎勵機制沒有說明任何有關這個花瓶的事情。

由於智能體並不需要打破花瓶才能到達 B 點,所以在這個場景中,「打破花瓶」 就是一個副作用,即破壞智能體所在的環境,這對於實現其目標是沒有必要的。

副作用問題是設計規範問題中的一個例子:設計規範 (只獎勵到達 B 點的智能體) 與理想規範 (指定設計者對環境中所有事物的偏好,包括花瓶) 不同。

理想的規範可能難以表達,特別是在有許多可能的副作用的複雜環境中。

解決這個問題的一個方法是讓智能體學會避開這種副作用 (通過人類反饋),例如可以通過獎勵建模。這樣做的一個好處是智能體不需要知道輔佐用的含義是什麼,但同時也很難判斷智能體是何時成功學會的避開這種副作用的。

另一個方法是定義一個適用於不同環境的副作用的一般概念。這可以與 human-in-the-loop 方法相結合 (如獎勵建模),並將提高我們對副作用問題的理解,這有助於我們更廣泛地理解智能體激勵。

如果我們能夠度量智能體對它所在環境的影響程度,我們就可以定義一個影響懲罰 (impact penalty),它可以與任何特定於任務的獎勵函數相結合 (例如,一個 「儘可能快地到達 B 點」 的獎勵)。

為了區分預期效果和副作用,我們可以在獎勵和懲罰之間進行權衡。這就可以讓智能體採取高影響力的行動,從而對它獎勵產生巨大影響,例如:打破雞蛋,以便做煎蛋卷。

影響懲罰包括兩個部分:

  • 一個用作參考點或比較點的環境狀態 (稱為基線);
  • 用於測量由於智能體的操作而導致當前狀態與基線狀態之間的距離的一種方法 (稱為偏差度量)。

例如,對於常用的可逆性準則 (reversibility criterion),基線是環境的起始狀態,偏差度量是起始狀態基線的不可達性 (unreachability)。這些組件可以單獨選擇。

選擇一個基線

在選擇基線的時候,很容易給智能體引入不良的激勵。

起始狀態基線似乎是一個自然的選擇。但是,與起始狀態的差異可能不是由智能體引起的,因此對智能體進行懲罰會使其有動機干擾其環境或其他智能體。 為了測試這種干擾行為,我們在 AI Safety Gridworlds 框架中引入了 Conveyor Belt Sushi 環境。

Conveyor Belt Sushi 環境是一個壽司店。它包含一個傳送帶,在每個智能體操作之後,傳送帶向右移動一個方格。傳送帶上有一個壽司盤,當它到達傳送帶的末端時,飢餓的人會吃掉它。其中,干擾行為是智能體在行進過程當中,會把壽司從傳送帶上撞掉。

智能體的任務就是在有或者沒有干擾的情況下,從上方區域抵達下方五角星的目標區域。

為了避免這種失敗模式,基線需要隔離智能體負責的內容。

一種方法是比較一個反事實狀態,如果智能體從初始狀態(不作為基線)開始就沒有做任何事情,那麼環境就會處於上面 GIF 中右側的狀態,並且在 Conveyor Belt Sushi 環境中,壽司不會成為基線的一部分,因為我們默認 「人會吃掉它」。但這就會引入一個不良的行為,即 「抵消 (offsetting)」。

我們在傳送帶環境的另一種變體 —— 傳送帶花瓶上演示了這種行為。在這個變體中,傳送帶上的物體是一個花瓶,當它到達傳送帶的末端時就會打碎。

智能體的任務是拯救花瓶:從傳送帶上取下花瓶就會得到獎勵。

"抵消行為" 是在收到獎勵後把花瓶放回傳送帶上。發生這種情況是因為花瓶在不作為基線的區域停止傳送,所以一旦智能體將花瓶從傳送帶上取下,它將繼續因為與基線的差異而受到懲罰。因此,它有一個動機,通過打破花瓶後收集獎勵並回到基線。

為了避免這種失敗模式,可以將不活動 (inaction) 的基線修改為先前狀態的分支,而不是起始狀態。這是 stepwise inaction 基線:如果智能體沒有採取任何行動,只是採取了最後的行動,那麼這就是環境的反事實狀態。

選擇偏差度量

一個常用的偏差度量是不可達性 (unreachability,UR) 度量:從當前狀態到達基線的難度。不可達性的 discounted 變數考慮到達狀態所需的時間,而不可達性的 undiscounted 變數只考慮是否可以到達狀態。

不可達性度量的一個問題是,如果智能體採取不可逆的操作 (因為基線變得不可達),它就會 「最大化」。

除了不可逆轉行為的嚴重程度之外,該智能體還會受到最大的懲罰,例如,該智能體是否打碎了 1 個花瓶或 100 個花瓶。這可能導致不安全的行為,正如 AI Safety Gridworlds 套件中的 Box 環境所示。

此處,智能體需要儘快抵達目標位置,但是路徑中有一個盒子,它可以被推動,但是不能被拉。通往目標位置的最短路徑需將盒子推到一個角落,這是一個不可恢復的位置。我們所需的行為是讓智能體選擇一條更長的路徑,將框推到右邊。

需要注意的是,GIF 中兩條通往目標位置的路徑,都包含一個不可逆的動作。副作用懲罰必須區分這兩條路徑,對較短路徑的懲罰更高 —— 否則智能體沒有動機避免將盒子放在角落。

為了避免這種失敗模式,我們引入了一個相對可達性(RR)度量。對於每個狀態,我們可以與基線狀態做個比較,然後進行相應的懲罰。智能體向右推動盒子會讓某些狀態不可達,但是智能體向下推動盒子所接受的懲罰會更高。

引入另一種偏差度量也可以避免這種失敗模式。可獲得效用 (AU) 衡量方法考慮一組獎勵函數 (通常隨機選擇)。對於每個獎勵函數,它比較智能體從當前狀態開始和從基線開始可以獲得多少獎勵,並根據兩者之間的差異懲罰智能體。相對可達性可以被視為該度量的特殊情況,如果達到某個狀態則獎勵 1,否則給出 0。

默認情況下,RR 度量因可達性降低而懲罰智能體,而 AU 度量因可達效用的差異而懲罰智能體。

設計選擇的影響

我們比較了三種基線 (起始狀態、inaction 和 stepwise inaction) 與三種偏差度量 (UR、RR 和 AU) 的所有組合。

我們正在尋找一種在所有環境下都表現良好的設計選擇組合:有效地懲罰盒子環境中的副作用,而不引入壽司和花瓶環境中的不良激勵。

在壽司環境中,帶有起始狀態基線的 RR 和 AU 懲罰會產生干擾行為。由於起始狀態永遠不可達,所以 UR 值總是在其最大值處。因此,它等同於智能體的移動懲罰,並且不會激勵干擾。 與其他基線的處罰可避免對此環境的干擾。

在花瓶環境中,inaction 基線的 discounted 懲罰產生抵消行為。因為把花瓶從傳送帶上取下來是可逆的,所以 undiscounted 措施不會對它造成懲罰,所以沒有什麼可以抵消的。初始狀態或 stepwise inaction 基準的懲罰不會激勵補償。

在盒子環境中,因為 UR 度量對大小不敏感,所以它對所有基線都產生副作用。RR 和 AU 的措施激勵正確的行為。

我們注意到干擾和抵消行為是由基線的特定選擇引起的,儘管這些激勵可以通過偏差度量的選擇得到緩解。副作用行為 (將方框放在角落) 是由偏差度量的選擇引起的,不能通過基線的選擇來減輕。這樣,偏差度量就像基線屬性的過濾器。

總體而言,基線的最佳選擇是 stepwise inaction,偏差度量的最佳選擇是 RR 或 AU。

然而,這可能不是這些設計選擇的最終結論,將來可以開發更好的選項或更好的實現。例如,我們當前對 inaction 的實現相當於關閉智能體。如果我們想像智能體駕駛一輛汽車在一條蜿蜒的道路上行駛,那麼在任何時候,關閉智能體的結果都是撞車。

因此,stepwise inaction 的基準不會懲罰在車裡灑咖啡的行為者,因為它將結果與撞車進行了比較。可以通過更明智地實施無為來解決這個問題,比如遵循這條道路的故障保險政策。然而,這種故障安全很難以一種與環境無關的通用方式定義。

我們還研究了懲罰差異與降低可達性或可實現效用的效果。這不會影響這些環境的結果(除了花瓶環境的 inactionn 基線的懲罰)。

在這裡,把花瓶從傳送帶上拿開增加了可達性和可實現的效用,這是通過差異而不是減少來捕獲的。因此,undiscounted RR 與 inaction 基線的差異懲罰變體會在此環境中產生抵消,而減少懲罰變數則不會。由於 stepwise inaction 無論如何都是更好的基線,因此這種影響並不顯著。

在設計過程中,選擇 「差異」 還是 「減少」 也會影響智能體的可中斷性。

英文原文:

https://medium.com/@deepmindsafetyresearch/designing-agent-incentives-to-avoid-side-effects-e1ac80ea6107?

medium.com


新智元 · AI_era

每日推送 AI 領域前沿學術解讀、AI 產業最新資訊

戳右上角【+ 關注】↗↗

喜歡請分享、點贊吧


推薦閱讀:
相关文章