免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

二手車價(jià)格預(yù)測(cè)實(shí)戰(zhàn):從RMSLE評(píng)估到LightGBM特征工程與模型融合

二手車價(jià)格預(yù)測(cè)實(shí)戰(zhàn):從RMSLE評(píng)估到LightGBM特征工程與模型融合 簡(jiǎn)介面向大學(xué)生競(jìng)賽與課程設(shè)計(jì)的二手車價(jià)格預(yù)測(cè)優(yōu)勝方案源碼資料包源自阿里天池與Datawhale聯(lián)合舉辦的賽事包含獲獎(jiǎng)方案的完整項(xiàng)目說明。壓縮包共十五個(gè)文件以Python腳本為主體輔以md說明文檔、txt依賴清單與少量備份文件整體僅約610KB體量輕巧當(dāng)前已有42人瀏覽學(xué)習(xí)。資料完整覆蓋數(shù)據(jù)預(yù)處理、特征工程、模型訓(xùn)練與集成融合等競(jìng)賽核心環(huán)節(jié)包含基于梯度提升樹、神經(jīng)網(wǎng)絡(luò)及多模型加權(quán)融合等不同思路的建模代碼并附預(yù)測(cè)結(jié)果數(shù)據(jù)表能夠幫助使用者系統(tǒng)理解獲獎(jiǎng)方案的構(gòu)建脈絡(luò)并快速復(fù)現(xiàn)。適合計(jì)算機(jī)科學(xué)、應(yīng)用數(shù)學(xué)、電子信息工程等相關(guān)專業(yè)的學(xué)生或科研人員作為課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)或?qū)W術(shù)競(jìng)賽的參考范本其思路亦可遷移至房?jī)r(jià)、銷量等同類回歸預(yù)測(cè)問題。1. 二手車價(jià)格預(yù)測(cè)競(jìng)賽不是比模型是比誰更懂二手車的定價(jià)邏輯同一臺(tái)車有人估 9 萬有人報(bào) 11 萬差價(jià)背后不是玄學(xué)而是對(duì)車齡、里程和品牌殘值率的理解深度。某競(jìng)賽平臺(tái)與某開源學(xué)習(xí)社區(qū)聯(lián)合舉辦的二手車價(jià)格預(yù)測(cè)賽題要求根據(jù)車輛的多維信息預(yù)測(cè)成交價(jià)評(píng)估指標(biāo)直接對(duì)標(biāo)行業(yè)里的定價(jià)偏差。這類賽題的優(yōu)勝方案通常不是最深的神經(jīng)網(wǎng)絡(luò)而是把特征工程、交叉驗(yàn)證和多模型融合做到極致的一套樹模型方案。這篇筆記會(huì)從數(shù)據(jù)認(rèn)知、特征構(gòu)造、模型訓(xùn)練講到源碼組織完整拆解一套可復(fù)現(xiàn)的建模流程適合想入門結(jié)構(gòu)化數(shù)據(jù)競(jìng)賽的開發(fā)者也適合正在做二手車估值系統(tǒng)的工程師。我們先從賽題數(shù)據(jù)本身開始。2. 賽題拆解與數(shù)據(jù)認(rèn)知價(jià)格為什么是長尾分布以及我們要預(yù)測(cè)什么不少參賽者拿到數(shù)據(jù)后第一件事就是跑一個(gè) LightGBM但如果不先理解價(jià)格分布和評(píng)估指標(biāo)后續(xù)所有調(diào)參都是在黑匣子里瞎試。二手車價(jià)格預(yù)測(cè)本質(zhì)上是一個(gè)回歸問題但它的特殊之處在于目標(biāo)變量跨越一萬元到上百萬元誤差度量方式直接決定了你該優(yōu)化什么。2.1 任務(wù)定義與評(píng)估指標(biāo)你優(yōu)化的不是誤差而是對(duì)數(shù)誤差官方在賽題說明里通常會(huì)把評(píng)估指標(biāo)定義成 RMSLERoot Mean Squared Logarithmic Error也就是對(duì)真實(shí)價(jià)格和預(yù)測(cè)價(jià)格分別取對(duì)數(shù)后計(jì)算 RMSE。為什么要這樣設(shè)計(jì)因?yàn)橐惠v 3 萬的車少估 3 千和一輛 30 萬的車少估 3 千在絕對(duì)誤差上是相同的但在買賣雙方的心理感知上完全不同。取對(duì)數(shù)后3 萬車少估 3 千對(duì)應(yīng) log 誤差約 0.130 萬車少估 3 千對(duì)應(yīng) log 誤差約 0.01這樣就把“相對(duì)誤差”作為懲罰核心更貼近二手車定價(jià)業(yè)務(wù)。所以在訓(xùn)練之前我一般會(huì)先寫一個(gè) RMSLE 計(jì)算函數(shù)用作所有模型驗(yàn)證的統(tǒng)一標(biāo)尺。import numpy as np def rmsle(y_true, y_pred): # 將真實(shí)值和預(yù)測(cè)值都限制在非負(fù)范圍避免對(duì)負(fù)數(shù)取對(duì)數(shù) y_true np.maximum(y_true, 0) y_pred np.maximum(y_pred, 0) # 用 log1p 計(jì)算對(duì)數(shù)誤差的均方根等價(jià)于對(duì)價(jià)格取 log 后的 RMSE return np.sqrt(np.mean((np.log1p(y_true) - np.log1p(y_pred)) ** 2))這段代碼里有三個(gè)關(guān)鍵點(diǎn)np.maximum 是為了防止極端預(yù)測(cè)值出現(xiàn)負(fù)價(jià)格而做兜底np.log1p 是 log(x1)在價(jià)格接近 0 時(shí)比 log(x) 更穩(wěn)定整個(gè)函數(shù)返回的是一個(gè)標(biāo)量分?jǐn)?shù)分?jǐn)?shù)越低代表相對(duì)誤差越小。后續(xù)每一次交叉驗(yàn)證、特征篩選、融合權(quán)重調(diào)整我都用這個(gè)函數(shù)來打分不額外看別的指標(biāo)。明確了優(yōu)化目標(biāo)之后還需要知道訓(xùn)練數(shù)據(jù)長什么樣。這里要提醒一下RMSLE 和 RMSE 的數(shù)值有很大差異不要拿 RMSE 的標(biāo)準(zhǔn)去評(píng)判 RMSLE。2.2 探索性數(shù)據(jù)分析先看價(jià)格分布、缺失值和異常值再談建模EDA 看起來是體力活但往往決定了后續(xù)特征工程的走向。我用 pandas 加載訓(xùn)練集后第一件事是看 shape、字段類型和描述統(tǒng)計(jì)重點(diǎn)關(guān)注 price、mileage、reg_date 這三個(gè)字段的分布和缺失比例。常見的數(shù)據(jù)集里品牌、車系、上牌日期、行駛里程、排量、變速箱、燃料類型、過戶次數(shù)、是否事故車等字段都會(huì)出現(xiàn)其中上牌日期和過戶次數(shù)的缺失率往往不低這部分要先記錄下來。價(jià)格分布是典型的右偏分布少量豪華品牌的高價(jià)車占據(jù)長尾如果直接用原始價(jià)格做回歸模型會(huì)被那些幾十萬的車主導(dǎo)忽略了幾萬元區(qū)間的主流樣本。所以我會(huì)同時(shí)畫原始價(jià)格和 log 價(jià)格兩個(gè)直方圖確認(rèn)取對(duì)數(shù)后的分布是否接近正態(tài)。import pandas as pd import matplotlib.pyplot as plt train pd.read_csv(train.csv) print(train.shape) print(train.describe(percentiles[0.01, 0.25, 0.5, 0.75, 0.99])) plt.hist(train[price], bins100) plt.yscale(log) plt.show() train[log_price] np.log1p(train[price]) plt.hist(train[log_price], bins100) plt.show() missing train.isnull().sum() print(missing[missing 0])上面這段代碼里train.describe 的 percentiles 參數(shù)會(huì)額外給出 1% 和 99% 分位數(shù)方便快速發(fā)現(xiàn)極端價(jià)格plt.yscale(log) 讓長尾更加直觀最后打印的 missing 列表是后續(xù)填充策略的依據(jù)。如果看到 price 的最小值是 0 或者接近 0大概率是樣本異常或者數(shù)據(jù)采集錯(cuò)誤需要在特征工程階段處理。一個(gè)常見的數(shù)據(jù)集字段說明可以整理成下面這樣方便后續(xù)寫代碼時(shí)對(duì)照。字段名類型業(yè)務(wù)含義預(yù)處理關(guān)注點(diǎn)brand_idint品牌編碼是否需要做目標(biāo)編碼reg_datedatetime上牌日期計(jì)算車齡mileagefloat行駛里程萬公里缺失值、異常值powerint最大功率馬力缺失填充gearboxstr變速箱類型轉(zhuǎn)類別編碼fuel_typestr燃料類型轉(zhuǎn)類別編碼transfer_countfloat過戶次數(shù)缺失用 unknownpricefloat成交價(jià)萬元僅訓(xùn)練集有需取對(duì)數(shù)從這張表可以直觀看出真正需要手工處理的字段并沒有多少但這不代表建模簡(jiǎn)單。price 和 mileage 之間是明顯的非線性關(guān)系和 reg_date 之間存在車齡的單調(diào)衰減這些關(guān)系都靠特征工程去表達(dá)。2.3 從原始字段到有效特征車齡、里程、品牌殘值率的構(gòu)造邏輯原始字段很少能直接進(jìn)模型。日期字段必須轉(zhuǎn)成車齡里程數(shù)要考慮單位是否統(tǒng)一品牌這種高基數(shù)類別特征需要找到一種既能保留信息又不過擬合的編碼方式。車齡的構(gòu)造很簡(jiǎn)單用數(shù)據(jù)采集年份或者銷售年份減去上牌年份。為什么不用上牌日期本身因?yàn)闃淠P蜔o法理解“2017 年”這個(gè)數(shù)字的大小與價(jià)格衰減的關(guān)系但車齡“5 年”是一個(gè)連續(xù)變量模型可以學(xué)出“前 3 年貶值最快、5 年后貶值放緩”這種分段關(guān)系。里程也是一樣單純用“里程×車齡”不如“年均里程”更能反映車輛的使用強(qiáng)度。品牌殘值率是這類賽題最重要的特征。不同品牌的三年保值率可能從 45% 到 75% 不等這種差異比單一品牌 ID 更有解釋力。常見做法是統(tǒng)計(jì)每個(gè)品牌在訓(xùn)練集中的平均成交價(jià)作為該品牌的價(jià)格基準(zhǔn)。import pandas as pd import numpy as np train[reg_year] pd.to_datetime(train[reg_date]).dt.year train[reg_month] pd.to_datetime(train[reg_date]).dt.month train[car_age] train[sale_year] - train[reg_year] train[mileage] train[mileage].astype(float) train[mileage_per_year] train[mileage] / (train[car_age] 1) brand_mean_price train.groupby(brand_id)[price].transform(mean) train[brand_price_mean] brand_mean_pricecar_age 單位是年sale_year 一般來自數(shù)據(jù)集提供的銷售年份字段如果沒有可以考慮用數(shù)據(jù)發(fā)布時(shí)間。mileage_per_year 的計(jì)算里加了一個(gè) 1是為了避免新車車齡為 0 時(shí)出現(xiàn)除零錯(cuò)誤同時(shí)也平滑了分母。brand_price_mean 用 transform 一次性映射到每一行方便后續(xù)直接作為特征。這里要注意brand_price_mean 是用全量訓(xùn)練集統(tǒng)計(jì)出來的如果直接用于交叉驗(yàn)證會(huì)出現(xiàn)標(biāo)簽泄漏某條樣本的預(yù)測(cè)值里包含了它自己所在品牌的平均價(jià)格信息。正確做法是在每一折內(nèi)重新統(tǒng)計(jì)或者使用后面會(huì)講到的目標(biāo)編碼。我在這里先展示特征構(gòu)造的思路后面章節(jié)會(huì)給出防泄漏的實(shí)現(xiàn)。數(shù)據(jù)認(rèn)知到此為止接下來進(jìn)入特征工程和清洗環(huán)節(jié)。這個(gè)環(huán)節(jié)決定了你最終是站在排行榜中游還是上游。3. 特征工程與數(shù)據(jù)清洗決定名次的是特征不是調(diào)參特征工程是最能拉開排名差距的部分而它也是最容易被新手忽略的部分。很多參賽者拿著同一個(gè) LightGBM 參數(shù)跑完就去看排名卻不知道別人在特征上多花了兩倍時(shí)間。3.1 缺失值填充與異常價(jià)格處理避免把事故車當(dāng)正常車缺失值處理常常被一句 fillna(0) 帶過但二手車數(shù)據(jù)里的缺失往往帶有業(yè)務(wù)含義。比如過戶次數(shù)缺失可能是車商沒有錄入也可能是數(shù)據(jù)源本身沒有這項(xiàng)記錄如果直接用 0 填充模型會(huì)學(xué)到“缺失從未過戶”這種錯(cuò)誤信號(hào)。我習(xí)慣對(duì)類別型缺失單獨(dú)標(biāo)記一個(gè) unknown 類別讓樹模型自己去判斷缺失與目標(biāo)的關(guān)系。數(shù)值型字段的缺失要分情況排量、功率這類連續(xù)值往往和車型定位相關(guān)用中位數(shù)填充比均值更穩(wěn)因?yàn)橹形粩?shù)不受極端值影響。如果字段缺失率超過 40%我傾向于直接剔除而不是強(qiáng)行填充因?yàn)樘畛湟粋€(gè)半數(shù)以上都是缺失的字段等于是在制造噪聲。價(jià)格異常值是另一個(gè)坑。有些樣本成交價(jià)低到幾百元對(duì)應(yīng)的卻是正常描述的車況這大概率是數(shù)據(jù)采集錯(cuò)誤或者特殊交易情形。如果不處理模型會(huì)為了擬合這些離群點(diǎn)而扭曲整個(gè)分裂邏輯。同時(shí)還要留意價(jià)格和里程的聯(lián)合異常比如里程只有 1 萬公里但價(jià)格只有同款車的 20%可能是事故車如果數(shù)據(jù)集里帶有事故車標(biāo)記可以直接利用。train[transfer_count] train[transfer_count].fillna(unknown) train[displacement] train[displacement].fillna(train[displacement].median()) train train[(train[price] 0.5) (train[price] 100)] train train[~((train[mileage] 2) (train[price] train[price].quantile(0.1)))]第一行把過戶次數(shù)缺失變成獨(dú)立的 unknown 類別第二行用中位數(shù)填充排量避免均值被大排量車型拉高。后面的過濾條件我是按價(jià)格在 0.5 萬到 100 萬之間來篩具體閾值根據(jù)賽題的價(jià)格分位數(shù)調(diào)整最后一行過濾掉“低里程但極低價(jià)”的矛盾樣本這類樣本十有八九是異常數(shù)據(jù)。過濾比例如果超過訓(xùn)練集的 5%就要回頭檢查是否誤殺了真實(shí)的特價(jià)車。3.2 類別特征編碼與組合特征品牌、車系、變速箱如何進(jìn)入樹模型類別特征的編碼方式直接影響樹模型的表達(dá)能力。簡(jiǎn)單高基數(shù)類別比如車系如果直接用 LabelEncoder等于給車系賦予了一組任意整數(shù)編號(hào)樹模型會(huì)誤以為編號(hào)之間有大小關(guān)系。LightGBM 支持直讀類別特征但需要在 Dataset 中指定 feature_name 和 categorical_feature 參數(shù)否則也會(huì)自動(dòng)按數(shù)值處理。對(duì)于高基數(shù)類別我更推薦做目標(biāo)編碼用該類別下的價(jià)格均值作為特征。這樣既編碼了類別本身又編碼了該類別的價(jià)格水平。但目標(biāo)編碼必須防泄漏不能直接在全體訓(xùn)練集上計(jì)算均值否則驗(yàn)證分?jǐn)?shù)會(huì)虛高。from sklearn.model_selection import KFold def target_encoding(df, col, target, n_splits5, seed42): kf KFold(n_splitsn_splits, shuffleTrue, random_stateseed) df[te_ col] np.nan for tr_idx, va_idx in kf.split(df): tr df.iloc[tr_idx] va df.iloc[va_idx] mean_map tr.groupby(col)[target].mean() df.loc[df.index[va_idx], te_ col] va[col].map(mean_map) # 測(cè)試集中出現(xiàn)但訓(xùn)練集中沒出現(xiàn)過的類別用全局均值兜底 df[te_ col] df[te_ col].fillna(df[target].mean()) return df這個(gè)函數(shù)的邏輯是把數(shù)據(jù)分成 5 折對(duì)每一折都用其余 4 折的類別均值去填當(dāng)前折的對(duì)應(yīng)取值。這樣每一行的目標(biāo)編碼都只依賴不在這行本身的歷史信息從機(jī)制上避免了泄漏。n_splits 用 5 還是 10 取決于數(shù)據(jù)量數(shù)據(jù)量在幾萬條以上時(shí) 5 折足夠折數(shù)越多偏差越小但計(jì)算越慢。seed 固定后每次運(yùn)行結(jié)果可復(fù)現(xiàn)。除了編碼組合特征也有很大作用。我一般會(huì)構(gòu)造品牌和車齡的交互、品牌和里程的交互以及排量和變速箱的組合。品牌殘值率明顯不同而同一品牌下5 年 10 萬公里的車和 5 年 5 萬公里的車價(jià)格差可能超過 15%這種差異只有通過交互特征才能被樹模型捕捉到。train[brand_age] train[brand_id].astype(str) _ train[car_age].astype(str) train[brand_mileage_clip] train[brand_id].astype(str) _ pd.cut(train[mileage], 10).astype(str)brand_age 是一個(gè)字符串拼接得到的組合類別用來表達(dá)“某品牌在某車齡區(qū)間”的交叉效應(yīng)brand_mileage_clip 把里程分成 10 檔后再和品牌拼接相當(dāng)于把里程分箱和品牌做了交互。這種手工組合特征在樹模型里往往有奇效因?yàn)樗鼈儽葮淠P妥约赫业?split 更加貼近業(yè)務(wù)邏輯。3.3 價(jià)格對(duì)數(shù)變換與標(biāo)簽編碼讓回歸目標(biāo)更接近正態(tài)分布標(biāo)簽變換是最后一個(gè)關(guān)鍵動(dòng)作。前面看到價(jià)格是長尾分布直接把原始價(jià)格作為目標(biāo)模型在迭代中的梯度會(huì)被大價(jià)格樣本主宰導(dǎo)致小價(jià)格樣本擬合不足。取對(duì)數(shù)后目標(biāo)分布變得對(duì)稱梯度更均衡。在實(shí)現(xiàn)上我會(huì)把標(biāo)簽轉(zhuǎn)換和特征編碼放在同一個(gè)流水線里from sklearn.preprocessing import LabelEncoder le LabelEncoder() for col in [gearbox, fuel_type, color]: train[col] le.fit_transform(train[col].astype(str)) train[log_price] np.log1p(train[price]) feature_cols [car_age, mileage, power, displacement, gearbox, fuel_type, transfer_count, brand_price_mean, mileage_per_year, te_brand_id, te_model_id, brand_age] X train[feature_cols] y train[log_price]LabelEncoder 會(huì)把字符串類別轉(zhuǎn)成從 0 開始的整數(shù)對(duì)樹模型足夠用。注意要保證訓(xùn)練集和測(cè)試集使用同一個(gè) LabelEncoder 對(duì)象最好在訓(xùn)練完成后把訓(xùn)練數(shù)據(jù)中的類別到整數(shù)的映射保存下來推理時(shí)復(fù)用否則類別集合不同會(huì)導(dǎo)致編碼錯(cuò)位。log_price 是后續(xù)所有模型訓(xùn)練的標(biāo)簽?zāi)P皖A(yù)測(cè)出來的是 log 空間的數(shù)值最終提交前要執(zhí)行 np.expm1 還原成價(jià)格。特征工程做完后不要急著訓(xùn)模型先檢查一下特征之間是否有多重共線性或泄漏。比如 brand_price_mean 和 te_brand_id 都表達(dá)了品牌價(jià)格水平兩者高度相關(guān)樹模型雖然不怕共線性但冗余特征會(huì)讓重要性評(píng)估變得混亂。我的習(xí)慣是先跑一個(gè) LightGBM 看特征重要性把重要性很低且確實(shí)業(yè)務(wù)重復(fù)的特征刪掉這樣后續(xù)模型收斂更快。現(xiàn)在進(jìn)入模型訓(xùn)練和驗(yàn)證階段。這一章會(huì)告訴你為什么選 LightGBM、交叉驗(yàn)證怎么做才不失真、融合到底該加權(quán)還是 Stacking。4. 模型訓(xùn)練與交叉驗(yàn)證從單模型到融合優(yōu)勝方案是這樣煉成的特征做到位之后模型選擇變得相對(duì)簡(jiǎn)單。二手車價(jià)格預(yù)測(cè)這類表格任務(wù)樹模型是當(dāng)之無愧的主力而樹模型里我優(yōu)先選 LightGBM。4.1 基線模型選擇為什么優(yōu)先選 LightGBM 而不是線性回歸線性回歸的問題在于它假設(shè)特征和目標(biāo)之間是線性關(guān)系。二手車價(jià)格和里程的關(guān)系顯然不是線性的前 5 萬公里折舊快過了這個(gè)區(qū)間折舊放緩。要讓線性模型 work你需要手工構(gòu)造分箱、交互、多項(xiàng)式特征這個(gè)成本非常高。LightGBM 通過梯度提升和直方圖分裂自動(dòng)學(xué)習(xí)分段常數(shù)函數(shù)正好匹配這種非線性關(guān)系。另一個(gè)理由是工程效率。LightGBM 的內(nèi)存占用低訓(xùn)練速度快自帶處理缺失值的邏輯還支持類別特征直讀。在同樣的特征集上LightGBM 的基線 RMSLE 通常比線性回歸低 20% 到 40%這個(gè)差距不是靠調(diào)參能追回來的。我一般會(huì)先把下面這組參數(shù)作為起點(diǎn)而不是一上來就去搜索超參數(shù)。params { objective: regression, metric: rmse, learning_rate: 0.05, num_leaves: 31, max_depth: -1, feature_fraction: 0.8, bagging_fraction: 0.8, bagging_freq: 1, lambda_l2: 1.0, verbose: -1, seed: 42, }learning_rate 設(shè) 0.05 是比較穩(wěn)的起點(diǎn)如果想追求精度可以降到 0.02但需要增大迭代次數(shù)。num_leaves 是主要復(fù)雜度控制參數(shù)31 對(duì)應(yīng) 2^5-1適合中低維特征如果特征很多可以適當(dāng)加大到 63 或者 127但要注意過擬合。feature_fraction 和 bagging_fraction 都設(shè) 0.8相當(dāng)于每棵樹只用 80% 的特征和 80% 的樣本是兩種并行正則化。lambda_l2 加一點(diǎn) L2 正則讓權(quán)重不要走極端。這些參數(shù)不是固定的但作為基線已經(jīng)能跑出不錯(cuò)的分?jǐn)?shù)。4.2 K 折交叉驗(yàn)證與早停讓驗(yàn)證分?jǐn)?shù)真實(shí)反映線上表現(xiàn)交叉驗(yàn)證是評(píng)估模型的唯一可信標(biāo)尺。單次留出驗(yàn)證的波動(dòng)太大隨機(jī)選一批數(shù)據(jù)當(dāng)驗(yàn)證集運(yùn)氣好就高運(yùn)氣差就低。K 折交叉驗(yàn)證把訓(xùn)練集切成 K 份每份輪流當(dāng)驗(yàn)證最后取 K 次驗(yàn)證分?jǐn)?shù)的平均這樣能減少評(píng)估方差。在二手車價(jià)格賽題里數(shù)據(jù)通常不是嚴(yán)格的時(shí)間序列隨機(jī) K 折是常見做法。但如果數(shù)據(jù)里有明顯的采集日期字段而且價(jià)格隨時(shí)間有趨勢(shì)性變化就要改成按時(shí)間切分用較早的數(shù)據(jù)訓(xùn)練較晚的數(shù)據(jù)驗(yàn)證否則模型會(huì)偷看未來信息。import lightgbm as lgb from sklearn.model_selection import KFold from sklearn.metrics import mean_squared_error kf KFold(n_splits5, shuffleTrue, random_state42) oof np.zeros(len(X)) for fold, (tr_idx, va_idx) in enumerate(kf.split(X)): tr_X, tr_y X.iloc[tr_idx], y.iloc[tr_idx] va_X, va_y X.iloc[va_idx], y.iloc[va_idx] dtr lgb.Dataset(tr_X, labeltr_y) dva lgb.Dataset(va_X, labelva_y) model lgb.train( params, dtr, num_boost_round5000, valid_sets[dva], callbacks[lgb.early_stopping(100), lgb.log_evaluation(0)] ) oof[va_idx] model.predict(va_X, num_iterationmodel.best_iteration) score np.sqrt(mean_squared_error(y, oof)) print(fCV RMSLE: {score:.5f})這段代碼有幾個(gè)細(xì)節(jié)值得注意。dtr 和 dva 分屬訓(xùn)練部分和驗(yàn)證部分early_stopping 在驗(yàn)證集上連續(xù) 100 輪沒有提升時(shí)停止訓(xùn)練避免過擬合的同時(shí)不需要手動(dòng)指定迭代輪數(shù)。predict 時(shí)加上 num_iterationmodel.best_iteration確保使用的是早停時(shí)的最佳模型而不是最后一次迭代的模型。每折訓(xùn)練完都把對(duì)驗(yàn)證集的預(yù)測(cè)存進(jìn) oof最后統(tǒng)一計(jì)算 RMSLE這個(gè)分?jǐn)?shù)就是模型在隨機(jī) K 折下的真實(shí)估計(jì)。如果 CV 分?jǐn)?shù)和線上分?jǐn)?shù)差距很大優(yōu)先檢查是不是交叉驗(yàn)證切分方式與賽題數(shù)據(jù)的生成方式不一致。比如賽題數(shù)據(jù)本身是分多個(gè)批次的或者價(jià)格標(biāo)簽有時(shí)間聚集效應(yīng)這時(shí)候隨機(jī) K 折的 CV 分?jǐn)?shù)會(huì)虛高。4.3 多模型融合策略加權(quán)平均與 Stacking 的取舍單模型跑出合適的 CV 分?jǐn)?shù)后融合是往上走的常見手段。融合的基礎(chǔ)是多樣性不同模型看到的數(shù)據(jù)視角不同它們的錯(cuò)誤模式不同加權(quán)平均后誤差會(huì)互相抵消。常見的組合是 LightGBM、XGBoost、CatBoost也可以加入嶺回歸模型專門擬合線性部分。簡(jiǎn)單加權(quán)平均是最穩(wěn)的融合方式實(shí)現(xiàn)成本低不容易過擬合。權(quán)重不一定要精確搜索我會(huì)先看每個(gè)模型單獨(dú)的 CV 分?jǐn)?shù)分?jǐn)?shù)越好的給越大權(quán)重。一般權(quán)重控制在 0.5、0.3、0.2 這種粗糙的比例即可過度調(diào)權(quán)重反而是在擬合驗(yàn)證集。pred_lgb model_lgb.predict(test_X, num_iterationmodel_lgb.best_iteration) pred_xgb model_xgb.predict(test_X) pred_cat model_cat.predict(test_X) final_pred 0.5 * pred_lgb 0.3 * pred_xgb 0.2 * pred_cat final_price np.expm1(final_pred)這里三個(gè)模型都輸出 log 價(jià)格直接加權(quán)最后 expm1 還原。如果你手頭只有兩個(gè)模型權(quán)重可以改成 0.6/0.4。要注意的是融合前一定要確認(rèn)所有模型用的是同一份測(cè)試集特征并且在相同的 log 空間里輸出否則加權(quán)沒有意義。Stacking 比加權(quán)平均更強(qiáng)但風(fēng)險(xiǎn)也更大。做法是把每折 OOF 預(yù)測(cè)作為第二層的特征然后用一個(gè)簡(jiǎn)單模型比如 Ridge去擬合真實(shí)標(biāo)簽。Stacking 的問題在于第二層很容易過擬合尤其是訓(xùn)練數(shù)據(jù)量不足一萬條時(shí)融合收益會(huì)被過擬合吃掉。我的經(jīng)驗(yàn)是如果 OOF 分?jǐn)?shù)提升不超過 0.001就優(yōu)先用加權(quán)平均只有數(shù)據(jù)量超過 5 萬條或者單模型差異足夠大時(shí)才值得上 Stacking。下面是一個(gè)在實(shí)踐中被反復(fù)驗(yàn)證過的結(jié)論把交叉驗(yàn)證做扎實(shí)比調(diào) 100 組超參數(shù)都有效。CV 分?jǐn)?shù)和線上分?jǐn)?shù)的相關(guān)性是你判斷一切特征和模型改動(dòng)是否有效的唯一標(biāo)準(zhǔn)。只要 CV 和線上相關(guān)性好你的每次改進(jìn)才是真的改進(jìn)否則你只是在對(duì)著排行榜碰運(yùn)氣。5. 二手車價(jià)格預(yù)測(cè)的 5 個(gè)常見坑翻車現(xiàn)場(chǎng)與后悔藥前面講的都是“正確做法”但真正讓你排位靠后的往往是那些看起來無害的處理習(xí)慣。這 5 個(gè)坑我都在復(fù)現(xiàn)這類賽題時(shí)踩過或者見別人踩過每一個(gè)都配了后悔藥。5.1 標(biāo)簽泄漏把“新車指導(dǎo)價(jià)”直接當(dāng)特征現(xiàn)象交叉驗(yàn)證分?jǐn)?shù)極低單模型 RMSLE 能到 0.30 以內(nèi)自己都覺得要拿獎(jiǎng)了結(jié)果一提交線上分?jǐn)?shù)比 CV 高出一大截排名還不如隨機(jī)猜測(cè)。原因數(shù)據(jù)里通常會(huì)有“新車指導(dǎo)價(jià)”或者“廠商建議價(jià)”這類字段。它確實(shí)是很有用的價(jià)格錨點(diǎn)但它和目標(biāo)成交價(jià)高度相關(guān)甚至可以說指導(dǎo)價(jià)已經(jīng)包含了價(jià)格信息。當(dāng)你把指導(dǎo)價(jià)原封不動(dòng)作為特征時(shí)模型學(xué)到的是“成交價(jià)≈指導(dǎo)價(jià)×0.8”之類的映射可測(cè)試集里同樣有這個(gè)字段所以訓(xùn)練時(shí)看似正確但實(shí)際上模型并沒有學(xué)習(xí)到車況、里程這些真正的定價(jià)因素。一旦線上數(shù)據(jù)的指導(dǎo)價(jià)和成交價(jià)關(guān)系發(fā)生漂移立刻翻車。解決不要直接用指導(dǎo)價(jià)把它變成“貶值率”或“價(jià)格折扣”再作為特征貶值率成交價(jià)/指導(dǎo)價(jià)這樣目標(biāo)就和指導(dǎo)價(jià)解耦了。如果這個(gè)字段確實(shí)要保留也要在交叉驗(yàn)證時(shí)做敏感性分析看看去掉它對(duì) CV 分?jǐn)?shù)的影響。還有一種更保險(xiǎn)的做法凡是和目標(biāo)強(qiáng)相關(guān)且業(yè)務(wù)上屬于“結(jié)果”的字段全部剔除。在復(fù)現(xiàn)階段我還會(huì)單獨(dú)算一下指導(dǎo)價(jià)和成交價(jià)的斯皮爾曼相關(guān)系數(shù)如果超過 0.9就提醒自己一定要做變換。5.2 缺失值填充太粗暴用 0 填充類別特征現(xiàn)象模型不報(bào)錯(cuò)特征重要性排名很高CV 分?jǐn)?shù)卻上不去而且在某些細(xì)分品牌上的預(yù)測(cè)嚴(yán)重偏離。原因0 在類別編碼里成為了一個(gè)新類別但缺失并不等于“無”或“手動(dòng)擋”這類含義。以變速箱字段為例如果缺失的車輛其實(shí)是自動(dòng)擋你填 0 后模型可能把“0”分裂成一個(gè)單獨(dú)分支專門預(yù)測(cè)一個(gè)奇怪的中間價(jià)格。樹模型雖然能處理缺失但那是基于模型自己的分裂決策而不是你預(yù)先填充的武斷值。解決類別字段的缺失統(tǒng)一用一個(gè)單獨(dú)字符串 missing 填充然后再編碼數(shù)值字段用中位數(shù)而不是 0 填充如果是布爾型字段比如“是否有事故”缺失就填 unknown。這樣做的核心思想是讓模型自己判斷缺失模式與目標(biāo)的關(guān)系而不是強(qiáng)加一個(gè)業(yè)務(wù)含義。如果數(shù)據(jù)量大我還會(huì)跑兩個(gè)版本做對(duì)比一個(gè)用 0 填充一個(gè)用 missing 填充看 CV 分?jǐn)?shù)的差異是否明顯用數(shù)據(jù)說話而不是拍腦袋。5.3 交叉驗(yàn)證與線上不一致隨機(jī) K 折遇上時(shí)間漂移現(xiàn)象隨機(jī) 5 折 CV 分?jǐn)?shù)穩(wěn)定在 0.25線上分?jǐn)?shù)卻是 0.36而且每次提交都穩(wěn)定差 0.1 左右。原因賽題數(shù)據(jù)如果是按時(shí)間分批收集的汽車價(jià)格會(huì)受市場(chǎng)行情、新車降價(jià)、政策變化等多種因素影響。隨機(jī) K 折把所有樣本混在一起等于讓模型用后幾個(gè)月的數(shù)據(jù)去“訓(xùn)練”前幾個(gè)月的樣本或者反過來說驗(yàn)證集里的樣本在訓(xùn)練集里找到了來自未來的同類信息CV 分?jǐn)?shù)自然虛高。線上評(píng)估時(shí)用的是嚴(yán)格按時(shí)間劃分的新數(shù)據(jù)這種信息被切斷分?jǐn)?shù)就崩了。解決先確認(rèn)數(shù)據(jù)里有沒有時(shí)間戳比如上牌日期、采集日期。如果有按時(shí)間排序后對(duì)樣本編號(hào)取前 80% 做訓(xùn)練、后 20% 做驗(yàn)證。如果你用的是隨機(jī) K 折至少保證 KFold 的 shuffleTrue并且固定 seed方便排查。還有一個(gè)驗(yàn)證方法是把數(shù)據(jù)按月份分組畫一張“每個(gè)月平均成交價(jià)”的曲線看看是否存在明顯趨勢(shì)有趨勢(shì)就按時(shí)間切分沒有趨勢(shì)才可以用隨機(jī) K 折。這個(gè)檢查 10 分鐘就能做完卻能避免后面幾天的無效工作。5.4 對(duì)數(shù)變換的陷阱預(yù)測(cè)值取 exp 后系統(tǒng)性偏低現(xiàn)象RMSLE 看起來合格但把預(yù)測(cè)價(jià)格從 log 空間還原后發(fā)現(xiàn)平均預(yù)測(cè)值比真實(shí)平均值低 5% 到 10%整體偏移。原因在 log 空間用 MSE 做優(yōu)化等價(jià)于擬合目標(biāo)的對(duì)數(shù)幾何均值。當(dāng)你把對(duì)數(shù)均值變換回原始空間時(shí)得到的是幾何均值而真實(shí)數(shù)據(jù)的均值是算術(shù)均值兩者天然存在差距。尤其當(dāng)價(jià)格分布右偏時(shí)這個(gè)差距會(huì)更明顯。LightGBM 的 objectiveregression 直接作用于 log 目標(biāo)所以預(yù)測(cè)的 log 均值天然是偏低的。解決常見做法是做一個(gè)偏差校正系數(shù)。先用訓(xùn)練集每個(gè)測(cè)試樣本的預(yù)測(cè)值乘以一個(gè)系數(shù) cc 真實(shí)價(jià)格均值 / 預(yù)測(cè)價(jià)格均值這個(gè)系數(shù)用 OOF 預(yù)測(cè)計(jì)算得到然后套在測(cè)試集預(yù)測(cè)上。也可以嘗試在訓(xùn)練時(shí)把目標(biāo)換成原始價(jià)格配合 huber loss 等對(duì)異常值魯棒的損失函數(shù)看 CV 分?jǐn)?shù)的變化。我個(gè)人習(xí)慣用 OOF 校正系數(shù)簡(jiǎn)單有效。具體實(shí)現(xiàn)時(shí)我會(huì)把 OOF 預(yù)測(cè)的 exp 值和真實(shí)價(jià)格放在同一張表里算一個(gè)加權(quán)平均系數(shù)再把這個(gè)系數(shù)固化到 predict 腳本里避免每次提交時(shí)手動(dòng)改。5.5 融合時(shí)權(quán)重拍腦袋沒有考慮相關(guān)性現(xiàn)象兩個(gè)單模型 CV 分?jǐn)?shù)都是 0.26融合之后 CV 分?jǐn)?shù)反而變成 0.27還不如取最好的單模型。原因融合的前提是模型之間具有多樣性。如果你把同一個(gè) LightGBM 用不同的隨機(jī)種子跑了兩次這兩個(gè)模型的預(yù)測(cè)高度相關(guān)錯(cuò)誤模式幾乎一樣加權(quán)平均不僅不會(huì)糾錯(cuò)還可能把某些正確預(yù)測(cè)平均偏。如果再加一個(gè) CatBoost但它和 LightGBM 在特征使用上太接近融合收益也有限。解決在融合前先計(jì)算各模型 OOF 預(yù)測(cè)之間的皮爾遜相關(guān)系數(shù)。只保留相關(guān)系數(shù)低于 0.95 的模型進(jìn)入融合如果兩個(gè)模型相關(guān)系數(shù)超過 0.97說明它們幾乎等價(jià)留一個(gè)就行。權(quán)重不要純靠感覺可以用一個(gè)簡(jiǎn)單的網(wǎng)格搜索在驗(yàn)證集上遍歷權(quán)重組合選出 CV 分?jǐn)?shù)最低的組合但要在多折上確認(rèn)穩(wěn)定性防止過擬合驗(yàn)證集。我一般把權(quán)重搜索步長設(shè)為 0.1組合數(shù)量控制在 100 以內(nèi)跑完后的最優(yōu)權(quán)重如果和啟發(fā)式權(quán)重差距很大反而要警惕是不是驗(yàn)證集太小。6. 把項(xiàng)目說明寫成別人能復(fù)現(xiàn)的東西源碼結(jié)構(gòu)、運(yùn)行順序與你的第一個(gè)改進(jìn)點(diǎn)一個(gè)能拿獎(jiǎng)的方案源碼質(zhì)量和項(xiàng)目說明同樣重要。很多人跑完模型就丟在一堆 Untitled.ipynb 里等到想復(fù)現(xiàn)的時(shí)候發(fā)現(xiàn)忘了哪步在前哪步在后。我習(xí)慣把代碼拆成幾個(gè)獨(dú)立模塊每個(gè)模塊只干一件事然后通過 README 把整條流水線串起來。car_price_prediction/ ├── data/ │ ├── train.csv │ └── test.csv ├── src/ │ ├── preprocess.py │ ├── features.py │ ├── train.py │ └── predict.py ├── notebooks/ │ └── EDA.ipynb ├── README.md └── requirements.txtpreprocess.py 負(fù)責(zé)加載數(shù)據(jù)、缺失值填充、異常值過濾features.py 負(fù)責(zé)構(gòu)造車齡、目標(biāo)編碼、組合特征并輸出特征矩陣train.py 負(fù)責(zé) K 折訓(xùn)練和保存模型每個(gè)模型存成 pkl 或 txtpredict.py 讀取模型拼接測(cè)試集特征輸出提交格式。運(yùn)行順序就是 preprocess 到 features 到 train 再到 predict每一步都從上一部的輸出讀數(shù)據(jù)避免重復(fù)執(zhí)行。README 里我會(huì)寫清楚四件事賽題任務(wù)和評(píng)估指標(biāo)、依賴庫版本說明、一條命令從頭訓(xùn)練到預(yù)測(cè)的執(zhí)行方式、以及復(fù)現(xiàn)時(shí)需要注意的坑比如目標(biāo)編碼必須用訓(xùn)練集的映射。不需要寫成論文只要讓另一個(gè)工程師照著做能在半小時(shí)內(nèi)跑出和賽題排名對(duì)應(yīng)的分?jǐn)?shù)就算合格。如果你想在這個(gè)基礎(chǔ)上做第一個(gè)改進(jìn)我建議從驗(yàn)證策略開始把隨機(jī) K 折改成按時(shí)間切分或者加入 GroupKFold 按品牌分組往往比調(diào)模型參數(shù)更有效。我在最初做這類賽題時(shí)總把時(shí)間花在調(diào)參上后來發(fā)現(xiàn)把驗(yàn)證策略做扎實(shí)比調(diào) 100 組參數(shù)都管用。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久一操| 五月天开心婷婷久久| 欧美性色视频| 国产ava| w婷婷五月婷婷w| 伊人五月综合网| 丁香五月婷婷少妇| 婷婷综合97| 成人在线免费网址| 日韩在线观看亚洲| 2025中文在线视频字幕免费观看| 丁香花大香蕉婷婷综合| 五月天婷婷AV| 视频综合网| 五月丁香激情啪啪| 五月婷婷手机在线| 综合网啪啪| 婷婷五月天综合网| 狠狠色狠狠鲁| 久久加勒比| www.99婷婷| 激情丁香社区| 成人αV视频免费观看| 99在线视频精品| 五月天综合在线网| 99综合自拍| 激情综合久久| 91九色PORNY大屁股| www.五月天激情| 久久99久久久| 五月婷丁香| ss99热| 综合久久综合五月天婷婷| 99热国产这里只有精品| 亚洲成人免费在线| 日韩久久系列| 五月丁香六月色| 日本特黄aaaaa| 久久密臀婷婷| 99久久99九九99九九九| 99在线亚洲| 91色在线| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 色久影院| 久久人妻超碰一区| 欧美人人操| 99视频网址| 99操逼| 五月天开心色情网| 26uuu欧美日韩| 亚洲狠狠婷婷综合久久久| 99精品色| 综合久久五| 久草天堂| 玖玖婷婷五月| 大香蕉五月婷婷丁香| 久久久久亚洲AV无码网影音先锋| 99热在线免费| 日韩AV免费看| 99热在线里有精品| 九九热精品| 免费操超碰| 五月激情丁香六月狠狠干| 99热.com| 丁香五月激情啪啪综合| 五月丁香婷婷激情| 91久久久久久| 超碰免费在线| 久久资源网五月婷| 色婷婷五月影院| 爱爱色五月天| 激情婷婷六月天| 精品爆操| 精品人妻久久久久久| 欧美久热| 天天综合网、天天综合色 | 激情婷婷99| 第四色五月激情网| 99热只有这里有精品| 日本色色网站| 丁香五月六月| 久久影视婷婷五月| 99久久极情精品一区| 欧洲电影在线观看免费版英语版| 婷婷五月天激情在线观看 | 91一起艹| 婷婷久月| 91婷婷丁香| 国产精品国产| 激情综合网色五月| 六月婷婷八月丁香| 欧美超级视频97| 丁香五月激情在线| 色婷婷成人久久| 色噜综| 五月综合激情婷婷六月色窝| 99久热这里有精品| 亚洲日韩一页精品发布| 丁香五月大片| 1024国产在线| 五月天精品综合在线| 欧美韩国日本| 色色色综合视频| 九九碰九九爱97| 色天堂在线| 亚洲男女激情| 99riAV国产精品视频| 色五月六月| 日韩啪啪视品| 这里只有精品在线视频在线观看| 77777亚洲午夜久久| 欧美五月丁香| 欧美久久网| 婷婷五月天六月| 99热 精品在线| 99在线观看这里都是精品| 五月丁香啪啪| WWW色五月天| 9久久精品| a色色色色色| 99免费| www久久99| 99激情网| 丁香五月在线伊人| 久久九网| 五月天伊人| 中文字幕AV在线播放| 色五月婷婷基地| 激情五月婷婷丁香六月| 99热精品在线观看| 色五月婷婷啪啪五月| 九色综合网| SS丁香五月婷婷| 日韩在线视频9色| 亚洲色欲AAAAAA| 欧美综合五月天婷婷tin| 激情 婷婷 丁香五月天| 青青日韩| 91操人| 久热黄色| 丁香五月婷婷基地| 婷婷五月天在线综合| 天天艹| 天天爽夜夜操| 99色区| 色欲一区二区三区精品A片| 亚洲第一色色色| 少妇出轨做爰高潮A片| 伊人成人宗合网| 日本韩国视频在线观看社区免费的9| 秋霞少妇AV网站| 操精品9| 99热99在线| 亚洲精品白浆高清久久久久久| 伊人网色婷婷五月天| 超碰在线观看caop| 婷婷激情综合| 激情丁香五月天图片| 五月丁香成人| 日韩99无码| 五月婷婷日| 久久99热这里只有精品首| 韩日另类| 97干97色| 国产激情在线| 亚洲无AV在线中文字幕| 99亚洲精品| 欧日美女Va| 五月婷婷黄色网址| 日本99久久| 九九热这里只有精品12| 六月婷久久| 欧美成人精品A片免费一区99| 激情色视频| 另类精品视频在线观看| 97操碰人免费| 激情婷婷六月天| 日夜夜久久| 91久久| 五月婷婷六月激情| 九月婷婷综合| 噜噜视频| 日本激情五月天‘| 婷婷五月花免费视频在线| 色碰97| 色色色com| 婷婷十月激情综合网| 欧美激情综合| 激情第四色| 天天网站天天爽| 婷婷五月激情五月丁香五月| 性做爰A片免费视频A片直播| 99在线观看| 天天天天天久久久久久| 婷婷五月天 偷拍| 99精品97| 色情成人五月天| www.五月丁香| 情色婷婷五月天| 婷婷天天综合| 五月婷婷丁香深深爱| 五月情涩综合婷婷| 日本久久激情| 欧洲色| 26.uuu丁香五月婷婷| 内射丰满人妻| 蜘蛛女免费观看完整版高清电影 | 精品成人在线观看| 日韩无码性爱| 五月丁香久久激情综合| 99干日日干| 色狠狠综合| 五月婷婷六月综合| 综合色综合| se色99| 棕合影院色色| 久久婷婷五月天激情| 人妻第九页| 人人草人人舔| 九九热在线视频观看| 天天插天天射| 五月在线| 79精品视频在线观看,| 婷婷丁香五月天小说| 婷婷五月天免费小说| av在线免费网站 | 欧美超级视频97| 思思国产99| AV美美午夜| 婷婷久久综合| 日本色色图| 99无码黄色视频| 亚卅毛片| 日韩人妻无码精品| 99免费视频| 欧美VA在线| 婷婷爱婷婷| 激情丁香淫荡婷婷| 日本在线免费中文com.| 色的色综合| 婷婷丁香五月天哟啪| 九月综合| 激情久久肏屄视频| 91色九| 色婷婷色综合激情91| 色域五月丁香| 欧在线一区| 色级停停| 婷婷丁香五月天之开心少妇| 人人操人| 99免费偷拍视频| 激情综合网站| 色综合色色色色| 久久9热综合| 91fuliwang| 亚洲日比视频| 久久九九亚洲| 久久精品综合色| 97香蕉人人在线观看| 天天视频精品9| 丁香五月瑟瑟| 久久久A级视频| 99九九热视频免费| 99亚洲视频| 六月婷欧美| 啪啪操超碰| 欧美色图天堂网色| 色综合色综合网| 免费视频WWW在线观看网站| 综合色播| 嫩草AV久久伊人妇女超级A | 综合另类视频| 天天爽夜夜操| 伊人高清无码| 9色免费网| 婷婷伊人五月丁香天堂网| 中文网婷婷字幕婷| 综合啪啪| 桃色激情婷婷伊人网| 全国最新疫情| 思思热精品在线观看| 26UUU欧美| 五月天久久婷婷| 超碰猛烈的性猛交| 色婷婷丁香| 色色亚洲| 成人无码中文| 亚洲综合视频在线| 五月情综合| 婷婷五月天亚洲图片| 丁香五月天在线| 日韩综合久| 五月丁香啪啪网| 亚洲操操操| 中文中文在线| 色婷婷操逼网| 天天日天天插天天操| 五月丁香六月婷婷色| 色爱终和网| 狠狠狠狠狠狠| 成人AV在线电影| 狠狠干五月| 九九热99在线视频| 影音先锋91在线资源站| 99热久久日本| 天天搽天天射| 热久久99热欧美国产亚洲| 日本久久精品18| 精品色| 久久久国产精品黄毛片| www91精品| 在线五月婷婷小电影| RenRenSe在线视频网站| 激情五月婷| 五月丁香六月婷婷,婷| 这里只有精品视频看看| 香蕉婷婷色五月| 丁香六月啪| 婷婷字幕在线| 丁香 婷婷 激情 综合 五月| 欧美婷婷五月丁香| 色色亚洲| 久久婷婷夜| 色婷婷丁香网| 人人干人人看| 亚洲中文字幕在线观看| 久青操| 婷婷五月欧美综合| 99在线资源| 欧美槡BBBB槡BBB少妇| 色婷婷五月成人网| 激情亚洲五月| 67194成I人在线观看线路1| 北京熟妇搡BBBB搡BBBB| 综合色影院| 激情黄色五月天| 色婷婷精品视频| 欧美槡BBBB槡BBB少妇| 五月婷婷色白丝| 色.五月综合网| 99热线观看9| 丁香六月中文| 99这里有精品视频| www.99精品日操伊人乱碰在线| 久久色婷婷| 97韩国久久电影院| 91色婷婷综合久久中文字幕二区| 五月婷婷九九久久| 伊人婷婷五月| 婷婷五月天福利| 日本欧美999久久久三级片| www久久五月com| 丁香五月欧美午夜视频| 精品热青草| 性韩日色婷婷五月天激情啪啪XXX| 国产精品热搜丁香五月婷婷| 国产亚洲精品AAAA片APP| 天天肏天天肏天天肏| 丁香婷婷五月六月天| 91玖玖| 99操不停| 婷婷狠狠五月综合| 99热9| 91丨九色丨熟女| 激情五月天www| 狠狠色婷婷7777久| 婷婷色影院| 五月天啪啪| 国产精品第一国产精品| 久久五月综合| 99干日本| 天堂综合久久| 五月综合激情视频在线| 黄色av高清| 天天婷婷操| 九九草热在线观看| 五月丁香影院| 激情AV| 可以免费观看的AV| 久草嫩草在线观看| 99er久久| 丰滿爆乳一区二区三区| 99视频精品全部免费 在线| 六月丁丁香| 久久久五月五丁香| 丁香狠狠色婷婷| 亚洲av无码影院| 色婷婷九月综合| 无码AV久久久久久久久| 这里只有精品日韩精品| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | www,五月丁,com| 97自拍视频在线| 色婷网| 开心五月综合激情网| 777久久久| 五月天激情无码| 亚洲传媒在线观看| 久久久久人妻精选| 五月丁香激情综合网官网| 欧美婷婷五月天综合| 国产精品久久欧美久久一区| 婷婷激情五月天在线视频| 五月激情小说网| 另类亚洲2| 超碰在线人人| 激情五月丁香五月| 丁香五月婷婷色| 久久9久| 色久九| 色情五月婷| 色色综合激情| 色婷操逼| 99精品无码| 五月婷婷综合热| 99在线精品视频| 婷婷色五月婷婷姐妹| 丁香六月欧美| 久久国产性爱A V| 91狠狠色丁香婷婷综合久久| 爱草视频在线观看| 97操碰人免费| 玖玖热视频| 婷婷人妻激情| 亚韩在线视频| 色婷婷黄色网络| 五月丁香六月激情| 五月综合在线婷婷图片| 超碰婷婷五月| 99久视频| 九九热10| 五月丁香激情综合网| 婷婷欧美色| 最近中文字幕2019视频1| 丁香五月婷婷动漫视频| 99热爆在线| www五月天com| 97碰| 婷婷综合五月天| 激情小说五月天中文字幕| 搡BBBB搡BBB搡五十| 色噜噜在线| 中文字幕久久婷九女同| 五月玖玖| 高清激情av在线观看| 成人无码精品1区2区3区免费看| 开心五月丁香啪| 第四色色六月色综合| 欧美黄色韩日网| 色哟哟精品| 天天插天天插| 操一操| 久草丁香婷婷五月天婷| 超碰人人草| 99re这里只有精品国产99| AA片在线观看视频在线播放| 99精品小视频| 99精品久久久久久久婷婷| 另类视频五月天| 操日本人妻视频| 五月丁香A片| 成人电影在线免费试看| 国产色婷婷亚洲| 婷婷五月丁香99| 久久婷婷内射| 国产精品噜噜在线视频| 午夜丁香 婷婷| 国产亚洲在线| 国产精品激情五月天色婷婷| 婷婷激情性爱| 思思久久久婷婷| 丁香五月激情综合| 密臀久久| 婷婷丁香五月91| 久99热| 六月婷婷九月丁香亚洲综合| 99热9999| 岛国AAAV| 久久久婷| 激情99在线视频| 激情久久久久久| 亚洲欧洲中文日韩久久AV乱码| 情趣视频66| 色色精品色| 久久99草五月婷婷| 综合久| 日日夜夜天天综合| 国产精品色色666| 偷拍99在线视频观看| 久久99视频| 色综合久久久久久久久五月| 国产亚洲99久久精品| 综合久久五| 国产操碰| 日韩AV大全| 国产99美少妇| 国产婷婷综合| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 婷婷丁香色情| 亚洲免费成人电影AV| 伊人五月天在线| 五月婷婷丁香瑟瑟视频| 天天爱天天做天天舔| 婷婷丁香五月天大香蕉| 国产精产国品一二三在观看| 超碰99热| 亚洲情欲| 五月婷婷中文网| 99精品国产热久久91色欲| ztEJj| 99无码精品| 婷婷激情综合| 色综合色色色色色| 六月色日韩| 玖玖午夜视频| 中文字幕丰满乱孑伦无码专区 | 天天日天天操天天干| 开心五月婷婷激情| 婷婷激情人妻| www.激情五月天.com| 五月综合视频| 67194国产| 色噜噜狠狠色综合日日| 婷婷五月丁香久久| 五月丁香啪啪激情| 欧美天天爽| 女操碰| 狠狠色噜噜狠狠亚洲A∨| 少妇性BBB搡BBB爽爽爽电影| 99热在线观看免费精品| 亚洲无线视频| 亚洲va国产va天堂va综合va| 少妇人妻综合色6699| 日日干日日s| 六月丁香婷| 五月丁香婷草| 金品在线视频99| 九九99热精品| 色99最新网址| 狠狠婷婷综合| 一级黄在线| 天天插天天射| 日本色色色| 色九月婷婷| 一起草无码| 婷婷五月天色播| 婷婷五月综合激情免费视频| 亭亭五月天黑人2014| 日本在线视频手机播放五月婷| 久99热| 丁香五月影视| 99热在线精品播放| 日韩久久色| 任你操精品免费| 99久久.www| 色综合久久88色综合天天| 99色在线观看视频者| 亚洲精品V天堂中文字幕| 精品一二三区久久AAA片| 色婷婷视频| 99激情网| 婷婷五月天av| 日韩av干| 99在线观看免费精品视频| 婷婷丁香社区网| 久婷五月| 天天综合网、天天综合色 | 九九热手机在线视频| 2025天天爽天天摸| 热久久国产视频| 热久久视频99| 亚洲无码九九| 色五月婷婷影院| 婷婷十月激情综合网| 色亚洲欧洲| 亚洲视色| 开心激情站| 色天堂在线| 色噜噜狠狠色综合网| 亚洲婷婷91丁香| 99碰超| 激情综合五月丁香| www.久久爱| 99国产精品久久久久久久久久久| 97色婷婷| www.婷婷久久五月天| 丁香婷婷激情四射五月| 日本123区日韩欧美不卡在线看| 五月天色色色色色| 99色网站| av婷婷丁香 六月| 狠狠婷婷爱| 99这里只有精品在线观看| 丁香五月六月激情| 色久丁香五| 日本久久婷婷| 天天爱天天操| 六月婷婷毛片| 久久日韩婷婷五月| 超碰操网| 高清无码 一区 二区 三区| 开心五月婷婷激情网| 丁香婷婷十月| 香焦网五月天| 五月激情在线| 久久大国产香蕉| www.99免费视频| 9操在线| 综合激情网五月激情| 天天摸日日舔狠狠添婷婷婷 | 色婷婷基地在线| 激情亚洲色图片丁香综合| 亚艹艹| 97性视频| 婷婷97狠狠成人网站| 丁香八月综合激情| 99色在线| 丁香花五月天社区| 狠狠色婷婷777| 提提热五月天婷婷| 激情小说婷婷| 婷婷五月天色播| 超碰婷婷色| 97精品自拍视频| 99er这里只有精品| 欧美3AaAa大片| 99干视频| 91人久| 日韩免费99| renre人人操国产超碰在线| 丁香五月自拍| 丁香六月婷婷综合在线| 超碰成人电影| www婷婷色| 久久久久久久8| 激情五月婷婷欧美极品| 久久激情网| 色一情一乱一乱一区91Av| 久久电影五月天丁香电影| 182TV亚洲| 青青草护士中出内射-欧美电影在线天堂新版| 国产综合网在线| 激情综合网五月天| 一区二区乱视频码| 无码一区二区三区四区五区| 五月天亚洲综合网| 少妇AB又爽又紧无码网站| 大香蕉75线| 婷婷六月色丁香视频在线观看| 色婷婷五月天偷拍| 99热这里有精品| 9视频1在线| 午夜丁香六月婷| 久色| 欧美 色婷婷| 色色色欧美| 婷婷五月天狠狠| 91超碰人人操| 97操碰在线视频| 亚洲性爱99在线| 黄色三级日本| 狠狠色婷婷丁香五月| 五月综合激情久久| 大香线蕉伊人| 丁香六月激情四射| 性爱激情综合网| 久久xx| 久久婷婷视频| 婷婷丁香中文字幕| 激情综合自拍五月婷婷色五月| 夜夜爱网站| 91在线就要啪| 欧美天天爽| 少妇性按摩无码中文A片| 国产国产乱老熟女视频网站97| 亚洲黄色精品| 精品久久艹| 一级黄在线| 国产精品久久99| 免费播放片大片| 五月刺激丁香月综合| 操操操av| 五月丁香人妻| 99免费在线视频| 一本综合丁香日日狠狠色| 综合网色| 色五月丁香五月| 停停五月色宗合| 999热视频精品99免费在线| 亚洲 日韩色色| www.色99| 精品网站:999WWW| 五月天激情无码| 中国操逼99| www.国产亚洲69ty.久久久久久久久久久久| 91狠狠色色丁香婷婷综合久久| 91亚洲视频| 婷婷五月永远18免费久久久| 99视频这里有精品| 五月丁香综合激情| 丁香五月区| 激情五月天色婷婷综合| 色色网站免费| 色婷婷AV在线观看| 麻豆五月丁香婷婷| 色五月综合激情网| 久久成人综合五月天| 天天日天天爽| 五月婷婷色播视频| 这里只有精品视频| 99这里有精品视频3| 六月婷婷激情| 99久久久免费| 99黄色性生活| 亚洲九区| 亚州操人在线视频| 91久久婷婷| 91狠狠综合久久| 五月天综合久久| 99无码超碰| 亚洲另类婷婷综合| 亚洲综合九九| 婷婷色五月激情| 婷婷色婷婷| 久久久18| 欧美这里只有精品| 丁香五月天激情婷婷丁香六月 | 国内一级片| 99re这里只有精品首页| 九色综合网| SS丁香五月婷婷| 人人肏逼视频在线一区二区| 色婷婷五月天小说| 亚洲第二AV| 五月天播播| 亚洲秘 无码一区二区三区妃光/1| 激情综合五| 97久人人| 青草激情综合| 99热这里只有精品10| 色欲一区二区三区精品A片 | 婷婷导航| 777精品久无码人妻蜜桃| 婷婷综合五月激情| 久久婷婷五月丁香蜜桃网| 综合五月激情网| www.激情五月天.com| 天天日天天爽| 丁香婷婷网| 91Chinese在线| renrencaoav| 精品自拍97| www.狠狠操| 99啪啪视频| 亚洲无码99| 亚洲色vA| 高清国产AV| 九九香蕉网| 成人视频九九| 影音先锋 萱萱| 色播五月婷婷| 久久婷婷亚洲| 色五月激情五月| 色色色.COM| 91精品婷婷国产综合| 可以直接看的av| 婷婷色香六月综合激情| 色婷婷第四色| 久久婷五月婷| 五月天天天开心激情网| av一区免费看| 亲子乱AV一区二区三区下载| 男人天堂亚洲综合| 9|在线观看视频| 婷婷射图| 婷婷5月开心6月| 久久精品日| 五月婷久久| 思思久久96热在精品国产,| 婷婷六月天| 九九热AV| 九九视频在线免费视频| 久人操| 99激情| 91wwmm导航| 亚洲精品99| 综合欧美五月婷婷| 五月婷婷久久大香蕉| 99re思思精品视频在线观看| AV在线不卡网站| 国产亚洲色婷婷久久99精品91| 男人综合网| 9 1在线视频| 丁香六月综合激情| 夜夜夜夜夜骑撸| 久久丝丝热| 91精选国| 在线另类| 色日本网| 婷婷五月久久| 超碰在线观看9| 激情五月综合ì香亚洲| 一本色道久久88加勒比—| 色噜噜狠狠色综无码久久合欧美| 99免费热视频在线| 噜综合| 色色五月丁香婷婷综合| 激情综合亚洲| 激情综合五月婷婷丁香| 深爱激情小说五月婷婷| 久99热在线观看| 99年操人人爽| 婷婷天堂站| 日本 @ va 免费| 婷婷免费精品视频| 日韩综合久| 天堂伊人干| 婷婷综合激情| 丁香色五月天| 久久香蕉婷婷五月天| 色婷婷偷拍| 五月婷婷影视| 五月丁香亭亭| 综合色影院| 五月综合激情视频| 婷婷激情伍月网| 国内久久亭亭| 天天插操| 狠狠色综合网| 五月婷六月| 婷婷色激情五月天| 国产色色网址网站| 久久草中文日韩欧美| 操精品9| 超碰av在线| 999激情视频| 天天综合影院| 色亚洲婷婷| 91综合在线| 99久操| 五月色情婷婷| 天天躁日日躁狠狠躁日日躁2022年5月9日| 91久久久久久久久18| 五月天亭亭俺也| 日逼免费视频| 久久五月丁香伊人青草| 亚洲成人av在线| 91jiuseshunv| 青青草原亚洲久| 亚洲人妻av伦理| 国产一级片| 天天综合五月天| 五月天婷婷人妻| 婷婷六月中文字幕| 丁香香五月激情免费视频| 中文字幕在线免费| 亚洲秘 无码一区二区三区妃光/1| 99亚洲精品综合在线| 婷婷激情五月| 人人草人人舔| 天天干天天干天天干天天干天| 国产精品色婷婷久久久精品| 五月天色社区| 人人人人人人人草| 五月婷婷中文网| 日韩成人网站精品久久大全| 97操操操| 亚洲AV日韩无码| 色色五月天婷婷丁香| 五月天激情黄色网址| 任你搞免费视频观看| A片试看120分钟做受图片| 欧美日韩999| 夜夜骑夜夜操| 99综合网| 久久丁香五月天| 大香蕉久艹| 久久久精品AV| 色五月色图| 九九视屏| 丁香婷婷色九月| 五月天成人免费视频| 色五月综合| 色色色色色网| 深爱婷婷网| 五月天婷婷激情在线色图| 丁香六月色婷婷| 99热这里只有免费精品| 婷婷久久亚洲| 五月婷亚洲精品| 五月激情小说网| 国产精品久久..4399| 操操国产| AV在线观看网站| 超碰人人操人人干| 色婷婷电影网| 婷婷五月天中文字幕.| 亚洲视99| 综合xx网| 俺也去综合| 天天做天天爱天天玩夜夜爽| 噜噜噜噜噜色| 久机视频这只有精品| 日韩三级高清无码| 日91高清无玛| 日本三级韩三级99久久| 99热这里只有精品66| 色五月婷婷在线| 五月婷婷五月天| 国产做爰视频免费播放| 婷婷香蕉精品| 任我肏视频精品| 99热超| 91久久九久久九久久九久久九久久| 密乳Va| 欧美丁香五月97色| 玖玖视频福利| 人人舔人人色人人高潮| 激情五月com| 五月婷婷啪啪啪啪| 五月精品| 超碰碰碰碰| 五月丁香六月激情| 久久婷婷五月综合色丁香花| 欧美成综合在线观看| 性色av大香综合| 99热伊人| 99热20| 五月六月激情| 这里有精品| 精品乱码久久久久| 内射在线CHINESE| 国产99久9在线+|+传媒| 色综合香蕉| 久久xx| 性爱电影科技贸易有限公司| 日本操逼九九九九58日本操逼| 囯产精品久久欠久久久久久九大| 成人视频一区| 亚洲精品V天堂中文字幕| 中文字幕操比影片| 97热久久| 国产VA播放| 99re这里只有精品在线观看| 欧洲色色| 狠狠干狠狠干| 色九月综合| 五月丁香六月激情综合| aaaaaa片| 婷婷五月成人系列| 99精品热视频| 香蕉人妻AV久久久久天天| 九月婷婷在线观看| 激情综合无码| 天天干肏夜夜| 久久婷婷综合国产| 99热色精品| 高清 码 免费看片短视频| 色婷婷香蕉| 99精品在线下载| 免费播放片大片| 狠狠干狠狠干| 第1影院之五月婷婷| 91狠狠色丁香婷婷综合久久| 六月婷婷亚洲| 九九AV在线| 久久久天堂国产精品女人| 碰人人操| 色综合天天网| 激情噜噜噜| 中文字幕成人| 激情婷婷综合网| 欧美激情五月天婷婷| www.深爱激情| 天天日夜夜爽| 综合 蜜月 婷婷| 开心久久xxx色| 8区视频在线| 色五月天综合| 人人九色| 婷婷丁香综合网| 丁香五月综合婷婷| 99热久草| 婷婷深爱五月天| 超碰人人操人人9| 狠狠夜夜五月丁香| 五月激情在线| 青青久在线视频免费观看| 欧美日韩成人一区二区| 99热这里只有精品23| 日本啪啪天堂| 伊人大香蕉爱聚| WWW,激情五月天,COM| 99免费| 精品影院| 99在线热| 五月丁香人妻| 思思久久99热只有频精品66| 五月丁香综合在线| 丁香六月激情蜜桃| 人人干人人看| 成人色图情色成人网 www.5b5b5bcom 五月天 | 久色视频在线| 99色在线| 亚洲欧洲美女在线观| 99热欧美在线观看| 五月婷婷六月丁香玖玖玫瑰91| 刘玥av在线| 丁香婷婷激情综合五月激情| 综合婷婷都市激情| www99精品日韩| 激情五月天啪啪视频| 夜夜躁婷婷AV| 色综啪啪| 婷婷丁香五另类网站| 九九碰九九爱97超碰| 婷婷五月天AV在| 日撸夜撸日操| 天天日天天爽| www.99在线| www.夜夜操| 午夜激情四射影院| 69午夜成人影片| 亚洲国产精品VA在线看黑人| 成人中文字幕在线| 79精品视频| 国产精品久久久爽爽爽麻豆色哟哟| 91精品国产91久久久久青草| 五月欧美丁香在线观看| 波多婷婷久久| 五月的丁香六月的婷婷| 丁香五月社区| 无码啪啪| 久久综合中文字幕| 色99无码| cc精品国产性传播| 五月丁香久久综合91| 婷婷五月天激情偷拍| 天天干天天操天天拍| 国产婷婷五月天| 色婷婷的五月天| 任你干aa| 激情都市五月天| 成人国产欧美大片一区| 99视频色在线观看| 色综合久久久久| 中文字幕,综合,91| 天天天天操| 激情淫乱男女| 热99AV网站| 狠狠色综合久久久久| 色性日本| 国内自拍97在线| 九九热视频免费的| 91人久| 五月婷婷六月爱| 99精品视频在线观看| 激情综合五月激情XXXX| 色色a| 五月天激情小说| 任你爽视频| 五月婷婷影院| 久久综合性| 色五月成人| 久热九九| 亚洲婷婷在线播放十月| 婷婷金品综合视频| 91蜜桃婷婷狠狠久久综合9色| 久久曰曰| 免费黄色片子| 天天色色天天| AV伊人青草丁香六月| 婷婷99狠狠| 婷婷丁香色五月天久久88| 婷婷色中文字幕| 亚洲性爱干干| 激情五月婷婷| 狠狠狠狠狠狠狠狠草| 中文字幕无码AV| 丁香激激情网| 热婷婷av| 深爱综合网| 五月婷婷|欧美| 91偷拍视频| 2015好吊操| 色婷婷成人| 五月丁香婷婷六月天| www.wuyuetian啪啪| 天天做天天爱综合| 久热9热| 久热69| www.丁香五月| 中文字幕 码精品视频网站| 婷婷丁香五月天综合网| 99热热热99精品婷婷| 亚洲五月天婷婷在线| 久久99日本精品视频免费观看| 综合色色色| 色婷婷免费视频| 99爱在线免费视频| 99r这里只有精品哦| 色视频色综合91| 五月激情婷婷六月| 91在线日本| 中文字幕在线日亚州9| 丁香五月综合色婷婷| 精品欧美一区二区三区久久久| 五月婷婷无码专区| www.婷婷五月天,com| 99热| 入口五月婷婷六月香| 午夜成人片400| 这里只有精品免费观看网占| 懂色av蜜臀av粉嫩av永陈冠希| 五月天综合激情网| 丁香六月婷婷缴情欧美| 亚洲狠狠色丁香婷婷综合久久| 深爱激情综合网| 丁香六月婷婷综合激情欧美| 五月丁香婷婷色| 。久久久久久久久久久久久久人妻 | 91se在线视频| 九九热九九热精品| 香蕉久日夜| 日本欧美成人片AAAA| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | 99.色| 婷婷色五月大香蕉在线观看| 六月激情婷婷| 免费观看的AV| 99人人操人人操人人精| 99久久99九九99九九九| 天天舔日日肏夜夜爽| www.五月天婷婷| 亚洲欧美婷婷五月色综合| 伊人深爱综合| 亚洲综合婷婷五月| 少妇2做爰HD韩国电影| 久久人妻久久| 99自拍视频| 久久婷婷五月天丁香| 亚洲人妻Av| 桃色激情婷婷伊人网| ady狠狠入| 婷婷五月天电影网| 亚洲丁香五月| 久久视频婷婷视频| 91无码一区人妻A片蜜| 国产97色在线 | 日韩| 蜜乳.comcom| 超碰在线观看成人视| 丁香婷婷啪啪| 久久久久丁香婷婷五月天| 99色色爰| 色亭亭丁香五月天| 九九九九这里只有精品| 99re在线这里只有精品视频首页| 日本高清久| 色婷婷呢狠禁久禁| 99人碰碰碰| 天天操夜夜爽| 九九热AV| 免费V片在线| 99九九久久| 婷婷情爱五月天6| 五月丁香视频在线观看| 亚洲成人av在线播放| 人妻丰满精品一区二区A片| 国产又色又爽又黄又免费| 99精品视频推荐| 久久香蕉网| 五月综合激情| 人妻熟妇六区| 亲子乱AV一区二区三区下载| 超碰天堂网| 夜夜骑夜夜撸| 色五月丁香婷婷在线观看| 色五月涩涩婷婷蜜桃| 天天操精品| 国产69久久久欧美黑人A片| 中文字幕丰满人妻无码专区| 五月丁香成人版| 男女99免费视频| 9久9久9久女女女九九九一九| 五月天激情综合| 婷婷五月婷婷| 黄页大全十八禁| 热99国产精品| 91丨九色熟女丨首页| 精品9197碰| 丁香六月在线| 精品人妻一区二区三区四区不卡在| 嫩草综合网| 色情五月丁香| 大香蕉人人网| 中字幕视频在线永久在线观看免费 | 色综合九九色综合88| 婷婷丁香五月综合激情小说| 精品婷婷五| 开心五月婷婷婷美女| 婷婷中文综合网| 亚洲爆乳无码精品AAA片蜜桃| 丁香五月区| 丁香桃色网| 九九色99| 婷婷色五月综合丁香| 色婷婷狠| 美女伊人久久| 七月丁香婷婷 色色| 日本一级一级一级一级| www久久99| 色婷婷五月天| 激情五月天开心总和网| 99视频在线观看欧| 亚洲五月丁香综合网| 婷婷99中文字幕| 一区三区视频有限公司| 26uuu成人网| 麻豆AV一区二区三区| 欧美成人精品A片免费一区99| WWW.99视频| 这里只有精品1| 五月婷婷丁香av| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 亚洲乱码日产精品BD| www.99热视频| 久久久91| 九九综合| 日日色综合| 天天干天天射色综合| 婷婷夜夜夜夜| 激情合网婷婷| 99这里只有免费的小视频在线观看| 久久激情五月| 99激情网| 9l视频自拍9l视频自拍九色学生| 日本在线wwww| 日本天堂网站99| 在线观看日韩12345区| 亚洲成人在线在线| 国产肥白大熟妇BBBB视频| 久久久网站| 丁香婷婷激情| 青青草五月天| 久久久精品人妻| 五月天激情国产综合婷婷| 亚洲啪啪啪啪| 色色丁香婷婷| 婷婷色网站| 丁香婷婷网| 九九香蕉网| 色九九综合| 99操| 免费视频99| 97综合在线| 九九色综合| 777精品久无码人妻蜜桃| 成人无码精品1区2区3区免费看| 99久久9| 五月丁香六月激情| 99国产精品久久久久久久久久久| 中字幕视频在线永久在线观看免费 | 九九精品在线网| 天天日日夜夜爽。| 天天操夜夜橾| 中文av网站|