亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

Actor-Critic算法精講:從策略梯度、TD誤差到RLHF與PPO實(shí)戰(zhàn)

Actor-Critic算法精講:從策略梯度、TD誤差到RLHF與PPO實(shí)戰(zhàn) 強(qiáng)化學(xué)習(xí)這兩年在業(yè)界和學(xué)術(shù)圈的熱度不用多說(shuō)從游戲博弈到機(jī)器人控制再到 ChatGPT 背后的 RLHFReinforcement Learning from Human Feedback人類反饋強(qiáng)化學(xué)習(xí)幾乎處處都能看到它的影子。而不管算法包裝成什么樣只要深入到大模型對(duì)齊那一層就必然會(huì)碰到一個(gè)繞不開的組合Actor-Critic 算法。網(wǎng)上關(guān)于強(qiáng)化學(xué)習(xí)的資料很多但普遍存在兩個(gè)問(wèn)題要么只講概念不給推導(dǎo)要么直接甩出一堆公式不講直覺(jué)。這篇教程會(huì)把演員-評(píng)論家算法作為主線從策略梯度為什么需要評(píng)論家講起先把 TD 誤差的數(shù)學(xué)含義拆開再一步步推導(dǎo) Actor-Critic 的更新公式最后結(jié)合 RLHF 場(chǎng)景說(shuō)明 PPO 在語(yǔ)言模型對(duì)齊中的落地方式并給出一份可以運(yùn)行的 PyTorch 示例代碼。適合剛接觸強(qiáng)化學(xué)習(xí)、希望看懂 RLHF 內(nèi)部原理或者準(zhǔn)備在實(shí)際項(xiàng)目中使用 Actor-Critic 框架的開發(fā)者閱讀。1. 強(qiáng)化學(xué)習(xí)與 RLHF 的關(guān)系1.1 什么是強(qiáng)化學(xué)習(xí)強(qiáng)化學(xué)習(xí)研究的是一個(gè)智能體Agent在與環(huán)境Environment交互過(guò)程中如何通過(guò)不斷試錯(cuò)來(lái)學(xué)習(xí)最優(yōu)策略Policy的問(wèn)題。每次交互可以拆解為智能體在當(dāng)前狀態(tài) (s) 下根據(jù)策略 (\pi(a|s)) 選擇一個(gè)動(dòng)作 (a)環(huán)境返回一個(gè)即時(shí)獎(jiǎng)勵(lì) (r)并轉(zhuǎn)移到新狀態(tài) (s)。如此循環(huán)智能體的目標(biāo)不再是最大化某一步的獎(jiǎng)勵(lì)而是最大化長(zhǎng)期累積獎(jiǎng)勵(lì)的期望。這個(gè)過(guò)程和人們常說(shuō)的“監(jiān)督學(xué)習(xí)”有本質(zhì)區(qū)別。監(jiān)督學(xué)習(xí)有明確的標(biāo)準(zhǔn)答案模型通過(guò)擬合標(biāo)簽來(lái)學(xué)習(xí)輸入輸出映射而強(qiáng)化學(xué)習(xí)沒(méi)有標(biāo)準(zhǔn)答案只有獎(jiǎng)勵(lì)信號(hào)。獎(jiǎng)勵(lì)信號(hào)往往稀疏、延遲、存在噪聲這就導(dǎo)致算法必須解決“信用分配”問(wèn)題到底哪一步動(dòng)作導(dǎo)致了最終的高回報(bào)傳統(tǒng)表格型方法在狀態(tài)空間較小時(shí)可以工作一旦狀態(tài)空間連續(xù)或維度很高就必須借助函數(shù)近似例如神經(jīng)網(wǎng)絡(luò)。深度強(qiáng)化學(xué)習(xí)Deep Reinforcement Learning就是“強(qiáng)化學(xué)習(xí) 深度神經(jīng)網(wǎng)絡(luò)”用深度網(wǎng)絡(luò)來(lái)表示策略、價(jià)值函數(shù)或模型。1.2 從強(qiáng)化學(xué)習(xí)到 RLHFRLHF 嚴(yán)格來(lái)說(shuō)并不是一種全新的強(qiáng)化學(xué)習(xí)算法而是一種“訓(xùn)練范式”。它解決的是“如何讓模型行為符合人類偏好”的問(wèn)題。以大語(yǔ)言模型為例普通的監(jiān)督微調(diào)只能讓模型學(xué)會(huì)模仿人類給出的答案但無(wú)法真正理解“什么回答更好”。于是研究者設(shè)計(jì)了一條流程先訓(xùn)練一個(gè)獎(jiǎng)勵(lì)模型Reward Model讓它學(xué)會(huì)對(duì)人類偏好打分。再用強(qiáng)化學(xué)習(xí)算法去優(yōu)化語(yǔ)言模型讓模型生成的回答獲得更高的獎(jiǎng)勵(lì)分?jǐn)?shù)。在這個(gè)流程中語(yǔ)言模型本身就是強(qiáng)化學(xué)習(xí)里的 Actor它負(fù)責(zé)生成文本獎(jiǎng)勵(lì)模型輸出的分?jǐn)?shù)就是獎(jiǎng)勵(lì)信號(hào)。為了讓訓(xùn)練穩(wěn)定通常還會(huì)引入一個(gè)評(píng)論家網(wǎng)絡(luò)Critic來(lái)估計(jì)狀態(tài)價(jià)值或動(dòng)作價(jià)值。因此 RLHF 在實(shí)現(xiàn)層面大量使用 Actor-Critic 框架尤其是 PPOProximal Policy Optimization算法。這也是本文把“Actor-Critic”和“RLHF”放在一起講的原因。1.3 容易混淆的概念實(shí)際閱讀資料時(shí)有幾組概念經(jīng)常被混用先在這里做一次區(qū)分概念含義常見誤區(qū)Actor策略網(wǎng)絡(luò)輸入狀態(tài)輸出動(dòng)作分布被誤認(rèn)為只是“生成動(dòng)作的模型”Critic價(jià)值網(wǎng)絡(luò)輸入狀態(tài)輸出價(jià)值估計(jì)被誤認(rèn)為必須和 Actor 共享結(jié)構(gòu)TD 誤差時(shí)序差分誤差用于衡量真實(shí)獎(jiǎng)勵(lì)與估計(jì)之間的偏差被誤認(rèn)為是“優(yōu)勢(shì)函數(shù)”本身優(yōu)勢(shì)函數(shù)某個(gè)動(dòng)作相對(duì)平均水平的優(yōu)勢(shì)A(s,a)Q(s,a)-V(s)被誤認(rèn)為只能用 TD 誤差估計(jì)RLHF用人類反饋訓(xùn)練獎(jiǎng)勵(lì)模型再用強(qiáng)化學(xué)習(xí)優(yōu)化策略被誤認(rèn)為是一種具體算法理解這些概念后再看 Actor-Critic 推導(dǎo)會(huì)順暢很多。2. 策略梯度與 Actor-Critic 的動(dòng)機(jī)2.1 策略梯度為什么直接用獎(jiǎng)勵(lì)會(huì)不穩(wěn)定在策略梯度方法中我們希望最大化期望累積獎(jiǎng)勵(lì)[ J(\theta) \mathbb{E}{\tau \sim \pi\theta} [R(\tau)] ]其中 (\tau (s_0, a_0, r_0, s_1, a_1, r_1, \dots)) 是一條軌跡(R(\tau) \sum_{t0}^{T} \gamma^t r_t)。對(duì)參數(shù) (\theta) 求梯度可以得到著名的策略梯度定理[ \nabla_\theta J(\theta) \mathbb{E}{\tau \sim \pi\theta} \left[ \sum_{t0}^{T} \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot R_t \right] ]這里的 (R_t \sum_{kt}^{T} \gamma^{k-t} r_k) 是軌跡從時(shí)刻 (t) 起的累積折扣回報(bào)。這個(gè)公式看起來(lái)很簡(jiǎn)單但直接使用存在一個(gè)問(wèn)題方差極大。因?yàn)椴煌壽E之間的回報(bào)差異可能非常大同一個(gè)動(dòng)作在高回報(bào)軌跡和低回報(bào)軌跡中都可能出現(xiàn)算法難以判斷動(dòng)作本身是好是壞。為了降低方差通常會(huì)給獎(jiǎng)勵(lì)減去一個(gè)基線Baseline改成[ \nabla_\theta J(\theta) \mathbb{E} \left[ \sum_t \nabla_\theta \log \pi_\theta(a_t|s_t) \cdot \left( R_t - b(s_t) \right) \right] ]基線 (b(s_t)) 只要不依賴于動(dòng)作 (a_t)就不會(huì)改變梯度的期望但能顯著降低方差。一個(gè)自然的選擇是狀態(tài)價(jià)值函數(shù) (V^\pi(s_t))。于是策略梯度中的“回報(bào)減去基線”就變成了“動(dòng)作價(jià)值減去狀態(tài)價(jià)值”也就是優(yōu)勢(shì)函數(shù) (A^\pi(s_t, a_t) Q^\pi(s_t, a_t) - V^\pi(s_t))。這正是 Actor-Critic 的思想起點(diǎn)。2.2 從 REINFORCE 到 Actor-CriticREINFORCE 是典型的蒙特卡洛策略梯度算法它必須等到一條軌跡結(jié)束后才能計(jì)算累積回報(bào)。這種做法的優(yōu)點(diǎn)是估計(jì)無(wú)偏缺點(diǎn)是方差大、學(xué)習(xí)效率低。如果能在每個(gè)時(shí)間步都獲取一個(gè)“即時(shí)反饋”就可以更快更新。于是評(píng)論家出現(xiàn)了。評(píng)論家網(wǎng)絡(luò)負(fù)責(zé)估計(jì)價(jià)值函數(shù)例如 (V(s)) 或 (Q(s,a))。Actor 網(wǎng)絡(luò)負(fù)責(zé)生成策略。訓(xùn)練時(shí)Actor 根據(jù)評(píng)論家提供的優(yōu)勢(shì)估計(jì)更新策略評(píng)論家則根據(jù)實(shí)際觀察到的獎(jiǎng)勵(lì)和下一狀態(tài)的價(jià)值來(lái)更新自己。兩者交替訓(xùn)練這就是 Actor-Critic 框架。從 REINFORCE 到 Actor-Critic核心變化是把“采樣完整軌跡再計(jì)算回報(bào)”改成“用價(jià)值函數(shù)估計(jì)作為回報(bào)近似”。這種做法引入了偏差因?yàn)閮r(jià)值函數(shù)本身估計(jì)不準(zhǔn)但換來(lái)的是方差大幅下降。在深度強(qiáng)化學(xué)習(xí)實(shí)踐中方差問(wèn)題往往比偏差問(wèn)題更致命因此 Actor-Critic 方法成為主流。2.3 為什么需要 CriticCritic 網(wǎng)絡(luò)承擔(dān)了“評(píng)估當(dāng)前策略好壞”的任務(wù)。如果沒(méi)有 CriticActor 就只能依賴真實(shí)獎(jiǎng)勵(lì)信號(hào)而真實(shí)獎(jiǎng)勵(lì)通常是稀疏的。例如機(jī)械臂抓取任務(wù)只有抓到物體才給 1 獎(jiǎng)勵(lì)其他時(shí)候都是 0這種稀疏獎(jiǎng)勵(lì)讓策略梯度很難學(xué)習(xí)。Critic 可以通過(guò)學(xué)習(xí)狀態(tài)價(jià)值為每一步提供一個(gè)稠密的“預(yù)期收益”信號(hào)即使當(dāng)前沒(méi)有真實(shí)獎(jiǎng)勵(lì)也能通過(guò) (r \gamma V(s) - V(s)) 給出一個(gè)更新信號(hào)。這就是時(shí)序差分Temporal DifferenceTD學(xué)習(xí)的價(jià)值。3. TD 誤差概念與公式推導(dǎo)3.1 TD 誤差的定義時(shí)序差分學(xué)習(xí)是強(qiáng)化學(xué)習(xí)中的核心思想之一。它結(jié)合了蒙特卡洛采樣和動(dòng)態(tài)規(guī)劃的思想用一步真實(shí)獎(jiǎng)勵(lì)加上下一狀態(tài)的價(jià)值估計(jì)來(lái)更新當(dāng)前狀態(tài)的價(jià)值估計(jì)。TD 誤差定義為[ \delta_t r_t \gamma V(s_{t1}) - V(s_t) ]其中(r_t) 是時(shí)刻 (t) 執(zhí)行動(dòng)作后獲得的即時(shí)獎(jiǎng)勵(lì)(\gamma) 是折扣因子取值范圍通常為 ([0, 1])(V(s_t)) 是當(dāng)前狀態(tài)價(jià)值的估計(jì)值(V(s_{t1})) 是下一狀態(tài)價(jià)值的估計(jì)值。如果 (V) 是真實(shí)價(jià)值函數(shù)那么根據(jù)貝爾曼方程(r_t \gamma V(s_{t1})) 的期望應(yīng)該等于 (V(s_t))因此 TD 誤差的期望為 0。如果估計(jì)有偏差TD 誤差就反映了這種偏差。在 Actor-Critic 中TD 誤差不僅是評(píng)論家的更新目標(biāo)也可以作為動(dòng)作優(yōu)勢(shì)的近似估計(jì)。3.2 TD 誤差與優(yōu)勢(shì)函數(shù)的關(guān)系優(yōu)勢(shì)函數(shù)定義為[ A^\pi(s_t, a_t) Q^\pi(s_t, a_t) - V^\pi(s_t) ]而動(dòng)作價(jià)值 (Q^\pi(s_t, a_t)) 滿足[ Q^\pi(s_t, a_t) r_t \gamma V^\pi(s_{t1}) ]將上式代入優(yōu)勢(shì)函數(shù)[ A^\pi(s_t, a_t) r_t \gamma V^\pi(s_{t1}) - V^\pi(s_t) \delta_t ]因此 TD 誤差可以被看作優(yōu)勢(shì)函數(shù)的一種單步采樣估計(jì)。當(dāng)然實(shí)際使用中由于價(jià)值函數(shù) (V) 是近似估計(jì)TD 誤差存在偏差但它在每一步都能計(jì)算非常適合在線學(xué)習(xí)。3.3 多步 TD 與 GAE單步 TD 雖然方差低但偏差可能較大尤其是在獎(jiǎng)勵(lì)延遲明顯的任務(wù)中。為了平衡偏差和方差可以使用多步回報(bào)[ A^{(n)}t \sum{k0}^{n-1} \gamma^k r_{tk} \gamma^n V(s_{tn}) - V(s_t) ]更進(jìn)一步GAEGeneralized Advantage Estimation廣義優(yōu)勢(shì)估計(jì)通過(guò)對(duì)不同步數(shù)的 TD 誤差做指數(shù)加權(quán)平均得到更靈活的優(yōu)勢(shì)估計(jì)[ A^{GAE}t \sum{l0}^{\infty} (\gamma \lambda)^l \delta_{tl} ]其中 (\lambda \in [0,1]) 控制偏差和方差的權(quán)衡。(\lambda 0) 時(shí)退化為單步 TD(\lambda 1) 時(shí)接近蒙特卡洛估計(jì)。PPO 等現(xiàn)代算法普遍使用 GAE就是因?yàn)樗谙∈瑾?jiǎng)勵(lì)場(chǎng)景下表現(xiàn)更好。關(guān)于 GAE 的推導(dǎo)本質(zhì)上是把多步優(yōu)勢(shì)估計(jì)按照 (\lambda) 做指數(shù)平滑這里不再展開矩陣形式但理解這個(gè)加權(quán)思路對(duì)調(diào)參很有幫助。4. Actor-Critic 算法數(shù)學(xué)推導(dǎo)4.1 目標(biāo)函數(shù)與梯度Actor 的目標(biāo)是最大化期望累積獎(jiǎng)勵(lì)但為了引入基線我們寫成[ \nabla_\theta J(\theta) \mathbb{E}{\pi\theta} \left[ \sum_t \nabla_\theta \log \pi_\theta(a_t|s_t) A(s_t, a_t) \right] ]其中 (A(s_t, a_t)) 代替了原來(lái)的回報(bào) (R_t)。這就是帶基線策略梯度的一般形式。在實(shí)際實(shí)現(xiàn)中期望用采樣近似因此 Actor 的損失函數(shù)一般取負(fù)的代理目標(biāo)[ L_{actor} -\frac{1}{N} \sum_{i1}^{N} \log \pi_\theta(a_i|s_i) \cdot A_i ]如果使用 TD 誤差作為優(yōu)勢(shì)估計(jì)則 (A_i) 用 (\delta_i r_i \gamma V_{\phi}(s_{i1}) - V_{\phi}(s_i)) 代替。但單步 TD 偏差較大所以實(shí)際項(xiàng)目中更常用 GAE 或使用評(píng)論家輸出 (V(s)) 計(jì)算多步優(yōu)勢(shì)。4.2 評(píng)論家的目標(biāo)函數(shù)評(píng)論家的目標(biāo)是讓價(jià)值函數(shù)估計(jì)更準(zhǔn)通常使用均方誤差MSE損失[ L_{critic} \frac{1}{N} \sum_{i1}^{N} \left( V_\phi(s_i) - \hat{R}_i \right)^2 ]其中 (\hat{R}_i) 是目標(biāo)回報(bào)例如[ \hat{R}i r_i \gamma V{\phi_{target}}(s_{i1}) ]需要注意評(píng)論家網(wǎng)絡(luò) (V_\phi) 如果和目標(biāo)回報(bào)使用同一組參數(shù)會(huì)造成自舉偏差的累積。因此很多實(shí)現(xiàn)會(huì)使用一個(gè)目標(biāo)網(wǎng)絡(luò)Target Network或延遲更新機(jī)制。在 PPO 中由于策略更新幅度被限制評(píng)論家網(wǎng)絡(luò)通常直接和 Actor 共享部分底層特征或完全獨(dú)立具體取決于狀態(tài)空間和動(dòng)作空間的復(fù)雜度。4.3 Actor-Critic 更新算法流程一個(gè)標(biāo)準(zhǔn)的 Actor-Critic 循環(huán)可以寫成下面的偽代碼初始化 Actor 網(wǎng)絡(luò) π_θ 和 Critic 網(wǎng)絡(luò) V_φ for 每個(gè)回合: 初始化狀態(tài) s for 每個(gè)時(shí)間步 t: 根據(jù) π_θ(·|s) 采樣動(dòng)作 a 執(zhí)行動(dòng)作 a觀察獎(jiǎng)勵(lì) r 和下一狀態(tài) s 計(jì)算 TD 誤差: δ r γ V_φ(s) - V_φ(s) 存儲(chǔ) (s, a, r, s, δ) 更新 Critic: φ ← φ - α_c * ?_φ (δ)^2 更新 Actor: θ ← θ α_a * ?_θ log π_θ(a|s) * δ s ← s實(shí)際深度強(qiáng)化學(xué)習(xí)中通常不是單步更新而是先收集一批數(shù)據(jù)再用小批量梯度更新類似于經(jīng)驗(yàn)回放。為什么需要批量因?yàn)閱蝹€(gè)樣本的 TD 誤差噪聲太大直接在線更新會(huì)讓網(wǎng)絡(luò)參數(shù)震蕩。4.4 從 Actor-Critic 到 PPOActor-Critic 框架雖然有效但直接使用策略梯度更新 Actor 時(shí)如果學(xué)習(xí)率設(shè)置不當(dāng)一次更新過(guò)大策略會(huì)發(fā)生突變導(dǎo)致訓(xùn)練崩潰。PPO 的解決方案是裁剪代理目標(biāo)[ L^{CLIP}(\theta) \mathbb{E} \left[ \min\left( r_t(\theta) A_t, ; \text{clip}(r_t(\theta), 1-\epsilon, 1\epsilon) A_t \right) \right] ]其中 (r_t(\theta) \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{old}}(a_t|s_t)}) 是新舊策略的比率。通過(guò)裁剪PPO 限制每次更新的幅度從而保持訓(xùn)練穩(wěn)定。PPO 仍然使用 Actor-Critic 結(jié)構(gòu)Critic 估計(jì)狀態(tài)價(jià)值A(chǔ)ctor 輸出策略分布。這也是 RLHF 中最常用的強(qiáng)化學(xué)習(xí)算法。5. RLHF 中的 Actor-Critic 應(yīng)用5.1 RLHF 訓(xùn)練流程拆解RLHF 的完整流程可以分成三個(gè)階段監(jiān)督微調(diào)SFT先讓語(yǔ)言模型具備基礎(chǔ)對(duì)話能力。獎(jiǎng)勵(lì)模型訓(xùn)練收集人類對(duì)多個(gè)回答的排序或打分訓(xùn)練一個(gè)獎(jiǎng)勵(lì)模型用來(lái)代替人類的實(shí)時(shí)反饋。強(qiáng)化學(xué)習(xí)優(yōu)化用 PPO 等算法以獎(jiǎng)勵(lì)模型給出的分?jǐn)?shù)作為獎(jiǎng)勵(lì)信號(hào)更新語(yǔ)言模型策略。在第三個(gè)階段Actor 就是語(yǔ)言模型本身它的輸入是提示Prompt輸出是生成的整段文本。Critic 則是一個(gè)價(jià)值網(wǎng)絡(luò)輸入狀態(tài)通常是提示 已生成文本的某種嵌入到當(dāng)前步為止的上下文輸出一個(gè)標(biāo)量?jī)r(jià)值。因?yàn)樯呻A段被建模為馬爾可夫決策過(guò)程每一步生成一個(gè) token 相當(dāng)于一個(gè)動(dòng)作。5.2 為什么 RLHF 要用 PPO 而不是直接策略梯度直接使用原始策略梯度在語(yǔ)言模型場(chǎng)景下有幾個(gè)問(wèn)題語(yǔ)言模型參數(shù)規(guī)模龐大一次采樣一條完整回答成本很高逐 token 的獎(jiǎng)勵(lì)非常稀疏只有整個(gè)回答生成完畢才能得到獎(jiǎng)勵(lì)模型的分?jǐn)?shù)如果單步更新太大模型會(huì)產(chǎn)生語(yǔ)法崩壞、重復(fù)冗余的輸出。PPO 通過(guò)重要性采樣和裁剪解決了更新幅度問(wèn)題同時(shí)利用 Critic 對(duì)每個(gè) token 的狀態(tài)價(jià)值進(jìn)行估計(jì)能夠把“整段獎(jiǎng)勵(lì)”逐 token 分解成優(yōu)勢(shì)信號(hào)從而更新每一步的 token 生成策略。此外PPO 還加入 KL 散度懲罰項(xiàng)防止模型為了獎(jiǎng)勵(lì)模型的高分而偏離原始 SFT 模型太遠(yuǎn)。KL 懲罰的實(shí)際作用可以理解為“不要為了分?jǐn)?shù)犧牲可讀性”。5.3 PPO 在語(yǔ)言模型中的損失函數(shù)完整 PPO 損失通常包含三個(gè)部分Actor 的裁剪策略目標(biāo)Critic 的價(jià)值函數(shù)損失熵正則Entropy Bonus和 KL 懲罰項(xiàng)??梢詫懗蒣 L^{PPO} - L^{CLIP}(\theta) c_1 L^{VF}(\phi) - c_2 \mathcal{H}[\pi_\theta] \beta \cdot \text{KL} ]其中 (L^{VF}) 是評(píng)論家價(jià)值損失(\mathcal{H}) 是策略熵KL 項(xiàng)衡量當(dāng)前策略與參考策略一般是 SFT 模型的分布距離。實(shí)際工程中各項(xiàng)系數(shù) (c_1, c_2, \beta) 都需要針對(duì)具體任務(wù)調(diào)整。一個(gè)常見問(wèn)題是KL 懲罰加在獎(jiǎng)勵(lì)上還是加在損失函數(shù)上兩種方式都存在。把 KL 懲罰加到實(shí)時(shí)獎(jiǎng)勵(lì)上更直觀PPO 采樣時(shí)每個(gè) token 獎(jiǎng)勵(lì)可以設(shè)置為[ r_t^{total} r_t^{reward_model}(samples) \cdot \mathbb{I}(t T) \beta \cdot \log \frac{\pi_{\theta}(a_t|s_t)}{\pi_{ref}(a_t|s_t)} ]這里只有最后一個(gè) token 收到獎(jiǎng)勵(lì)模型的標(biāo)量獎(jiǎng)勵(lì)其余 token 只收到 KL 懲罰信號(hào)。但實(shí)際實(shí)現(xiàn)中強(qiáng)化學(xué)習(xí)訓(xùn)練時(shí)整個(gè)序列的每個(gè) token 位置都會(huì)計(jì)算 Critic 的價(jià)值因此需要把序列級(jí)別的獎(jiǎng)勵(lì)映射到每一個(gè) token 位置。這也是 RLHF 訓(xùn)練代碼中最容易踩坑的地方。5.4 一個(gè)簡(jiǎn)化的 RLHF 訓(xùn)練偽代碼# 偽代碼僅用于理解流程不直接可運(yùn)行 for prompt in dataset: # 1. Actor 生成回答 response actor.generate(prompt) # 2. 計(jì)算每個(gè) token 的 logprob 和 KL log_probs actor.get_logprobs(prompt, response) ref_log_probs ref_model.get_logprobs(prompt, response) kl log_probs - ref_log_probs # 3. 獎(jiǎng)勵(lì)模型打分整段分?jǐn)?shù) reward_score reward_model(prompt, response) # 4. 將整段獎(jiǎng)勵(lì)分配到每個(gè) token常見做法最后一個(gè) token 得到獎(jiǎng)勵(lì) token_rewards torch.zeros_like(log_probs) token_rewards[-1] reward_score - beta * kl.mean() token_rewards[:-1] - beta * kl[:-1] # 5. 用 GAE 計(jì)算優(yōu)勢(shì) advantages gae(values, token_rewards, masks) # 6. 更新 Actor 和 Critic actor_loss clip_actor_loss(log_probs, old_log_probs, advantages) critic_loss mse_loss(values, returns) loss actor_loss critic_weight * critic_loss - entropy_weight * entropy loss.backward() optimizer.step()注意真實(shí) RLHF 代碼會(huì)比這段復(fù)雜得多包括共享內(nèi)存采樣、微批量更新、動(dòng)態(tài) KL 系數(shù)、長(zhǎng)度歸一化獎(jiǎng)勵(lì)等。理解流程后再去看開源實(shí)現(xiàn)會(huì)輕松很多。6. 最小可運(yùn)行示例PyTorch 實(shí)現(xiàn) Actor-Critic接下來(lái)給出一份可以直接運(yùn)行的 Actor-Critic 示例代碼環(huán)境使用 OpenAI Gym 的 CartPole-v1。這個(gè)任務(wù)相對(duì)簡(jiǎn)單不需要 GPU適合驗(yàn)證算法流程。代碼核心思路是用一個(gè)共享兩層全連接網(wǎng)絡(luò)分別輸出策略分布參數(shù)和價(jià)值標(biāo)量通過(guò) TD 誤差更新。6.1 環(huán)境準(zhǔn)備本示例建議使用以下環(huán)境Python 3.8 及以上PyTorch 1.13 或 2.xgymnasium 0.28 或以上注意新版已從 gym 改名為 gymnasium安裝命令pip install torch gymnasium如果你的環(huán)境已經(jīng)安裝了老版本gym也可以跳過(guò)安裝但需要將代碼導(dǎo)入部分改為import gym。版本差異不影響算法邏輯。6.2 完整代碼# 文件路徑actor_critic_cartpole.py import torch import torch.nn as nn import torch.optim as optim import gymnasium as gym import math class ActorCritic(nn.Module): 共享底層特征的 Actor-Critic 網(wǎng)絡(luò)。 Actor 輸出動(dòng)作概率的 logitsCritic 輸出狀態(tài)價(jià)值 V(s)。 def __init__(self, state_dim, action_dim, hidden_dim128): super(ActorCritic, self).__init__() self.fc1 nn.Linear(state_dim, hidden_dim) self.fc2 nn.Linear(hidden_dim, hidden_dim) self.actor_head nn.Linear(hidden_dim, action_dim) self.critic_head nn.Linear(hidden_dim, 1) def forward(self, state): x torch.relu(self.fc1(state)) x torch.relu(self.fc2(x)) policy_logits self.actor_head(x) value self.critic_head(x) return policy_logits, value def get_action(self, state): policy_logits, value self.forward(state) dist torch.distributions.Categorical(logitspolicy_logits) action dist.sample() log_prob dist.log_prob(action) return action.item(), log_prob, value def train(env, agent, optimizer, gamma0.99, max_steps1000): 單回合訓(xùn)練采集軌跡計(jì)算 TD 誤差并更新網(wǎng)絡(luò)。 log_probs [] rewards [] values [] dones [] state, _ env.reset() state torch.tensor(state, dtypetorch.float32) total_reward 0 for step in range(max_steps): action, log_prob, value agent.get_action(state) next_state, reward, terminated, truncated, _ env.step(action) done terminated or truncated log_probs.append(log_prob) values.append(value) rewards.append(reward) dones.append(done) state torch.tensor(next_state, dtypetorch.float32) total_reward reward if done: break # 計(jì)算 TD 誤差和 Actor/Critic 損失 returns [] G 0.0 for i in reversed(range(len(rewards))): G rewards[i] gamma * G * (1 - dones[i]) returns.insert(0, G) returns torch.tensor(returns, dtypetorch.float32) values_tensor torch.cat(values).squeeze() log_probs_tensor torch.stack(log_probs) # Critic 損失價(jià)值估計(jì)與累計(jì)回報(bào)之間的 MSE critic_loss nn.functional.mse_loss(values_tensor, returns) # Actor 損失策略梯度的負(fù)對(duì)數(shù)似然 * 優(yōu)勢(shì)用 TD 誤差近似 advantages returns - values_tensor.detach() actor_loss -(log_probs_tensor * advantages).mean() loss actor_loss critic_loss optimizer.zero_grad() loss.backward() optimizer.step() return total_reward if __name__ __main__: env gym.make(CartPole-v1) state_dim env.observation_space.shape[0] action_dim env.action_space.n agent ActorCritic(state_dim, action_dim) optimizer optim.Adam(agent.parameters(), lr1e-3) episodes 500 for episode in range(episodes): reward train(env, agent, optimizer) if (episode 1) % 20 0: print(fEpisode {episode 1}, total reward: {reward})6.3 代碼說(shuō)明這段代碼雖然簡(jiǎn)單但完整展示了 Actor-Critic 的核心流程。ActorCritic類中actor_head輸出動(dòng)作分布的 logitscritic_head輸出狀態(tài)價(jià)值。get_action通過(guò) Categorical 分布采樣動(dòng)作返回動(dòng)作、動(dòng)作對(duì)數(shù)概率和當(dāng)前狀態(tài)價(jià)值估計(jì)。訓(xùn)練函數(shù)中先與環(huán)境交互收集一整條軌跡然后在軌跡結(jié)束時(shí)計(jì)算累積回報(bào)G并把累積回報(bào)作為 Critic 的回歸目標(biāo)。優(yōu)勢(shì)函數(shù)使用returns - values.detach()這里并沒(méi)有直接用 TD 誤差而是用蒙特卡洛回報(bào)近似優(yōu)勢(shì)因?yàn)閱尾?TD 在 CartPole 上也可以運(yùn)行但方差更大。如果你希望觀察 TD 誤差的作用可以把優(yōu)勢(shì)換成rewards gamma * next_value - value注意需要額外計(jì)算下一狀態(tài)價(jià)值。運(yùn)行后如果網(wǎng)絡(luò)正常收斂你會(huì)在 200 到 400 個(gè)回合之間看到回報(bào)穩(wěn)定在 200 左右CartPole 的最大步數(shù)限制通常為 200。如果你的代碼在 100 回合內(nèi)回報(bào)不升反降一般是因?yàn)閷W(xué)習(xí)率過(guò)大或優(yōu)勢(shì)計(jì)算錯(cuò)誤。6.4 擴(kuò)展到 PPO 需要考慮什么上面的示例是單步更新的“原始 Actor-Critic”與 PPO 還有差距。要把它改成 PPO需要額外做幾件事保存每步的old_log_prob使用 GAE 計(jì)算優(yōu)勢(shì)對(duì) Actor 損失進(jìn)行裁剪多輪小批量更新而不是每回合只更新一次增加熵正則項(xiàng)鼓勵(lì)探索。如果這篇文章發(fā)布后大家感興趣我可以再單獨(dú)寫一篇“從零實(shí)現(xiàn) PPO”的教程把這三處改造逐一拆開?,F(xiàn)在先把 Actor-Critic 的基礎(chǔ)打好。7. 常見問(wèn)題與排查思路問(wèn)題現(xiàn)象常見原因解決思路訓(xùn)練一開始回報(bào)就在下降然后陷入震蕩學(xué)習(xí)率過(guò)大Actor 更新步長(zhǎng)過(guò)大調(diào)小學(xué)習(xí)率或使用 PPO 裁剪機(jī)制回報(bào)一直很低但 Critic 損失很小Critic 已經(jīng)收斂但 Actor 策略陷入局部最優(yōu)增大熵正則系數(shù)或增加動(dòng)作探索優(yōu)勢(shì)值波動(dòng)非常大梯度爆炸獎(jiǎng)勵(lì)尺度差異過(guò)大或 GAE 中的 lambda 設(shè)置不當(dāng)對(duì)獎(jiǎng)勵(lì)做歸一化例如除以獎(jiǎng)勵(lì)均值調(diào)整 gamma 和 lambdaRLHF 訓(xùn)練中模型輸出變得重復(fù)、死板KL 懲罰過(guò)小模型過(guò)度優(yōu)化獎(jiǎng)勵(lì)模型增大 KL 懲罰系數(shù)或使用動(dòng)態(tài) KL 系數(shù)語(yǔ)言模型生成退化輸出無(wú)意義符號(hào)PPO 更新時(shí)熵正則系數(shù)為 0策略過(guò)早確定添加熵正則并監(jiān)控 token 級(jí)別的熵多個(gè)進(jìn)程采樣時(shí)動(dòng)作分布不一致隨機(jī)種子未固定或模型權(quán)重不同步對(duì)齊隨機(jī)種子統(tǒng)一初始化權(quán)重Actor 和 Critic 共享網(wǎng)絡(luò)導(dǎo)致兩者梯度沖突兩個(gè)任務(wù)的梯度方向不一致使用雙頭網(wǎng)絡(luò)但底層分離或使用兩個(gè)獨(dú)立網(wǎng)絡(luò)訓(xùn)練不穩(wěn)定損失出現(xiàn) NaN數(shù)值溢出通常是 log 概率為 0 或梯度爆炸給 log_prob 加 epsilon使用梯度裁剪這些坑在學(xué)術(shù)示例和實(shí)際項(xiàng)目中都很常見。特別是 RLHF 場(chǎng)景問(wèn)題往往不是算法本身而是獎(jiǎng)勵(lì)設(shè)計(jì)和 KL 約束沒(méi)有調(diào)好。建議每訓(xùn)練一段時(shí)間就手動(dòng)查看模型生成文本不要只盯著獎(jiǎng)勵(lì)曲線。8. 最佳實(shí)踐與工程建議8.1 優(yōu)勢(shì)函數(shù)與價(jià)值網(wǎng)絡(luò)的設(shè)計(jì)在 Actor-Critic 框架中Critic 的作用是為 Actor 提供低方差的學(xué)習(xí)信號(hào)。因此價(jià)值網(wǎng)絡(luò)的預(yù)測(cè)準(zhǔn)確性直接影響訓(xùn)練效果。建議在同一個(gè) batch 中Critic 可以多更新幾次而 Actor 每次更新幅度不要太大。在 PPO 中Critic 通常使用與 Actor 相同的 batch 數(shù)據(jù)但損失函數(shù)權(quán)重可以獨(dú)立調(diào)節(jié)。如果 Critic 和 Actor 使用共享底層特征需要小心梯度競(jìng)爭(zhēng)。很多成熟實(shí)現(xiàn)例如 Stable-Baselines3默認(rèn)使用兩個(gè)獨(dú)立的 MLP或共享一個(gè) Encoder但分開 Head。8.2 獎(jiǎng)勵(lì)工程設(shè)計(jì)強(qiáng)化學(xué)習(xí)對(duì)獎(jiǎng)勵(lì)尺度極其敏感。RLHF 中獎(jiǎng)勵(lì)模型輸出的分?jǐn)?shù)范圍可能很大直接在多個(gè)任務(wù)上使用會(huì)不穩(wěn)定。一種常見做法是對(duì)獎(jiǎng)勵(lì)做標(biāo)準(zhǔn)化z-score或者除以獎(jiǎng)勵(lì)標(biāo)準(zhǔn)差。但也不要過(guò)度歸一化否則會(huì)損失區(qū)分度。對(duì)于語(yǔ)言模型還有一種有效做法是按回答長(zhǎng)度歸一化獎(jiǎng)勵(lì)避免模型通過(guò)生成超長(zhǎng)文本來(lái)刷分。這是工業(yè)界總結(jié)出的寶貴經(jīng)驗(yàn)在學(xué)術(shù)論文中很容易被忽略。8.3 探索與利用的平衡Actor-Critic 的本質(zhì)是“邊探索邊利用”策略熵正則項(xiàng)是控制探索能力的關(guān)鍵。熵太大會(huì)導(dǎo)致策略過(guò)于隨機(jī)無(wú)法收斂熵太大會(huì)導(dǎo)致過(guò)早收斂到局部最優(yōu)。實(shí)踐中一般將熵系數(shù)設(shè)置為 0.01 到 0.001并在訓(xùn)練后期線性衰減。監(jiān)控每批次策略熵的平均值如果熵突然跌到 0說(shuō)明策略幾乎變成了確定性策略這在許多任務(wù)中是危險(xiǎn)的。8.4 RLHF 工程中的安全與合規(guī)RLHF 的目的是讓模型行為對(duì)齊人類偏好但“人類偏好”本身帶有主觀性必須遵守法律法規(guī)和倫理邊界。在訓(xùn)練獎(jiǎng)勵(lì)模型時(shí)要使用合法合規(guī)的數(shù)據(jù)集避免通過(guò)對(duì)抗樣本或惡意提示來(lái)“攻擊”獎(jiǎng)勵(lì)模型。不要試圖讓模型繞過(guò)安全限制也不要讓模型在敏感領(lǐng)域產(chǎn)生虛假信息。工程上RLHF 訓(xùn)練需要在受控環(huán)境中進(jìn)行設(shè)置人工審核環(huán)節(jié)對(duì)于人工反饋數(shù)據(jù)要做匿名化處理并確保數(shù)據(jù)采集獲得用戶授權(quán)。8.5 代碼可持續(xù)性強(qiáng)化學(xué)習(xí)實(shí)驗(yàn)代碼比普通訓(xùn)練代碼更容易腐化。建議從一開始就把“環(huán)境配置”“采樣循環(huán)”“模型更新”拆成獨(dú)立模塊。采樣環(huán)境使用向量化環(huán)境例如gymnasium.vector可以提升訓(xùn)練吞吐量。模型定義和損失函數(shù)用獨(dú)立函數(shù)封裝方便切換算法。日志系統(tǒng)記錄每個(gè) step 的獎(jiǎng)勵(lì)、價(jià)值損失、策略熵、KL 散度這能在排錯(cuò)時(shí)省下大量時(shí)間。保存模型時(shí)除了權(quán)重還要保存 optimizer 狀態(tài)、隨機(jī)種子和超參數(shù)否則無(wú)法復(fù)現(xiàn)實(shí)驗(yàn)結(jié)果。8.6 性能優(yōu)化CartPole 這類小環(huán)境用單進(jìn)程訓(xùn)練沒(méi)問(wèn)題但真實(shí) RLHF 任務(wù)通常要并行采樣。語(yǔ)言模型生成文本很慢一般使用 vLLM 等推理框架加速采樣Critic 的價(jià)值網(wǎng)絡(luò)可以用單一的 GPU 作為獨(dú)立服務(wù)。數(shù)據(jù)傳輸建議使用共享內(nèi)存隊(duì)列避免序列化開銷。在更新階段Actor 和 Critic 可以輪流更新也可以同時(shí)更新。PPO 通常采用“先收集大量樣本再多次更新”的方式因此采樣進(jìn)程和訓(xùn)練進(jìn)程分離是必要的。如果你需要在多機(jī)環(huán)境訓(xùn)練還涉及參數(shù)同步和通信開銷建議先單機(jī)多卡跑通再擴(kuò)展。9. 總結(jié)與學(xué)習(xí)建議Actor-Critic 算法的價(jià)值在于它為深度強(qiáng)化學(xué)習(xí)和 RLHF 提供了一套穩(wěn)定的訓(xùn)練框架。理解了 Actor 輸出策略、Critic 輸出價(jià)值、TD 誤差充當(dāng)學(xué)習(xí)信號(hào)這三者之間的關(guān)系就相當(dāng)于打通了強(qiáng)化學(xué)習(xí)的主流脈絡(luò)。在此基礎(chǔ)上繼續(xù)學(xué)習(xí) GAE、PPO、TRPO、SAC 會(huì)更快。RLHF 本質(zhì)上是 Actor-Critic 在語(yǔ)言模型對(duì)齊中的應(yīng)用核心難點(diǎn)并不在策略梯度本身而在于獎(jiǎng)勵(lì)模型的質(zhì)量、KL 約束的調(diào)節(jié)以及大規(guī)模分布式訓(xùn)練工程。如果你想繼續(xù)深入建議按以下路線實(shí)踐先手動(dòng)推導(dǎo)一遍策略梯度定理和 TD 誤差公式運(yùn)行本文的 CartPole 示例修改優(yōu)勢(shì)估計(jì)方式觀察方差變化閱讀 Stable-Baselines3 的 PPO 源碼逐行對(duì)照公式用開源 RLHF 框架如 TRL、DeepSpeed-Chat跑一個(gè)小模型查看訓(xùn)練日志和生成效果。強(qiáng)化學(xué)習(xí)是一門“看公式覺(jué)得懂了寫代碼立刻懵”的學(xué)問(wèn)但多寫幾次代碼多調(diào)幾次參數(shù)后直覺(jué)會(huì)逐漸建立起來(lái)。希望這篇教程能成為你理解 Actor-Critic 和 RLHF 的第一塊墊腳石遇到問(wèn)題也歡迎在評(píng)論區(qū)討論。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
97久久超碰| 国产农村妇女一区二区| 亚洲狠狠入| 播播亚洲小说亚洲| 欧美少妇色图| 日日夜夜草草草| 中文操逼字幕| 亚洲激情欧美色图| 秋霞欧美性爰视频| 久久亚码| 偷拍伦理视频| 操逼天美3区| 天天色综合图片| 色狠狠综合| 日韩午夜国产| 久久人妻| 亚洲图片欧美色| 综合色久欲| 久久性视频| 欧美第五页| 9久久美女首页| 国产亚洲精品玖玖玖在线观看| 96一区二区| 久久久神马影院| www.狠狠| 一本大道不卡一二三区| 国产精品96| 日日干夜夜欢| 网友自拍第一页| 超碰一区二区| 欧美激情在线观看视频| 91总综合网| 欧美性爱系列| 婷婷色综合| 国内自拍 日韩激情 99| 免费精品福利在线观看| 午夜免费福利视频一区| 亚洲,日韩,欧美,成人播放| 97爱b| 国产精品白虎| 欧美亚州色的图| 无码人妻精品一区二区三区九九 | 国产野战露脸在线播放| 9国产超碰| 午夜国产综合视频在线观看| 8x福利精品第一福利视频导航| 毛片一区二区| 精品国产一区二区三区香蕉欧美| 日韩综合无码色欲vv| 国产成久久综合片| 成人小说另类在线| 婷婷丁香五月天亚洲天堂网| 日韩人妻播放| 女人爽到高潮久久久| 国产超碰| 中文字幕日韩精品一区二区三区| 精品亚洲黄色片 国产精品导航一区二区 | 欧美日韩中文视频播放| 国产精品免费视频人成| 亚洲男人天堂视频| 欧美日韩97在线| 怡红院怡春院| 九九九九九用不成了| 尤物视频偷拍免费| 亚洲精品乱码线路中文字幕| 欧美激情黑人| 人妻内射一区二区在线视频| 中国AAAAAA黄色片| 欧美午夜熟妇黑人精品91| 中国亚洲呦女专区| 91熟女视频| 国产情色在线| 99热这里只有精品1| 欧美日韩亚洲电影| 一牛影视久久久一区二区三区| 草草草视频在线免费看| 亚洲国产另类在线中文| 男人的天堂2019| 欧美亚洲高清不卡| 91N五十路| AAAA级日本片免费视频| 蜜臀在线网站| 久久妇| 多乙久久久久久| 国产一区二区三区影片| 国产无遮挡| 久久精品一区| 91啪9色| 2024人人操人人摸| 色噜噜精品一区二区三| 欧美性爱1080p| 国产精品自在线发布| 中文字幕在线日亚州9| 99热在线观看| 激情综合五月婷婷| 日本Xx性爱| 天天插天天射| 狠狠躁AV| 天美传媒AV在线| 久久久久久九九九| 亚洲欧美经典一区二区| 日韩精品电影| 秋霞一级鲁丝片A片| 中日韩免费看男女操逼大全| 90后性网国产欧美| 干婷婷综合网| 亚洲第一页色| 国产少妇与亚洲av| 神马精品视频| 久草婷婷| 神马午夜久久| 偷拍欧美综合| 特级大荫道BBwBBwBBW| 国产精品粉嫩福利在线| 久久久久久亚洲中文| 综合欧美日韩在线观看| 五月丁香激情综合| 啊啊啊不要嗯嗯在线观看| 国产久久久久久| 国产精品无码AV网站| 乱伦熟女区| 蜜臀人妻少妇久久在线观看| 欧美色老汉| 久久毛卡| 熟妇国产免费一区| 人人插人人摸人人| 亚洲天在线| 亚洲精品aa久久伊人| 欧美黑人与女人91~| 神马麻豆福利院| 国产又操| 蜜臀va69| 色综合久久久久| 人妻美腿丝袜日韩| 婷婷五月天影院| 亚洲吊色| 在线视频免费播放一区| 天天日天天干天天摸天天操| 九九人妻| 亚洲第一页色| 久久亚洲国产成人| 精品丰满熟妇人妻一区| 久久久久久一日韩字幕无码| 亚洲999综合| 伊人精品久久网站| 欧美三四五区| 91狠狠色丁香婷婷综合久久精品| 少妇熟女一区二区三区| 成人婷婷丁香| 99久久e免费热视| 欧美成人国产精品| 一及黄久一点| 999国产精品999| 综合网欧美| 超碰在线人妻| 无码人妻丰满热妇又大又粗| 欧美后入式| 伊人影院在线理论播放 | 一区中文字幕二区日韩| 色原狠狠天天天| 再深点灬舒服灬太大了添视频| 91日日夜夜| 日韩精品在线观看网站| 91AV国产精品| 久久99干一本高清| 久久久久99精品成人片蜜臀| 死我十八禁| 九九热超碰97亚洲最新香蕉| 欧美人妻二区三区| 91n美女视频| 青青久久手机线视频| 久久r精品| 亚洲欧洲视频小说在线观看| 日韩人妻操B| 色5月婷婷| 台湾成人无码AV| 国产99999久久精品| 91夜夜蜜桃臀1区2区3区| 免费A V在线| 国产成人拍国产亚洲精品| 亚洲熟女人妻中文字幕一区二区| 狠狠爱夜夜| 日韩大香蕉AV影片| 亚洲双插| 亚洲熟女综合网| 久久精品国产久精国产| 综合情欲网| 色69大色97香蕉| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 综合自拍| 性欧美另类高清| 综合色99| 熟妇高潮一区二区免费视频| 九九玖玖精品| 国产日韩中文字幕欧美| 中文字幕欧美日韩三级| 色综合加勒比| 国产白丝精品在线观看| 亚洲欧综合另类无码一区| 中国一区二区亚洲人妻| 亚洲夜色在线| 99操| 91色人| 中文字幕欧美丝袜07资源| 试看60秒 爽| 乱伦av麻豆| 91网站18在线观看| 啊啊啊啊操死我| 亚洲第一精品在线视频| 国产11页| 久久久久久九九九九九| 日韩丰满熟妇| 欧洲与亚洲欧美精品中文字幕| 夜夜嗨绯色| 91伊人| 日本三级日本三级99| 天天插天天干| 超碰地址97| 97aiaiai| 久jiu久神马影院| 欧美人妻一区二区| aaaa黄片| 密臀在线视频| 伊人天天久久动态图| 无码不卡八戒| 久久久草成人网站久久久草成人久久久草久久久 | 老熟妇一区二区三区…| 伊人久久青青草| 伊人国产视频| 日韩一区二区精彩视频| 五月丁香影院| 男女国产精品| 五月丁香六月| 人妻欧美| 少妇国产不卡| 少妇熟女一区二区三区| 性色高清在线| 日本色色色色色视频| 神马久久69| 国产AAAAAABBBBB| 国产精品久久久视频| 91熟女网| 欧美72网页| 国产AV毛片| 亚洲drav色图| www.99在线| 91天天综合在线| 综合久久六月久久婷婷| 天天综合网1| 色噜噜国产精品视频一区二区| 家庭乱伦网站国产| 久久久精品网站| 青苹果影院男人的天堂| 久久狠狠色噜噜狠狠狠狠97| 成人精品视频一区二区| 一级久久性爱视频| 婷婷激情四射| 97超级色碰碰| 综合影院亚洲| 成人午夜高潮av猛片| 老司机香蕉| 福利伊人玖玖国产| 激情五月天插| 久久久久久久九九九九九九| 国产97综合| 亭亭丁香激情| 肏逼福利网站| 欧美后入式| 91暧暧| 国产亚州高清国产拍精| 国产真乱mangent| 色五月AV在线| 91天美传媒在线观看| 欧美日韩人人精品| 亚洲色五月| 免费黄色片。| 亚洲久9| 欧美精品亚洲精品日韩传电影| 亚洲精品人妻吞精av| 亚洲 小说 欧美 激情 另类| 无码高清操逼网址| 波多野42部无码喷潮在线观看 | 激情九月婷婷| 久久 国产精品 一区| 一起草高清无码| 九九九九九九九九九九九免费国产| 大香网站| 精品二区三四区五电影 | 午夜欧美J进J出白浆流出久久久| 粉嫩不卡一区二区性爱| 五月天色色色| 无码在线亚洲| 男人天堂婷婷五月天校园春色| 99∨VTV| 人妻丰满熟妇一区二区三| 色欲天天综合久久久无码网中文| 91美女小视频| 黄色视频60分钟| 韩国成人精品久久久免费看 | 国产精品久久久久久久久久久久久久吹 | 天堂俺去俺来也www久久婷婷| 狼狼色丁香久久婷婷综合五月| 日韩一级久久毛片| 黄色免费网页无码| www.婷婷五月天| 三级片大波波| 本道在线| 亚洲色欧| 国产性感骚丝袜在线| av橘色网站| 九九热视频这里只有精品| αⅴ天堂| 婷婷亚洲综合| 中文字幕在线2| 郑州宾馆老熟女露脸啪啪| 日韩无码AB| 天天综合97| 九九无码久久精品视频| 欧洲站一级二级三级h| 内射白嫩美女| 免费视频a级毛片免费视频| AA级电影三区| 久久久久久久久久久久久久久久9| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 青青草视频在线观看一区二区| 国产成人免费观看在线视频| 1769成人国产精品视频| 91中文字幕制服丝袜免费视频| 骚妻少妇精品性色无码四色A V| 超碰97爽| 八戒无码国产午夜福利| 吖在线不卡一区二区国产剧情| 欧美天天干| 色噜噜狠狠色综无码久久合欧美| 大香蕉中文网| 欧美色性情| 78精品在线| 夜夜騷av、一區二區| 婷婷五月天AV| 精品精品精品| 欧洲小说色图视频另类| 欧美天天综合网版| 97操碰| 国产免费一区二区在线A片视频| 日本福利二区视频| 欧美亚洲激情小说| 国产乱伦亚洲| 97精品97久久| 中文字幕精品一区二| 蜜臀久久99精品久久久久久酒店| 国产无码一二三区| 青娱乐 成人娱乐在线| 欧美性爱三区二区| 熟妇一区,二区,三区。| 人人爽天天爽| 亚洲乱码国产乱码精网站| 国产农村一一级特黄毛片| 日本超碰在线国产一区| 精品少妇一区二区三区| 蜜臀AV午夜精品久| 性综合网| 日本免费中文字幕在线| 国产老熟女| 大香焦A片| 色哟哟的毛片| 久久99精品九九久久久婷婷| 国产乱子伦久久精品综合一区二区三| 中文字幕狠狠玩| 黄色小说亚洲| 青青草在线视频欧美| 97网色| 中文字幕第二页| 日日操免费视频| 人妻一区二区三区四区视频| 伊人久久综合影院| 久草婷婷| 日韩成人小视频| 国产一区二区精品久久99| 欧美日韩222| 2017天天插| 欧美性爱系列| 少妇九九九九| 欧美日韩啪啪电影| 日韩高潮一区| 99热这里只有精品1| 精品欧美老熟女一二区| 91人妻超碰| 国产丝袜一区二区三区| 久久天天艹| 91女人的网站| 91网站18+| 婷婷综合网站| 9999久久久久| 天天射影院| 国产久久av| 亚洲综合有玛| 伊人专区一区二区三区| 17c嫩草51久久91嫩草| 欧美18老人禁| 开心婷婷五月| 红桃视频高潮| 亚欧无码线免费观看视频| 亚洲宗合网| 亚洲人综合| 亚洲图片偷拍视频区| 精品一区二区三区蜜桃臀www| 9久久久久久| 色色色欧美| 91无码精品| 蜜桃臀av在线观看| 亚洲少妇视频| 色吧五月| 熟妇在线视频一区二区| 玖玖综合网| 按摩中文字幕| 91人妻做a观看视频| 97中文综合| 强奸乱伦亚洲第一页| 一本大道不卡一二三区| 五月天激情四射| 亚洲精品一二牛牛| 丝袜 中出 制服 人妻 美腿 中文字幕| 天天干天天日天天射黄色| 91影库| 免费国产| 日韩内射视频| 国产强奸乱伦xd| 天美一二三在线观看Av| 最新精品久久蜜桃| av亚欧| 99999精品| 无套后入双马尾| 中日韩欧美精品无码AⅤ一区二区| 亚洲色图 综合| 人人操人人狠狠操| 日本新免费二区三区| www.夜夜| 亚洲Av无码成人精品国产| 国产日韩欧美| 欧美成人色| 一牛影视成人片免费| 91五月天| 色啪网| 日韩在线观看三级电影| 色九九九综合| 日韩不卡毛片Av免费高清| 中文字幕国产| 97干天天| 爱爱动态120秒| 久久夜夜| 久久久精品视频欧州站| 婷婷五月天色网| 中文字幕一区 二区三四五 区日 日骚 | 少妇色综合| 51久久夜色精品国产麻豆| 中文字幕一二区二三区人妻专区| 国产sv美女内射| 丁香婷婷激情五月天无毒不卡 | 91东北熟女| 少妇三P| AV电影在线播放| 亚洲欧洲综合av在线| 91美女精品| 中文字幕女同在线| 一区二区三区 丝袜 高跟 美腿| 乱伦图一区| 97久久超碰国产精品| 中文久久一区| 日韩乱码av| 很很操在线| 美女操逼福利视频| 精品少妇后入一区二区三区四区人妻巨乳 | 97国产色图| 欧美视频边做饭边橾| 91N综合网| 久久內射| 99re视频在线观看这里只有精品| 96免费视频在线| 国产内射爽爽大片| 黑人操一区二区| 老熟女乱伦片| 欧美日韩性爱电影在线| 日本91白丝| 国产色精品午夜大片| 丝袜狠狠草尤物 91| 日本色色色| 男人综合网| 欧美亚洲日韩人妻在线观看| 搞中出视频在线观看| 就去色综合| 7777奇米影视久久| 探花激情视频| 蜜桃久久一区二区| 蜜臀99久久精品久久久久久| 蜜臀久久99精品久久久久久久久| 一区二区三区在线日韩影院观看| 啊嗯嗯啊好大好爽| 超碰在线综合97| 亚洲欧美碰碰| 人妖欧美一区二区| 校园春色美腿丝袜 | 视频二区熟女人妻| 欧美色网| 亚州成人a∨| 自拍视频大全亚洲专媒视频/一区二区三区 | 97超碰色屌| 99久久综合| 97碰碰色| 亚洲美女av无码| 九九九九九九九九九国产精品| 91劲爆| 97伦综合| 1769一区二区| 91精品无码人妻系列| 影音综合网| 久久最新视频免费观看| 啊啊啊久久| 欧美人人曰人人操人人射射| 超碰在线成人| 久久国产精品视频| 丁香九月婷婷| 久久东京热成人| 91精品免费| 亚洲欧美精品91| 色五月天AV| 久久久蜜桃臀无码视频| www.色综合| 91中出在线| 日韩欧美国产高清视频| 99re6国产精品99re| 久久久久921| 蜜桃色色网站视频三区| 久久久999国产精品| 久久高清欧美国产| 一本一首道人妻少妇免费久久| AV色五月天| 性色AV蜜色av色欲av| 好屌色综合| 天天躁日日躁AAAAXXXX国产 | 久肏视频字幕| 1024亚洲中文字幕久在线看片你懂的| 九九九精品成人免费视频小说| 婷婷探花久久精品一区| 久jiu久神马影院| 欧美日韩99| 亚洲 日韩 丝袜 熟女 变态| 日本免费中文一区二区三区四区| av日韩在线观看电影| 6080YYY午夜理论片在线观看| 97日韩| 中文字幕乱码在线| 偷拍盗拍亚洲色图图片| 日韩欧美麻豆 | 国产精品午夜福利视频| 青青草五月天| 夜草欧美| 亚洲精品久久一区二区三区蜜桃臀| 久久久性爱视频| 久日综合网| 婷婷六月色| 97人人干| 素人美腿视频网站| 久久9亚洲| 欲射影视| 久艹99| 超碰天天去日穴| 97超碰超| 黄色免费一级在线毛片| 色哟哟AⅤ| 91快色色色色色| 亚洲激情在线| 精品女人999| 99热精品在线| 岛国网址国产 | 在线播放一级无码视频| 99热线麻豆 | 九久9热| 黄色一区二区秘书性感| 97美日韩视频| 三级特黄60分钟播放| 大香蕉男女超碰精品在线| 亚洲欧美在线综合| 五月婷婷综合激情| 性爱视频无打码在线观看| 蜜臀在线看片| 国产AV天美| 日韩操逼HD| 久久久91| 99久久婷婷丁香| 日韩av不卡在线看| 日韩欧美日韩| 狠狠操,使劲操| 亚洲精品久久久久久久蜜桃臀| 亚洲偷拍欧美激情| 蜜臀AV午夜精品久| 麻花豆传媒剧国产MV出差| 正在播放国产精品一区| 99热精品在线观看| 精品久久久av| 成人一级二级| 96精品久久久久久久久久| 欧美日韩999| 99久久久er直播网址| 丁香九月 婷婷| 人人妻人射| 中文字幕国产精品1区| 亚洲天堂人人妻| 国产人妻精品久久久一区二区三区 | 96精品久久久| 女人精品内射国产99| 超碰精品人妻狠狠干| 丝袜美腿91| 国产精品老师| 国产精品在线免费| 色精品极品| 一级人妻性爱视频| 狠狠色色| 欧美午夜色妇色鬼| 亚洲高清色综合| 97人人模人人爽人人| 久久久久ab| 另类图片欧美激情综合| 日韩伦理久 久久 清纯| 国产日本顶级一区二区三区| 丰满的三级少妇欧美久久久| 91露脸熟女专区| ji熟女.com| AAA久久| 色亚州人久干视频在线观看免费版| 91少妇人妻| 黑人无码一区二区| 北条麻妃99精品青青久久| 精品女同一区| 5278欧美一区二区三区| 狠狠爱AV| 女人天堂av在线播放| 日韩精品免费高清视频在线| 日韩99999色| 人妻夜夜爽天天爽麻豆三区网站| 国产兽交视频在线播放| 欧色综合| 久9综合在线| 婷婷成人久久久精品| 日本 色 导航| 97在线青| 91美女在线| 欧美后进式| 你想操日本小逼吗| 東南亚性呦成人伦理资源在线视频| 国产女上位好爽在线| 青青操狠狠撩| 97在线免费看视频| 青青爽| 极品尤物在线观看| 超97在线精品视频| 99re免费视频精品全部| 最近二区三区视频大全| 久/久精品99看9| 看免费一级在线播放毛片| 天天射夜夜| 国产中文字幕曰本毛片| 欧美一区二区日韩三区| 亚洲日韩av专区无码| 最新日韩黄片| 后入日本1234| 免费97视频| 国产 日韩 欧美一区| 蜜臀av一区二区三区免费观看| 蜜桃传媒视频第一区入口在线看| 国产女人与拘做受视频免费| 人妻一区二区三区四区视频| 日韩精品第3页| 嗯啊不要啊在线 | 国产亚洲色婷婷99精品91| 大香蕉专区| 高清国产精品无码| 日本二区不卡| 北京美女一区二区| 日韩久久超碰色| 色婷婷成人| 性爱乱伦网址| 国产粉嫩出水在线播放| 免费久久一级毛片大黄| 伊人一区二区三区| 三男一女不戴套的A片| 欧美日韩精品久久久久东北老熟妇| 人妻少妇久久久| 在线观看综合精品亚洲| 青娱乐手机日韩在线视频| 一级做a爰片性色毛片久久| 久久丁香久草综合网| 亚洲熟妇AV日韩熟妇在线| 无毛精品| 天美精品一区二区三区四区在线观看| 老鸭窝日丰县女人| 久久a久久| 日韩有码中文字幕女同性恋| 美女丝袜激情小说| 国产精品成久久久久午夜午夜| 国产成人精品必看| 色婷婷六月丁香七月婷婷| 五月丁香六月综合缴清无码 | 久久久99免费| 日本阿v天堂在线观看| 欧美丝袜亚洲| 97欧美综合网| 丰满人妻一区二区三区| 亚春色色| 欧美日韩另类激情图片| 免费超碰97在线观看| 久久婷婷五月天| AV九九| 激情五月综合网| 亚洲天堂综合AV| 色av中文字| 国产性久久久| 深夜激情无码| 日日不卡av| 天天综合网在线观看| 亚洲欧美色图片| 精品视频在线观看精品| 日韩性爱啪啪视频| 91天天看| 国产精品成人无码a v毛片| xxxx网站亚洲精品| 国产午夜激片Av毛片不卡| 超碰天天操| 自拍啪啪视频| 天天弄天天操| 岛国精品视频在线观看| 国产精品视频播放| …中文字幕亚洲乱,97人妻无码费视… | 亚州男人天堂| 日韩欧美操逼xxx| 亚洲一区二区三区麻豆传媒| 国产AAAAAABBBBB| 久久久久人妻二区精品叶可怜| 精品亚洲成人免费在线| 性暴力欧美猛交在线直播| 久久久精品国产亚洲AV无码| 2019AV天堂| 中文高清一区二区的| 久久社区一区二区三区| 中文乱码字字幕在线第5页| 精品国产无码中文| 五月婷婷综合在线| 欧美天堂超碰97| 午夜美女诱惑电源网| 久久久久久久久一区二区三区| 韩三级a视频在线观看| xxxx网站亚洲精品| 国产日本久久免费精品| 熟妇人妻一区二区三区| 婷婷五月天无码| 97色在线视频| 中文字幕日韩人妻视频一区二区三区 | 岛国片国产成人亚洲播放| 92福利社视频| av草草在线电影| 久草资源在线| 亚洲国产精品有声| 亚洲 中文 女同| 日日骚av| 一类av片在线看| 中文字幕老熟妇黄色视频| 亚洲宗合网| 欧美 亚洲精品首页| 国产精品爆乳懂色蜜乳| 五月天婷婷色色| 不卡六六在线91| 91熟女视频网| 人妻少妇被猛烈进入中| 九九热免费国产视频婷婷伊人| 久久久久人| 蜜乳AV.COM| 婷色五月| 一区超碰一区| 国产精品久久久久无码Av网曝门| 少妇精品久久久| 丝袜高跟澳门91视频| 在线观看午夜婷婷久久久久清性观看| 殴美性天天| 人人插人人搞人人操| 日欧毛片久久| 亚洲色欧美| 色婷婷丁香五月| 99久热精品99re6热| 99亚洲精品| 亚洲成人一二三区| 蜜臀久久99精品久久久久久无删减 | 99国内熟女露脸视频| 亚洲国产精品成人综合| 日韩在线人妻网站| 四虎国产精品永久入口| 富二代亚洲精品99| 亚洲A曰本VA欧美VA视频| 热久久91婷婷| 老司机午夜精品视频| 夜夜夜久久| 亚洲中文字幕熟女| 嫩草影院在线观看精品| 色婷婷久久| 五月天伊人| 久久天堂网| 无码人妻一区二区三区色欲aⅴ | 天美传媒AV国产在线| 精品国产91内射久久| 天堂精品小草| 乱伦1色页| 玖玖爱一区在线| 亚洲av无码成电影在线播放| 亚州久久9| 人人妻人人狠人人| 亚州综合色图| 精品久久久亚洲AV成人网站| 久久线上视频免费看| 欧美熟妇乱码在线一区| 国产一区二区三区白丝| 日韩综合97P| 黄色av一区二区在线| 99re黄| 青青操97| 美女操逼福利视频| 久久久偷拍| 97 亚洲 日韩 欧美 在线| 久久透逼视频| 欧美中字不卡| 另类图片五月天| 91av熟女人妻| 超碰午夜| 这里只有精品久久| 亚洲欧美国产中文视频| 吊色| 人人透人人操| 色屁屁影院www国产| 嗯嗯啊啊视频一区二区三区| 一区AV| 成人开心网在线视频| 国产原创自拍| 天天看天天日天天操| 野狼激情网| 欧美日韩国产中文精品字幕自在自线| 亚洲成人精品久久久| 亚洲一区二区精品福利| 玖玖资源视频一区二区三区| 操操逼操操逼操操逼逼| 亚洲色情在线影视| 99在线精品视频| 日韩99999| m欧洲一级午老| www.色婷婷.com| 欧美日韩色综合网| 热99re69精品8在线播放| 亚洲视频一二区| 激情五月天网| 欧洲一级性爱视频在线观看| 精品人妻一区二区三区日产| 日韩欧美中文字| 日本在线不卡一二区| 欧美黑人熟妇精品91| 欧美亚洲宗合色性图| 又大又长又爽| 九久9精品| 福利视频香蕉免费一区二区在线| 亚春色色| 一牛影视久久久一区二区三区| 日韩去日本高清在| 一二三四视频中文字幕在线看| 国产国产亚洲一二三久久| 99精品伊人| 日本一区二区三区精品| 国产超碰在线| 黄片无码在线制服| 免费日韩黄片| 97超碰碰| 日本操逼视频免费| 97免费视频在线| 国产精品久久久九九九| 五月天综合| 欧美一级做a爰片免费视频| 欧美色日本| 国产成自自拍在线观看| 国产一级不卡在线观看| 日韩无限资源| av72网| 久久綜合很很很| 9久久久久久| 九九九国产精品| 欧美天天综合站| 69AV女优男人的天堂| 女色视频社区| 久久女婷| 久久久麻豆精品| 亚洲欧美在线观看无码| 亚洲风情在线观看| 欧美传媒一区| 欧美色图中文字幕| 欧美内射少妇| 大稥蕉免费视频这里只有精品| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 香一区二区三区| 欧美78p| 开心婷婷五月| 久久一区二区高清免费| 怡红院成人视频| 欧美啪啪女女| 人妻啊啊人妻啊啊| 亚洲欧美在线综合| A级国产欧美激情在线| 性爱视频久久| 深夜激情| 亚洲天天在线| 激情久久久| 天天影视色香色欲| 日韩99999| 色妺妺在线视频| 亚欧美色| 视频在线观看一二三区| 超碰在97| 最新日产中文在线麻豆| 蜜桃午夜视频一区二区 | 啊啊啊啊啊啊啊好爽不要| 超碰97人妻免费在线| 日本黄 R色 成 人网站| 国产91丝袜在线播放蜜月| 91福利网在线观看| 能看的AV| 大色网久久| 色性综合| 猛猛干| 国产精品久久久视频| 九九九九九九九九九国产精品| 丁香五月社区| 中文乱码字字幕在线第5页| 欧美性综合| 青青青青草av在线观看| 91老熟妇| 天天操av懂色| 日韩黄片视频试看| 日韩欧美久久婷婷网站| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 天天影视综合网欧美精品| 91精品国| 亚洲国产精品久久久久久久久久| 操逼日批| 久久999久| 久久‘黄片视频| 91丝袜在线播放| 99青草| 曰韩av中文字幕专区| 中文字幕av片| 国产精品久久久久久久久久久久久久久久久久| 新婚人妻扶着粗大强行坐下| 免费成人自拍视频在线| 久久精品女同亚洲女同13| 五月丁香综合激情| 欧美三级中文字幕hd| 婷婷色色五月天福利| 丰满人妻-区二区三区| 久久精品操| 欧美在线大香蕉| 大香蕉宅男伊人| www.国产高潮精品| 国产大陆天天艹| 亚洲一区操| 少妇熟女一区二区三区| 国产精品一区二区麻豆| 欧美熟妇乱码在线一区| 97人肏| 夜夜嗨一区二区| 久热这里| 欧美躁死她一区二区| 玖玖资源综合在线视频| 内射老妇BBWX0C0CK| 风间由美日韩欧美久久| 久久有碼| 久草毛片电影怡| 性性久久| 艳尻美人妻| 日韩精品人妻中文字有码在线| 干B| 综合性视频99| 裸模AV女优| 亚洲色图国产另类| 亚州男人的天堂| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 日韩精品国模| 色亚洲欧美| 91影视亚洲| av橘色网站| 色欧美亚洲| 97综合在线| 国产精品天堂| 91人妻精华帖| 亚洲成人福利电影免费| 欧美成人精品A片免费一区99| 人人透人人操| 一区二区三区四区五区高清无码永久视频 | 久热久| 亚洲一二三精品久久网| 国产av白丝| 在线 亚洲 网爆 自拍| 亚av顶级裸体一区二区三区四区五区 | 亚欧高清v| 成人免费在线网站| 欧美日韩操操操| 精品在线观看视频在线| 日本大片日本一区二区免费高清| 色爱综合网欧美| 东北女人性交| 国产精品美女视频诱惑| 黄色小视频日本txt| 亚洲国产婷婷在线播放| 亚洲熟妇无码一区二区三区| 精品国产国产AV| 黄色成年| 在线欧美69V免费观看视频| 夜夜肏2021| 色哟哟av网址| 午夜视频好爽啊| 成人av免费观看| 熟女91网| 97色综合中文网| 成人日本视频人妻在线| 天天舔天天日天天射| 色吧5亚洲| 久久综合18p| 久久精品女同亚洲女同13| 可能人人看人人摸| 91天美传媒在线观看| 中文字幕三四五区| www.婷婷五月天| oumeizonghese,www| 国产一国产一级毛片古装| 午夜色婷婷| 理论久久婷婷网8| 精品国产精品一区二区| 中文在线视频| 你懂得91| 欧美综合色图网| 亚洲天堂无码| 午夜毛片高清免费不卡| 久久综合亚洲色1080p| 一区二区三区成人| 亚瑟国产精品久久无码| 亚州成人a∨| 九九九九热| 自拍欧美| 欧美性生活男人的天堂| 久久超碰亚洲人| 中文字幕AV乱伦| 91撸色网 玖玖网 欧美| 亚洲 欧美 精品专区 极品| 天天综合在线4| 熟妇的味道HD中文字幕| 亚洲情色1区| 丝袜美腿制服人妻二区中文字幕| 狠久久| 东京太热久久久| 大香蕉日韩| 97超碰逼| 精品久久視頻在线| 欧美性生活免费网| 情色图区| 热久久无毒不卡| 图色综合网| av最新免费中文字幕| 97超碰中文字幕| 色色激情五月天| 黄片国产精品一区二区| rivers-china.com| 91天美传媒在线观看| 亚欧高清v| 91 丝袜在线| 久久亚洲AV无码白度| 成人日本精品九区| 97色色婷婷| 国产一进一出视频网站| 大香网伊人久久综合网eew| 日韩精品中文字幕一| 成人小说另类在线| 人人综合| 亚洲。日韩。欧美| 欧洲色| 五月天激情综合网| 色欲三区| 天天躁日日躁狠狠狠躁| 天堂精品一区| 欧美色图 人妻| 人妻久热在线| 免费观看欧美日韩操逼视频| 69视频入口| 97亚洲色图| 深夜激情 | 久久久久人妻二区精品叶可怜| 91综合色噜噜| av在线播放国产一区| 免费av高清无码| 欧美综合色图片| 日韩无码专区| 大香蕉啪啪网| 日本三级韩国三级99| 五月婷婷综合在线| 无码WWW免费视频网站| 国产不卡免费在线视频| 麻豆福利视频导航| 日本一二区不卡| 一级A片女人高潮叫床| 精品人妻一区二区三区在| 91精品国产91久久青草| 99re在线视频这里只有精品| 蜜臀99999| 日本精品一区二区三| 风间由美日韩欧美久久| 久久夜精品一区二区三区| 国模不卡一本二本三电影| 欧洲大香蕉| 曰本91情色| 嫩草黄页| 欧美性高潮| 久久无码精品| 丁香九月 婷婷| 亚洲无码精品AV久久久| 免费看黄片现成| 亚洲成aⅴ人片不卡无码| 操比国产| 97精品一二区| 色妺妺在线视频| 风月影院男女十八禁| 日本色日夜干| 综合 亚洲 欧美| 人人贴人人摸| 猛交交| 91碰碰| 豆花视频操逼网址| 艹比视频国产精品| 人人摸人人干| 中文字幕第95页| 狠狠操,使劲操| 久久女人一区二区三区| 欧美少妇色综合| 92一区二区| 国产乱伦性爱AV| 色天堂综合| 97色香蕉| 思思久热在线精品66| 欧美综合娱乐久久| 欧美一二三区四五区| 青娱乐啪啪视频| 成人网站 免费观看| 青青草在线视频欧美| 欧美丝袜中文字幕07在线| 欧美东京热精品A∨| 99热国产| 日韩精品国产一区二区| 18一区二区三区| 97超碰中文在线| 激情小说五月天| 久久内射| 天天操女人|