Q learning訓練過程

2021-10-10 13:26:20 字數 1003 閱讀 4045

下面的偽**說明了我們如何訓練,來得到乙個盡量完美的q**。

初始化 q =

;while q 未收斂:

初始化小鳥的位置s,開始新一輪遊戲

while s != 死亡狀態:

使用策略π,獲得動作a=π(s)

使用動作a進行遊戲,獲得小鳥的新位置s',與獎勵r

(s,a)

q[s,a] ← (

1-α)

*q[s,a]

+ α*(r

(s,a)

+ γ* max q[s',a]

)// 更新q

s ← s'

其中有些值得注意的地方:

1. 使用策略π,獲得動作a=π(s)最直觀易懂的策略π(s)是根據q**來選擇效用最大的動作(若兩個動作效用值一樣,如初始時某位置處效用值都為0,那就選第乙個動作)。但這樣的選擇可能會使q陷入區域性最優:在位置 處,在第一次選擇了動作1(飛)並獲取了 的獎賞後,演算法將永遠無法對動作2(不飛)進行更新,即使動作2最終會給出 的獎賞。改進的策略為ε-greedy方法:每個狀態以ε的概率進行探索,此時將隨機選取飛或不飛,而剩下的1-ε的概率則進行開發,即按上述方法,選取當前狀態下效用值較大的動作。

2.更新q**q**將根據以下公式進行更新:其中α為學習速率(learning rate),γ為折扣因子(discount factor)。根據公式可以看出,學習速率α越大,保留之前訓練的效果就越少。折扣因子γ越大,所起到的作用就越大。但指什麼呢?考慮小鳥在對狀態進行更新時,會關心到眼前利益( ),和記憶中的利益()。是記憶中的利益。它是小鳥記憶裡,新位置能給出的最大效用值。如果小鳥在過去的遊戲中於位置的某個動作上吃過甜頭(例如選擇了某個動作之後獲得了50的獎賞),這個公式就可以讓它提早地得知這個訊息,以便使下回再通過位置時選擇正確的動作繼續進入這個吃甜頭的位置。可以看出,γ越大,小鳥就會越重視以往經驗,越小,小鳥只重視眼前利益(r)。根據上面的偽**,便可以寫出q-learning的**了。

訓練過程 GPU訓練

為什麼y2b的8m,8張普通tt為啥要跑幾個月?因為gpu其實有60 的時間都是在等待資料填充完成,簡直蠢。1 換個固態硬碟試試?沒用。問題出在系統匯流排上,一幀的資料量入視訊記憶體後有1.58g 當前最優的分布式訓練方式是通過引數伺服器 parameter server 執行的同步隨機梯度下降演算...

Adaboost 訓練過程

每個haar特徵對應看乙個弱分類器,但並不是任伺乙個haar特徵都能較好的描述人臉灰度分布的某一特點,如何從大量的haar特徵中挑選出最優的haar特徵並製作成分類器用於人臉檢測,這是adaboost演算法訓練過程所要解決的關鍵問題。paul viola和michael jones於2001年將ad...

Caffe訓練過程

1.caffe入門學習 筆記 1 直接訓練法 usr bin env sh tools cafferead build tools tools caffe train solver gender solver.prorotxt gpu all 加入 gpu 選項 gpu 可以選擇gpu的id號,如果...