為智慧體的驚奇給予獎勵
孩子在沒有任何外在獎勵的情況下探索——他們有好奇心。內在動機(intrinsic motivation)賦予強化學習智慧體同樣的驅力:一種由智慧體自己產生的內部獎勵,鼓勵它去尋找能從中學習的經驗。把這份內在獎勵加到(往往近乎為零的)外在獎勵上,即使是沒有目標的智慧體,也會四處遊走、實驗,並精通它的環境。
把好奇心形式化最主流的方式是 預測誤差探索(prediction-error exploration):讓智慧體學著預測關於下一個狀態的某些事,並依它預測得有多錯來給予獎勵。誤差大代表情境陌生——有東西可學——於是驚奇本身成了紅利。當智慧體在某個區域反覆練習,它的預測會改善、誤差下降,好奇獎勵自然消退,推著它前往新天地。
內在好奇心模組(ICM)
一個天真地預測原始下一幀像素的預測器,會被無法預測卻無關緊要的視覺雜訊綁架——搖曳的樹葉、閃爍的陰影。內在好奇心模組(Intrinsic Curiosity Module, ICM) 用一個學出來的 特徵空間(feature space) 解決這點,只保留智慧體能影響的部分。它在這些特徵上訓練兩個耦合的模型:一個前向模型,從當前特徵與動作預測下一狀態的特徵;以及一個反向模型,預測在兩個狀態之間採取了哪個動作。
反向模型是巧妙之處。藉由強迫特徵好到足以還原出動作,它教會編碼器忽略一切智慧體無法控制的東西——沒有任何動作會改變的像素,對預測動作毫無訊號,於是被濾掉。前向模型在這個淨化過的特徵空間中的預測誤差,就成了好奇獎勵。
- 把當前與下一個狀態編碼進學出的特徵空間。
- 反向模型:從這兩個特徵向量預測動作——這會訓練編碼器只保留可控的特徵。
- 前向模型:從當前特徵 + 動作預測下一狀態的特徵。
- 內在獎勵 = 前向模型的預測誤差;把它加到外在獎勵上,照常學習。
ICM 的内在奖励就是前向模型在所学特征空间 φ 中的预测误差。
雜訊電視問題
預測誤差式好奇心有一個惡名昭彰的失敗:雜訊電視問題(noisy-TV problem)。在環境裡放一台播放隨機雪花的螢幕,再給智慧體一個遙控器,它就會永遠坐著轉台。雪花本質上無法預測,因此預測誤差永遠不下降、好奇獎勵永遠不消退——智慧體被純雜訊催眠了。任何真正隨機的元素(擲骰、感測器雜訊)都可能是一台雜訊電視。
交互式马尔可夫链,展示状态之间无法预测的随机转移。
隨機網路蒸餾(RND)
隨機網路蒸餾(Random Network Distillation, RND) 是一帖出奇簡單的解藥。建立一個固定、隨機初始化的目標網路,把每個狀態映成一個隨機特徵向量——它永不訓練,只是凍結。接著訓練第二個預測器網路,去複製目標網路在智慧體所造訪狀態上的輸出。內在獎勵就是預測器相對於目標的誤差。
RND 的奖励是受训预测网络 f-hat 与固定的随机初始化目标网络 f 之间的误差。
為什麼這能躲開雜訊電視?因為目標是狀態的確定性函數——沒有任何隨機的東西要預測。在常見的狀態上,預測器學會良好地匹配目標,誤差(與獎勵)就低。在它從未訓練過的新奇狀態上,誤差就高。因此誤差成了熟悉度的乾淨量度,而非環境隨機性的量度。對 RND 而言,一台雜訊電視一旦被造訪過,就和一面空白牆同樣可預測,因此不再具有特殊的吸引力。