久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

強(qiáng)化學(xué)習(xí)中的HER:用事后經(jīng)驗(yàn)回放破解稀疏獎(jiǎng)勵(lì)難題

強(qiáng)化學(xué)習(xí)中的HER:用事后經(jīng)驗(yàn)回放破解稀疏獎(jiǎng)勵(lì)難題 先聊一個(gè)很微妙的心理現(xiàn)象事情明明搞砸了過(guò)一會(huì)兒回過(guò)頭看你總覺(jué)得“我早就知道會(huì)這樣”。心理學(xué)管這叫hindsight bias后見(jiàn)之明偏差放在日常里就是事后諸葛亮。但在我接觸過(guò)的強(qiáng)化學(xué)習(xí)項(xiàng)目里有一種做法把“事后之明”變成了實(shí)打?qū)嵉膶W(xué)習(xí)信號(hào)那就是Hindsight Experience Replay中文常譯作“事后經(jīng)驗(yàn)回放”縮寫(xiě)HER。我第一次看OpenAI的機(jī)械臂抓取demo時(shí)被這個(gè)思路驚艷到——原來(lái)讓智能體從失敗里學(xué)到東西不需要給它更精細(xì)的獎(jiǎng)勵(lì)函數(shù)只需要在經(jīng)驗(yàn)回放時(shí)偷偷換一個(gè)“事后目標(biāo)”。這篇文章我把HER從原理到實(shí)現(xiàn)、再到調(diào)參踩坑從頭到尾講一遍。適合正在跟稀疏獎(jiǎng)勵(lì)較勁、跑過(guò)DQN或DDPG但效果不理想、或者想搞目標(biāo)導(dǎo)向機(jī)器人策略的朋友。不需要太深的數(shù)學(xué)基礎(chǔ)但最好知道強(qiáng)化學(xué)習(xí)里的狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)和Q函數(shù)是怎么回事。1. 為什么需要Hindsight稀疏獎(jiǎng)勵(lì)下的學(xué)習(xí)困境1.1 稀疏獎(jiǎng)勵(lì)到底“難”在哪先從一個(gè)幾乎所有RL項(xiàng)目都會(huì)撞上的問(wèn)題說(shuō)起稀疏獎(jiǎng)勵(lì)。拿機(jī)械臂推方塊到指定位置來(lái)說(shuō)如果機(jī)械臂末端和目標(biāo)的距離小于一個(gè)閾值比如0.05米就獎(jiǎng)勵(lì)0距離超了就獎(jiǎng)勵(lì)-1。這樣的話一個(gè)episode里絕大多數(shù)動(dòng)作得到的獎(jiǎng)勵(lì)都是-1。也就是說(shuō)智能體在絕大部分時(shí)間里根本不知道自己在靠近目標(biāo)因?yàn)樵讵?jiǎng)勵(lì)數(shù)值上“沒(méi)差”。這叫沒(méi)有梯度信號(hào)不是沒(méi)獎(jiǎng)勵(lì)是獎(jiǎng)勵(lì)就像一面白墻你撞上去不會(huì)被彈開(kāi)也不會(huì)被引導(dǎo)。我見(jiàn)過(guò)不少人在這種環(huán)境里直接上PPO或DDPG結(jié)果訓(xùn)練幾千個(gè)episode成功率仍然是0。原因不復(fù)雜隨機(jī)探索時(shí)機(jī)械臂恰好碰到目標(biāo)的概率極低而且即使偶爾碰上了到目標(biāo)的距離誤差也可能大得離譜或者由于隨機(jī)目標(biāo)千變?nèi)f化同一個(gè)經(jīng)驗(yàn)在下一次采樣里又變成無(wú)效樣本。說(shuō)白了智能體連“成功長(zhǎng)什么樣”都沒(méi)見(jiàn)過(guò)自然學(xué)不到通向成功的動(dòng)作序列。很多人第一反應(yīng)是設(shè)計(jì)reward shaping比如讓獎(jiǎng)勵(lì)與“到目標(biāo)的距離”連續(xù)相關(guān)。這樣做確實(shí)能讓訓(xùn)練提速但代價(jià)也明顯手工設(shè)計(jì)的獎(jiǎng)勵(lì)會(huì)注入人類偏見(jiàn)有可能誘導(dǎo)策略走捷徑、鉆漏洞。而且換一個(gè)環(huán)境距離函數(shù)又要重新設(shè)計(jì)維護(hù)成本很高。我希望找到一個(gè)更通用的辦法讓算法自己從“看似失敗”的經(jīng)驗(yàn)里挖掘價(jià)值。HER就是為了這個(gè)目的出現(xiàn)的。1.2 經(jīng)驗(yàn)回放為什么救不了場(chǎng)再說(shuō)說(shuō)經(jīng)驗(yàn)回放Experience Replay。DQN和DDPG這類off-policy算法會(huì)把(狀態(tài), 動(dòng)作, 獎(jiǎng)勵(lì), 下一狀態(tài))存進(jìn)一個(gè)很大的buffer訓(xùn)練時(shí)隨機(jī)采樣小批量打亂相關(guān)性。經(jīng)驗(yàn)回放本身解決的是數(shù)據(jù)利用率和訓(xùn)練穩(wěn)定性問(wèn)題但請(qǐng)注意它只是“存儲(chǔ)和讀取經(jīng)驗(yàn)”的機(jī)制并不會(huì)改變獎(jiǎng)勵(lì)信號(hào)本身。在稀疏獎(jiǎng)勵(lì)環(huán)境里buffer里塞滿了失敗經(jīng)驗(yàn)獎(jiǎng)勵(lì)全是-1。你采樣一萬(wàn)條正樣本還是零。Q函數(shù)無(wú)法從全負(fù)樣本中學(xué)到一個(gè)有區(qū)分度的價(jià)值面。有人會(huì)說(shuō)既然全負(fù)至少能讓網(wǎng)絡(luò)學(xué)會(huì)“別亂動(dòng)”但問(wèn)題在于目標(biāo)環(huán)境里每個(gè)狀態(tài)s的價(jià)值并不相同如果所有狀態(tài)對(duì)應(yīng)的目標(biāo)g都被固定為原始目標(biāo)而原始目標(biāo)從未達(dá)成過(guò)那么Q網(wǎng)絡(luò)只能絕望地把所有狀態(tài)價(jià)值都?jí)合?1。這等于把目標(biāo)當(dāng)成了“海市蜃樓”看得見(jiàn)但永遠(yuǎn)觸不到。HER的思路很直接既然原始目標(biāo)達(dá)不成那我不要求你在當(dāng)前軌跡中一定達(dá)成它。我可以把這條軌跡“重寫(xiě)”成朝另一個(gè)目標(biāo)成功的樣本。比如機(jī)械臂本來(lái)想去左上角結(jié)果跑到右上角那我就把“飛到右上角”當(dāng)作這個(gè)樣本的目標(biāo)重新算一遍獎(jiǎng)勵(lì)這時(shí)候這條原本失敗的經(jīng)驗(yàn)就成了一條漂亮的正樣本。聽(tīng)起來(lái)有點(diǎn)像自欺欺人但實(shí)際效果驚人。這個(gè)“換目標(biāo)”的操作就是HER的核心。1.3 HER的核心直覺(jué)換個(gè)目標(biāo)就是成功用一個(gè)生活化比喻來(lái)解釋一個(gè)新手投籃目標(biāo)是籃筐球沒(méi)進(jìn)砸到了籃板左側(cè)。如果他只會(huì)按“籃筐”這個(gè)目標(biāo)來(lái)訓(xùn)練這次投球就是發(fā)球失誤沒(méi)任何收獲。但如果他換一個(gè)目標(biāo)“下次爭(zhēng)取砸到籃板左側(cè)那個(gè)點(diǎn)”那么剛才那次投籃在“籃板左側(cè)”這個(gè)目標(biāo)下其實(shí)是完美命中的。他可以把這個(gè)“命中了籃板左側(cè)”的經(jīng)驗(yàn)記下來(lái)下次遇到“把球打到籃板左側(cè)”的新任務(wù)時(shí)就知道該用什么樣的力度和角度。強(qiáng)化學(xué)習(xí)里的HER正是這個(gè)流程每一條transition除了保留原始目標(biāo)g下的樣本還會(huì)額外用episode中后續(xù)某個(gè)狀態(tài)的achieved_goal事后再看真正到達(dá)的位置作為新目標(biāo)g把這條經(jīng)驗(yàn)重新計(jì)算獎(jiǎng)勵(lì)后也存進(jìn)buffer。訓(xùn)練過(guò)程中網(wǎng)絡(luò)會(huì)同時(shí)面對(duì)大量不同目標(biāo)下的經(jīng)驗(yàn)它的Q函數(shù)可以逐漸學(xué)會(huì)“給定任意目標(biāo)我大概知道哪些動(dòng)作值錢”。等到真正布置一個(gè)全新目標(biāo)時(shí)它已經(jīng)具備了泛化能力不需要從頭再學(xué)。這種泛化依賴一個(gè)老概念通用價(jià)值函數(shù)近似器UVFA。意思很簡(jiǎn)單價(jià)值函數(shù)不再只是Q(s, a)而是Q(s, a, g)把目標(biāo)也當(dāng)作輸入的一部分。HER大量生成“目標(biāo)-狀態(tài)-轉(zhuǎn)移”三元組本質(zhì)上就是在用數(shù)據(jù)迫使Q函數(shù)對(duì)目標(biāo)維度泛化。1.4 為什么必須是off-policy算法有一個(gè)必須強(qiáng)調(diào)的點(diǎn)HER不能直接套在on-policy算法上使用。原因是重標(biāo)注后的樣本其轉(zhuǎn)移是在“試圖達(dá)成原始目標(biāo)”的行為策略下產(chǎn)生的。如果我們把經(jīng)驗(yàn)里的目標(biāo)換成g那么這條經(jīng)驗(yàn)就不再符合當(dāng)前策略對(duì)目標(biāo)g的行為分布。換成Q學(xué)習(xí)和actor-critic這類off-policy算法它們用Q函數(shù)去估計(jì)價(jià)值經(jīng)驗(yàn)來(lái)自不同策略也沒(méi)關(guān)系只要狀態(tài)、動(dòng)作、獎(jiǎng)勵(lì)、下一狀態(tài)對(duì)換目標(biāo)后依然自洽即可。我在實(shí)際嘗試中踩過(guò)這個(gè)坑一開(kāi)始圖省事想在某on-policy的policy gradient框架里硬加HER結(jié)果訓(xùn)練完全飄掉loss亂跳。后來(lái)想明白policy gradient算法需要計(jì)算的是“當(dāng)前策略路徑下的梯度”重標(biāo)注目標(biāo)后路徑和目標(biāo)不匹配重要性采樣也救不回來(lái)。所以要玩HER安心選擇DQN、DDPG、TD3、SAC這類off-policy方法。2. Hindsight Experience Replay原理拆解2.1 數(shù)學(xué)描述與目標(biāo)重標(biāo)注先把符號(hào)理清楚。設(shè)在goal-conditioned MDP里狀態(tài)是由三部分構(gòu)成的observation機(jī)器人的關(guān)節(jié)角、速度等原始觀測(cè)achieved_goal當(dāng)前已到達(dá)的目標(biāo)相關(guān)狀態(tài)desired_goal想要到達(dá)的目標(biāo)。在Gym的Fetch系列環(huán)境里observation通常是一個(gè)15到25維向量achieved_goal是3維坐標(biāo)desired_goal也是3維坐標(biāo)。獎(jiǎng)勵(lì)函數(shù)可以寫(xiě)成r(s, a, g) 1 if ||achieved_goal(s) - g|| epsilon else 0或者是稀疏負(fù)獎(jiǎng)勵(lì)r(s, a, g) 0 if ||achieved_goal(s) - g|| epsilon else -1其中s是動(dòng)作執(zhí)行后的下一狀態(tài)achieved_goal(s)表示轉(zhuǎn)移后真正到達(dá)的位置。這一點(diǎn)非常重要判決是要看動(dòng)作執(zhí)行之后的狀態(tài)離目標(biāo)有多近而不是動(dòng)作執(zhí)行之前。存儲(chǔ)一條經(jīng)驗(yàn)時(shí)標(biāo)準(zhǔn)做法是保存(s_t, a_t, r_t, s_{t1}, g_t)其中s_t (obs_t, ag_t, g_t)。HER重標(biāo)注時(shí)從同一個(gè)episode中挑一個(gè)未來(lái)時(shí)間點(diǎn)tk取s_{tk}的achieved_goal作為新的目標(biāo)g然后代入獎(jiǎng)勵(lì)函數(shù)重新計(jì)算r_t于是得到一條新經(jīng)驗(yàn)(s_t, a_t, r_t, s_{t1}, g)注意動(dòng)作a_t和轉(zhuǎn)移(s_t, s_{t1})都沒(méi)變變的只是目標(biāo)和獎(jiǎng)勵(lì)。正因?yàn)樵紕?dòng)作在“去往某個(gè)新目標(biāo)”這個(gè)語(yǔ)境下被重新評(píng)估原本是無(wú)用的失敗樣本才有了正樣本的價(jià)值。實(shí)際代碼中我習(xí)慣直接保存obs_t、act_t、rew_t、next_obs_t、ag_t、next_ag_t和g_t做重標(biāo)注時(shí)再用next_ag_t和新目標(biāo)計(jì)算獎(jiǎng)勵(lì)。2.2 采樣策略怎么選final / future / episode / randomHER論文里給出了四種從episode中選擇新目標(biāo)的策略實(shí)際效果差異很大這里逐個(gè)講清楚。final策略直接用該episode最后一個(gè)狀態(tài)作為所有transition的新目標(biāo)。比如這一輪機(jī)械臂最終停在坐標(biāo)(1.2, 0.3, 0.8)那就把整條軌跡的目標(biāo)全部替換成(1.2, 0.3, 0.8)。優(yōu)點(diǎn)是實(shí)現(xiàn)最簡(jiǎn)單一條episode只生成一個(gè)額外目標(biāo)計(jì)算量小。缺點(diǎn)是如果episode很長(zhǎng)前面很多步驟距離最終位置很遠(yuǎn)對(duì)價(jià)值函數(shù)來(lái)說(shuō)是很大的挑戰(zhàn)學(xué)習(xí)起來(lái)可能不平穩(wěn)。future策略對(duì)第t步的transition從第t1步到episode結(jié)束的所有狀態(tài)中隨機(jī)挑未來(lái)狀態(tài)作為新目標(biāo)。這是論文最推薦、也是我實(shí)測(cè)最穩(wěn)的策略。因?yàn)槟繕?biāo)在時(shí)間上位于當(dāng)前transition之后給網(wǎng)絡(luò)提供的信號(hào)具有天然因果性“我現(xiàn)在做的動(dòng)作接下來(lái)會(huì)把我?guī)У竭@個(gè)位置所以這個(gè)位置應(yīng)該成為我的目標(biāo)”。正是這種順序關(guān)系讓Q函數(shù)更容易學(xué)到動(dòng)作到結(jié)果的映射。episode策略從整個(gè)episode中任意狀態(tài)里隨機(jī)挑目標(biāo)不要求未來(lái)。這樣做增加了目標(biāo)多樣性但可能引入“先到A再到B但目標(biāo)可以是B”這類混亂信號(hào)。如果episode比較長(zhǎng)還是建議保留一些episode采樣的目標(biāo)因?yàn)樗芨采w到“達(dá)到過(guò)去某個(gè)狀態(tài)”的能力。random策略從buffer里所有episode中隨機(jī)挑狀態(tài)當(dāng)目標(biāo)。多樣性最大但和目標(biāo)任務(wù)的關(guān)聯(lián)度也最弱。如果目標(biāo)分布跨度很大random很容易把智能體往莫名其妙的地方帶。我在實(shí)際任務(wù)里基本不單獨(dú)用random頂多摻一小點(diǎn)作為正則化。論文中的標(biāo)準(zhǔn)做法是每條原始transition額外生成k個(gè)future目標(biāo)k通常取4并把原始目標(biāo)經(jīng)驗(yàn)也保留下來(lái)。也就是說(shuō)一條經(jīng)驗(yàn)最終可能會(huì)有1原始k條目標(biāo)變體進(jìn)入buffer。k不小算力和存儲(chǔ)都會(huì)上漲后面我們專門(mén)說(shuō)優(yōu)化。2.3 與DDPG等off-policy算法的融合HER不是一個(gè)獨(dú)立算法它更像經(jīng)驗(yàn)回放模塊的一種增強(qiáng)插件。它需要一個(gè)基礎(chǔ)的off-policy強(qiáng)化學(xué)習(xí)算法最經(jīng)典的是DDPG。在DDPG里actor網(wǎng)絡(luò)μ(s, g)輸入狀態(tài)和目標(biāo)輸出動(dòng)作critic網(wǎng)絡(luò)Q(s, a, g)輸入狀態(tài)、動(dòng)作和目標(biāo)輸出估計(jì)的價(jià)值。訓(xùn)練時(shí)的TD目標(biāo)長(zhǎng)這樣y r γ * Q_target(s, μ_target(s, g), g)注意公式里有兩個(gè)g一個(gè)是重標(biāo)注后的新目標(biāo)用于計(jì)算目標(biāo)Q值另一個(gè)是critic輸入時(shí)要傳的目標(biāo)。在實(shí)現(xiàn)里采集batch時(shí)我除了取obs和act還要把重標(biāo)注后的g也作為target_goal保存起來(lái)否則直接在經(jīng)驗(yàn)里改目標(biāo)會(huì)污染原始樣本。在DDPG的actor更新中梯度通過(guò)Q(s, μ(s, g), g)對(duì)μ(s, g)的參數(shù)求導(dǎo)。因?yàn)镼函數(shù)學(xué)會(huì)了對(duì)任意目標(biāo)g的價(jià)值評(píng)估actor才能學(xué)到“針對(duì)不同目標(biāo)給出不同動(dòng)作”的行為模式。如果Q只在一個(gè)目標(biāo)上做過(guò)預(yù)測(cè)那actor也只能在一個(gè)目標(biāo)上動(dòng)作。HER生成了大量不同目標(biāo)下的樣本恰好幫助Q面變得更光滑。2.4 數(shù)據(jù)流與存儲(chǔ)細(xì)節(jié)HER需要存儲(chǔ)episode結(jié)構(gòu)不能只存一條條獨(dú)立的transition。因?yàn)橹貥?biāo)注需要知道“這條transition之后同一episode里有哪些狀態(tài)”。所以我的buffer設(shè)計(jì)往往是兩層第一層是一個(gè)episodic臨時(shí)區(qū)記錄當(dāng)前episode里每一步的obs、act、next_obs、ag、next_ag、g、done第二層是真正的經(jīng)驗(yàn)池當(dāng)episode結(jié)束時(shí)對(duì)整個(gè)episode做重標(biāo)注產(chǎn)生額外transition再寫(xiě)入經(jīng)驗(yàn)池。這樣做有一個(gè)額外好處避免在每步step時(shí)都判斷“現(xiàn)在這條transition是否多采樣幾個(gè)未來(lái)目標(biāo)”邏輯更清晰也方便批量向量化。缺點(diǎn)是該episodic臨時(shí)區(qū)的內(nèi)存占用和一次episode長(zhǎng)度成正比但通常幾百步以內(nèi)完全可以接受。2.5 歸一化與動(dòng)作范圍HER對(duì)歸一化很敏感。因?yàn)閟tate和goal往往不在同一個(gè)尺度比如關(guān)節(jié)角度范圍可能是[-3, 3]物體坐標(biāo)范圍可能是[0, 1]直接拼接后作為網(wǎng)絡(luò)輸入actor的探索噪聲如果按幅度加容易讓某些維度被噪聲淹沒(méi)。建議把每個(gè)維度做running mean/variance歸一化或者至少縮放到[-1, 1]。動(dòng)作范圍同樣要注意。Fetch環(huán)境的action維度是2到4維范圍是[-1, 1]但物理模型要求機(jī)械臂位置變化很小。如果噪聲標(biāo)準(zhǔn)差設(shè)成0.3以上可能整個(gè)episode都是高頻抖動(dòng)目標(biāo)永遠(yuǎn)靠不近。我一般初始設(shè)置標(biāo)準(zhǔn)差0.1并隨訓(xùn)練衰減。這不是論文參數(shù)但實(shí)測(cè)下來(lái)穩(wěn)定得多。3. 從零實(shí)現(xiàn)在FetchReach上跑通HER3.1 環(huán)境與工具選型為了直觀驗(yàn)證HER效果我推薦用Gym的FetchReach-v1。機(jī)械臂需要從初始位置把末端移動(dòng)到三維空間中的隨機(jī)目標(biāo)點(diǎn)episode長(zhǎng)度50距離閾值0.05獎(jiǎng)勵(lì)是稀疏的。環(huán)境里沒(méi)有物體抓取、沒(méi)有避障純粹看算法是否能學(xué)習(xí)目標(biāo)導(dǎo)向的到達(dá)能力。對(duì)HER來(lái)說(shuō)這是最容易診斷的起步環(huán)境。工具方面直接用PyTorch。OpenAI Baselines里雖然有HER的參考實(shí)現(xiàn)但基于TensorFlow 1.x舊接口太多復(fù)現(xiàn)成本高。我提供的版本會(huì)簡(jiǎn)化掉一些和圖網(wǎng)絡(luò)相關(guān)的trick只保留DDPGHER核心讓改造成自己的任務(wù)更容易。GPU可有可無(wú)這種小環(huán)境CPU也能跑出結(jié)果。3.2 網(wǎng)絡(luò)與超參數(shù)設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu)不需要花哨。我給出的配置Actor輸入維度原始o(jì)bs維度FetchReach是10維有效狀態(tài)實(shí)際observation有25維其中包含噪聲關(guān)節(jié)信息goal維度3輸出維度等于action維度2。中間兩層全連接256激活ReLU輸出層用tanh再乘以動(dòng)作上限。Critic輸入維度原始o(jì)bs goal action中間層同樣256最終輸出一個(gè)標(biāo)量Q值。超參數(shù)學(xué)習(xí)率actor和critic都取1e-3gamma0.98polyak滑動(dòng)平均系數(shù)tau0.05batch_size256buffer_size1e5每輪episode結(jié)束后訓(xùn)練50步探索噪聲標(biāo)準(zhǔn)差0.1。Actor噪聲在高斯基礎(chǔ)上可以加一個(gè)很小的帶通濾波但我直接用純高斯也很好。這里說(shuō)下tau的選擇DDPG目標(biāo)網(wǎng)絡(luò)更新公式是target - tau * target (1 - tau) * source如果你的tau寫(xiě)成0.95那幾乎不更新嚴(yán)重拖慢訓(xùn)練。常見(jiàn)框架里默認(rèn)tau都是0.005或0.001用0.05已經(jīng)算很大了。3.3 核心代碼與注釋下面給出一個(gè)簡(jiǎn)版但能跑的HERBuffer實(shí)現(xiàn)重點(diǎn)在重標(biāo)注邏輯import numpy as np class HERBuffer: def __init__(self, buffer_size100000, k4): self.buffer_size buffer_size self.k k self.episodes [] # 每個(gè)元素是list of transition self.data { obs: [], act: [], rew: [], next_obs: [], ag: [], next_ag: [], g: [], g_her: [] } def push_episode(self, episode_transitions, env): # episode_transitions: list of dict # 先存原始樣本 for t_idx, trans in enumerate(episode_transitions): self._store( trans[obs], trans[act], trans[rew], trans[next_obs], trans[ag], trans[g], trans[g] ) # 再生成HER樣本 horizon len(episode_transitions) for t_idx, trans in enumerate(episode_transitions): # future策略從t_idx之后所有狀態(tài)中隨機(jī)選k個(gè) if horizon - t_idx - 1 0: continue for _ in range(self.k): future_idx t_idx 1 np.random.randint(horizon - t_idx - 1) new_goal episode_transitions[future_idx][ag].copy() # 注意獎(jiǎng)勵(lì)要基于 next_ag 而不是 ag new_rew env.compute_reward( trans[next_ag], new_goal, None ) self._store( trans[obs], trans[act], new_rew, trans[next_obs], trans[ag], new_goal, new_goal ) def _store(self, obs, act, rew, next_obs, ag, g, g_her): if len(self.data[obs]) self.buffer_size: # 簡(jiǎn)單實(shí)現(xiàn)清空最老的10% drop int(self.buffer_size * 0.1) for key in self.data: self.data[key] self.data[key][drop:] self.data[obs].append(obs) self.data[act].append(act) self.data[rew].append(rew) self.data[next_obs].append(next_obs) self.data[ag].append(ag) self.data[g].append(g) self.data[g_her].append(g_her) def sample(self, batch_size): idx np.random.choice(len(self.data[obs]), batch_size, replaceFalse) batch {} for key in self.data: arr np.array(self.data[key], dtypenp.float32) batch[key] arr[idx] return batch注意代碼里env.compute_reward(trans[next_ag], new_goal, None)這里的第三個(gè)參數(shù)info在Gym某些版本里需要傳dict否則報(bào)錯(cuò)。更穩(wěn)妥的做法是直接從環(huán)境定義里取出閾值自己算距離reward -1.0 if np.linalg.norm(next_ag - new_goal) 0.05 else 0.0。接下來(lái)是DDPG訓(xùn)練主循環(huán)的關(guān)鍵部分env gym.make(FetchReach-v1) def select_action(actor, obs, goal, noise0.1): obs_t torch.FloatTensor(obs).unsqueeze(0) goal_t torch.FloatTensor(goal).unsqueeze(0) action actor.act(torch.cat([obs_t, goal_t], dim1)) action np.clip(action noise * np.random.randn(*action.shape), -1, 1) return action for episode in range(200): obs env.reset() ep_transitions [] done False score 0 while not done: action select_action(actor, obs[observation], obs[desired_goal]) next_obs, reward, done, info env.step(action) ep_transitions.append({ obs: obs[observation], act: action, rew: reward, next_obs: next_obs[observation], ag: obs[achieved_goal], next_ag: next_obs[achieved_goal], g: obs[desired_goal] }) obs next_obs score reward her_buffer.push_episode(ep_transitions, env) # 從buffer采樣訓(xùn)練 for _ in range(50): batch her_buffer.sample(256) # 這里用batch[g_her]作為critic的目標(biāo)goal而不是batch[g] # actor的監(jiān)督信號(hào)是Q(s, actor(s, g_her), g_her) # 具體更新代碼省略就是標(biāo)準(zhǔn)DDPG if episode % 20 0: print(fEpisode {episode}, avg_reward: {score})我在實(shí)際調(diào)試時(shí)把sample函數(shù)的batch[g_her]單獨(dú)挑出來(lái)確保critic在計(jì)算TD target時(shí)使用的是重標(biāo)注后的目標(biāo)。很多初學(xué)者容易在這里犯錯(cuò)直接用batch里的原始goal那等于HER白做了。3.4 訓(xùn)練觀察與效果分析在FetchReach上跑我的觀察是只用DDPG不加HER成功率幾乎在0到1%之間波動(dòng)跑500個(gè)episode都不動(dòng)。加上HER后通常100到150個(gè)episode之內(nèi)rollout成功率就能漲到90%以上。訓(xùn)練曲線不是平滑上升的而是一段平臺(tái)后突然跳變。原因是前期buffer里攢到了足夠數(shù)量的正樣本“候選”一旦Q函數(shù)開(kāi)始對(duì)目標(biāo)維度做出正確梯度策略會(huì)突然學(xué)會(huì)一項(xiàng)簡(jiǎn)單技能比如“往某個(gè)坐標(biāo)多推一點(diǎn)”。我建議同時(shí)畫(huà)兩條曲線一條是online success rate另一條是“平均達(dá)到距離”的變化。平均達(dá)到距離比成功率更平滑能幫你判斷是否在緩慢進(jìn)步。如果平均距離在下降但成功率因?yàn)殚撝档脑蛞恢笔?這說(shuō)明方向是對(duì)了繼續(xù)訓(xùn)練就行。如果平均距離紋絲不動(dòng)那大概率HER沒(méi)生效回去檢查buffer里有沒(méi)有非-1的獎(jiǎng)勵(lì)以及采樣時(shí)是否用了新的目標(biāo)。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 不收斂的排查清單在實(shí)際跑HER時(shí)我遇到過(guò)的失敗模式整理成一個(gè)速查表癥狀可能原因排查動(dòng)作成功率長(zhǎng)時(shí)間為0平均距離也不降HER重標(biāo)注邏輯沒(méi)生效buffer里仍全是-1打印一批buffer樣本檢查有沒(méi)有新目標(biāo)下獎(jiǎng)勵(lì)為0的transition訓(xùn)練loss震蕩劇烈甚至出現(xiàn)NAN輸入和goal沒(méi)有歸一化數(shù)值爆炸對(duì)obs和goal做running normalization或用固定scale縮放到[-1,1]actor直接學(xué)到不動(dòng)成功率某段突然掉探索噪聲太大動(dòng)作一直飽和在邊界降低噪聲標(biāo)準(zhǔn)差檢查action是否在[-1,1]內(nèi)critic的TD target不穩(wěn)定獎(jiǎng)勵(lì)用舊achieved_goal計(jì)算了確保重標(biāo)注時(shí)使用next_ag而不是ag收斂變慢后期上不去future策略采樣到太近的future狀態(tài)目標(biāo)過(guò)于重復(fù)提高k值比如k8或混合episode策略增加多樣性4.2 目標(biāo)采樣策略容易踩的坑future策略雖然好但有一個(gè)隱藏問(wèn)題當(dāng)episode長(zhǎng)度很短比如FetchReach只有50步如果當(dāng)前transition接近episode末尾剩余可選狀態(tài)很少重標(biāo)注目標(biāo)可能總是落在一個(gè)小范圍。目標(biāo)是取自achieved_goal也就是機(jī)械臂實(shí)際經(jīng)過(guò)的位置。如果機(jī)械臂只在起點(diǎn)附近徘徊那么這些新目標(biāo)都集中在起點(diǎn)附近網(wǎng)絡(luò)沒(méi)機(jī)會(huì)看到離起點(diǎn)遠(yuǎn)的目標(biāo)泛化就會(huì)差。解決方式是調(diào)整episode長(zhǎng)度或增加動(dòng)作噪聲讓機(jī)械臂多探索。如果任務(wù)確實(shí)很短可以用futureepisode混合一部分目標(biāo)取自當(dāng)前episode未來(lái)狀態(tài)一部分取自整個(gè)episode的任意狀態(tài)。注意不要全部用episode策略否則因果性過(guò)弱訓(xùn)練穩(wěn)定性反而下降。我在機(jī)器人抓取任務(wù)里通常設(shè)置k4的future外加每個(gè)episode額外生成2條episode目標(biāo)效果會(huì)比純future好一些。4.3 與PER、優(yōu)先回放的配合優(yōu)先經(jīng)驗(yàn)回放PER和HER經(jīng)常被一起討論因?yàn)槎寄芴嵘龜?shù)據(jù)效率。我的建議是在HER剛開(kāi)始投入時(shí)慎用PER。HER生成的額外樣本里有一類是“把當(dāng)前狀態(tài)作為目標(biāo)”的高獎(jiǎng)勵(lì)樣本這類樣本TD誤差可能很大PER選中它的概率極高導(dǎo)致更新時(shí)被大量“這步本來(lái)就接近目標(biāo)”的樣本刷屏反而壓制了對(duì)困難目標(biāo)的探索。如果非要加PER可以把優(yōu)先級(jí)計(jì)算公式改溫和一點(diǎn)比如p abs(td_error) 1e-3采樣權(quán)重不要按論文那樣嚴(yán)格最好設(shè)置一個(gè)最小概率防止完全丟棄低TD誤差的樣本。說(shuō)到底HER已經(jīng)把稀疏獎(jiǎng)勵(lì)變得更密了PER的邊際收益不如在獎(jiǎng)勵(lì)密集環(huán)境里那么高。4.4 資源與效率優(yōu)化實(shí)戰(zhàn)HER會(huì)放大經(jīng)驗(yàn)量k4意味著buffer里的樣本數(shù)大約是原始樣本的5倍訓(xùn)練一次需要sample的transition也變多了。內(nèi)存還好但訓(xùn)練吞吐量下降明顯。我常用的優(yōu)化手段有三個(gè)第一不要每步都往主buffer里寫(xiě)重標(biāo)注樣本。先緩存整個(gè)episode等episode結(jié)束后批量生成這樣能利用numpy向量化計(jì)算新目標(biāo)和新獎(jiǎng)勵(lì)。第二buffer容量不是越大越好。HER需要?dú)v史episode足夠多來(lái)提供多樣的狀態(tài)目標(biāo)但太大了也會(huì)讓訓(xùn)練收斂慢因?yàn)闃颖痉植紲笥诋?dāng)前策略。我一般設(shè)成1e5到1e6之間具體看狀態(tài)維度。第三多進(jìn)程采樣時(shí)讓每個(gè)worker持有自己的episodic buffer訓(xùn)練主線程只負(fù)責(zé)采樣和更新能大幅提高數(shù)據(jù)吞吐。4.5 從仿真到真實(shí)機(jī)器人落地要記的筆記如果是把HER拿到真實(shí)機(jī)器人上有幾個(gè)細(xì)節(jié)跟仿真相差很大。真實(shí)機(jī)器人的末端坐標(biāo)通常來(lái)自動(dòng)捕或視覺(jué)估計(jì)achieved_goal本身帶噪聲而你還要把噪聲后的位置當(dāng)新目標(biāo)寫(xiě)進(jìn)buffer。這會(huì)讓策略學(xué)到“去一個(gè)不存在的點(diǎn)”或者“重復(fù)抖動(dòng)”。建議在傳感器層先做濾波和標(biāo)定讓achieved_goal的精度至少高于環(huán)境閾值一個(gè)量級(jí)。另外真實(shí)環(huán)境探索成本高一定要做domain randomization讓仿真里機(jī)械臂初始狀態(tài)、物體位置、摩擦系數(shù)都在一個(gè)區(qū)間里變化。HER重標(biāo)注出的目標(biāo)只是在仿真軌跡上“事后達(dá)到過(guò)”的位置如果仿真和真實(shí)之間的狀態(tài)分布偏移太大這些目標(biāo)對(duì)真實(shí)環(huán)境的指導(dǎo)意義有限。安全方面真實(shí)機(jī)器人初始探索階段可以加一個(gè)夾爪保護(hù)和限位速度避免機(jī)械臂超出關(guān)節(jié)極限。5. 經(jīng)驗(yàn)與擴(kuò)展思考最后再說(shuō)一個(gè)我在多個(gè)任務(wù)里反復(fù)驗(yàn)證的經(jīng)驗(yàn)HER特別適合“目標(biāo)從狀態(tài)中直接提取”的任務(wù)尤其是機(jī)器人運(yùn)動(dòng)控制、路徑規(guī)劃、操作任務(wù)。但如果目標(biāo)是從圖像之類的高維傳感器里提取挑戰(zhàn)就會(huì)大很多因?yàn)橹貥?biāo)注出的新目標(biāo)必須對(duì)應(yīng)一個(gè)具體的像素塊或者潛在表征單純改標(biāo)簽可能引入語(yǔ)義錯(cuò)誤?,F(xiàn)在很多研究在做“表示空間里的HER”比如先學(xué)一個(gè)狀態(tài)編碼器然后在編碼空間里做目標(biāo)重標(biāo)注思路是一樣的。我自己在跑通HER后最大的體會(huì)是強(qiáng)化學(xué)習(xí)里“失敗”不是最可怕的“沒(méi)有替代目標(biāo)”才是最可怕的。HER把失敗經(jīng)驗(yàn)重新解釋成其他目標(biāo)下的成功等于給智能體鋪了一條從探索到利用的緩坡。這種“事后聰明”式學(xué)習(xí)也讓我反思自己平時(shí)做項(xiàng)目復(fù)盤(pán)時(shí)的態(tài)度——與其盯著沒(méi)達(dá)成的原始目標(biāo)懊悔不如把做出來(lái)的東西當(dāng)作新的參照坐標(biāo)提煉出它對(duì)其他問(wèn)題有沒(méi)有價(jià)值。這可能就是hindsight這個(gè)詞給我的最大禮物。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
综合第一页| 欧美成人色| 狠狠爱夜夜| 偷拍欧美综合| 999亚洲国产视频| 清纯唯美综合| 激情终合网| 亚洲成?V人片在线观看福利| 91视频伊人| 久久9免费视频| 欧美熟妇视频| 亚洲国产欧美中文永久| 黄色片,com| 蜜臀久久99精品久久久久| 综合网亚| 在线中文字幕视频| 人妻少妇一区二区| 国产精品人妻熟女aⅴ| 超碰在线1234区| 91人妻人人妻| 操操啪| 精品人妻免费观看| 999综合网| 国产精品色约约| 偷拍网站久久男女男| 久久性爱免费送| 操操吧亚洲乱伦视频| 九t超碰| 综合天天网| 狠狠综合| 男人的天堂2010| 久久性爱城| 国产精品婬乱一级毛片彝族| 午夜超爽| 亚洲s色图| 亚洲欧美国产日本一区二区三区| 国产东北女人在线视频| 欧洲性爱无码区| 欧美丝袜91| 欧美成人精品一区二区男人蜜臀| 日韩欧美天天爽爽爽天天爽爽| 久久久久久大| 欧洲Au麻豆| 好淫网一二三视区| 日韩熟女精品无码专区一区二区 | 加勒比久久av| 欧美超碰人妻97| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 操逼日批| 影音先锋每日最新资源在线观看 | 亚州一区二区| 亚洲资源站| 国产91 丝袜在线播放| 国产农村妇女毛片精品久久| 日韩成人性日韩成人性爱视频在线免费观看 | 久久精品视频久久久| 九月婷婷| 丰满人妻一区二区三区在线| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 97干在线看| 五月天色图| 国产有码一区| 性生活久久久久久久久久| 欧美专利1区2区3区4区5区免费| 97国产超湿| 草b在线| 玖玖97综合| 人人综合| 成人青青草原伊人| 国产精品一区二区a| 人人看人人插| 久久久免费一级黄片| 免费AV播放| 天天流夜夜操| 3571色综合一区二区二区| 国产精品自拍xxxx| 伊人九九九| 加勒比综合88| 亚洲欧美国产va在线播放频| 亚洲αv一区二区三区| av日韩手机在线影视| 日韩啪啪网| 欧美超碰96| 日日日大屁股骚女人精品| 91模特在线观看| 97超碰这里只有精品| 日韩另类| 天天综合影院91| 天天操天天看| 尹人免费观看视频在线| 99热色精品| 精品久久久久黄少妇| 青青草在线成人视频| 夜夜国产一区| 久久久久久性爱免费视频| 老子午夜伦不卡影院| 国产强奸超碰AV| 99热超碰| 午夜精品久久久久久久第一页按摩| 婷婷婷婷婷婷久久久久| 国产 v乱码一区二| 亚洲天堂第一页| 加勒比久久av| 蘋果手機免費看成人Av| 日韩熟女精一区二区三区不卡| 欧美一级AAAAAAA| 成视频在线观看免费看| 色制服丝袜夫妻av一区| 在线免费观看高清无码视频| 亚洲制服欧美另类内射| 婷婷色香| 日韩亚洲中文字幕在线| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 天天舔日美女视频| 韩国午夜理伦三级好看| 操死我了嗯嗯嗯| 777超碰| 91麻豆va国产精品| 99日免费视频中文字幕| 变态乱伦伪娘灌肠一区二区| 第二页中文字幕| 91热| 成人午夜视频免费播放| 亚洲不卡一| 99久久精品无码一区二区| 成人无码专区精品视频| 国产美女高潮| 亚洲第一页欧美| 亚洲国产精品无码AV久久| 清柠毛片| 人人操人人摸人| 久久久久亚洲Av无码专区老牛影视| 草草影院最新网址| 一牛一区二区三区久久| CCYY草草影院地址入口| 青娱乐亚洲热| 国产福利精品98视频| 97天天搞在线| 精品无码秘 人妻一区二区| 久操不卡视频| 夜夜躁狠狠躁日日躁av| 亚洲国产一级中文综合久久天堂在线免费观看 | 亚洲欧美骚| 国产精品99久久久www| 五月天欧美色图| 日本女优在线视频福利| 九月伊人中文字幕| 亚洲综合113页| 亚洲AV成人精品网站在AV| 精品免费一区二区三区在线亚洲人成 | 狠狠中文字幕| 天天大干大香蕉| 亚洲乱码尤物193YW| 少妇内射视频| 91最新综合| 人人摸人人添人人操| 俺也射| 五月婷婷综合网| 久久老女人| 99国产精品免费| 操逼网站网站| 伊人久久综合精品欧美| 欧美最婬乱婬爆婬性视频| 国产真实子伦对白| 久久九操在线观看| 狠狠穞A片一區二區三區| 一区二区三区国产在线播放| 少妇熟女视频一区二区三区| 中文字幕在线24| 国产乱伦视频污| 婷婷精品国产一区二区三区日韩| 日本五十路熟女一区二区| 免费视频观看60秒| 日本99一区二区| 欧美人妻久久精品二区三区| 欧美色图20p| 狠狠夜色午夜久久综合在线| 欧美国产日韩清纯唯美| 日韩熟女乱伦中出| 国产精品天堂| 亚洲精品99999| 久久99草| 久婷婷一区| 色婷婷综合视频| 強姦亂倫a| 青草一区二区| 密臀在线免费观看| 婷婷五月天激情小说| 99久久精品欧美国产| 18+91网站| 日韩精品99久久久久久中文字幕 | 日韩电影天堂视频一区二区| 搡老女人老91二区| 久久、1234| 色婷婷亚洲婷婷| 影音先锋少妇| 国产一区二区三区高清视频| 亚洲中文字幕av| 精品亚洲俞拍视频一区| 久久天天摸| 成人精品无码| 99这里都是精品| 九九热免费在线国产视频伊人五月| 国产午夜激片Av毛片不卡| 少妇厨房愉情理伦片bd在线观看| 欧美亚洲手机在线| 国产蜜臀精品一区二区尤物| 视频黄站| 啊啊啊啊啊啊啊在线| 亚洲色性情三级| 久久侵犯人妻爽爽爽| 97色婷| 日本操嫩b网| 国产隔壁老王影院在线| 精品无码一区二区三区色欲| 欧美亚洲综合高清在线| 国产真乱mangent| 91成人高清在线观看| 少妇综合| 国产品精品自在在线午夜免费| 欧美色另类| 国产尤物在线三区| 无码二级三级| 亚洲高清色综合| 久久久精精精| 久久久蜜桃臀无码视频| 国产精品直播在线观看直播| 欧美日韩狠狠爱| 天堂网亚洲区手机版| 少妇特黄一区二区三区| 草草草草视频| 国产精品爽爽v| 自怕偷自怕亚洲精品| 成人乱人伦一区二区| 操www| 91午夜无码| 亚洲精品无码少妇久久| 久久综合五月天| 天天影视综合网欧美精品| 日韩草久视频| 成人热久久精品| 97国产伦理| 97精品网站| 天天干夜夜操一区二区| 性暴力欧美猛交在线直播| 国产精品干干干| 亚洲最大AV网| 国产不卡精品91| 色婷婷蜜臀av| 麻豆国产精品午夜视频| 亚洲图片色图欧美另类| 人人看人人摸人人色| 色婷婷丁香五月| AV天堂电影网| 大屁股国产在线视频| 97国产|免费| 网友自拍第一页| 日韩精品国产一区二区| 天天日少妇逼AV| 中文字幕视频一区视频二区| 亚洲老司机123专区| 九九这里只有精品| 国产精品爱欲| 麻花豆传媒剧国产MV出差| 成人性爱免费播放| 蜜乳av首页| 999久久久久久久精| 日韩三级一区 | 久久的免费性爱视频| 激情黄色片在线观看| 国产精品一区二区三区,亚洲综合| 日本精品高清一二区一本到| 综合五月天| 欧美少妇性乱| av影片在线观看不卡| 免费人成在线观看网站品爱网| 国模少妇一区二区三区| 北京美女一区二区| 欧美色性情| 亚洲最大的综合性av| 男女打扑克高清网站| 东北操逼| 国产又黄又粗又猛大片| 自拍鲍鱼一区在线高清观看免费| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 久久久久九九九| 少妇国产不卡| 天美传媒精品一区二区| 中文字幕一区二区三区视频播放| 午夜后入| 国产51色综合久久免费| 日本女厕偷拍| 日韩免费簧片| 亚洲人精| 性天堂| 国产精品秘 福利姬在线观看| 男人网站婷婷| 午夜男女爽爽大片免费观看| 色婷婷久久| 日韩欧美蜜桃精品久久中文字幕久久 | 免费试看60秒| 国产av尤物| 久久久无码精品人妻二区 | 国产视频小说| 思思热影视| 一区,二区,三区视频| 国产精品精品系列在线观看| 精品视频日日夜夜| 看全色黄大色大片免费视频| 9久精品| 九九九九九九综合| 9999免费精彩视频| 美女十八禁| 五月婷婷激情综合| 欧亚日韩中文在线| 啊啊啊啊二区好大| www.亚洲黄色| 天天日美女的B| 岛国免费黄色网址| 日本加勒比无码专区一二三| 久久99亚洲精品久久99果| 裸体1区| 青青草女人天天干| 成年人性爱日韩| 97国产精品久久久久| 人人干人人操人人..com| www.av不卡中文字幕| 97摸视频| 神马久久午夜| 人妻无码久久一区二区三区免费| 最新日产中文在线麻豆| 农村少妇久久久久久久| 骚货人妻偷情自拍在线视频| 天天草天天日| 久草精品视频| 亚洲人妻一区二区三区| 嫩草在线视频| 日韩射图| 伊人青青一区成人视频在线观看区| 日产欧美电影一区二区三区| 加勒比海成人视频网 | 综合网欧| 国产伦乱91| 五十路熟女人妻一区二区三区四区五| 久久综合女优| 97福利视频| 久草尤物| 密臀在线视频| 成人五月香网在线| 九九热久久99精品re| 不卡六六在线91| 国产伦精品一区二区三区视频女| 国产美女口爆吞精视频| 中文字幕乱妇免费视频| 国精综合一二三区影视| 婷婷色色网| 国产亚洲精品激情| 97天天| 人妻酒店出差被中出免费在线播放| 婷婷AV一区二区三区| 亚洲天天操| 香蕉av一区二区三区| 欧美亚州手机在线| 日韩人妻一区二区精品| 人人操人人摸人人看人人插| 97亚洲中文| 亚洲Av噜噜一区二区三区妖精| 精品偷拍13p欧美dodk视频| 蜜臀久久99精品久久久久久-DVD| 无码人妻系列少妇| 超碰97男人| www九九热| 久久久无码精品人妻二区| 天堂蜜桃无码视频一区二区| 亚洲国产麻豆一区二区三区| 亚洲国产欧美另类自拍| 五月婷亚洲精品天堂| 另类专区加勒比| 嗯啊不要啊啊在线观看视频| 色九区| 男人的天堂网页| 久久成人东京热人妻| 三级网站超变态精品| 6080yy午夜理论三级一区二区三区无码| 2019精品国产无码成人| 国产深喉视频一区二区| 另类欧美色| 成人资源中文字幕在线观看| 九九九九一区| 国产美女精品| 精品乱码久久久久| 密臀AV在线| 九九热五区| 日本色婷婷| 一区二区三区精品视频| 日韩不卡毛片Av免费高清| 影视综合无码少妇| 视频国产欧美在线播放| 亚洲本色精品一区二区久久| 国产91福利小视频在线观看| 成人五月天丁香激情综合| 日本一区二区三区四区五区六区七区八区九区| 97网色| 91久久国产精品| 丝袜美腿操av| 97视频免费| 99re超碰| 一级片在线观看高清无码| 色网站导航大全| 人妻丝袜日本| 中文AV制服乱伦| 国产精品亚洲色婷婷久久久| 天天操天天射天天日| 再深点灬舒服灬太大了添视频| 国产极品精品美女视频| 国产浮力影院第1页| 香蕉人人操tv| 日韩有码免费视频| 九九热免费在线国产视频伊人五月| 毛片视频白嫩| 国产青视频| 欧美天堂亚洲电影院一区在线播放| 97热视频在线观看| 久久久偷拍| 91操操操操| 视频国产成人精品日本亚洲18| 亚洲无码超碰免费| 操一对老熟妇爽上天视频| 91欧美综合在线| 大香蕉伊然在亚洲91| 精品一区二区2| 玖玖久久久| 欧美十八禁视频| 超碰在线香蕉| 99热精品在线观看| 嗯嗯啊好大| 99超碰碰| 综合操逼| 五月色综合| 校园春色亚洲欧洲| 人妻激情视频| 日韩性爱视频在线免费观看| 五月丁香大香蕉| 欧美天天综| 亚洲色图欧美另类在线| 伊人 俄罗斯 a v| 欧美 综合| 97在线公开视频| 欧美精品久久久久久久丰满| 久久美女福利是上海美女| 黄色污污污污污污网站| 亚洲色图综合网| 91天天| 五月综合婷婷久久网站| 97色论| 欧美偷拍| 91在线视频观看国产| 国产强奸超碰AV| 91色婷婷综合久久中文字幕二区| 日本孕妇孕交| 无码精品人妻一区二区三区妖精 | 国产熟女一区二区丰满| 青青草国产欧美非洲黑人| 强免费黄色网址| 久操视频免费观看| 97在线免费看视频| 久久精9| 亚洲无992tv| 99无码精品| 欧美色图99| 手机不卡视频不卡在线一二三区| 大香蕉综合在线| 无码精品久久| 九九九九九九九九九五码| 国产精品黑人一区二区三区| 青青草在线成人视频| 亚洲图片另类| 蜜臀久久99精品久久久久免费观| 中文字幕第9页萱萱影音先锋| 美女啊啊啊啊啊啊啊| 清纯唯美亚洲综合| 久久超碰亚洲人| 涩综合导航| 69人妻精品丰满熟女区| 黄色AAAAA欧美| 国产情色第一第二页在线观看| 久操网址| 91免费看中出视频| 日韩av熟女一区二区三区成人| WWW.操逼.COM| 香港日本韩国人妇99www.wccm20| 1769一区二区| 麻豆成人影音在线| 蜜臀99999| 激情综合二| 黄色成年| 91艹逼精品| 日韩国产成人自拍视频| www.91视频网| 超碰1024久久| av片在线观看免费播放| 91精品国产一区三一| 久久蜜桃综合网| 国产精品激情久久久久久久| 欧美在线电影| 丁香婷婷激情五月天无毒不卡| 手机在线视频国内精品| 91强在线播放| 亚洲精品国产专区在线观看| av2014 日韩在线中文字幕| 日本人体九九九九九九| 天天视频黄网站| 日韩有码中文字幕女同性恋| 大香蕉伊人色偷偷在线| 五月丁香综合| 综合五月天| 九月伊人中文字幕| 色嘟嘟人妻天堂网| 亚洲国产精品99久久久| 日韩成人人妻网站| 超碰激情808| 国产福利精品最新在线| 国产做?爰片久久毛片?片美国| 日本欧美不卡| 欧美性天天影院| 麻豆视频test| 国产亚洲色婷婷久久99精品91| 不卡中文字幕aⅴ在线| 人妻人久久精品中文字幕| 人妻插插人妻人| 麻豆这里只有精品| 欧美极品性爱天天射| 97国产超碰| 啊啊啊轻点在线观看| 91精品人妻一区二区-全集完整版免费正片国语-B02AV | 日韩激情电影中文字幕| 亚洲综合嫩| 热的中文 热的有码 热的国产| 亚洲情色五月天 | 超碰在线1234区| 一区二区偷拍拍视频| 日韩丰满熟妇| 国产亚洲女v在线观看| 视频一区二区免费在线| 亚洲图片欧美| 男人久久天堂| 亚洲资源站| 91狠狠综合久久| 国产精品电| 色悠久久久av| 热的中文 热的有码 热的国产| 欧美天天综| 高树玛利亚无码流出| 日夜啪电影| 97操碰| 狠狠色婷婷777| 粉嫩在线一区二区懂色| 91黑人无码激情在线| 在线观看黄色电话| 久久久com| 日本三级中国三级99人妇网站| 国产女人成人精品视频| 99啪啪视频| 另类小说五月天| 色色五月婷婷| 天无日色综合| 人妻无码后入| 久久精品中文| 日韩综合色网| 亚洲熟妇A V黑人| 俞拍久久国应视频| 国产乱伦视频污| 国产在线视频二区| 日韩激情啪啪| 开心五月婷婷| av操操不卡| 国产精品在线网站| 新怡红院| 国产精品一区二区a| 学生妹天天看| 欧美无圣光在线| 久久e6只有精品| 蜜臀人妻少妇久久在线观看| 97超碰资源网| 国产91 丝袜在线播放| 三久久久四久久久久| 国内毛片国产欧美拍| 久久东京伊人一本到鬼色| 亚洲精品第一| 男人天堂一区二区| 18岁禁 茉莉成人久久| 欧美超碰人妻97| 91宗合网| 国产性爱在线视频一区二区| 97av在线视频| 青青草久久一区网| 国产精品一区二区麻豆| 国产成年女黄特黄| 亚洲最新a在线观看| 男人的天堂亚洲| 99re99视频在线免费观看| 日本久久久久久久久久| 51国产午夜精品视频| 中国国国产一级特黄毛片| 中文字暮97| 天天情欲宗合网| 欧洲性爱无码区| 国产麻豆一级精品视频| 玖玖蜜臀资源网| 无码二级三级| av在线一区二区三区| 欧美日韩情色一区二区| 色天天野狼综合社区| av在线播放国产一区| 大香交伊人网| 伊人在线大香蕉二。| 韩国三级一线观看久| 91超级碰碰| 亚洲欧美在线综合| 久久久久久亚洲Av无码精| 日本女人操逼| 超碰在线1234区| 无码外流操逼视频| 免費人妻夜夜爽天天爽爽一区| 亚洲成人在线乱码色午夜| 亚洲国产一区二区入口| 欧美亚洲20p| 天天插网| 国产欧美美女免费观看视频| www.91视频网| 五月天婷婷成人网| 亚洲丨在线| 日韩人妻一区二区精品| 亚洲一区制服诱惑| 婷婷激情五月天小说网| 性色av一区二区| 少妇高潮流水av免费| 久久这里都是精品| 98久久| 夜夜爽77777| 亚洲激情视频| 91蜜臀在线久久久久| 中国少妇啪啪视频| 深爱激情五月天| 一区二区三区高清| 中文字幕第页| 日韩精品人妻| 一区=区三区视频| 一级性爱视频免费观看| 75大香蕉| 国产黄色 A 片免费看| 色偷综合| 91站街按摩店老熟女熟女| 亚洲日精品| 天天干,天天日| 97国产超碰| 啊嗯好大视频在线观看| 五月婷婷丁香六月丁香| 午夜毛片高清免费不卡| 国产九九九九九九九九| 久久久999国产| 婷婷成人五月天| 极品销魂美女一区二区 | 2024人人操人人摸| 少妇淫妇久久久久久久| 91天天日| 国产精品视频麻豆入口| 人妻喷水| 99国产精品人妻人伦| 色视频蜜乳| 人人摸人人舔一区二区| 97人人草| 欧美综合国产精品久久丁香| 欧美亚洲国产日本在线,久久精品国产| 思思热国产在线视频| 欧美色图99| 香一区二区三区| 国产专区第一页| 精品一级| 一区二区三区蜜桃成人撸久久东京热| 日韩A优精品在线观看| www.人人摸在线视频| 日韩一999精品| 无码逼| 超碰99re| 97就爱干| 国产乱婷婷精品二区三区| 蜜乳Av成人片网站| 亚洲图片91| 日韩 成人 有码| 狠狠干综合| 不卡av在线中文字幕| 久操视频这里只有精品| 久久久av爱| 亚欧高清在线| 51国产午夜精品视频| 综合色久欲| 色呦呦、国产精品| 99久久久无码国产精品性男| 国语对白露脸XXXXXX| 人人摸人人舔一区二区| 色女综合| 婷婷六月色| 十八岁啪啪视频免费看| 女人综合网| 伊人少妇久久久| 日韩久久超碰色| 五月丁香色色网| 2020中文在线一区二区三区| 午夜精品久久99蜜桃的功能章节| 成人精品欧洲亚洲| 一区二区三区四区五区高清无码永久视频| 色乱二区| 日韩国产不卡在线视频| 思思热国产高清| 亚洲熟女一区二区| 亚洲性猛| 久久 亚洲 日韩 人妻| 久久超碰爱| 超碰99在线观看| 播播亚洲小说亚洲| 日本黄色大片一级视频免费麻豆| 99999精品| 97超碰欧美精品| julia ann久久| 香蕉免费一区二区三区不读| 97激情97激情| 欧美一级欧美三级在线观看| 久久久影院| 日本91白丝| 五月婷在线| 婷婷丁香五月综合| 久热伊人| 另类小说五月天| 五月天婷婷基地| 性爱av网站| 日本日皮视频逼| 婷婷影院入口| 欧美劲爆视频一区二区| 黄色AAAAA欧美| 国产黄片精品在线| 国产一区二区a毛片| 2019精品国产无码成人| 一本色道久久天天射天天干| 98人妻精品一区二区色欲| 国产在线播放成人免费| 欧美色www亚洲国产阿娇要播| 91东北熟女| 日欧操屄| 性爱边摸边日免费AV| 午夜电影在线观看无码专区| 中文字幕av一区二区三区人妻少妇 | 亚洲天堂电影精品一区| 亚洲宅男天堂| 久久a久久| 欲色影视综合吧| 99精品久久久久久| 久久超碰天天| 亚洲色交| 日韩极品无码B| 在线国产福利网址导航| 天天日天天干天天整| 久操热| 精品v1区| 天欧美在线| 国产精品久久蜜乳av| 97伊人超碰| 久久久性少妇| 国产精品久久久 | 激情专区综合| 中字乱伦AV| 日韩成人免费电影| 超碰 另类 欧美 | 啊啊啊好大好湿| 91欧美少妇| 欧美牲| 亚洲啪啪视频一区二区| 色色国产| 最新av在线| 91n处女在线观看| 性爱综合一区二区| 亚洲天堂无码| 一区二区三区男女操逼黄色小电影| 国产午夜视频| 久草新在线| 曰本人妻人人澡人人夹| 天天影视色香色欲| 国产成人精品午夜福利| 欧美色亚洲| 福利在线观看一区二区| 欧美日韩夜夜| 免费99精品国产自在在线| 在线视频97| 黄色小视频日本txt| 婷婷香蕉欧美在线一区二区三区 | 国产午夜激片Av毛片不卡| 久久五月份| 青操影院| 中文字幕美女91| 天天插天天插| 欧美激情黑人| 国产亚洲精品美女久久久| 丁香激情网| 加勒比人妻综合| 精品国产Av无码久久久亚洲| 久操热线| 国产吹潮女在线观看| 久久精品国产精品一区| 97色色网| 91精品国| 欧美人妻久久精品二区三区 | 亚洲欧美国产中文视频| 99精品网| 色99久草| 顶级丝袜熟女一区二区三区| 五月天综合网| 大香蕉伊人网| 69精品少妇一区二区三区蜜桃| 狠狠爱夜夜干| 亚洲国产一区二区入口| 色鬼在线综合| 久久只有精品| 91女在线观看| 少妇久久久久| 99热久| 久久久久久久久女黄| www国产天美久久久| 色拍偷亚洲| 国产一级特黄大片处女| 久久久久久91香蕉国产| 少妇高潮99p| 激情欧美97| 色小视频蜜乳| 超碰97综合网| WWW黄片COM| nuu12国产麻豆精品| 国产女人操逼视频| 青操影院| 日韩欧美经典在线观看| 骚货 中文字幕 av| 国产精品三级视频网站 | 日韩性爱一级片| 97久久超碰| 粉嫩国产精品久久粉嫩| 色97干| 色一射色一射| www久久国产精品| 亚洲一区二区三区麻豆传媒| 99久久亚洲精品无码毛片潘甜甜| 超碰激情808| 中文字幕日韩精品久久| 久久久久久久久久久久黄色 | 午夜舔阴达高潮视频免费看| 欧美欲色| 成人亚欧免费视频| 欧美三四五区| 日韩人妻资源网| 国产精品福利视频播放| 加勒比伊人影院| 久久久中文| 2017av无码免费无线播| 久久精品夜色国产亚洲AV| 色久桃花影院在线观看| 国产超碰97| 九色 人妻 大香蕉| 免费自拍三级综合| 欧美色图自拍| 天天插天天舔舔天天干| 蜜乳AV.COM| 加勒比综合在线| 91N五十路| 在线观看AV片| 92久久| 老司机久久| 日本午夜精品理论片A级APP发布| 色噜噜狠狠色综无码久久合欧美| 磁力99AV| 午夜男女爽爽爽在线视频 | 青青草日本无码| 午夜亚洲国产理论秋霞| 免费视频观看60秒| 熟女一区二区| 97人人模人人爽人人| 26uuu久久| 好一吊区二区| 久久精品天美| 五月婷婷丁香| 无码人妻精品一区二区中文| 91少妇高潮| 亚洲少妇色图自慰直播| 99色综合| 精品人妻一区| 操逼网站网站| 久久午夜神马| 97频视在线| 午夜情侣自拍网站| 欧美精品999| 啪啪视频亚洲第一| 日本道不卡| 伊人性在线视频| 九九热在线精品视频| 淫淫总合网| 日本在线不卡v二区| 欧美一级AAAAAAA| 精品一级| 97超碰影音| 欧美亚洲激情一二三| 黑人中出21连凳花野真衣| 九九亚洲视频| 精品一区二区亚洲国产| 日韩精品在线视频在线观看| 欧美第一页| 国产传媒一区二区三区| 日本熟妇自慰性高潮一区二区三区| 色第一页| 天天干2区3区| 青青草原人妻| 操久久久久久| 97操碰| 国模吧 一区二区三区| 精品亚洲国产成人精品| 日韩av免费一级电影| a片自拍直播视频| 久久激情婷婷| 先锋女优在线观看视频| 国产97av| 欧美日韩制服| 亚洲人妻色图| 校园春色美腿丝袜 | 日本99久久| 国产又操| 中文久久爆乳| 免费综合亚洲中文| 色官网在线| 人人考人人摸人人干| 国产 v乱码一区二| 亚洲欧洲日韩国产自在线| 99久久久er直播网址| 可能人人看人人摸| 永久免费发布性爱网| 激情网色| 爽 好舒服 无码刺激久久| 看日韩操逼| 久草大| 日韩高潮一区| 顶级少妇BT天堂| 91热情品| 97超碰中文| 欧美色图99| 狼人狠干| 国产精品久久久久久久无码AV| 日本孕妇一区二区视频操逼免费看 | 欧美第五页| 97亚洲中文| 超碰97久久| 色色网91| 99热只有这里有精品| 久草婷婷| 精爱久久| 久久原创中文| 91熟女在线| 三级日本一区二区三区| 国产探花精品在线| 五月婷婷久久综合| 午夜呻吟欧美| 久久久精品一区二区| 欧美精品系列| 中文操逼字幕| 亚洲欧美在线观看免费| 国内毛片免费h片在线| 在线 制服丝袜中出 人妻| 91网亚洲| 亚欧操逼片在线观看| 成人久久久| 狠狠中文字幕| 99无码精品| 国产乱码久久久| 韩国一级做a久久久久| 能在线播放的国产三级| 久久免费精彩视频| 麻豆福利视频导航| 国产精品午夜福利| 亚欧高清| 91GD.COM| 大香蕉啪啪啪啪在线| 夜夜夜爽www精品视频| 日日操免费视频| 成人性爱电影网| 色情亚洲日本成人| 色吊丝 日日骚 清纯唯美| 国产精品成人AV片免费看网站| 婷婷激情五月天小说网| 后X久久| 四虎影视永久在线观看精品免费网站| 国产熟女无套内射| 91人妻中文| 欧美一区二区三区大综合| 骚妻少妇精品性色无码四色A V| 成人毛片免费| 色综合久| 日本黄色天堂| 中字幕人妻一区二区三区| 9久精品| 亚洲欧美日韩中文久久自慰| 欧美一区二区男人天堂| 9999免费精彩视频| 9999九九九久久久| 日B操| 精品久久久久,69国产成人精| 久久久久国产精品人妻aⅴ天堂| 久草精品国产99| 五月婷婷影院| 午夜九九| 国产精品蜜乳AV| 密臀在线免费观看| 色臀AV| www.色婷婷色综合| 国产欧洲精品亚洲午夜拍精品| 九九视频黄色片| 99久久com免费视频′| 超碰超碰超碰超碰的大鸡吧操黑丝袜 | 欧美人妻精品一区二区| caopeng97人妻| 97无码视频在线播放| 欧美十八禁导航成人| 99久久网站| 久9综合在线| 亚洲国产午夜真人一级片中文字幕精品黄网站| 韩国三级三级BD在线| 狠狠操,使劲操| 天天淫人人妻日日色| 9久精品| 国产伦精品免编号公布| 校园春色五月天| 天美传媒国产原创中文字幕亚洲欧美另类| 人妻激情视频| 在线播放中文字幕| 91观看 国产白丝| 久久人妻视频| 97在线看| 亚洲中文人妻色| 国产兽交视频在线播放| 91色综合激情| 久久精品久久久久久久久| 闷骚老熟女15P| 黑人白女精品一区| 亚洲精品白丝| 噜噜噜无码AV一级一级久久影院| 日本2020一区二区| 六月婷婷综合| 中文字幕一区二区视频在线观看| 精品大久久| 欧美gv在线观看| 国产熟女二区| 粉嫩av在线一区二区| 成人AV在线网站| 亚 欧 美 综合| 亚洲性爱成人| 欧美高潮| 一区二区偷拍拍视频| 大象AV在线| 国内97干免费看| 欧美性爱精品一区二区| 欧美日韩资源| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 思思热一热婷婷热一热| 亚洲,日韩,欧美,成人播放| 亚洲天堂日本| 色婷婷丁香五月| 肏逼视频日本| 国产一区二区三区,在线观看观看| 九九探花视频在线观看| 97亚洲精品超碰| 97久久精品亚洲中六字幕| 欧美视频一区二区在线| 五十路三区在线| 国产丰满熟夫69mpp| 欧美黄片视频在线观看免费 | 91在线免费观看处女| 金莲网址| 91网站18禁| 97一区二区三区视频| 99视频在线| WWW操逼| 加勒比aⅴ| baiduhicn.com。| 99久久婷婷国产综合精品草原| 成年人网站在线免费观看| 熟女一区二区三区四区| 九九热精品免费视频| 青青伊人这里只有精品| 国产白丝AV| 成人在线午夜视频一区| 91久久国产综合久久| 欧美顶级黄色大片免费| 懂色Av| 久草综合网| 中文字幕人妻色偷偷久久皮| 尹人大香蕉视频在线| 一区二区影院| 日本人妻最新在线中| 天天综合91入口| 品亲网欧美品亲网| 97午夜剧场日韩| 午夜色婷婷| 国产日韩欧美亚洲精品95| 热99这里有精品综合久久| 蜜臀99久久精品| 久久大陆| 黄色二级片网站| 亚洲人妻一区二区三区| 亚洲av影院在线观看| 九九热免费国产视频婷婷伊人五月| 日韩欧美大力操| 欧美色欧美| 91日产桃蜜| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 久久青娱乐| 欧美亚洲se91| 熟女中出视频| 青青欧美在线| 吻戏激情性巴克| 丁香五月久久| 国内毛片国产专区二| 日韩黄片视频试看| 女人与公拘交酡2020视频| 91五十路| 免费视频97| 97久久国产精品女不卡| 人妻少妇无码| 国产精品一二三| 青青草国产一区二区三区| 福利一级版子| 大香蕉欧美国产日韩高潮| 综合网欧| 人妻一区久久二区三区色播| 狠狠躁AV| 九九无码久久精品视频| 淮穴色AV| 老女人爆菊| 精品免费一区二区三区在线亚洲人成| 天天操天天插| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 国产精品一区二区久久精品| 中文字幕精品探花视频| 国产精品视频内谢女人| 百度百度日本操逼| 国产综合日韩伦理| AV麻豆免费一区| 为用户提供免费看黄网址在线观看| 26UUU欧美日本| 26uuu国产亚洲综合| 国产AV色黄看到爽| 双插性欧美一二三区| 久久久久久国产手机AV| 91精品少妇搡搡搡| 国产剧情AV不卡在线观看| 围产精品一区二区三区视频播放| 亚洲一区二区精品福利| 国产激情在线观看|