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

ARTICLE DETAIL

資訊詳情

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

模仿學(xué)習(xí)算法包實(shí)戰(zhàn):BC、DAgger與GAIL訓(xùn)練調(diào)參與排錯(cuò)

模仿學(xué)習(xí)算法包實(shí)戰(zhàn):BC、DAgger與GAIL訓(xùn)練調(diào)參與排錯(cuò) 簡(jiǎn)介面向深度強(qiáng)化學(xué)習(xí)與模仿學(xué)習(xí)方向的學(xué)習(xí)者這份代碼包圍繞從專(zhuān)家軌跡中學(xué)習(xí)策略這一主題覆蓋 PPO、AIRL、BC、DRIL、FAIRL、GAIL、GMMIL、PUGAIL、RED 等算法并提供僅狀態(tài)模仿、吸收狀態(tài)指示器與 R1 梯度正則化等實(shí)驗(yàn)選項(xiàng)適合算法復(fù)現(xiàn)、課程項(xiàng)目與基線(xiàn)對(duì)比。壓縮包共 27 個(gè)文件、約 999KB其中 6 個(gè) Python 腳本承擔(dān)訓(xùn)練、評(píng)估與環(huán)境交互邏輯17 張 PNG 匯總各算法訓(xùn)練與測(cè)試回報(bào)曲線(xiàn)2 個(gè) Markdown 文檔說(shuō)明使用方法另附專(zhuān)家軌跡數(shù)據(jù)文件目錄緊湊、模塊邊界清楚。已有 1068 人學(xué)習(xí)讀者可從中獲得可運(yùn)行的模仿學(xué)習(xí)實(shí)驗(yàn)框架、專(zhuān)家軌跡加載與策略?xún)?yōu)化示例、不同算法的結(jié)果對(duì)照?qǐng)D以及排查訓(xùn)練不穩(wěn)定與回報(bào)波動(dòng)的參考思路并據(jù)此理解生成對(duì)抗式模仿與行為克隆的差異。1. 獎(jiǎng)勵(lì)函數(shù)寫(xiě)不出來(lái)時(shí)imitation-learning 模仿學(xué)習(xí)算法包能接住哪類(lèi)任務(wù)控制類(lèi)項(xiàng)目最常見(jiàn)的卡點(diǎn)不在模型大小而在獎(jiǎng)勵(lì)函數(shù)機(jī)械臂要的是平滑軌跡寫(xiě)個(gè)距離懲罰訓(xùn)練出來(lái)全是抖動(dòng)策略梯度在稀疏獎(jiǎng)勵(lì)下幾乎不更新調(diào)兩周不如人遙操作十分鐘。imitation-learning 這套 Python 實(shí)現(xiàn)的模仿學(xué)習(xí)算法包走的是另一條路——把專(zhuān)家演示當(dāng)監(jiān)督信號(hào)先用行為克隆BC把策略立起來(lái)再用 DAgger 補(bǔ)上分布偏移最后用 GAIL 在環(huán)境里做對(duì)抗式精調(diào)。它面向的是已經(jīng)有腳本專(zhuān)家或遙操作數(shù)據(jù)、但獎(jiǎng)勵(lì)寫(xiě)不出來(lái)或?qū)懖粶?zhǔn)的 deep-reinforcement-learning 場(chǎng)景判斷自己適不適合標(biāo)準(zhǔn)很樸素你能把一條條軌跡存成(obs, action, next_obs, done)的數(shù)組并且能讓策略真正跑進(jìn)環(huán)境里這套東西就能用。2. 三種范式的代碼骨架BC 打底、DAgger 補(bǔ)偏移、GAIL 做對(duì)抗精調(diào)模仿學(xué)習(xí)算法包最容易讓人誤判的地方是把三個(gè)算法當(dāng)成三選一的替代品。實(shí)際工程里它們是階梯BC 決定你有沒(méi)有一個(gè)能跑的策略DAgger 決定這個(gè)策略在離線(xiàn)和在線(xiàn)之間能不能接住GAIL 決定最終性能能不能逼近專(zhuān)家。這一章按數(shù)據(jù)流順序把三塊骨架拆開(kāi)代碼用最常見(jiàn)的組織方式寫(xiě)倉(cāng)庫(kù)里的類(lèi)名函數(shù)名可能不一樣但張量形狀和損失形式是對(duì)得上的。2.1 軌跡容器與數(shù)據(jù)協(xié)議先把專(zhuān)家數(shù)據(jù)對(duì)齊成 (obs, action, next_obs, done)新手翻車(chē)十有八九不在算法在數(shù)據(jù)協(xié)議。專(zhuān)家數(shù)據(jù)是離線(xiàn)采的策略數(shù)據(jù)是在線(xiàn)采的如果兩邊字段順序、dtype、done的表示方式不一致后面所有 loss 曲線(xiàn)都沒(méi)有參考價(jià)值。我一般先寫(xiě)一個(gè)兩種數(shù)據(jù)源共用的環(huán)形緩沖把協(xié)議釘死。import numpy as np class TrajectoryBuffer: 環(huán)形緩沖專(zhuān)家軌跡和策略 rollout 共用同一套字段協(xié)議 def __init__(self, obs_dim, act_dim, capacity200_000): self.capacity capacity self.obs np.zeros((capacity, obs_dim), dtypenp.float32) self.act np.zeros((capacity, act_dim), dtypenp.float32) self.rew np.zeros((capacity, 1), dtypenp.float32) self.next_obs np.zeros((capacity, obs_dim), dtypenp.float32) self.done np.zeros((capacity, 1), dtypenp.float32) # 用 0/1不用 bool self.ptr, self.size 0, 0 def add(self, obs, act, rew, next_obs, done): i self.ptr self.obs[i], self.act[i] obs, act self.rew[i], self.next_obs[i], self.done[i] rew, next_obs, float(done) self.ptr (self.ptr 1) % self.capacity self.size min(self.size 1, self.capacity) def sample(self, batch_size, rngNone): rng rng or np.random idx rng.randint(0, self.size, sizebatch_size) # 有放回采樣夠用且實(shí)現(xiàn)簡(jiǎn)單 return (self.obs[idx], self.act[idx], self.rew[idx], self.next_obs[idx], self.done[idx]) def save(self, path): # 鍵名固定成這五個(gè)評(píng)估腳本和可視化腳本都按這套鍵讀 np.savez_compressed(path, obsself.obs[:self.size], actself.act[:self.size], rewself.rew[:self.size], next_obsself.next_obs[:self.size], doneself.done[:self.size])幾個(gè)參數(shù)值得說(shuō)清。dtypenp.float32不是隨手寫(xiě)的PyTorch 默認(rèn)張量就是 float32用 float64 存一遍再轉(zhuǎn)一遍幾十萬(wàn)條樣本會(huì)白白多占一倍內(nèi)存而且轉(zhuǎn)換發(fā)生在DataLoader的 worker 里很容易變成隱性瓶頸。done存成 0/1 浮點(diǎn)而不是布爾是為了和rew一起拼成(N, 5)的數(shù)組做批量處理時(shí)類(lèi)型不打架。capacity給 20 萬(wàn)條是經(jīng)驗(yàn)值連續(xù)動(dòng)作任務(wù)單條軌跡通常幾百到幾千步20 萬(wàn)條大致相當(dāng)于幾百條軌跡覆蓋 GAIL 一輪訓(xùn)練足夠再大就只是拖慢采樣。圖像觀(guān)測(cè)要額外注意一點(diǎn)如果環(huán)境返回的是(H, W, C)的 uint8 幀在add之前就要定好是展平還是保留三維。展平省事但卷積策略網(wǎng)絡(luò)就用不上了保留三維則要在obs_dim上寫(xiě)(C, H, W)并做通道前置。這個(gè)決定一旦寫(xiě)進(jìn) npz后面改起來(lái)要重采數(shù)據(jù)屬于典型的后悔藥沒(méi)處買(mǎi)。2.2 行為克隆三層 MLP 加 MSE 就夠但輸出頭決定成敗BC 本質(zhì)是監(jiān)督學(xué)習(xí)obs → action的回歸或分類(lèi)。網(wǎng)絡(luò)不需要深兩層 256 的 tanh MLP 在絕大多數(shù)連續(xù)控制任務(wù)上已經(jīng)夠用真正決定成敗的是輸出頭跟動(dòng)作空間的匹配方式。import torch import torch.nn as nn class PolicyNet(nn.Module): def __init__(self, obs_dim, act_dim, hidden256): super().__init__() self.body nn.Sequential( nn.Linear(obs_dim, hidden), nn.Tanh(), nn.Linear(hidden, hidden), nn.Tanh(), ) self.head nn.Linear(hidden, act_dim) # 確定性策略直接回歸動(dòng)作均值 def forward(self, obs): return self.head(self.body(obs)) def bc_loss(policy, obs, act, discreteFalse): out policy(obs) if discrete: # 離散動(dòng)作交叉熵act 是 long 型類(lèi)別索引 return nn.functional.cross_entropy(out, act.long()) # 連續(xù)動(dòng)作MSE 回歸act 需與 out 同量綱 return nn.functional.mse_loss(out, act)nn.Tanh()而不是 ReLU是因?yàn)檫B續(xù)控制的觀(guān)測(cè)和動(dòng)作經(jīng)常帶負(fù)值tanh 的對(duì)稱(chēng)性讓初始階段的梯度分布更均勻如果觀(guān)測(cè)是圖像把body換成幾層 stride2 的卷積再接展平即可輸出頭不動(dòng)。連續(xù)動(dòng)作用 MSE 意味著你在擬合條件均值這在高斯策略假設(shè)下等價(jià)于只學(xué)均值不學(xué)方差好處是穩(wěn)定壞處是遇到多峰專(zhuān)家數(shù)據(jù)同一個(gè)狀態(tài)專(zhuān)家有時(shí)左拐有時(shí)右拐會(huì)學(xué)出一個(gè)誰(shuí)都不像的中間動(dòng)作。常見(jiàn)做法是改成高斯頭多輸出一維log_std并用-log_prob當(dāng)損失代價(jià)是訓(xùn)練更容易發(fā)散方差要 clamp 到[-5, 2]這種范圍。動(dòng)作量綱是另一個(gè)高頻坑。環(huán)境action_space是[-1, 1]的話(huà)專(zhuān)家數(shù)據(jù)如果來(lái)自力矩控制比如[-20, 20]直接回歸出來(lái)的策略一進(jìn)環(huán)境就會(huì)被 clip 成常量現(xiàn)象是 BC loss 掉得很快但 rollout 一動(dòng)不動(dòng)。落數(shù)據(jù)前統(tǒng)一按(a - low) / (high - low) * 2 - 1歸一化到[-1, 1]評(píng)估時(shí)再反歸一化這一步寫(xiě)在采集腳本里比寫(xiě)在訓(xùn)練腳本里安全。2.3 DAgger 的在線(xiàn)聚合把「策略會(huì)走到哪」交給專(zhuān)家重新打標(biāo)BC 的理論誤差隨軌跡長(zhǎng)度平方增長(zhǎng)直覺(jué)解釋就是策略在專(zhuān)家沒(méi)去過(guò)的狀態(tài)上沒(méi)學(xué)過(guò)一旦偏離就再也回不來(lái)。DAgger 的思路很直接——讓當(dāng)前策略自己去跑跑到哪些狀態(tài)就請(qǐng)專(zhuān)家對(duì)這些狀態(tài)重新打標(biāo)簽把新樣本并進(jìn)數(shù)據(jù)集重訓(xùn)。代碼骨架不長(zhǎng)但循環(huán)里三個(gè)順序不能亂。def dagger_loop(env, expert, policy, dataset, iters10, beta00.5, steps_per_iter2000): for it in range(iters): # 1) 用當(dāng)前策略在環(huán)境里采樣收集它真實(shí)訪(fǎng)問(wèn)到的狀態(tài) states [] obs, _ env.reset() for _ in range(steps_per_iter): beta beta0 ** it # 專(zhuān)家介入概率指數(shù)衰減 if np.random.rand() beta: act expert.act(obs) # 專(zhuān)家接管把軌跡拉回可行域 else: with torch.no_grad(): act policy(torch.as_tensor(obs, dtypetorch.float32)).numpy() states.append(obs) obs, _, term, trunc, _ env.step(act) if term or trunc: obs, _ env.reset() # 2) 請(qǐng)專(zhuān)家對(duì)這些“策略自己走出來(lái)的狀態(tài)”打標(biāo)簽 states np.asarray(states, dtypenp.float32) labels expert.label(states) # 支持批量查詢(xún)的實(shí)現(xiàn)比逐幀快一個(gè)量級(jí) # 3) 聚合后重訓(xùn)注意是在全量數(shù)據(jù)集上重訓(xùn)而不是只訓(xùn)新樣本 dataset.extend(states, labels) train_bc(policy, dataset, epochs5)beta0控制專(zhuān)家介入強(qiáng)度0.5意味著第一輪一半動(dòng)作由專(zhuān)家給之后每輪減半。有人直接取beta max(0, 1 - it / iters)線(xiàn)性衰減差別不大但指數(shù)衰減在前期更依賴(lài)專(zhuān)家適合專(zhuān)家本身很貴的場(chǎng)景。steps_per_iter2000是每輪新采的步數(shù)太小聚合效果不明顯太大則單輪訓(xùn)練時(shí)間壓不住2000 到 5000 之間比較常見(jiàn)。這里有個(gè)實(shí)現(xiàn)細(xì)節(jié)容易被忽略expert.label(states)必須支持批量查詢(xún)。如果專(zhuān)家是規(guī)則函數(shù)逐幀調(diào)用兩百次和一次批量調(diào)用在 Python 里的開(kāi)銷(xiāo)差幾十倍如果專(zhuān)家是人那 DAgger 就不適合跑十輪得改成兩三輪加大量增廣。另外train_bc每輪只訓(xùn) 5 個(gè) epoch 是有意的——DAgger 靠的是數(shù)據(jù)分布持續(xù)擴(kuò)張不是單輪把 loss 壓到最低訓(xùn)太多輪會(huì)讓策略過(guò)早過(guò)擬合到舊狀態(tài)分布上。2.4 GAIL 的判別器與獎(jiǎng)勵(lì)整形獎(jiǎng)勵(lì)從哪來(lái)GAIL 解決的是 BC 誤差累積的另一種思路不學(xué)動(dòng)作學(xué)一個(gè)「像專(zhuān)家」的判別器用判別器輸出反向構(gòu)造獎(jiǎng)勵(lì)再拿這個(gè)獎(jiǎng)勵(lì)跑標(biāo)準(zhǔn)策略梯度。判別器輸入是(obs, action)拼接輸出一個(gè) logit專(zhuān)家樣本標(biāo) 1、策略樣本標(biāo) 0。class Discriminator(nn.Module): def __init__(self, obs_dim, act_dim, hidden128): super().__init__() self.net nn.Sequential( nn.Linear(obs_dim act_dim, hidden), nn.Tanh(), nn.Linear(hidden, hidden), nn.Tanh(), nn.Linear(hidden, 1), ) def forward(self, obs, act): return self.net(torch.cat([obs, act], dim-1)).squeeze(-1) # 輸出 logit def disc_loss(disc, expert_obs, expert_act, policy_obs, policy_act): # 標(biāo)準(zhǔn)二分類(lèi)交叉熵專(zhuān)家 1策略 0 pos disc(expert_obs, expert_act) neg disc(policy_obs, policy_act) return (nn.functional.binary_cross_entropy_with_logits(pos, torch.ones_like(pos)) nn.functional.binary_cross_entropy_with_logits(neg, torch.zeros_like(neg))) def gail_reward(disc, obs, act, clip10.0): # r -log(1 - D(s,a))D 是判別器給出的“像專(zhuān)家”概率 prob torch.sigmoid(disc(obs, act)) r -torch.log(1.0 - prob 1e-8) return torch.clamp(r, -clip, clip)判別器網(wǎng)絡(luò)刻意比策略網(wǎng)絡(luò)小128 vs 256且只有兩層是為了不讓它太快把策略和專(zhuān)家完全分開(kāi)。獎(jiǎng)勵(lì)取-log(1 - D)而不是直接用D是因?yàn)榍罢咴贒接近 0 時(shí)給的正獎(jiǎng)勵(lì)更平滑策略在早期不至于所有樣本獎(jiǎng)勵(lì)都是 0.001 這個(gè)量級(jí)梯度全被吞掉。clip10.0是給獎(jiǎng)勵(lì)設(shè)上限防止個(gè)別樣本把優(yōu)勢(shì)函數(shù)撐爆。判別器的訓(xùn)練和策略的訓(xùn)練是交替的每一輪先用當(dāng)前策略采一批 rollout更新判別器若干次再用更新后的判別器算獎(jiǎng)勵(lì)、更新策略。這個(gè)「若干次」就是下一章要單獨(dú)說(shuō)的判別器步頻是 GAIL 里最敏感的超參之一。3. 從零跑通一次訓(xùn)練依賴(lài)、專(zhuān)家數(shù)據(jù)、配置和日志的四段命令鏈拿到一個(gè)算法包第一件事不是讀完全部源碼是把它跑出第一條非零獎(jiǎng)勵(lì)曲線(xiàn)。這一步跑通了后面所有調(diào)參才有意義跑不通讀源碼也讀不出所以然。下面這條鏈路按「裝環(huán)境 → 采數(shù)據(jù) → 訓(xùn) BC → 訓(xùn) GAIL → 評(píng)估」的順序排腳本名以倉(cāng)庫(kù)里的實(shí)際文件為準(zhǔn)我按常見(jiàn)命名寫(xiě)對(duì)不上就按功能找對(duì)應(yīng)入口。3.1 依賴(lài)裝完之后先驗(yàn)環(huán)境接口對(duì)不對(duì)# 1) 建獨(dú)立解釋器環(huán)境避免和系統(tǒng)里的 torch 版本打架 python -m venv .venv source .venv/bin/activate # Windows 下?lián)Q成 .venv\Scripts\activate # 2) 裝依賴(lài)requirements.txt 里通常鎖 numpy / torch / 環(huán)境接口庫(kù) / pyyaml / tensorboard pip install -r requirements.txt # 3) 自檢把算法注冊(cè)表和已安裝的環(huán)境列出來(lái)確認(rèn) BC/DAgger/GAIL 三個(gè)入口都在 python -m pkg.registry --list第三步別省。算法包的入口常掛在注冊(cè)表或getattr動(dòng)態(tài)導(dǎo)入上包名寫(xiě)錯(cuò)、模塊沒(méi)被__init__.py導(dǎo)出報(bào)錯(cuò)會(huì)出現(xiàn)在訓(xùn)練中段而不是啟動(dòng)時(shí)排查成本翻倍。如果注冊(cè)表能列出三個(gè)算法名且環(huán)境接口庫(kù)能make出你的環(huán)境依賴(lài)這一關(guān)就算過(guò)了。提示環(huán)境接口庫(kù)的版本差異主要體現(xiàn)在reset和step的返回值上。老接口reset()只返回obsstep()返回四元組新接口返回(obs, info)和五元組。包里的 rollout 代碼只認(rèn)其中一種版本不對(duì)會(huì)報(bào)「too many values to unpack」這類(lèi)看似莫名其妙的錯(cuò)。改法很簡(jiǎn)單在采集腳本里加一層適配或者在環(huán)境外面包一個(gè) wrapper不要在算法內(nèi)部到處打補(bǔ)丁。3.2 采集專(zhuān)家軌跡腳本參數(shù)與落盤(pán)格式# 采集專(zhuān)家軌跡。--env 換成自己的環(huán)境 id--episodes 決定演示條數(shù) python scripts/collect_demos.py \ --env YourEnv-v0 \ --episodes 60 \ --policy expert_rule_based \ --noise 0.02 \ --out data/expert_60ep.npz--episodes 60不是拍腦袋的數(shù)下一章會(huì)講怎么估第一次跑通先給 20 到 30 條確認(rèn)文件能存下來(lái)、字段對(duì)得上再補(bǔ)量。--noise 0.02是給專(zhuān)家動(dòng)作加的小幅高斯噪聲目的是讓專(zhuān)家數(shù)據(jù)覆蓋一點(diǎn)狀態(tài)鄰域BC 學(xué)出來(lái)的策略不會(huì)在專(zhuān)家軌跡兩側(cè)立刻崩掉。噪聲太大等于污染標(biāo)簽0.01 到 0.05 之間按動(dòng)作量綱調(diào)動(dòng)作在[-1, 1]的話(huà) 0.02 合適。落盤(pán)之后先做個(gè)形狀檢查比直接開(kāi)訓(xùn)省事得多import numpy as np d np.load(data/expert_60ep.npz) print({k: (d[k].shape, d[k].dtype) for k in d.files}) # 期望看到 obs (N, obs_dim) float32, act (N, act_dim) float32, done 里 1 的個(gè)數(shù)等于軌跡條數(shù)done為 1 的樣本數(shù)應(yīng)該正好等于--episodes多一個(gè)少一個(gè)都說(shuō)明采集循環(huán)里對(duì)terminated和truncated的處理有問(wèn)題。超時(shí)截?cái)嗨悴凰鉪one在不同算法里處理不一樣BC 不在意GAIL 在意——超時(shí)被當(dāng)成終止會(huì)讓價(jià)值函數(shù)學(xué)到「到時(shí)間就沒(méi)價(jià)值」正確做法是用truncated做 bootstrap 而不是當(dāng)終止。3.3 配置文件一次訓(xùn)練里真正要?jiǎng)拥氖畮讉€(gè)鍵algo: gail seed: 0 env_id: YourEnv-v0 demo_path: data/expert_60ep.npz policy: hidden: [256, 256] activation: tanh train: total_steps: 1_000_000 batch_size: 256 lr_policy: 3.0e-4 lr_disc: 1.0e-3 disc_updates: 3 # 每輪策略更新前判別器更新幾次 gamma: 0.99 gae_lambda: 0.95 ent_coef: 0.01 gail: reward_clip: 10.0 disc_hidden: 128total_steps: 1_000_000是環(huán)境交互步數(shù)而不是梯度步數(shù)這個(gè)口徑一定要跟日志對(duì)上否則你會(huì)以為訓(xùn)了很久其實(shí)只采了幾萬(wàn)步。ent_coef: 0.01是熵正則GAIL 里不建議設(shè)太大——獎(jiǎng)勵(lì)本身是從判別器來(lái)的熵太高會(huì)讓策略主動(dòng)往判別器沒(méi)見(jiàn)過(guò)的區(qū)域跑判別器給的獎(jiǎng)勵(lì)全是噪聲訓(xùn)練曲線(xiàn)表現(xiàn)為先漲后崩。3.4 訓(xùn)練與評(píng)估日志里該盯哪幾條曲線(xiàn)# 訓(xùn) BC 先確認(rèn)數(shù)據(jù)管線(xiàn)沒(méi)問(wèn)題 python scripts/train_bc.py --config configs/bc.yaml --demo data/expert_60ep.npz # 訓(xùn) GAIL從 BC 權(quán)重?zé)釂?dòng) python scripts/train_gail.py --config configs/gail.yaml --init runs/bc/policy.pt # 評(píng)估20 條 episode同時(shí)看均值和最差分位數(shù) python scripts/evaluate.py --ckpt runs/gail/policy.pt --episodes 20 --percentile 25日志里至少四條曲線(xiàn)要看episode_return、disc_accuracy、policy_entropy、value_loss。disc_accuracy穩(wěn)定在 0.5 到 0.75 之間是健康區(qū)間說(shuō)明判別器還分不太清一旦沖到 0.95 以上并橫住策略這邊基本拿不到有效梯度獎(jiǎng)勵(lì)曲線(xiàn)會(huì)變成一條緩慢下滑的直線(xiàn)。policy_entropy應(yīng)該緩慢下降而不是斷崖式掉到 0掉太快說(shuō)明策略過(guò)早確定化GAIL 階段就廢了。評(píng)估只看均值是自欺欺人。模仿學(xué)習(xí)的失敗是尾部事件——20 條里 18 條接近專(zhuān)家、2 條完全崩均值可能還不錯(cuò)但上線(xiàn)就是那 2 條在出問(wèn)題。所以評(píng)估腳本里同時(shí)打 25 分位數(shù)--percentile 25就是干這個(gè)的。4. 超參不是玄學(xué)專(zhuān)家軌跡量、判別器步頻與折扣因子的聯(lián)動(dòng)關(guān)系模仿學(xué)習(xí)算法的超參比普通監(jiān)督學(xué)習(xí)少但相互耦合更強(qiáng)。改一個(gè)數(shù)往往要連帶改另一個(gè)不然就是從「不收斂」跳到「過(guò)擬合」再跳回來(lái)。這一章把三個(gè)最影響結(jié)果的量單獨(dú)拎出來(lái)給的都是范圍和判斷依據(jù)不是絕對(duì)最優(yōu)值。4.1 專(zhuān)家軌跡數(shù)量與狀態(tài)維度先算清覆蓋度再談算法BC 的誤差上界大致是O(T2ε)T是軌跡長(zhǎng)度ε是單步監(jiān)督誤差。這個(gè)式子說(shuō)明兩件事軌跡越長(zhǎng)同樣的單步誤差放大得越厲害想降低誤差要么減小ε更好的網(wǎng)絡(luò)/更多數(shù)據(jù)要么打斷誤差累積DAgger。實(shí)操里的估算方式是按狀態(tài)空間覆蓋率不是按條數(shù)。經(jīng)驗(yàn)區(qū)間任務(wù)類(lèi)型狀態(tài)維度建議專(zhuān)家軌跡條數(shù)備注低維連續(xù)控制10 以?xún)?nèi)20 到 50每條幾百步夠 BC 出可用策略中維帶關(guān)節(jié)角、速度10 到 5050 到 200建議配 DAgger純 BC 容易偏圖像輸入高維200 以上必須做數(shù)據(jù)增廣否則過(guò)擬合背景多模態(tài)專(zhuān)家人遙操作任意200 以上高斯頭或多峰建模MSE 會(huì)學(xué)出平均動(dòng)作表里的數(shù)字是起點(diǎn)不是終點(diǎn)。判斷數(shù)據(jù)夠不夠看 BC 的驗(yàn)證集 loss 和 rollout 表現(xiàn)是否背離驗(yàn)證 loss 很低但 rollout 一開(kāi)始就偏說(shuō)明數(shù)據(jù)覆蓋不夠加數(shù)據(jù)或者上 DAgger驗(yàn)證 loss 本身就高說(shuō)明網(wǎng)絡(luò)容量或者輸入特征有問(wèn)題加數(shù)據(jù)沒(méi)用。4.2 判別器步頻與學(xué)習(xí)率GAIL 最容易失衡的地方disc_updates和lr_disc是一對(duì)聯(lián)動(dòng)參數(shù)。判別器更新太頻繁或?qū)W習(xí)率太高會(huì)迅速把策略和專(zhuān)家分開(kāi)獎(jiǎng)勵(lì)飽和策略梯度消失更新太少判別器跟不上策略變化獎(jiǎng)勵(lì)信號(hào)滯后訓(xùn)練表現(xiàn)為獎(jiǎng)勵(lì)曲線(xiàn)劇烈震蕩。我一般這樣起手lr_disc 1e-3、lr_policy 3e-4判別器學(xué)習(xí)率比策略高 3 倍左右disc_updates 1先跑 20 萬(wàn)步看disc_accuracy。如果它一直在 0.5 附近上不去說(shuō)明判別器太弱把disc_updates提到 3 或者把disc_hidden從 128 加到 256如果它三步之內(nèi)沖到 0.9 以上反過(guò)來(lái)做lr_disc降到 3e-4或者給判別器加梯度懲罰。另一個(gè)常被忽略的旋鈕是reward_clip。判別器輸出經(jīng)過(guò)-log(1-D)之后理論上無(wú)界D → 1時(shí)獎(jiǎng)勵(lì)會(huì)沖到幾十甚至上百優(yōu)勢(shì)估計(jì)直接被個(gè)別樣本主導(dǎo)。reward_clip: 10.0相當(dāng)于給獎(jiǎng)勵(lì)設(shè)了個(gè)硬上限代價(jià)是損失一部分區(qū)分度但換來(lái)的穩(wěn)定性在調(diào)試階段更值錢(qián)。4.3 折扣因子與 GAE把信用分配對(duì)上專(zhuān)家軌跡長(zhǎng)度gamma 0.99意味著有效視野大約 100 步0.995大約 200 步0.999大約 1000 步。這個(gè)數(shù)要和專(zhuān)家軌跡的實(shí)際長(zhǎng)度匹配如果專(zhuān)家軌跡平均 300 步收斂到目標(biāo)gamma給 0.99 會(huì)讓價(jià)值函數(shù)看不到后半段策略學(xué)到的是「快速動(dòng)一下」而不是「完整完成任務(wù)」。gae_lambda控制偏差和方差的折中0.95 是通用起點(diǎn)。GAIL 的獎(jiǎng)勵(lì)來(lái)自判別器噪聲比環(huán)境原生獎(jiǎng)勵(lì)大這種情況下把lambda降到 0.9 甚至 0.85 能明顯減小優(yōu)勢(shì)估計(jì)的方差代價(jià)是偏差變大、收斂變慢。判斷依據(jù)是value_loss的波動(dòng)幅度如果它在兩個(gè)數(shù)量級(jí)之間來(lái)回跳先降lambda再考慮降學(xué)習(xí)率。注意gamma改大之后total_steps也要跟著加。視野從 100 步拉到 300 步同樣學(xué)到「完整任務(wù)」需要的數(shù)據(jù)量大致按比例增加只改gamma不改步數(shù)最常見(jiàn)的現(xiàn)象是訓(xùn)練到一半曲線(xiàn)開(kāi)始緩慢下滑看起來(lái)像過(guò)擬合其實(shí)是步數(shù)不夠。4.4 參數(shù)速查表參數(shù)作用起步值什么時(shí)候改lr_policy策略網(wǎng)絡(luò)步長(zhǎng)3e-4曲線(xiàn)震蕩就減半20 萬(wàn)步不動(dòng)就翻倍lr_disc判別器步長(zhǎng)1e-3判別器準(zhǔn)確率過(guò)高就降過(guò)低就升disc_updates每輪判別器更新次數(shù)1 到 3先動(dòng)這個(gè)再動(dòng)學(xué)習(xí)率影響更平滑gamma折扣因子0.99按專(zhuān)家軌跡長(zhǎng)度的 1/3 到 1/2 反推gae_lambda優(yōu)勢(shì)估計(jì)折中0.95value_loss抖動(dòng)大就降到 0.9ent_coef熵正則0.01策略過(guò)早確定化就加大探索過(guò)頭就減小reward_clip判別器獎(jiǎng)勵(lì)上限10.0獎(jiǎng)勵(lì)方差爆炸時(shí)降到 5.0batch_size批量大小256顯存夠就加到 512梯度更穩(wěn)5. 五類(lèi)翻車(chē)現(xiàn)場(chǎng)排查現(xiàn)象、成因和能直接改的那一行算法包的 issue 區(qū)里重復(fù)率最高的不是「怎么實(shí)現(xiàn)」而是「我訓(xùn)出來(lái)不對(duì)」。下面五條按出現(xiàn)頻率排每條都按現(xiàn)象、成因、解決三層寫(xiě)能直接對(duì)應(yīng)到代碼里改哪一行。5.1 BC 訓(xùn)練 loss 很低rollout 三步就飄現(xiàn)象訓(xùn)練集 MSE 降到 1e-3 量級(jí)進(jìn)環(huán)境跑前三步還行第五步動(dòng)作開(kāi)始抖第十步直接撞墻。成因典型的分布偏移。專(zhuān)家數(shù)據(jù)只覆蓋專(zhuān)家走過(guò)的狀態(tài)策略在專(zhuān)家狀態(tài)上學(xué)得很準(zhǔn)一旦偏出去幾厘米進(jìn)入沒(méi)見(jiàn)過(guò)的狀態(tài)輸出就是網(wǎng)絡(luò)外推的隨機(jī)值誤差按T2放大。解決上 DAgger哪怕只跑兩三輪也有效暫時(shí)不想引入在線(xiàn)專(zhuān)家的話(huà)退一步做狀態(tài)增廣——對(duì)專(zhuān)家觀(guān)測(cè)加小幅高斯噪聲、對(duì)圖像做隨機(jī)裁剪和亮度擾動(dòng)讓策略在專(zhuān)家軌跡鄰域內(nèi)有定義。噪聲幅度按觀(guān)測(cè)標(biāo)準(zhǔn)差的 5% 到 10% 給給大了等于教策略在錯(cuò)誤狀態(tài)上輸出正確動(dòng)作反而更糟。5.2 GAIL 判別器準(zhǔn)確率三步?jīng)_到 0.98獎(jiǎng)勵(lì)曲線(xiàn)變平現(xiàn)象訓(xùn)練前幾千步disc_accuracy迅速逼近 1.0gail_reward均值掉到接近 0 并橫住策略性能不再變化。成因判別器容量或?qū)W習(xí)率相對(duì)策略太強(qiáng)幾乎瞬間就把兩類(lèi)樣本線(xiàn)性分開(kāi)。獎(jiǎng)勵(lì)函數(shù)變成「策略樣本恒為 -10專(zhuān)家樣本恒為 10」策略拿到的梯度全是常數(shù)等于沒(méi)有獎(jiǎng)勵(lì)。解決先把disc_updates從 3 降到 1再把lr_disc降到 3e-4還不夠就給判別器加梯度懲罰WGAN-GP 那一套或者把disc_hidden從 256 砍到 128。判別器網(wǎng)絡(luò)比策略網(wǎng)絡(luò)小一到兩檔是 GAIL 里比較穩(wěn)的配置習(xí)慣。5.3 觀(guān)測(cè)歸一化統(tǒng)計(jì)量隨訓(xùn)練漂移訓(xùn)練中期突然崩現(xiàn)象前 30 萬(wàn)步曲線(xiàn)正常上漲之后突然掉下去再也不回來(lái)重啟同 seed 也不一定復(fù)現(xiàn)。成因觀(guān)測(cè)歸一化用了滑動(dòng)統(tǒng)計(jì)量而策略探索到的狀態(tài)分布隨訓(xùn)練不斷擴(kuò)張mean/std跟著漂導(dǎo)致同一個(gè)觀(guān)測(cè)在不同時(shí)刻被歸一化成不同值。價(jià)值網(wǎng)絡(luò)學(xué)的是舊分布輸入一變就全亂。解決歸一化統(tǒng)計(jì)量只用專(zhuān)家數(shù)據(jù)算一次然后凍結(jié)寫(xiě)進(jìn) checkpoint 一起保存。評(píng)估和訓(xùn)練必須用同一份mean/std這一點(diǎn)在加載模型時(shí)最容易漏——只加載了權(quán)重沒(méi)加載統(tǒng)計(jì)量現(xiàn)象是「訓(xùn)練好好的模型評(píng)估時(shí)表現(xiàn)極差」。5.4 專(zhuān)家動(dòng)作和環(huán)境動(dòng)作空間量綱不一致現(xiàn)象BC loss 正常下降但 rollout 里動(dòng)作像是被截?cái)嘤肋h(yuǎn)貼著[-1, 1]的邊界走機(jī)器人只朝一個(gè)方向緩慢移動(dòng)。成因?qū)<覕?shù)據(jù)來(lái)自力矩控制動(dòng)作范圍是[-20, 20]環(huán)境action_space是[-1, 1]回歸出來(lái)的策略輸出被環(huán)境 clip等于把 95% 的信息丟了。解決采集階段就把專(zhuān)家動(dòng)作按(a - low) / (high - low) * 2 - 1歸一化落盤(pán)的 npz 里存歸一化后的值同時(shí)在文件里存一份action_low/action_high。評(píng)估腳本反歸一化后再env.step。這條建議寫(xiě)進(jìn)采集腳本的注釋里不然下一個(gè)人接手還要再踩一次。5.5 固定 seed 但兩次訓(xùn)練結(jié)果差很多現(xiàn)象seed: 0寫(xiě)死在配置里同樣的數(shù)據(jù)同樣的超參兩次跑出來(lái)的最終回報(bào)差 30% 以上。成因三處非確定性沒(méi)關(guān)掉——環(huán)境內(nèi)部的隨機(jī)數(shù)生成器沒(méi)設(shè)種子、PyTorch 的 cuDNN 自動(dòng)調(diào)優(yōu)、DataLoader 多 worker 的采樣順序。少關(guān)一處復(fù)現(xiàn)性就沒(méi)了。解決環(huán)境reset(seedcfg.seed)、torch.backends.cudnn.deterministic True、torch.backends.cudnn.benchmark False、DataLoader(..., worker_init_fn...)里給每個(gè) worker 派生種子。調(diào)試階段干脆num_workers0慢一點(diǎn)但結(jié)果可比。這套開(kāi)關(guān)關(guān)掉之后性能可能降幾個(gè)點(diǎn)屬于為了可復(fù)現(xiàn)付的必要成本。6. 再往前一步BC 預(yù)訓(xùn)練接 GAIL 微調(diào)加一個(gè)誤差分箱的驗(yàn)證習(xí)慣從零訓(xùn) GAIL 的探索成本很高尤其是動(dòng)作維度大于 10 的時(shí)候判別器早期的獎(jiǎng)勵(lì)幾乎全是噪聲。更省事的做法是先用 BC 把策略熱啟動(dòng)到一個(gè)「能跑但不精細(xì)」的水平再切 GAIL 微調(diào)。切換時(shí)有兩個(gè)細(xì)節(jié)要改策略學(xué)習(xí)率降到原來(lái)的三分之一到五分之一BC 權(quán)重已經(jīng)很接近解大步長(zhǎng)會(huì)把它們打散判別器從零開(kāi)始訓(xùn)、學(xué)習(xí)率保持原值因?yàn)榕袆e器面對(duì)的是一個(gè)已經(jīng)比較像專(zhuān)家的策略需要足夠強(qiáng)的區(qū)分能力才能提供有效梯度。驗(yàn)證環(huán)節(jié)我習(xí)慣加一個(gè)誤差分箱比只看總回報(bào)有用得多。思路是拿一批專(zhuān)家觀(guān)測(cè)喂給策略算每個(gè)樣本的動(dòng)作誤差再按專(zhuān)家動(dòng)作模長(zhǎng)或者狀態(tài)某個(gè)關(guān)鍵維度分箱看誤差集中在哪一段。import numpy as np import torch torch.no_grad() def divergence_by_bin(policy, expert_obs, expert_act, n_bins5): 按專(zhuān)家動(dòng)作模長(zhǎng)分箱統(tǒng)計(jì)策略與專(zhuān)家的動(dòng)作 MSE定位誤差集中區(qū) obs_t torch.as_tensor(expert_obs, dtypetorch.float32) pred policy(obs_t).numpy() err ((pred - expert_act) ** 2).mean(axis1) # 每個(gè)樣本一個(gè)標(biāo)量誤差 key np.linalg.norm(expert_act, axis1) # 用動(dòng)作模長(zhǎng)當(dāng)分箱依據(jù) edges np.quantile(key, np.linspace(0, 1, n_bins 1)) idx np.clip(np.digitize(key, edges[1:-1]), 0, n_bins - 1) return {i: round(float(err[idx i].mean()), 5) for i in range(n_bins) if (idx i).any()}n_bins5按分位數(shù)切保證每箱樣本量接近避免某一箱只有幾個(gè)樣本讓均值失真。輸出里如果誤差集中在最高的那一箱說(shuō)明策略在「大幅度動(dòng)作」上學(xué)得差多半是專(zhuān)家數(shù)據(jù)里大幅動(dòng)作樣本少補(bǔ)采時(shí)要有意識(shí)地多采這類(lèi)片段如果集中在最低那一箱通常是噪聲問(wèn)題——小幅動(dòng)作的信噪比低專(zhuān)家自己抖一下就被當(dāng)成標(biāo)簽學(xué)走了這時(shí)候該做的是對(duì)專(zhuān)家動(dòng)作做一點(diǎn)平滑再訓(xùn)。配合評(píng)估腳本的 25 分位數(shù)一起看基本能定位八成問(wèn)題分箱誤差均勻但最差分位數(shù)很差是分布偏移分箱誤差本身就偏某一箱是數(shù)據(jù)覆蓋問(wèn)題兩者都正常但環(huán)境回報(bào)上不去那要回頭看獎(jiǎng)勵(lì)整形而不是繼續(xù)調(diào)策略。從那以后我每次跑 GAIL 之前都會(huì)強(qiáng)制先跑一遍 BC 的分箱誤差確認(rèn)失敗狀態(tài)集中在哪一段再?zèng)Q定是補(bǔ)數(shù)據(jù)還是直接上對(duì)抗訓(xùn)練——省下的不是訓(xùn)練時(shí)間是那種「訓(xùn)了兩天不知道錯(cuò)在哪」的消耗。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷另类小说| 蜜桃传媒一区二区亚洲| 青青草中日韩在线| 人妻在线中出视频| 欧美五十路熟| 成人免费视瓶| 园内精品自拍视频在线播放| 国产福利一区二| A 在线网址| 人人摸人人干人人拍97| 久久露脸国产老熟女| 亚洲人妻AV| 96AV精品| 91网站在线播放| 国产农村妇女毛片精品久久| 日本二三四区| 青青操综合网| 1024人妻| 9999九九九久久久| 欧美色网| 怡红院一区二区熟女人妻| 丰满人妻一区二区三区| 人人澡综合涩| 久久久久久九九九| 搡老熟女国产1000部| AV中文在线| 国模私拍一区二区三区神乳| 青娱乐休闲视频在线观看| 啊啊啊啊啊操我视频| 欧美视频在线第3页| 日韩色| 任你草| 97国产伦理| 69精品| 亚洲精品日日夜夜52| av麻豆啪啪| 一区二区高清视频| 五月丁香六月激情| 麻豆熟妇乱妇熟色A片在线看| 爽极品影院| 任我爽视频在线观看| 亚洲男人在线观看天堂| 2024人人操人人摸| 毛片麻豆91糖心精品毛情片| 国产成人无码啪| 熟女天天干| 中国一级αV| 久久免费老司机精品| 亚洲 欧美 第一页 | 色婷婷久久| 免费试看60秒| 日本亚洲熟女视频| 美女91色黄18| 九九无码久久精品视频| 极品色www影院| 国产精品乱码久久| 夜夜爽33333| 8050无码八戒| 91国产伊人大香蕉| 超碰97资源大奶| 婷婷伊人一区| 家庭乱伦网站国产| 色av中文字| 久久这里| 亚洲AV成人无码一二三久久| 婷婷影院入口| 天天透伊人| 国产久久久久影院老熟女| 亚洲人妻爽爽爽| 国产精品久久久久久片| 欧美少妇第一页| 日本久久女同性恋视频| 91n美女视频| 日韩精品 欧美激情| 3028国产精品| 日本天天干天天日一区| 欧美日产国产在线成人第一区| 婷婷五月天社区| 久久久久久久久久久999| 男女一进一出视频久久| 狼天天狼天天大香蕉| 亚洲中文字幕久久无码精品| 噜噜在线| 国产无马在线| 超碰在线第一页| ?亚洲伊人伊成久久人综合网| 99久久综合| 岛国激情视频在线观看| 九九九国产精品| 婷婷色播婷婷| 九九久久玖玖| 男人的天堂在线| 在线观看精品国产免费| 97干97色| 亚洲性刺激| www.狠狠干.coom | 91精品免费| 日韩精品中文字幕一| 毛片99-全集电影手机免费观看完整-B029AV | 人人看人人插| 亚洲人综合19| 蜜臀久久99'精品久久久| 五月激情综合网| 老子午夜伦不卡影院| 人人操人人摸人 | 欧美专区日本专区| 伊人网高清| 色哟哟av网址| 欧美日韩婷婷中文| 国产精品熟女AV中文字幕在线播放| 操逼无毒无码免费视频| 欧色综合| 亚洲激情色片| 97超碰美国| 大色综合网| AⅤ片水多多| 人妻熟女字幕一区二区| 少妇人妻无码| 色综合中文字幕不卡| 国产成人精品日本视频| 久久黄色性爱视频| 久久精品国产AV一区二区三区| 久草精品在线| 欧美中日韩XXXX| 破处bbq| 综合久久99亚洲人妻中文在线| 97视频在线观看播放与子乱对白在线……| 亚欧性爱ab| 蜜臀操逼黄色视频操的好爽| 黄片com.| 婷婷在线精品| 久久9 9 9精品| 欧美熟妇人体| 久久久精| 尤物网站91| 一级人妻性爱视频| 超碰在线欧美性爱激情| 国产h片在线观看视频| AV污污污污| 久久青青草原免费视频| 亚洲中文字母在线播放| 日韩AV中文字幕电影| av日韩在线观看电影| www.夜夜操| 青青欧洲黑| 久久在肏| 极品国产内射| 乱伦图av| 一牛影视久久久一区二区三区| 五月婷色| 9久热这里只有精品| 亚洲熟女一区二区| 成人免费在线网站| 性色乱AV一区二区| 美女骚尻视频| 家庭乱伦国产精品| 五月丁香综合激情| 任你干在线视频| 在线视频免费观看午夜| 色综合婷婷| 99RE在线视频精品,这里只有精品| 欧美大色交| 国产精品不卡高清在线观看| 毛片电影一区二区三区| 天天操天天射青青草| 99热最新| K8久久久久| 九九成人| 亚洲国产欧美一区二区潘金莲| 在线人妻熟女一区二区三区四区五区| 久久97| 中文字幕加勒比海高清无码免费视频| 国产无码三级视频在线观看| 久久999久| 久久激情网| 操逼网站网站| 亚洲中文字幕久久无码精品| av九九| 26uuu久久| 精品无码久久久久| 99热官网| 51一区二区三区| 九九亚洲| 天天热精品| 天天摸夜夜摸| 东京热亚洲一区二区| 老熟女乱伦一区| 97人妻人人躁人人玩人人| 久热热| 欧美另类色| 久久久久久久久久9| 天堂av最新电影网| 色综合九九| 中日韓欧美高清| 亚洲熟女一区| 欧美九一精品久久久熟妇| 久久偷拍人| 丁香五月综合| 日韩无码第3页| 青青草天天亲夜夜操网| 97情超碰色| 中文字幕一区二区三区蜜臀| 欧美另类综合久久| 麻豆一区二区三区在线看 | 国产强奸超碰AV| 在线另类| WWW黄片COM| 亚洲天堂一区| 東南亚性呦成人伦理资源在线视频| 99热网站| 日韩AV无码中文一区二区| 人妻丰满熟妇av无码区蜜桃| 国产亚洲色婷婷99精品91| 亚洲欧美国产日本一区二区三区 | jiujiujiujingpin| 欧美日日网| 一区三区啪啪| 欧美性巨大╳╳╳╳╳高跟鞋| 91综合中文字幕| 一区超碰一区| 亚州男人的天堂| 超碰日本97美女人妻人人玩人人爱| 国内毛片无遮挡国产| 黑人娇小av在线播放| 性交一区二区在线播放| 日本加靬比网站发布页| 午夜精品99久久久久传媒| 日本道久久综合色色| 中文字幕久热视频在线| 国产野战露脸在线播放| 亚洲精品乱码线路中文字幕| 午夜超爽| 男人高清无码一区二区| 美女诱惑一区| 欧美第一页| 久久av无码| 乱伦图一区| 欧美一区二区一级岛国大片| 放黄片放3级黄片没穿衣服| 夜夜爽妓女| 国产人伦a片信息免费片| 97人妻碰碰中文无码久热丝袜| 色牛牛AV| 午夜天堂网| 亚州高清色综合| 九七毛片九九毛片| 少妇无码999| 九九热九九热| 中文字幕加勒比海高清无码免费视频| 91新在线欧美| 精品美女少妇一区二区| 欧美 亚洲| 国产一区二区成人av在线播放| 中文字幕黄片在线| 亚洲第一成人影院色播| 美女露胸露屁股| 欧美91在线+|+欧美| 欧美综合777| 91天天| 国产性爱在线视频一区二区| 欧美后进式| 99爱久久视频频| 久久久免费高清中文视频| 中文操逼字幕| 丰满人妻-区二区三区免费| 欧美少妇性乱| 大香蕉久久| 人人插人人摸人人| 91大神电影天堂| 久久久天美| 日美免费黄片| 欧美日韩欧美| 蜜桃无码AV一区二区| 亚洲男人的天堂一区二区| 激情婷婷黑人91| 精品久久久久久中文| 玖玖综合色| 九九av| 欧美顶级黄色大片免费| 色色青青久久| 国产操操日韩三级黄| 中文字幕片| 九九九精品成人免费视频小说| 欧美男人一区| 亚洲无码精品AV久久久| 免费9 1久久| 搞中出久久| 国产精品视频在线播放| 国产成人精品日本视频| 国产伊人精品在线| 天天色综亚洲91污| 黄色免费网| AV中文字幕三四五| 国产第二页| 欧美日韩国产在线| 九九性爱网| 中文字幕精品一区欧美| 97综合激情| 欧美日韩国产精品久久色婷婷| 屌逼传媒| 91一区二区| 亚洲精品成人| av日韩手机在线影视| 欧美一级黄色免费专区| 午夜精品久久久久久久久久久久久| AV在线资源| 日韩激情视频| 动漫片子网站3黄| 伊色综合天堂色97| 99青草| 婷婷色综合| 狠狠色婷婷7777久| av九九| 丁香成人五月天| 麻豆一区在线| 综合激情五月丁香| 欧美呦呦性爱| 爱妃国产亚洲视频中文字幕| 麻豆a'v电影| 午夜福利av电影在线| 我要看免费韩日黄片| 五月天色五月| 天天日美女的B| 人人操,操人人| 91人妻熟女| 人妻 欧美 中文| 日韩AC| 97无码视频在线播放| 五月天欧美色图| 国产久久久9999| 日本欧美国内在线| 色天使大香蕉| 亚洲综合射| 国产自产22区| 93人人操人人| 青青国产在线拍揄自揄拍| 欧美亚洲中文| 福利在线视频一区二区| 影音先锋日本一区二区| 九月AV| 夜间福利片1000无码| 国产自偷| 97人人中文网| 中文字幕在线高清男人的天堂 | 国模无码一区二区三区在线| 97人人夜| baiduhicn.com。| 狠狠色狠狠色狠狠五月| 精品一区二区久久| 激情五月天综合网| 欧美日韩国产三级黄色| 五月婷亚洲精品天堂| 日本99一区二区| 免费A V在线播放| 蜜臀久久99精品久久久久久| 中文字幕第23区| 偷拍伦理视频| www.色99| 男女激情黄色网址| 日韩精品一区二区日韩| 欧美狠狠| 肏逼视频日本| 91另类| 91白嫩| 人澡逼| 欧美日韩亚洲五月天婷婷| 天天干天天插| 激情综合色| 欧美爱爱97| 麻豆一区二区三区在线看 | 殴美日韩m| 天天肏夜夜肏| 狠狠激情综合狠狠操中文字幕| 尤物av网站免费在线播放| 四虎av在线| 欧美中字不卡| 欧美狠狠狠| 久99在线免费观看视频| www.acm成人黄色毛片| 欧美少妇性乱| 中文字幕色AV| 超清中文乱码字幕| 2024黄色视频| 人妻丰满熟妇一区二区三| 欧美精品日韩久久久九| www.久久最新地址| 日本三级R| 99热综合| 午夜欧美J进J出白浆流出久久久| 天天内射| 国产精品直播在线观看直播| 国产成人99久久亚洲综合| 国内亚洲精彩视频在线| av资源在线观看少妇| 伊人AAA| 青青国产精品在线| 久久久男人的天堂| 日本精品一区二区三区四区的功能| 亚州熟女乱伦| 欧美大香蕉卡久久| 999熟女精品| 91性感在线| 亚洲无线码欧洲精品区别| 狠狠色狠狠色狠狠五月| 日本一二区免费| 日本五区不卡| 亚洲 自拍偷拍 欧美| 粉嫩国产精品久久粉嫩| 伊人久久蜜月| 日韩性爱毛片操骚逼| 大香蕉亚洲中文| 午夜操一视频一区| 天堂种子在线www网资源| 久久久9品一区二区三区| 久久精品女同亚洲女同13| 操b在线观看| www五月| 日韩av情韩国爱禁区av一区二区| 东京热男人的天堂| 欧美亚洲玖玖玖| 成人九九| 日韩AV一区二区三区三州三州| 日本2020一区二区| 啪啪啪综合网| 神马麻豆福利院| 夜夜草网站| 视频一区二区免费在线| 亚洲色鬼| 天天激情综合站| AV天堂男人的天堂| 久久男人精品| 亚州欧美综合| 99热免费| 亚洲最新av无码成人精品区| 亚洲宗合网| 99热婷婷| 强奸乱伦AV一天堂网| 亚洲国产剧情少妇激情| 老熟女乱子伦中文字幕一区二区| 综合性视频99| 青青草吊丝| 中文字幕亚韩| 免费一级性爱久久| 欧美亚洲特P| 欧美九九爱| 欧亚成人| 久久区| 国产亚洲色婷婷99精品91| 99精品久久久久久久婷婷| 97超碰国产亚洲精品| 五月天婷婷成人网| 人人插人人搞人人操| 中文字幕精品探花视频| 蘋果手機免費看成人Av| 色一射色一射| 亚洲欲色9532548967一区| 欧美探花网| 日韩无限资源| 91无码人妻精品一区二区三区蜜桃 | 大香蕉色欲AV| 六月丁操逼| 日本熟妇熟色97一本在线观看| 蜜乳AV一区| 久久国产逼| 激情综合网激情综合| 久久熟女嫩草成人片免费| 福利天堂| 另类成人首页一区| 久久中文字幕人妻熟av女蜜柚| 久久偷拍人| 夜夜高潮夜夜爽| 亚洲图片 91| 99少妇精品视频| 婷婷五月天成人网| 五月婷视频| 97久久精品亚洲| WWW4虎| 啊啊啊好湿国产一二| 亚洲色图91欧美日韩| 久久妇| 91欧美美女日韩国产婷婷| 亚洲人精品久久久喷水| 少妇一区二区三区在线观看| 亚洲成人色情五月天丁香花| juliaann丝袜大战黑鬼| 宗合情欲网| 久久久内射良家| 啊啊啊啊啊啊在线| 日本成人在线不卡一区二区三区| 青青免费在线视频一区| 深田咏美亚洲精品福利社| 丝袜AV一二三区| 日韩人妻精品| 91色人妻| 看日韩美女二区三区免费操逼视频| 福利风月五月天影院| 97在线观视频免费观看| 2017天天插| 久久国内| 中出789在线视频| 五十路熟女人妻一区二区在线观看| 欧美黄业| 99只有精品| 蜜臀AV成人精品蜜臀| 综合自拍| 丁香五月性| 热热色国产一二区AV| 日日摸天天爽夜夜欢| 欧美性爱在线无码| 久久久久人| 91色拍| 色五月网址| 超碰碰小说97| 国产成人网站在线观看| 久久亚码| 欧美经典一区二区三区| 偷拍综合亚洲| 操逼网免费无码视频| 吉川爱美亚洲二区在线| 国产99精品一区二区三区免费| 久久超碰、| 日韩无码人妻| 97 超碰 人人做 人人爱| 久热伊人| 中文字幕一区二区韩| 亚洲天堂一区| 国产精品天美传媒| 先锋激情∨在线视频播放| AV老汉| 国产精品嫩草影院免费| 欧美草草| 五月天色五月| A 在线网址| 97 国产精品| 啊啊啊啊啊啊啊国| 日本免费专区| 国产精品在线免费| 少妇诱惑视频| 国产又操| 欧美精品久久久久久久丰满| 中文字幕人乱码中文字的预防方法| 丁香婷婷五月| 俺也射| 久久视网78| 九九这里只有精品| 欧 美 自 拍 偷 拍| 一卡二卡三卡| 亚欧美综合网。| 九九色热| av日韩在线观看电影| 日韩兔费看黄片| 啪啪啪男女亚洲中文字幕99| 91美乳| 国产亚洲99久久精品| 欧美v亚洲v综合v国产v妖精| 人妻少妇久久| 日日干夜夜骑| 亚洲限制级| 夜夜草网站| 国内毛片婷婷六月色| 懂色Av| 欧美综合天天| 91五十路| 久久久一区二区三区四区五区| 天天干1区2区在线| 97爱亚洲| 亚洲高清综合网| 亚洲在线A| 欧美丝袜美女电影一二三四区| 性色高清在线| 绯色AV粉色AV蜜臀AV| 婷婷色香| 91国产在线精品| 久久国产999| 伊人在线大香蕉视频久久| 97在线观看免费视频l| 国产精品肉丝自拍| 狠狠亚洲| 97中文综合| 密臀在线视频| 日韩免费看在线黄色片| 欧美丰满少妇交换91欧美精品| 十八禁的黄污污免费网站| 成人贴图日韩欧美| 欧美在线官网| 成人自拍三级在线观看| 久久久久久国产精品免费网站 | 日本中文字幕一区| 少妇高潮一区二区三区在线| 国产极品粉嫩馒头一线天av| 欧美激情总合网| 伊人麻豆传媒| 九九Av| 五月天久久人妻| 亚洲精品乱码线路中文字幕 | 91国产丝袜白虎| 成人午夜小视频手机在线看| 久久久久ab| 久久久新亚洲AV| 熟女人妻av在线资源,黄色的资源| 免费国产| 人人透人人操| 伊人久日| 综合色久| 青草一区二区| 五月婷婷综合在线| 91爱| 亚洲黑丝在线| 久久尹人大香焦视| 一二三四日本视频高清| 精品国产乱码久久久| 天天看,天天做| 综合熟妇一区二区三区| 99操碰| 九九热只有精品| 色999;丁香五月| 欧美草草高清日韩视频| 久99久视频| 欧美色图亚洲色| 伊人网av| 日本操逼视频免费| 欧美日韩国产电影| 黑人狂躁日本妞一区二区三区| 蜜臀AV成人精品蜜臀| 国产熟女完整版中字 | 夜色AV无码手机在线影院| 热热色国产一二区AV| 综合久久欧美| 91天堂丝袜美腿| 五月婷婷色色| 久久久久亚洲熟妇熟女| 屁股久久久久久久久久| 黄色AV影视| 日韩操逼性鲍| 日韩二区三四区五区六区在线看| 日本道久久综合色色| 日日爽熟女| 亚欧美天堂在线| 欧美极品性爱天天射| 91激情国产| ,国产乱人伦精品一区二区三区| 国产精品高潮呻吟av久久4虎| 97 超碰 人人做 人人爱| 性在久久久久久| 婷婷探花久久精品一区| 翘臀vidoes| 日逼视频日本| 欧美成人精品一区| 尤物av网站| 免费看久久久性性| 久久AV无码AV| 欧美96交| 国产精品网站www| 另类小说综合网| 亚洲精品熟妇1区2区3区。| 久久中出在线| 九九综合| 日韩探花精品在线视频| 国产成人91一区二区三区| 97伦乱| 综合日韩激情另类图片| 99re在线观看| 嫩草一区二区在线观看| 五月天亚洲网| 日本爽爽爽爽爽爽免费视频| 欧美日韩中文字幕不卡| 嗯嗯啊啊亚欧精品| 黑人娇小av在线播放| 成人免费在线网站| 午夜视频好爽啊| 97天天操| 裸体美女久久久| 精品久久久久久无码| 成人精品视频一区二区| 色综合色色| 偷窥自拍A片| 精品人妻1区| 日本影视久久免费| 日本一区二区中文字幕久久| 91人人操| 久久伊人影院| 91bbb| 亚洲精品91| 无码粉嫩白虎一线天b区| 一区二区播放| 精品少妇高潮久久| 啊啊啊 在线| 99热在线只有精品| 日本精品加勒比海一区| 久久久久久久久久久久97| 激情婷婷丁香| 欧美 日韩第一性色| 色网亚洲人| 亚洲中亚日激情视频| 欧美亚洲色的图| 就去色综合| 人妻少妇无码| 激情欧美97| 亚洲综合电影| 日韩免费簧片| 十八岁啪啪视频免费看| 一起草日韩| 日韩精品一区二区三区色欲| 99热免费| 97免费在线视频在线观看| 国产精品2020| 欧美色图人妻| 综合色久欲| 欧美色图第一页| 人妻夜夜爽天天爽三区麻豆AV网站| 欧美激情一区| 影音先锋新男人| 中文字幕一区二区韩| 偷看洗澡一二三区美女| 99视频自拍| 熟女精品一区二区三区| 狼人综合婷婷激情四射 | 大香蕉人妻久久| 丁香五月影院| 超碰久久中文| 欧美传媒一区| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 美国黄片aaa| 韩国成人精品久久久免费看| 操逼视频免费日韩无码| 东京热激情视频一二三区| 日日天天久久啊啊aaa| 91强在线播放| 成年在线视频日本亚洲在线视频区精品江靖宇公司 | 亚洲国产一区二区三区四区国产| 波多野结衣被操50分钟免费视频| 欧美特大黄一级片片免费| 性爱视频久久| 啊啊啊不要啊啊受不了了视频在线| 熟女高潮合集-永久久久-成人AV| 91综合天天看| 1000部熟女视频在线观看| 色狠狠 - 百度| 五月婷婷色色| 日日夜夜国产综合| 另类图片五月天| 欧美日韩性爱电影在线| 牛黄色久午久| 天天爽天天爽| 高清肉丝中文无码| 青青久久艹| 丝袜美腿制服人妻二区中文字幕| 蜜臀久久一区二区| 久久久久幕乱码| 无码137片内射在线影院| 久久香蕉国产线看观看猫咪av| 国产天天骚| 白嫩91在线亚洲| 99国产精品视频尤物| 啪啪91| 天天操人人操骚逼网站| 在线日韩日本亚洲国产| 亚洲黄网在哪免费看| 久久少妇视频| 大香蕉综合网| 国产亚州精品美女久久久免费| 嗯……啊…嗯嗯…啊…好舒服| 日韩欧美中文字亚洲慕| 欧美高清18A片| 日本3级一区二区免费| 天天摸夜夜操视频| 丰满人妻被猛烈进入中| 在线只有精品| 丁香五月天久久精品视频一区二区三区| 蜜臀99久久国产| 999 久久久| 日韩熟女无码| 蜜桃色色网站视频三区| 蜜乳av一区二区三区四区不卡| 国产精品精品系列在线观看| 婷婷伊人| 久久精品区| 人人操人人大香蕉| 伊人久久亚洲色欲综合网站| 操操操五月天婷婷丁香影院| 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 日韩激情啪啪啪| 日本一区二区三区精品| 大香蕉78| 欧美综合自拍成人自拍第二十页| 欧洲一区二区| 免费观看啪视频| av日韩中文字幕| 强奸a片网| 亚洲性少妇| 亚洲无码视频免费在线观看网址!| 婷婷九月色| 91大香蕉伊人| 色情综合网| 色亚洲欧美| 五月丁香六月婷| 哈哈操电影| 五月婷婷综合网| 亚洲色图图片| 999久久久久久久精| 无码137片内射在线影院| 日韩精彩免费| 少妇久久久久| AV高清一区| 无码人妻精品一区二区三区99不卡| 久久九七| 韩国一级AAA| 久久久久久久久久久精| 去干网最新版| 一本色道久久综合精品婷婷| 欧美熟爽综合| AVE乱伦| 日韩精品99久久久久久中文字幕 | 欧美第一页| 日韩av三四区| 另类小说综合网| 欧美日本视频一区| 婷婷视频网| 插入逼91| 伊人伊人LD| 精品超碰国产| 超碰在线一区| AV天堂电影网| 国产一级作爱毛片| 91 天天综合| 秋霞男人网| 久久精品高清AV| 男人的天堂va在线| 色呦呦、国产精品| 中国一级操逼视频| 男人天堂最新手机版在线青青草| 中文字幕第页| 国产日韩精品无码去免费专区国产| 97国产精品久久久久| 97bbn| 99热这里只有精品地址| 久久黄黄黄| 大香蕉十区| 亚洲综合精品国产一区| 天堂综合网| 密臀AV在线| 欧美 亚洲 偷拍自拍| 欧美综合另类| 欧洲一区二区三区四区在线观看| 五月天社区| 色色香蕉| 国产v亚洲v日韩v欧美v片另类 | 国产 热久久久久国产精品| 国产又粗又长的视频| 亚洲s在线观看| 青娱乐国产精品| 亚洲日韩人妻中文字幕一区| 97热视频在线观看| 内射中出日韩在线观看视频| 激情干在线| 一二三四视频中文字幕在线看| 玖玖爱一区在线| 亚洲高潮少妇| 美女黄频a美女大全免费皮| 久久久久亚洲| 麻豆国产成人精品| 性色avv| 午夜一区| 黄色av片三级三级三级免费看| 亚洲色图91| 精品人妻久久久| 97欧美色资源| AV高清一区| 伊人久久88国产女| 色婷久久| 婷婷午夜成人色中色| 狠狠操官网| 91亚洲电影| 天美传媒精品久久视频| 亚洲综合校园春色| 成人无码专区精品视频| 少妇超碰在线| 九九热超碰| 午夜影美女日鸡鸡天天视频国产| 国产极品精品美女视频| 久久中出| 国产精品九九九| 999热这里只有精品| 人妻熟妇一区二区三区| av久日| 九九九热精品| 色网在线| 97操在线| 久久大精品乱码视频人妻熟女| 色盈盈影院| 大香蕉伊人亚洲| 欧美日韩丝袜| 95精品在线| 婷婷五月丁香五月| 床上啊啊啊一区二区三区| 丁香婷婷九月| 婷婷色综合| 九九无码视频| 亚洲成人在线播放| 巨爆乳肉感一区二区三区竹菊影视 | 99只有精品| 色www精品视频在线观看| 男人亚洲天堂| 精品一区二区三区18| 就去色综合| 老熟女综合网| 91丝袜| 日韩欧美亚洲自拍偷拍| 91看黄片| 天天干天天燥| 精品一啪| 国产欧美日韩在线不卡第一页| 免费一级欧美片片线观看| 欧亚性爱视频免费看| 新婚人妻扶着粗大强行坐下| 亚洲欧美国产成人综合不卡| 日韩精品一区的| AV电影在线播放| 久久久久精| 91AV老熟女视频| 久久中日麻豆| 久久久久国产| 一本色道久久综合精品婷婷| 2020中文字幕在线观看| 日韩无码视频黄色| 亚洲免费在线探花| 亚洲成人免费中文字幕| 中国一区二区亚洲人妻| 国产精品女久久久久av爽| 日韩黄色电影网站| 免费夜夜爱黄色视频毛片| 日韩欧美成人大香蕉| 99青青草国产视频| www久久精品| 精品国产乱码久久久久久蜜臀| 天天看天天干| 国产精品宅男免费| 超碰97起碰| 欧美国产一区二区三区麻豆传媒 | 熟女视频久久| 精品久久99| 使劲用力艹少妇视频一区二区| 91网站18+| 欧美日韩午夜精品一区二区三区 | 国产性爱强奸乱伦大全| 无码 黑人一区二区三区| 色欲久久综合| 青青色综合| 超碰超碰超碰超碰的大鸡吧操黑丝袜| 久久日本熟妇熟色一区| 欧美性爱一级操| 欧美精品四区| 后入式999| 欧美性第一页| 超碰在线国产| 又摸又舔在线观看网站| 日本欧美不卡| 青娱乐亚洲自拍| 欧美日韩人人精品| 青青草导航在线视频| 久久久久白虎| 亚洲小电影免费涩涩成人在线高清| 午夜精品久久久久久久99蜜桃一| 禁止观看美女黄| 熟女高潮精品一区二区| 制度丝袜99| 猛交交| 怡红院亚洲怡春院av| 欧美日韩久久精品爱爱| 亚欧性爱无码| 欧美精品丝袜久久久中文字幕| 国产精品粉嫩福利在线| av无线看| 99久久久无码| 人妻丝袜日本| 韩国一级做A片免费的| 久久久久国产| 亚洲伊人成综合成人网| 日韩人妻少妇 一区二区三区| 蜜桃色院一区久久 | 91丰满| 2019精品国产无码成人| 91九九九馒头| 男人天堂新在线| 国产女人成人精品视频| 免费伦费视频在线观看| AV天天综合| 夜夜骑夜夜操| 91丨九色丨大屁股| 99999亚洲另类| h无码动漫在线观看| 亚洲日韩少妇一道本视频| 欧美亚洲自拍另类人妻| 91久热这里只有精品| 亚洲97资源| 99精品热| 久久久亚洲熟妇资源| 久久婷婷色| 国产噜噜噜噜噜久久久久久久久| 免费的黄片有限公司| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 好爽视频在线观看视频 | 极品欧美一区二区三区| 日本不卡高清免v欧美日韩在线观看| 日本综合色图| 91oumei| 啪啪综合网| 久久久中文| 亚欧美色| 嗯阿好爽好紧| 天久久久噜噜噜久久国产精品爽爽| 亚洲熟女中文字幕在线| 天天操天天7| 日韩在线观看字幕精品| 亚洲欧美一区二区不卡视频播放| 另类图片欧美激情综合| 亚洲综合另类欧美久久久| 亚洲 暴爽 AV人人爽日日碰| 丝袜性亚洲| 国产福利一区二| 亚洲色图a| 成人三一级一片aaa| 久久久久久久六六 | 亚洲欧美日韩中文播放| 色婷婷成人| 超碰在线人人射| 中文字日本乱码| 国产精品蜜臀久久久久无码AV| 久久久九精品| 性爱乱伦一区| 97天天操| 第四色亚洲色图| 国产精品一二三在线看| 亚洲熟女乱综合一区二区三区| 欧美日韩一区二区三区四区蜜桃| 青青草黑寡妇男人天堂| 日韩熟女无码| 97操在线| 亚欧精品久久久久久久久久久| 加勒比综合| 中文字日本乱码| 再深点灬舒服灬太大了添视频 | 另类av天堂| 在线无码操| 日韩欧视频| 欧美AB在线观看| 少妇无码av专区线| 中文字幕视频在线观看| 爆乳免费黄网站| 免费黄色A片| 欧美三四五区| 97超碰色五月| 秋霞影音一区二区三区| 久久久涩| 国内91熟女人妻丝袜天天精品视频在线 | 国产三级多多影院2022国产AA一级毛片无码 | 九九99精品视频在线观看| 国产精品操| 中文字幕精品乱码| 激情AV| 日韩精品中文字幕一| 放黄片放3级黄片没穿衣服| 成人十八禁日韩欧美一二三| 夜夜操二区| 上海一级黄片| 香蕉99秘 一区精品蜜桃臀| 九九精品无码专区免费| 精品中文一区二区| 欧亚不卡| 97自拍视频在线| 久草免费福利在线播放| 午夜男人的天堂| 人妻内射一区二区在线视频| 久久露脸国产老熟女| 欧美真人抽搐一进一出gif| baiduhicn.com。| 五月综合色| 一块操欧美| 精品国产91内射久久| 天天操福利视频综合网站| 91九色丨国产丨爆乳| 亚欧高清v| 国产亚洲欧美每日在线| 精品国产乱码久久久| 后入福利| 欧美色三级片91| 精品亚洲国产成人AV制服丝袜 | 中文字幕精品亚洲熟女| 久9久| 久久久久无码| 少妇一线天久久久久久| 思思在线免费视频| 欧美经典一区二区三区| 日韩无码极品| 少妇蹲下买菜露大唇0| 亚洲天堂区| 性色av婷婷久久一区二区点复制| www.av家庭乱伦| 91bbbbbb| 国产美女自拍视频| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 亚洲不卡AV在线| 国产无码精品高清| 青青免费在线视频一区| 日本黄大片在线观看视频| 韩国三级色呦呦| 99久久99九九99九九九| 男女性扦B| 综合情欲网| 超碰天天去日穴| 亚洲日本大香蕉1| 五月天日日操夜夜操| 日韩 女同 综合| 天美传媒国产原创中文字幕亚洲欧美另类| 亚洲最大AV网| 天天操夜夜嗨| 大黄片做爱的大的| 亚洲另类欧美精品| 亚洲日本激情| 久久综合亚洲色1080p| 热无码中文亚洲H一道本一区二区| 屁股久久久久久久久久| 蜜臀Av一区二区三区| 4虎在线观看| 96麻豆精品一区二区三区| 亚洲猛交| 亚洲色狠| 精品无码少妇| 欧美性暴力猛交| 中文字幕三四区| 无码不卡亚洲成?人片| 91在线精品一区二区三区| 91人妻人人澡人人爽人人精品| 综合久久97| 亚洲成人在线高清| 日本人妻伦在线中文字幕| 天天天干977| 欧美色图自拍| 99日视频在线免费| 久久青娱乐| 久一区久久蜜桃| 超碰95| 日本爽爽爽爽爽爽免费视频| 久久久久久久9| 国产精品高清2021在线| 黄色AAAAAAAAAAA大片| 乱论91| 欧洲熟妇xxXx欧美老妇裸体| 久久精品欧美一区蜜桃| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 久久久久9999妇女| 亚洲人码13| 好爽视频在线观看视频| av黄图片在线观看| 亚洲在线网站| www.色吧5.com| 色色色色网站| 日产国产精品中文久久婷婷| 日本免费一区二| 久久久成人免费av电影|