如何理解強化學習的可解釋性?

時間 2021-05-12 17:25:16

1樓:金洺

之前看過幾篇工作是關於模擬agent在執行策略的時候比較關注什麼state,從而理解agent的行為,類似於影象檢測時:

以上方法稱為Perturbation based saliency method, 主要就是:在已訓練好的模型上計算不同 state 的重要程度,以 saliency map 的方式表現。

主要從兩篇工作進行介紹,

首先是 Visualizing and Understanding Atari Agents , 本文的研究目標是,明確環境觀測(影象)的哪些成分對智慧型體決策(actor輸出)和值函式建模(Critic輸出)是關鍵的, 找到這些關鍵的部分,就能為智慧型體提供可解釋性。

M(i,j)是乙個高斯模糊核, 公式的前一部分主要是表示在畫素(i,j)附近的區域被擾動,其餘不變。 後一部分中是全圖的模糊影象,隨後通過提取出附近的資訊。二者加起來就是畫素(i, j)附近的畫素被模糊過的影象。

然後通過把處理後的影象作為輸入,得出相應的策略π'與值函式V',那麼定義顯著性(Saliency):

這個公式計算就是處理後的影象的策略π'與值函式V' 與原始影象作為輸入的策略π與值函式V的差異,那麼就可以表明模糊的這部分對agent的決策的重要性。

實驗結果如下:

從左到右分別是策略在不同訓練時間步對同乙個狀態的 saliency 圖。總的變化趨勢是,隨著策略的不斷提公升,saliency變得更加集中。智慧型體關注的區域都是和取得更好獎勵密切相關的。

然後是Explain Your Move: Understanding Agent Actions Using Focused Feature Saliency.

首先是公式

其中關於specificity:希望找出來的特定的狀態特徵 f,只是對於行動顯得比較重要,而不是對於任意的行動都重要,衡量標準為:

其中越大越好。

relevance 指的是希望找出來的特定的狀態特徵f,盡量只影響所選出來的行動,而不要影響其他的行動,衡量其他行動的價值函式分布如下

這裡提到的KL散度轉化為

實驗結果如下:

參考:Greydanus, Samuel, et al. "Visualizing and understanding atari agents.

"International Conference on Machine Learning. 2018.

Gupta, Piyush, et al. "Explain Your Move: Understanding Agent Actions Using Focused Feature Saliency.

"arXiv preprint arXiv:1912.12191(2019).

Explain Your Move: Understanding Agent Actions Using Focused Feature Saliency

小弟學疏才淺,有錯誤請各位大佬批評指出。

@網易伏羲AI實驗室

2樓:kid丶

我個人感覺目前強化學習的方法可解釋性都比較強,無論是零幾年傳統的方法還是最新的方法解釋性都比較好。openai近幾年提的方法例如TRPO、PPO主要從actor的思路上去優化強化學習求解思路,無論從直觀的理解還是目標函式設計的數學意義上都比較好理解;google主要從critic的方向上去尋找強化學習求解思路,從最開始的DQN到DDQN等DQN的三大改進再到後面的DDPG等,解釋性都比較好,不同的網路結構、不同的目標函式分別解決著什麼樣的問題都已闡明。同時還有從PG到AC到A2C到A3C這些強化學習工作也很好的將actor-critic方法的優化甚至推廣到非同步多執行緒任務上,無論是思路還是求解方法都非常精彩漂亮。

目前大多強化學習方法都趨於actor-critic方向,也都加上了deep的概念,只是目前deep learning的解釋性不好,導致帶上dl帽子的方法解釋性都會受到影響。綜上,我認為強化學習的解釋性還是很好的,強化學習方法的發展都是從最基礎的數學理論上一步步演變而來,具有強邏輯性和強可解釋性。

要研究深度學習的可解釋性(Interpretability),應從哪幾個方面著手?

AD哥 那麼,谷歌在TF官網的指導案例 這個案例應該新增加不久 是不是沒意義了 Integrated gradients TensorFlow Core 可解釋性現在看來還太早了。設計簡單通用的可解釋性框架 分類任務 回歸任務等 用已知的可解釋性工具來分析網路的結果 輔助設計更好的模型,短期內更可行...

如何理解強化學習中的episode這一概念?

布客飛龍 強化學習裡的關卡和你玩遊戲一樣,就是指智慧型體開始玩遊戲到通關或者 game over 的時過程。另外對於電視劇集,episode 就是劇集,代表一集連續劇。你們看到的 s01e01 那個 e 就是 episode。 Peng Cheng 沒有不同,把所有延遲獎勵收集到就達成乙個episo...

能否從演算法原理的角度解釋,為什麼強化學習演算法中,Q learning演算法比Sarsa演算法冒險 激進?

質心 從直觀上來說一下吧,這裡使用莫煩 Python 教程中的例子,初始狀態在左上角,目標獎勵在黃色區域,黑色區域為懲罰。Q learning的探索較為激進,Sarsa的探索較為保守。兩者的action策略都是e greedy,那麼差異就出在的Qtable Sarsatable 的更新策略上。在靠近...