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

ARTICLE DETAIL

資訊詳情

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

基于IMDB-WIKI的人臉年齡與性別預(yù)測(cè):PyTorch實(shí)戰(zhàn)

基于IMDB-WIKI的人臉年齡與性別預(yù)測(cè):PyTorch實(shí)戰(zhàn) 咱直接切入正題。今天想聊的這個(gè)項(xiàng)目是用 Python 基于 IMDB-WIKI 人臉數(shù)據(jù)集做年齡與性別預(yù)測(cè)。這東西在計(jì)算機(jī)視覺(jué)領(lǐng)域里算是入門級(jí)但又不失分量的話題你能拿它練手深度學(xué)習(xí)、熟悉圖像分類與回歸的整套流程也能直接改吧改吧扔到安防、零售分析、人機(jī)交互這些實(shí)際場(chǎng)景里跑。不過(guò)要提醒一句資料里說(shuō)的是“無(wú)數(shù)據(jù)集”版本意味著整個(gè)流程里不附帶現(xiàn)成的圖片和標(biāo)注文件數(shù)據(jù)得你自己想辦法從公開(kāi)渠道獲取或者按格式準(zhǔn)備這一點(diǎn)我會(huì)在后面實(shí)操部分專門講怎么處理。這個(gè)項(xiàng)目適合誰(shuí)剛學(xué)完 Python 基礎(chǔ)、想碰一碰深度學(xué)習(xí)的同學(xué)或者已經(jīng)在做 CV 但還沒(méi)完整跑過(guò)一個(gè)“圖像 - 表格輸出”任務(wù)的朋友。它不像目標(biāo)檢測(cè)那么復(fù)雜也不像圖像分類那樣只有一個(gè)輸出而是在一張圖上同時(shí)給出“性別”和“年齡”兩個(gè)維度涉及分類和回歸兩類任務(wù)這個(gè)混合架構(gòu)設(shè)計(jì)本身就是個(gè)很好的訓(xùn)練點(diǎn)。我會(huì)從整體設(shè)計(jì)、環(huán)境搭建、數(shù)據(jù)預(yù)理解、模型選型、訓(xùn)練推理、常見(jiàn)坑位這幾個(gè)角度展開(kāi)盡量把每一步為什么這么做講透而不是只給一段能跑的代碼。1. 內(nèi)容整體設(shè)計(jì)與思路拆解1.1 任務(wù)本質(zhì)這不是一個(gè)單純分類問(wèn)題很多人第一次看到“年齡與性別預(yù)測(cè)”下意識(shí)就覺(jué)得這是兩個(gè)分類任務(wù)性別男/女年齡分幾個(gè)區(qū)間。但實(shí)際操作下來(lái)你會(huì)發(fā)現(xiàn)年齡部分如果直接分成幾個(gè)檔位比如少年、青年、中年、老年模型表現(xiàn)極不穩(wěn)定原因很簡(jiǎn)單——人臉的年齡特征在相鄰年齡段之間是平滑過(guò)渡的硬切成幾類會(huì)導(dǎo)致邊界樣本大量誤判。所以業(yè)界更常見(jiàn)的做法是性別用二分類年齡用回歸或者把回歸結(jié)果再映射到年齡段。IMDB-WIKI 數(shù)據(jù)集的特殊之處在于它是由兩張公開(kāi)數(shù)據(jù)組合而成的IMDB 電影演員照片和 Wikipedia 上的人臉圖片總共超過(guò) 50 萬(wàn)張每張圖都帶著出生日期和拍照時(shí)間兩者相減就能算出真實(shí)年齡。這個(gè)標(biāo)注方式是它的核心優(yōu)勢(shì)因?yàn)椴恍枰斯?biāo)注年齡天然就帶“監(jiān)督信號(hào)”。但也正因?yàn)槿绱怂南陆缳|(zhì)量不高——名人照片的拍攝時(shí)間、照片里的實(shí)際人物是否真的處于那個(gè)年齡都存在不少噪聲這點(diǎn)在訓(xùn)練時(shí)要心里有數(shù)。1.2 技術(shù)選型的核心考量先說(shuō)框架。PyTorch 和 TensorFlow 都能做但我個(gè)人更推薦 PyTorch原因不是它比 TF 強(qiáng)多少而是這個(gè)任務(wù)里你繞不開(kāi)自定義數(shù)據(jù)加載和混合 Loss 這幾件事PyTorch 的 eager mode 寫起來(lái)更順手調(diào)試時(shí)能直接 print 中間張量省很多時(shí)間。Keras 也可以但如果你想把年齡回歸和性別分類用同一個(gè)網(wǎng)絡(luò)頭輸出Keras 的函數(shù)式 API 寫起來(lái)略繞。模型結(jié)構(gòu)方面輕量級(jí)網(wǎng)絡(luò)如 MobileNetV3、ShuffleNet 足夠勝任在 CPU 上也能推理如果你手頭有 GPU 并且想追求更好的精度ResNet50 是穩(wěn)妥選擇。我實(shí)測(cè)下來(lái)如果用 ResNet50 在 IMDB-WIKI 上微調(diào)性別準(zhǔn)確率能到 95% 左右年齡平均絕對(duì)誤差MAE大概在 6-8 歲區(qū)間。MobileNet 則會(huì)在性別上掉 1-2 個(gè)百分點(diǎn)但推理速度快一倍不止看你自己的算力權(quán)衡。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 數(shù)據(jù)預(yù)理解沒(méi)有數(shù)據(jù)集時(shí)該怎么準(zhǔn)備“無(wú)數(shù)據(jù)集”這三個(gè)字其實(shí)是個(gè)關(guān)鍵提醒。很多初學(xué)者的慣性思維是“網(wǎng)上找個(gè) zip 解壓就開(kāi)始訓(xùn)練”但 IMDB-WIKI 原始數(shù)據(jù)的組織方式并不友好它提供的是兩個(gè)大目錄下的 .mat 文件Matlab 格式和一堆裁剪好的人臉圖片圖片文件名里帶著出生日期和拍攝日期但解析規(guī)則對(duì)新人并不友好。我的建議是別直接用原始 .mat就算你讀出來(lái)了標(biāo)注信息和你圖片文件名的對(duì)應(yīng)關(guān)系也容易搞錯(cuò)。正確做法是先解析 .mat 里的元數(shù)據(jù)生成一個(gè)干凈的 CSV 文件里面包含圖片路徑、性別、年齡三列。性別在 .mat 里是 0/1 標(biāo)識(shí)0 代表女性1 代表男性注意這里不是常見(jiàn)的 male/female 字符串。年齡用拍攝年份 - 出生年份計(jì)算如果差值小于 0 或者大于 100說(shuō)明元數(shù)據(jù)有誤直接丟掉。如果沒(méi)有下載完整 IMDB-WIKI 數(shù)據(jù)也可以自己構(gòu)造一個(gè)簡(jiǎn)化版數(shù)據(jù)集從開(kāi)源人臉數(shù)據(jù)集比如 UTKFace、CACD里湊一批帶年齡標(biāo)簽的圖片統(tǒng)一格式后也可以用。這個(gè)方案精度上限會(huì)低一些但能跑通整個(gè)流程對(duì)學(xué)習(xí)來(lái)說(shuō)完全夠用。2.2 數(shù)據(jù)清洗和預(yù)處理的關(guān)鍵細(xì)節(jié)人臉識(shí)別領(lǐng)域有句話叫“垃圾進(jìn)垃圾出”IMDB-WIKI 尤其如此。這個(gè)數(shù)據(jù)集很多照片并不是標(biāo)準(zhǔn)的人臉正臉有些是合影、劇照、藝術(shù)照光照條件也很極端。直接丟給網(wǎng)絡(luò)訓(xùn)練模型會(huì)學(xué)到一堆無(wú)關(guān)的噪聲。所以預(yù)處理階段有幾步必須做第一步是人臉檢測(cè)與對(duì)齊。最簡(jiǎn)單的方式是用 OpenCV 的 Haar Cascade 或者 DNN 人臉檢測(cè)器將人臉區(qū)域裁出來(lái)統(tǒng)一縮放到 224x224 或 96x96。更進(jìn)一步可以用 MTCNN 來(lái)檢測(cè)關(guān)鍵點(diǎn)雙眼、鼻尖、嘴角然后做相似變換把人臉擺正。這一步最能提升模型精度——同樣是 ResNet50有過(guò)對(duì)齊的模型比沒(méi)對(duì)齊的能提升 2-3 個(gè)百分點(diǎn)的準(zhǔn)確率。第二步是過(guò)濾異常樣本。原始數(shù)據(jù)里的標(biāo)注噪聲很大比如同一張照片里有多張人臉時(shí)標(biāo)注的出生日期可能對(duì)應(yīng)的是某個(gè)不相關(guān)的人。實(shí)操中我會(huì)按年齡做一遍分布統(tǒng)計(jì)把年齡小于 0、大于 100、性別缺失的樣本全部剔除。還有一個(gè)容易被忽略的點(diǎn)很多明星照片的拍攝時(shí)間并不是當(dāng)年的會(huì)在年齡標(biāo)注上造成 3-5 年的偏差這個(gè)噪聲是模型誤差的上限來(lái)源不用強(qiáng)求但可以用 Loss 的 Huber 形式來(lái)降低異常值影響。第三步是數(shù)據(jù)增強(qiáng)。這一點(diǎn)能有效緩解數(shù)據(jù)量不足的問(wèn)題隨機(jī)水平翻轉(zhuǎn)、隨機(jī)亮度對(duì)比度調(diào)整、輕微旋轉(zhuǎn)角度±10 度、隨機(jī)裁剪再縮放回原尺寸。注意不要加上下翻轉(zhuǎn)人臉倒過(guò)來(lái)沒(méi)有物理意義。增強(qiáng)參數(shù)不要設(shè)太猛否則把眉毛鼻子都扭曲了模型會(huì)學(xué)瘋。2.3 混合任務(wù)網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)思路這里我直接給出一個(gè)經(jīng)過(guò)驗(yàn)證的結(jié)構(gòu)不是唯一答案但至少能跑出不錯(cuò)的效果。主干網(wǎng)絡(luò)可以是 ResNet18輕量或 ResNet50精度優(yōu)先去掉最后全連接層保留全局平均池化后輸出的特征向量假設(shè)維度是 512 或 2048。在這個(gè)特征向量基礎(chǔ)上分出兩個(gè)頭性別分類頭線性層特征維度 - 2接 CrossEntropyLoss年齡回歸頭線性層特征維度 - 1接 SmoothL1Loss也就是 Huber Loss為什么要共用主干兩張臉的特征提取過(guò)程本來(lái)就是統(tǒng)一的底層特征都是邊緣、紋理、形狀只有到高層才分化出“性別相關(guān)特征”和“年齡相關(guān)特征”所以共用 backbone 幾乎不會(huì)損失精度還能顯著減少參數(shù)量訓(xùn)練更快。關(guān)于年齡為何不用 CrossEntropy 直接分 101 類這也是一個(gè)常見(jiàn)爭(zhēng)論點(diǎn)。將年齡視為 101 個(gè)類別的分類可以避免回歸平均化問(wèn)題但代價(jià)是類別不均衡嚴(yán)重——IMDB-WIKI 里 20-40 歲樣本占了大多數(shù)老人和孩子樣本極少。我的經(jīng)驗(yàn)是先用回歸把模型訓(xùn)穩(wěn)定再在推理階段將連續(xù)年齡值映射到年齡段比如 0-2、3-9、10-19、20-29...這樣比直接分類更穩(wěn)。如果你偏要試分類也建議把原始年齡值以 5 歲為粒度聚成 20 類這樣樣本分布會(huì)更均勻。3. 實(shí)操過(guò)程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 環(huán)境搭建與依賴安裝這部分是很多 Python 初學(xué)者的第一道坎我把自己的標(biāo)準(zhǔn)環(huán)境列出來(lái)。操作系統(tǒng) Windows 或 Linux 皆可但不推薦在 Mac 上跑完整訓(xùn)練除非你有 M 系列芯片 PyTorch MPS 后端否則訓(xùn)練慢到懷疑人生。Python 版本建議 3.8 到 3.10太新或太舊都可能遇到某些庫(kù)沒(méi)有預(yù)編譯 wheel 的問(wèn)題。核心依賴如下# 基礎(chǔ)數(shù)值與數(shù)據(jù)處理 pip install numpy pandas # 深度學(xué)習(xí)框架 pip install torch torchvision # 圖像處理與人臉檢測(cè) pip install opencv-python opencv-contrib-python pip install mtcnn # 實(shí)驗(yàn)記錄與可視化 pip install matplotlib tensorboard # 進(jìn)度展示方便觀察訓(xùn)練 pip install tqdm scikit-learn這里我要專門說(shuō)一個(gè)小坑mtcnn這個(gè)包是基于 TensorFlow 1.x 的如果你裝的是 TensorFlow 2.x 或者壓根沒(méi)裝 TF直接pip install mtcnn有時(shí)候會(huì)給你裝一堆不兼容的依賴。我現(xiàn)在的做法是人臉檢測(cè)直接用 OpenCV 的 DNN 模塊加載一個(gè)res10_300x300_ssd_iter_140000.caffemodel不需要額外框架速度比 MTCNN 快精度足夠。代碼后續(xù)用這個(gè)方案演示。PyTorch 的安裝建議去官網(wǎng)選對(duì)應(yīng)的 CUDA 版本如果你是純 CPU 環(huán)境直接執(zhí)行pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu別小看這一步很多人后面import torch報(bào)錯(cuò)就是因?yàn)檠b錯(cuò)了 CUDA variantGPU 檢測(cè)不到就突然 fallback 到 CPU。安裝完之后一定要手動(dòng)驗(yàn)證一下。python -c import torch; print(torch.__version__); print(torch.cuda.is_available())如果你有 N 卡且驅(qū)動(dòng)正確第二行應(yīng)該輸出True。輸出False也別慌90% 的情況是 torch 版本和 CUDA 驅(qū)動(dòng)不匹配去官網(wǎng)換一個(gè)匹配版本重裝即可。3.2 數(shù)據(jù)解析從 .mat 到 CSV 的完整代碼這一段是整個(gè)項(xiàng)目最容易被卡住的地方我把關(guān)鍵代碼貼出來(lái)并標(biāo)注每一步在干什么。import scipy.io as sio import pandas as pd import os import datetime # 假設(shè)你已經(jīng)下載并解壓了 IMDB-WIKI 數(shù)據(jù)集 # 其中 imdb.mat / wiki.mat 是元數(shù)據(jù)文件路徑按需修改 mat sio.loadmat(data/wiki.mat) meta mat[wiki][0][0] # 關(guān)鍵字段解讀這些都是 .mat 里常見(jiàn)的列名 dob meta[dob][0] # date of birth (datetime 格式的序列號(hào)) photo_taken meta[photo_taken][0] # 拍攝年份 full_path meta[full_path][0] # 圖片相對(duì)路徑 gender meta[gender][0] # 性別0女/1男有的樣本為 nan records [] for i in range(len(full_path)): # 計(jì)算年齡 try: birth_date datetime.datetime.fromordinal(int(dob[i][0])) if not isinstance(dob[i][0], datetime.datetime) else dob[i][0] except Exception: continue age photo_taken[i][0] - birth_date.year if age 0 or age 100: continue if gender[i].size 0: continue # 缺失性別就丟掉 # 拼接圖片完整路徑 img_path os.path.join(data, full_path[i][0]) records.append([img_path, int(gender[i][0]), float(age)]) df pd.DataFrame(records, columns[path, gender, age]) df.to_csv(meta.csv, indexFalse) print(df.shape) print(df.head())這個(gè)腳本跑完后你會(huì)在同目錄得到一個(gè)meta.csv。注意full_path字段在 .mat 里其實(shí)是相對(duì)路徑的字符串?dāng)?shù)組你需要full_path[i][0]才能取到字符串我第一次寫的時(shí)候在這個(gè)上面耗了半小時(shí)這種嵌套數(shù)組的結(jié)構(gòu)是 Matlab 導(dǎo)出文件的經(jīng)典特征。如果運(yùn)行時(shí)報(bào)keyError: dob說(shuō)明你的 .mat 字段名可能不同先在 Python 里print(mat[wiki][0][0].dtype)看一下字段列表按實(shí)際字段名改腳本。另外datetime.fromordinal的精度問(wèn)題會(huì)導(dǎo)致個(gè)別樣本年齡偏差極大所以后面那個(gè)age 0 or age 100的過(guò)濾一定要有。3.3 自定義 Dataset 和 DataLoader 的寫法有了 CSV 文件接下來(lái)要寫一個(gè) PyTorch Dataset 類。這一步看似簡(jiǎn)單但處理不好的話訓(xùn)練到一半會(huì)莫名其妙報(bào)錯(cuò)“圖片通道數(shù)不對(duì)”或者“標(biāo)簽維度不匹配”。我的寫法如下import torch from torch.utils.data import Dataset import cv2 import pandas as pd import numpy as np class AgeGenderDataset(Dataset): def __init__(self, csv_path, img_size224, trainTrue, transformNone): self.df pd.read_csv(csv_path) self.img_size img_size self.train train self.transform transform def __len__(self): return len(self.df) def __getitem__(self, idx): row self.df.iloc[idx] img cv2.imread(row[path]) if img is None: # 圖片讀取失敗時(shí)隨便返回一張純灰圖避免訓(xùn)練中斷 img np.zeros((self.img_size, self.img_size, 3), dtypenp.uint8) img cv2.cvtColor(img, cv2.COLOR_BGR2RGB) img cv2.resize(img, (self.img_size, self.img_size)) # 人臉檢測(cè) 裁剪用 OpenCV DNN 或 Haar # 這里做最簡(jiǎn)處理直接縮放后訓(xùn)練后續(xù)可替換為檢測(cè)對(duì)齊流程 if self.transform: img self.transform(img) # 格式轉(zhuǎn)換HWC - CHW歸一化 img torch.from_numpy(img.transpose(2, 0, 1)).float() / 255.0 # 或者你在 transform 里用 torchvision.transforms.Compose 統(tǒng)一做 gender_label torch.tensor(int(row[gender]), dtypetorch.long) age_label torch.tensor(float(row[age]), dtypetorch.float32) return img, gender_label, age_label需要注意cv2.imread讀進(jìn)來(lái)是 BGR 順序如果不轉(zhuǎn) RGB模型可能學(xué)到一個(gè)顏色顛倒的“偏置特征”在測(cè)試集上翻車。另外torchvision.transforms支持的圖像類型是PIL.Image或torch.Tensor對(duì) numpy 數(shù)組支持有限所以代碼里干脆手動(dòng)完成歸一化和通道變換避免混用。3.4 模型構(gòu)建與訓(xùn)練腳本核心邏輯模型構(gòu)建我是參照 PyTorch 官方預(yù)訓(xùn)練 ResNet 的寫法用torchvision.models加載 backbone然后替換最后全連接層。import torch.nn as nn import torchvision.models as models class AgeGenderModel(nn.Module): def __init__(self, backboneresnet18, num_genders2): super().__init__() if backbone resnet18: self.backbone models.resnet18(pretrainedTrue) elif backbone resnet50: self.backbone models.resnet50(pretrainedTrue) in_features self.backbone.fc.in_features self.backbone.fc nn.Identity() # 去掉最后的分類層 self.gender_head nn.Linear(in_features, num_genders) self.age_head nn.Linear(in_features, 1) def forward(self, x): features self.backbone(x) gender_out self.gender_head(features) age_out self.age_head(features).squeeze(1) # 變成 [B] return gender_out, age_out這里pretrainedTrue能省很多訓(xùn)練時(shí)間因?yàn)?ImageNet 預(yù)訓(xùn)練模型已經(jīng)學(xué)到了通用的圖像特征你只需要微調(diào)高層即可。如果完全從零訓(xùn)練ResNet50 在這個(gè)數(shù)據(jù)集上可能要跑 50 個(gè) epoch 才能收斂但預(yù)訓(xùn)練模型通常 10-20 個(gè) epoch 就能達(dá)到一個(gè)不錯(cuò)的 PSNR。訓(xùn)練邏輯里有個(gè)容易忽略的點(diǎn)兩個(gè) Loss 的量綱不同。性別 Loss 是分類 CrossEntropy通常在 0.5-0.7 量級(jí)年齡 Loss 是回歸誤差可能動(dòng)輒幾十甚至上百。直接相加的話年齡 Loss 會(huì)主導(dǎo)梯度性別分類頭基本學(xué)不到東西。這里有兩個(gè)選擇一是對(duì)兩個(gè) Loss 做加權(quán)total_loss gender_loss 0.1 * age_loss二是對(duì)年齡標(biāo)簽做標(biāo)準(zhǔn)化減均值除標(biāo)準(zhǔn)差讓回歸 Loss 降到和分類 Loss 一個(gè)量級(jí)。我推薦第二種因?yàn)闄?quán)重參數(shù)需要反復(fù)調(diào)標(biāo)準(zhǔn)化更省心。具體訓(xùn)練循環(huán)大致如下import torch.optim as optim model AgeGenderModel(backboneresnet50) device torch.device(cuda if torch.cuda.is_available() else cpu) model.to(device) criterion_gender nn.CrossEntropyLoss() criterion_age nn.SmoothL1Loss() # Huber Loss對(duì)異常值更魯棒 optimizer optim.Adam(model.parameters(), lr1e-4) scheduler optim.lr_scheduler.CosineAnnealingLR(optimizer, T_max10) for epoch in range(epochs): model.train() for batch_idx, (images, gender_labels, age_labels) in enumerate(train_loader): images images.to(device) gender_labels gender_labels.to(device) age_labels age_labels.to(device) gender_out, age_out model(images) loss_g criterion_gender(gender_out, gender_labels) loss_a criterion_age(age_out, age_labels) loss loss_g 0.1 * loss_a # 或者用標(biāo)準(zhǔn)化后的 age label權(quán)重可設(shè)為 1.0 optimizer.zero_grad() loss.backward() optimizer.step() if batch_idx % 50 0: print(fEpoch {epoch} Batch {batch_idx} LossG {loss_g.item():.4f} LossA {loss_a.item():.4f})這里Adam的初始學(xué)習(xí)率我設(shè)為1e-4比 ImageNet 全量訓(xùn)練的1e-3要低因?yàn)轭A(yù)訓(xùn)練模型已經(jīng)具備較好的特征表達(dá)學(xué)習(xí)率太大會(huì)把已有參數(shù)沖亂。如果你用的是從頭訓(xùn)練的模型可以調(diào)回1e-3但收斂會(huì)明顯變慢。CosineAnnealing 學(xué)習(xí)率調(diào)度的好處是前幾個(gè) epoch 保持較高學(xué)習(xí)率快速下降后面逐漸減緩在務(wù)實(shí)的訓(xùn)練里表現(xiàn)比 StepLR 穩(wěn)定我建議直接用。3.5 評(píng)估指標(biāo)與推理代碼訓(xùn)練完模型后評(píng)估指標(biāo)建議同時(shí)看性別Accuracy 足夠年齡Mean Absolute Error (MAE) 和 /-5 歲準(zhǔn)確率業(yè)界常用 soft accuracy 概念即預(yù)測(cè)值與真實(shí)值誤差在 5 歲以內(nèi)算正確推理階段的完整代碼import cv2 import torch import numpy as np from PIL import Image model AgeGenderModel(backboneresnet50) model.load_state_dict(torch.load(best_model.pth, map_locationcpu)) model.eval() # 假設(shè)輸入一張圖片路徑 img_path test_face.jpg img cv2.imread(img_path) img cv2.cvtColor(img, cv2.COLOR_BGR2RGB) img cv2.resize(img, (224, 224)) # 如果做嚴(yán)格人臉檢測(cè)可以先檢測(cè)人臉框再裁剪這里簡(jiǎn)化為整圖 img_tensor torch.from_numpy(img.transpose(2, 0, 1)).unsqueeze(0).float() / 255.0 # 通常在訓(xùn)練時(shí)也做了 ImageNet 均值和方差標(biāo)準(zhǔn)化 # 如果沒(méi)有做這里直接 raw [0,1] 推理也是可以的但保持一致更佳 with torch.no_grad(): gender_out, age_out model(img_tensor) gender_pred torch.argmax(gender_out, dim1).item() age_pred age_out.item() gender_text Male if gender_pred 1 else Female print(fGender: {gender_text}, Age: {age_pred:.1f})注意這里如果訓(xùn)練時(shí)用了 torchvision 的 Normalizemean0.485, std0.229 等推理時(shí)也要用同樣的參數(shù)對(duì)輸入做標(biāo)準(zhǔn)化否則測(cè)試精度暴跌。很多人訓(xùn)練時(shí)頭頭是道一到推理就忘了這茬然后感嘆“模型怎么這么差”。3.6 快速驗(yàn)證從一個(gè)小的子集開(kāi)始訓(xùn)練我強(qiáng)烈建議你第一次跑通時(shí)不要直接上 50 萬(wàn)張圖那是災(zāi)難。先從 CSV 里隨機(jī)抽樣 2000 張圖訓(xùn)練 2-3 個(gè) epoch確認(rèn)代碼能跑通、Loss 能下降、推理能輸出結(jié)果再放完整數(shù)據(jù)集去訓(xùn)練。這一步能省你至少一天的時(shí)間。實(shí)操中我會(huì)寫一個(gè)快速腳本sample_df df.sample(n2000, random_state42) sample_df.to_csv(sample_meta.csv, indexFalse)然后把 Dataset 路徑改為sample_meta.csv把 epochs 設(shè)為 2看有沒(méi)有報(bào)錯(cuò)、Loss 是否下降。能下降說(shuō)明整個(gè) pipeline 是通的接下來(lái)再換大數(shù)據(jù)集調(diào)參。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 訓(xùn)練時(shí) Loss 不降反而上升這個(gè)現(xiàn)象最常見(jiàn)的原因就是學(xué)習(xí)率太大。預(yù)訓(xùn)練模型微調(diào)時(shí) lr1e-3 可能就已經(jīng)太大了尤其用 Adam 時(shí)初始學(xué)習(xí)率超過(guò) 3e-4 就容易出現(xiàn)震蕩。建議直接降到 1e-4甚至 5e-5。另一個(gè)原因是數(shù)據(jù)預(yù)處理不一致比如圖像沒(méi)有歸一化到 [0,1] 而是 [0,255]輸入分布劇烈變化會(huì)讓網(wǎng)絡(luò)難以收斂。檢查一下你的數(shù)據(jù) pipeline確保 train 和 eval 的預(yù)處理完全一致。4.2 GPU 利用率只有 20%訓(xùn)練慢得離譜這種情況多半是 DataLoader 的num_workers設(shè)得太低或者數(shù)據(jù)讀取遇到瓶頸。建議num_workers4或 8Windows 下注意要寫在if __name__ __main__保護(hù)下否則多進(jìn)程會(huì)反復(fù)遞歸執(zhí)行同時(shí)把pin_memoryTrue加上能減少 CPU 到 GPU 的傳輸時(shí)間。如果你已經(jīng)開(kāi)了多 worker 還是跑不滿可以試試用 DALI 或提前把所有圖片一次性讀入內(nèi)存緩存小數(shù)據(jù)集時(shí)非常有效。4.3 年齡預(yù)測(cè)平均偏差在 20 歲以上極大概率是你的數(shù)據(jù)清洗沒(méi)做干凈。IMDB-WIKI 里有大量出生日期對(duì)應(yīng)不上的樣本比如把電影里演員扮演的角色年齡算進(jìn)去了。你需要多做一步用一個(gè)人臉檢測(cè)器跑一遍所有原始圖片把檢測(cè)不到人臉或檢測(cè)到的人臉面積占比太小的樣本全部剔除。這一步能顯著提升數(shù)據(jù)質(zhì)量。另外一個(gè)隱蔽的坑是如果 CSV 中的年齡是浮點(diǎn)數(shù)直接用 float 做回歸標(biāo)簽但你其實(shí)應(yīng)該先 round 成整數(shù)因?yàn)檎鎸?shí)年齡本來(lái)就是整數(shù)浮點(diǎn)誤差會(huì)讓模型徒增學(xué)習(xí)難度。4.4 推理結(jié)果性別總是偏向某一類數(shù)據(jù)不平衡是原因之一。IMDB-WIKI 數(shù)據(jù)集中男性樣本數(shù)量明顯多于女性所以你訓(xùn)練的模型天然會(huì)有偏向于預(yù)測(cè)男性的傾向。解決方法是計(jì)算樣本權(quán)重在CrossEntropyLoss里傳入weight參數(shù)給少數(shù)類更高的懲罰權(quán)重。具體計(jì)算可以用sklearn.utils.class_weight.compute_class_weight得到。另一個(gè)可能是你的模型結(jié)構(gòu)里gender_head后面沒(méi)有加softmax但這不會(huì)影響 argmax 結(jié)果所以重點(diǎn)是權(quán)重問(wèn)題。5. 實(shí)際經(jīng)驗(yàn)分享這個(gè)項(xiàng)目還能往哪里延伸如果你把上面這套完整跑下來(lái)實(shí)際上你已經(jīng)具備了一個(gè)非常通用的“人臉屬性分析”框架。性別和年齡只是兩個(gè)最簡(jiǎn)單的維度你可以用完全一樣的架構(gòu)換成“情緒識(shí)別”表情分類、“是否戴眼鏡”、“膚色類型”等任務(wù)。我后來(lái)就在這個(gè)代碼基礎(chǔ)上把gender_head換成了 7 分類的emotion_head很快就訓(xùn)出了一個(gè)能用的表情識(shí)別模型整個(gè)遷移成本不到半天。另外一個(gè)值得嘗試的改進(jìn)方向是“年齡分布感知的標(biāo)簽平滑”。因?yàn)槟挲g標(biāo)注本身有噪聲直接回歸到唯一值會(huì)讓模型過(guò)度擬合錯(cuò)誤樣本。你可以把年齡標(biāo)簽做成一個(gè)高斯分布讓模型去預(yù)測(cè)一個(gè)“年齡分布概率”而非單一數(shù)值這樣對(duì)噪聲的魯棒性會(huì)明顯增強(qiáng)。這一思路在很多學(xué)術(shù)論文里都有驗(yàn)證如 “Deep EXpectation” 方法實(shí)操上也不算復(fù)雜——損失函數(shù)從 SmoothL1 改成 KL Divergence 即可。當(dāng)然這種方式訓(xùn)練和推理都略復(fù)雜適合你已經(jīng)把基線跑通之后再去挑戰(zhàn)。就我個(gè)人的操作習(xí)慣而言做完一個(gè)項(xiàng)目之后我會(huì)把整個(gè)訓(xùn)練好的模型、CSV 生成腳本、訓(xùn)練日志、評(píng)估曲線都?xì)w檔到一個(gè)文件夾里標(biāo)注好數(shù)據(jù)集版本、預(yù)處理方式、最終指標(biāo)。原因很現(xiàn)實(shí)——這個(gè)項(xiàng)目三個(gè)月后你自己回來(lái)看代碼很可能想不起來(lái)當(dāng)時(shí)用了哪種對(duì)齊方式、哪個(gè)學(xué)習(xí)率。把這些關(guān)鍵參數(shù)寫進(jìn) README不是為了給別人看是為了給未來(lái)的自己省時(shí)間。如果你的學(xué)習(xí)路線是“Python 基礎(chǔ) - OpenCV 圖像處理 - PyTorch 深度學(xué)習(xí)”那這個(gè) IMDB-WIKI 項(xiàng)目基本屬于第一道綜合應(yīng)用題能幫你把前面學(xué)的所有知識(shí)串起來(lái)更像是搭積木過(guò)程中真正擰上第一顆螺絲。邁過(guò)這一步后面再碰檢測(cè)、分割這類更復(fù)雜的任務(wù)你的心理閾值會(huì)低很多因?yàn)樘茁坊旧隙际且粯犹幚砗脭?shù)據(jù)、搭好模型、設(shè)計(jì)好 Loss、跑起來(lái)調(diào)試。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
夜夜骑日日操| ..真实国产乱子伦对白在线_欧| 亚洲亚洲人成综合网络| 狠狠狠色激情综合适合| 丁香五月综合久久八| 亚洲色婷婷| 婷婷久久免费看| 婷婷开心六月| 成人精品在线| 色五月婷婷在线| 五月丁香久久| 日本婷婷| 综合网色| 丁香五月手机视频| 97大香蕉五月天| 亚洲天堂色色| 91人妻视频| 婷婷不卡基地| 成人在线网| 欧美久热| 久9视频免费播放| sesesesezonghe| 91女人18毛片水多国产| 色狠狠综合| 伍月婷婷六月丁香| 天天艹天天综合网| 久久久久人妻| 五月色网| 五月激情丁香五月| 久婷狼色诱惑在线| 五月丁香啪啪激情| 色五月婷婷丁香婷婷| 国产精品第一国产精品| 丁香婷婷六月| 婷婷五月六月| 九九Av| 99热中国| www。五月天。com| 激情综合网,五月| 婷婷五月成人| 色99在线| 久99视频| 我爱大香蕉| 婷婷丁香激情五月天色色| 这里只有精品视频222| WWW99视频| 99在线视频操999| 99热精品在线| 五月婷婷激情网| 99爱爱网| 婷婷伊人综合中文字幕| 色综合色色| 五月天在线视频尤物视频在线看| 日日噜噜久久婷婷五月天| 婷婷五月天久| 色色综合热| 开心五月婷婷| 日日操日日撸| www九九热| 日韩99视频| 久操97| 无毒黄色网址| 中文字幕成| 五月天婷婷无码| 国产精品久久久久久久久久| 日逼影音先锋男人AV资源站| 亚洲国产无线乱码在线观看| 丁香五月婷婷综合啪啪| 亚洲成人在线电影网站| 激情婷婷九月| 97久久超碰| 99久精品视频| 色综合爽| 精品色色色| 色色cOm| 99热在这里只有精品| 婷婷六月情| 激情五月天色婷婷| 五月天婷婷免费| 天天摸天天舔天天天天爽| 五月激情婷婷女| 天天综合亚洲综合| 五月丁香啪啪综合网| 99热在线里有精品| 天天做天天爱天天要| 天天爽日日爽夜夜爽| 丁香五月婷婷综合网| 九玖欧洲亚洲| 狠狠色大香蕉| 四虎国产精品永久在线国在线| 综合久| 色婷婷激情| 第九色区av天堂| 久久se 综合网 | 在线只有精品| 五月婷婷很很色| 1囯产午夜仑鲁鲁| 91精产一区三区免费观看| 91丨九色丨熟女丰满| 欧美日韩成人免费在线| 伊人六月无码视频| 激情深爱五月天| 超碰超碰在线| 婷婷六月偷拍| 久热只有这里有精品| 五月婷色丁香| 国产精品久久久久久白浆色欲| 五月天色不卡| 射琪琪| 九月丁香八月婷婷久久综合久97| 丁香五月在线视频| 婷婷激情六月视频| 丁香花社区av| 中海油常州环保涂料有限公司| 五月停停直播| 日韩精品一区二区亚洲AV观看| www.狠狠| 91人操| 久鲁鲁色网| 日日爽天天| 日本色99| 玖玖玖婷婷婷| 欧美婷| 婷婷的久久网站| 激情小说视频图片| 五月丁香欧美综合| 五月天综合婷婷| 日本久久精品| 久久日婷婷| 超碰99在线| 日本熟女内射| 色婷婷色综合久久精品V| 久婷婷婷| 97碰碰视频在线观看免费| 激情又色又爽又黄的A片 | 综合久久丁丁香婷| 99在线观看免费精品视频| 五月天婷婷乱| 亚洲亚洲人成综合网络| 9191avse| 婷婷丁香人妻天天久久| 久久婷婷七月丁香| 色色日韩网| 狠婷婷五月| 五月丁香黄色视频| 99热这里都是精品| 丁香色六月婷婷| 久久曰9| 99久久66| 91九色首页| 久99视频| 亚洲综合色婷婷| 亚洲六月婷| 精品亚洲VA网站| 婷婷五月天成人网| 丁香五月婷婷少妇| 欧美视频五区| 六月婷婷激情图片| 天天操五月天| 91黄操| 伊人久久综合| 99在线视频资源| 婷婷成人在线| 久色激情| 国产日产成人亚洲欧美国产VA| 五月婷婷色播| 欧美精品啪啪| 色人久久| 激情黄色小说五月天| 午夜大香蕉| 久热无码| 丁香六月天| 夜夜夜天天操| 中字幕视频在线永久在线观看免费 | 欧美日韩五月婷婷| 99精品久久久| 五月婷婷综合热| 久热伊人| 激情纯色婷婷五月天在线不卡视频| 夜夜干夜夜操| 丁香五月成人在线| 98色丁香五月婷婷综合网| 久久这里有精品视频| 狠狠婷婷色综合| av网站中文| 嫩草视频| 综合色播| 99在线视频在线观看| 久久婷婷五月天激情唯美| 日本人妻伦在线中文字幕| 激情六月五月婷婷综合网| 色婷婷亚洲婷婷| 久操大香蕉| 国产毛片精品一区二区色欲黄A片| 小泽玛利亚视频一区二区| 久久性爱视频网站| 激情九九六月激情免费视频| 婷婷成人五月天成人文学| 91丨熟女丨首页| 国产精品久久久久久亚洲毛片| 婷婷深爱色五月| 日本大人久久| 色婷网| 人人色性网| 丰满少妇猛烈A片免费看观看| 亚洲行行色色| 亚洲色色色色色色色色色| 97综合在线| 大香久久综合网| 天天日天天摸| 96性爱视频| 极品嫩草| 亚州美女| 99啪| www99热| 精品久久9| 91操碰| 久久婷婷成人| 99久久超级| 久9视频免费播放| 五月天婷婷自拍图片在线观看| 9色操| 六月婷婷激情| 激情五月婷婷网| 超碰在线91| 97大香蕉五月天| 91视频一起草| 五月天综合视频网| 亚洲久久婷婷| 激情深愛五月視頻| 久久久久久久久久8888| 69精品人人人人人人| 激情综合久久| 亚洲综合99| 激情综合六月| 丁香六月天婷婷色| 99婷婷五月天| 日本色色网| 美女天天爽| 99久久66| 久久99婷婷| 91碰免费视频| 欧美怡红院黄站| 天天综合中文| 国产资源91在线| 91久久精品无码一区二区三区| 91|疯狂丨高潮丨对白| 久久大香蕉同僚| 伊人五月成人| 久久66精品| 97色婷婷| 亚洲综合字幕色色| 日韩色色网| 久久久天堂国产精品女人| 99九九精品| 激情五月丁香色婷婷| 丁香五月激情啪| bukadeavzaixian| 国产乱子轮XXX农村| 五月丁香婷婷六月| 五月天丁香网| 精品亚洲国产成AV人片传媒| 99热在线观看| 韩日另类| 久久九九网| 色婷婷欧美| 色婷婷日本| 婷婷激情五月天小说校园| 丁香婷婷丁香五月欧美人| 99精品自拍视频| 亚洲色图五月丁香| 六月婷婷综合| 激情五月天噢美| 99啪啪视频| 狠狠色噜噜狠狠狠狠综合| 日韩三及成人AV片| 色色色婷婷五月天| 99久久a线观| 色婷婷色五月另类综合| 天天婷婷操| 丁香五月婷婷啪| 大香蕉五月天婷婷| 色婷婷五月天激情| 狠狠色狠狠色综合日日91 | 狠狠狠人妻| 五月婷婷五月天| 久久五月网| 九九99热| .操區COm| 激情五月天之六月婷婷| 丁香五月婷婷无码AV| 99久久丝| 99热在线观看亚洲区| 婷婷丁香激情| 夜色综合网| 久超超碰| 天天骑天天操| 成人AV在线电影| 五月丁香婷婷色| 五月开心激情| 久久R激情| 婷婷丁香综合| 五月婷婷电影院| 中文字幕不卡网站| 情色五月天网站| 亚洲丁香花色| 99热99这里免费的精品| 成人av在线网站| 狠狠搞狠狠操| 亚洲综合碰| 影音先锋 一区| 超碰人人操人人干| 日日懆天天懆| 狠狠操狠狠爱| 婷婷五月欧美| 伊人大香五月天| 婷婷五月六月激情| 五月天综合视频| 婷婷五月激情黄色| A片一曲| 日本本土色网第一区| 开心五月婷| 国产精品色婷婷久久久精品| 熟女人妻一区二区三区免费看| 国产女生爱爱AA| 丁香九月婷| 色黑鬼导航| 婷婷五月天无码| 久久a热| 九九色插| 天天激情5月天亚洲| 五月色婷婷激情| 久久女人天堂| 色色色色区| 99热| 九九综合久久| 五月天婷婷AV| 欧美日韩国产一二区| 日本三级日本三级99| 五月丁香六月激情网| 五月天丁香婷婷社区| AAA久久| 久久全意婷婷| 婷婷五月天直播| 日本色色视频| 大香伊人久色| 色播五月丁香综合| 欧美丁香五月97色| 97极品在线| 丁香五月婷婷欧美成人色图| 色色色色五月天| 另类精品视频在线观看| 久久久欧美精品sm网站| 99久操视频| 日本狠狠色| 色婷婷网大全在线| 涩涩涩.com| 五月婷婷丁香在线| 九九精品自拍| 日本99在线视频| 91久久久久| 密臀久久| 最近中文字幕大全免费版在线| 色情丁香五月婷婷精品| 超级碰碰碰97免费| 97干在线播放| 91精产品自偷自偷综合| 亚洲日日日| Aaa久久| 丁香五月婷婷基地| 狠狠操综合| 91久久综合亚洲噜噜成人在线 | 五月婷婷激情综合在线| 五月天激情综合网| 色婷婷色情| 99热只有这里有精品| 67194中文在线| 九九爱看亚洲| 99热色精品| 欧洲不卡视频| 五月天综合| 国产亚洲色婷婷久久99精品91| 色五月激情综合| 任你干嘛免费视频播放| 亚洲六月婷婷| 26.uuu丁香五月婷婷| 丁香色成人| 日韩黄色网络| 久久五月视频| 人人操人av| 丁香婷婷综合影院| 蜜臀99精品| 91好好热日本在线| 色香欲综合| 色婷婷大香蕉| 天天干天天做| 天天爽综合网| 日本超碰在线| www色婷婷| 综合久久婷婷五月丁香| 久久婷婷五月天大香蕉| 久久久久亚洲AV成人无码电影| 97影院一级片| 成人久久天天x资源站| 天天射美女| 色五月婷婷五月丁香五月激情五月视频 | 人人操av| 国产伦理精品高清在线观看网站一区二区| 欧美搡BBBBB摔BBBBB| 99久久思思| 99人人干人人操| 99免费热视频在线| 激情婷婷丁香色五月综合| 伊久大香蕉| 婷婷丁香五月激情| 人人澡天天色天天做| 麻豆AV一区二区三区| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪| 狠狠色丁香婷婷五月| 色婷婷久久综合| 久久杏爱视频| 97碰碰电影| 五月花免费视频| 淫水导航| 在线观看av网站| 亚洲国产无线乱码在线观看| 99人妻碰碰碰久久久久视| 99热最新地址在线| 五月婷av| 五月天激情小说网| 超碰97免费在线| 激情婷婷综合| 婷婷中文无码| 亚洲视频久久| 97五月婷| 五月丁香| 色99在线视频| 五月天综合色| 久久久人人操A V| 思思精品视频| 色爽九九| 熟女激情五月天 | 久久人人九九| 欧美成人精品一区二区| 26uuu淫色| 亚洲精品视频电影| 欧美日韩中国| 亚洲综合五月天婷婷| 97在线碰| 激情婷婷五月天| 日本噜噜色网| 五月激情综合激情五月| 婷婷五月大| 91色碰| H亚洲| 色999;丁香五月| 日韩精品一品二区三区的使用体验| 国产五月婷| 综合色久| 五月天色色网站| 综合激情在线观看| 亚洲五月天色色| www。五月,com| 婷婷色色网| 亚洲AV成人精品日韩在线播放| 亚洲色情网站| 夜夜骑天天玩天天日| 亚洲 在线 性爱 | 拍真实国产伦偷精品| 9有码中文| 精品人妻一区二区三区四区不卡在| 色婷婷成人在线| 五月丁香婷婷中文| 天搞天天天天天| 欧美日本黄色| 99在线播放视频| 色综合丁香婷婷| 99.N在线视频| 毛片新网地| 91超级碰在线| 92久久| www.色综合.com| www.99精品视频| 综合爱久久| 久久久噜噜噜www成人| 婷婷五月天久草在线| .青娱乐天天操B| 琪琪布丁香社区激情五月天| 亚洲AV成人精品网站在线播放| 丁香婷婷成年| 九九热99在线视频| 性爱五月丁香| 久久天天天| 丁香五月香蕉在线| 深爱开心五月天| 亚洲mm色| 激情五月婷婷开心网| 婷婷五月天伊人网| 国产在线黄色| 狠狠色色| 婷婷婷婷婷婷婷婷| 一起草Av| 99性爱| 色综啪啪网| 丁香影院五月综合| 亚洲AV日韩无码| 婷婷色亚洲| 成人做爰高潮A片免费视频| 国产毛片精品一区二区色欲黄A片| 色综色网| 99熟女啪啪视频| 五月丁香综合啪啪| 狠狠狠狠操| 五月丁香六月婷婷姐| 超碰在线观看9| 亚洲六月婷婷| 激情国产五月| 97久久精品| 五月天激日本色情在线| 色婷婷色五月天| 色激情综合| 九月丁香| 琪琪色网址| 91狠狠色丁香| 天天狠狠色噜噜| 色婷婷成人| 九九热在线99| 伊人久久综合| 小视频aaa久久久| 嫩草乱码一区三区四区| 亚洲激情另类| 香蕉乱插| 五月婷婷六月激情网| www.色五月| 欧美激情五月天| 日韩精品一区二区刘| 五月丁香| 婷婷激情六月| 亚洲国产精品VA在线看黑人| 久久99久久99精品免观看粉| 免费视频这里只有精品| 天天日天天爽| 久久激情五月网| 激情黄色五月天| 国产白丝在线一区| 狠狠 久久| 五月丁香婷婷激情在线视频| 九九99免费视频| OYIWbGcPu8H| 99视频超级精品| 久久婷婷视频| 亚洲欧洲美女在线观| 淫视馆aV二区一区| 男人的天堂五月丁香| 婷婷五月丁香基| 这里只有精品视频视频在线观看| 婷婷激情综合| 久热精彩视频98| www.夜夜夜| 五月丁香成人网| 亚洲视频国产一区| 色99在线视频| 操逼电影免费看| WWW丁香五月| 99热国产精品| 99综合久久| 综合五月丁香六月婷婷| 欧美婷婷九月| 久久精品视频在这里有| 99热8在线| 五月婷婷就去色| 色色com| 色啪影院| 大香蕉伊人久久| 精品网站:999WWW| 日本色视| 五月婷婷婷综合网| 9精品在线| 蜜桃婷婷狠狠久久| AV在线大香蕉| 另类小说五月天| 超碰国产在线| 五月激情五月丁香| 亚洲精品无AMM毛片| 天天爽天天弄| 日逼AV影音先锋男人资源站| 天天综合图片| 久久久宗合视频88| 婷婷六月激情综合| 久久9RE热视频精品98| 四月丁香五月婷婷久久| 亚洲碰碰碰| 另类 在线| 一区二区免费看| 影视av久久久噜噜噜噜噜三级| 在线观看免费狠狠色丁香香综合| 67194成I人在线观看线路1| 91尤物九色在线| 超碰免费在线| 日日干夜夜撸夜夜骑| 欧美久久一级内射wwwwww.| 91欧美| 婷婷社区五月天| 丁香五月狠狠在线观看| 在线综合网| 亚洲天堂啪啪| 日韩另类在线观看| 色娸娸综合网| 五月激情在线| 欧美婷婷五月天综合| 九九亚洲| 久热网在线视频| 综合久久五| 色区域网站视频| 丁香熟女乱| 丁香五月天激情| 天天天操天天天爰| 午夜AV网| 久久五月激情综合| 五月丁香六月欧美综合| 婷婷丁香色性爱| 黄网免费观看| 婷婷成人丁香色情基地30 | 五月天激情久色| 亚洲激情五月| 97碰在线视频| 色亚洲欧洲| 久久性爱视频| 婷婷色狠狠| 九色婷婷| 夜夜操天天爽| 欧亚洲在线高清视频| 人人摸人人操人人爱| 婷婷五月天狠狠色| www.色窝| 色婷婷a v| 亚洲成人无码专区| 国产激情综合| 六月婷婷在线| 色五月天综合| AV在线观看网站| 六月五月天婷婷涩播在线| 深爱激情五月天| 五月天婷婷色播综合在线| 99久久終合| 色色色999| 96丁香六月婷婷蜜桃综合久久| 这里只有精品视频在线观看免费| 欧美日韩国产一区二区| 密着浓厚中出乚交尾GvG935| 婷婷久久大香蕉| 天堂草在线看www| 九九人妻福利| 99噜噜| 久久久久久久久久久久久久久久一道本| 五月天婷婷网站888| www开心激情网| 黄色大片又大粗又爽| 超碰在线网站| 99久久婷婷国产综合亚洲| 五月婷婷深深爱| 色噜噜五月天| 婷婷五月天亚洲五码| 久久99色色| 久鲁鲁色网| 伊人久久大香线蕉av最新| 人妻Av在线| 久久97久久99久久综合欧美| 噜噜噜久久| 91超碰在线观看| 五月婷婷啪啪| 熟女激情五月天| 深爱激情av| 天天综合插插| 日韩狠狠色婷婷| 色噜噜婷婷| 婷婷99中文字幕| 狠狠爱夜夜| 日韩成人无码片| 超碰人人摸AV| 丁香深五月婷婷| 色婷婷8| A片试看50分钟做受视频| 亚洲人人操| 五月丁香综合在线| 人妻少妇色综合| 777色色色| 六月丁香激情网| 婷婷九月色| 狠狠色婷婷| 国产成人网| 色五月婷婷久久| 天天爽人人综合免费7799| 九九色影视| 精品久热| 日日干夜夜干| 99久久66综合| 超级久久久| 五月丁香婷婷激情四射迷人| 人人插9| 色狠狠色综合久久久绯色AⅤ影视| 97黑人精品区| 久久五月丁香婷婷| 五月婷婷激情色情网| 亚洲婷婷五月天激情综合| 色婷婷九月| 99热这里只有精品9| 97亚洲婷婷| 色九九综合| 五月激情在线| 曰韩五月丁香色婷婷无码| 最近韩国日本免费高清观看| 丁香五月婷婷综合啪啪| 日本在线观看aaa 99| www一起操| 久久这里这里有精品免费视频| 激情五月丁香综合蜜桃| 婷婷五月骚厕所| 激情综合激情综合| 婷婷基地爱| 久久人妻熟女一区二区| www.99操| 欧亚洲在线高清视频| 99热这里只有精品13| 六月丁香VA| 亚洲激情AV| 美国少妇性做爰| 色色九九五月天| 激情桃色网| 色五月婷婷影院| 久热超碰| 黄色成人AV在线| 99色婷婷| 婷婷丁香人妻天天| 狠狠色综合网站久久久久| 亚洲无AV在线中文字幕| 久久婷婷丁香| 思思re视频在线| 久久综合色五月| 日本精品在线噜噜噜| 婷婷深爱五月丁香网| 色噜噜狠狠色综合成人网| 极品少妇XXXX精品少妇偷拍| 成人午夜在线视频| 久久久久婷婷五月热综合| 婷婷中文字暮| 色噜噜婷婷| 超碰9在| 婷婷亚洲五月丁香综合在线 | 五月天婷婷丁香视频| 色在线99| 日韩人妻在线播放| 日本在线视频手机播放五月婷| 婷婷九月丁香| 欧美黄色一级录像| 99久久精| 五月天激情啪啪| 激情五月天婷婷播播久久综合91| 天天操夜夜爽天天操| 天天天天天天操| 婷婷五月欧美综合| 99综合视频在线| 97色在线观看视频| 久久五月婷综合网| 婷激情五月天视频导航| 五月六月丁香激情| 婷婷色五月大香蕉在线| 人人草成人视频| 2020日日干| 九月婷婷激情久久| www.lingjunshare.com| 五月天激情国产综合婷婷婷| 五月婷婷六月丁香| 九九综合九九| 色欲五月婷婷| 婷婷爱五月| 欧美色爱五月天| 丁香8月手机综合| 亚洲色五月天是什么| 色婷婷综合网站| 啪啪六月婷婷| 青青草五月天| 成人国产网站| 玖玖热视频| #NAME?| 狠狠操狠狠干综合| 婷婷婷狠狠| 五月丁香婷婷人体| 亚洲热久久| av最新在线| 5月婷婷性视频| 九九色婷婷| 9色免费网| 少妇口诉沐足视频播放器网址| 99热国产精品| 亚洲操逼网| 五月丁香婷婷综合网| 在线成人va| 99re热精品视频国| 97在线精品视频| 91碰碰碰久久久久| 精品成人a v无码内射| 日韩精品无码一区二区| 五月丁香拍拍激情综合| 黑人糟蹋人妻HD中文字幕| 婷婷五月激情四月综合| 91五月天| 激情综合九月| 色综合综合色| 99热性色| 人人摸人人| www.玖玖婷婷在线| 久久这里只有精品22| 亚洲亚洲人成综合网络| 亚洲五月丁| 精品视频99看在线视频| 五月婷六月| 91九色精品女同系列| 91精品综合久久婷婷九色| 五月婷婷国产| 五月婷婷与六月丁香图片激情| 色色婷婷五月| 免费无码毛片一区二区A片 | 九月婷婷激情| 天天草人人摸| 99视频这里有精品| 五月婷婷丁香六月| 天天干,天天舔| 免费视频在线观看的网站| 丁香五月婷婷色| 色综合色色色色| 91碰碰碰| 综合久久婷婷五月丁香| 97精品人人A片免费看| 思思网站| 成人免费黄色短视频| 欧美这里只有精品| 九九这里只有精品在线视频| 51精品国自产在线| 丁香五月av| 六月婷婷狠狠色在线观看| 亚洲色久| 婷婷五月天在线综合导航| 久久五月激情综合| 国产午夜伦鲁鲁| 欧美成人AAA片一区国产精品| 99九九在线视频| 五月婷婷久久爱| 超碰激情五月| 激情综合在线播放| 成人免费超碰| 九九99九九99偷拍视频免费看| 日韩激情人伦人| 国产婷婷色综合AV蜜臀AV| 成人精品视频99在线观看免费| 伦乱天堂| 色五月在线综合| 亚洲六月色| 天堂草在线观看| 任你艹| 五月天丁香婷婷视频网址| 日本综合色色| 色五月婷婷久久| 久久婷婷成人视频| 99久久久久久www| 精品人妻伦九区久久AAA片| 新激情五月天天在线网| 99只有这里是精品| 五月天天天操天天爽夜夜操| 婷婷娌伦网| 丁香狠狠干| 五月婷婷中文字幕| 另类小说色婷婷| 欧美噜一噜| 狠色综合网| 在线观看996精品| 色综合久久久综合久久网| 亚洲热视频| 七七九色| 五月丁香免费看| 六月亭亭久久综合激情| 激情com| 99热国内精品| 中文字幕网站在线观看| 天天干狠狠| 日韩av干| 嫩草综合网| 色色综合无码| 99久久99九九99九九九| 99色视| 9精品国产在热久久| 国产精品色情AAAAA片软件| 激情五月天色色| 91黄址| 色婷婷国产精品综合在线观看| 六月丁香婷婷五月| 丁香五月,激情五月,深爱五月| 99热久久这里只有精品| 超碰在线人妻| 99精品久久久久久久婷婷| 97超级操操| 天花AV无码| 一区操| 97久久精品视频| 超碰97在线观看免费| 97caop| 狠狠干最新地址| 97在线观视频免费观看| 大地资源色婷婷视频在线| 九九在线视频| 成人午夜视频精品一区| 亚洲A片成人无码久久精品青桔| 丁香激情五月| 五月激情小说| 人人插操| 丁香五月婷婷香| 成人 九九九九| 哇嘎成人久久| 99热99精品| 综合AV在线| 草草视频91| 久青青久| 色亚洲色宗合| 色5月婷婷| 五月天四色房丁香亭亭| 日本精品在线噜噜噜| 激情五月丁香五月| 六月五月丁香五月欧美| 婷婷五月丁香婷婷| 婷婷瑟瑟五月天| 超碰人人99| 色五月色五天色情网| 日日干日日| 97在线99| 冬月かえでAV无码播放| 99精品视频偷拍| 2050人人操免费工开爱| 天天影视色综合网| 五月婷婷婷丁香播| 这里只有精品免费| AA片在线观看视频在线播放| 国产99久| 久久资源网五月婷| 久久久久久草黄色片AV在线观看| 久久婷婷五月丁香| 天天做天天爱| 天天干,夜夜爽| 丁香婷婷欧美综合| 婷婷激情四射网| 五月天第四色开心色播| 激情小说五月欧美亚洲丁香| 五月激情婷婷综合| 极品人妻VIDEOSSS人妻| 丁香五月天激情四射网络不好 | 亚洲人成网站999综合| 日韩av网站在线观看| 色婷久久| 操啊操av| 91操人视频| 久久五月婷6 9| 欧美VA视频| 亚洲精99| 婷婷五月激情中文字幕| 五月香婷婷| 色综合久久88色综合天天| 成人亚洲精品| 六月婷婷日| 婷婷的激情五月| 色综合激情| 五月色综合| 色综合色婷色基地| 99热热九九| 久久 天天| 亚洲精品色| 超碰a女人的天堂| 婷婷六月开心网| 五月天 婷 欧美亚洲| 野战J办公桌椅H| 中文字幕综合网| 五月婷六月婷婷| 99热这里只有精品8| 色色影院黄大片| 丁香五月视频在线观看| 91碰在线| 亚洲无码AV片| 激情综合网,婷婷五月天| www.五月婷婷久久.com| 成人视频免费观看高清完整版在线观看| 欧美极品999| 亚洲综合99| 色九九综合色| 五月天婷亚洲综合在线嫩草网| 天天干天天插| 九月色婷婷综合亚洲| wwW天天干| 色综合久久44| 99热大| 深爱五月亚洲| 婷婷天堂站| 五月丁香六月婷| 亚洲操操操| 欧美日本不卡黄色片| 99热 在线观看| 99九九在线| 狠狠se| 欧美日本va| 91夫妻视频| 99热久只有| 色五月激情五月| 4399在线日本A片| 天天草天天日| 成人.在线日韩| 五月丁香久久激情综合| 婷婷激情综合网| 无码AV免费精品一区二区三区| 96丁香六月婷婷蜜桃综合久久| 天天综合亚洲综合| 五月婷婷基地| 九九家庭影院| 久久曰曰| 综合五月天亚洲婷婷| 色五月婷婷丁香五月| 九九AV在线| 91欧美日韩综合| 影视av久久久噜噜噜噜噜三级| 色婷婷五月天久久| 亚洲视频无| 婷婷五月综合网| 免费操超碰| 色婷婷久久综合久色综| 操逼综合网| 亚洲成人五月| 婷婷激情五月视频| 天天综合色| 任你操精品免费| 99九九在线观看免费| 久久9久久| 五月婷婷天堂| 综合网色| www.婷婷| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 五月天操逼网| 婷婷激情性爱| 99热这里只有精品55| 色综合色综合婷婷热| 图片区 小说区 区 亚洲五月| 思思99精品视频在线观看| 欧美大肥婆大肥BBBBB| 日韩欧美四五区| 日韩啪啪视品| 能看的av网站| 玖玖色综合网| 97人人操人人干| 亚洲 小说 欧美 激情 另类| 91在线视频观看午夜福利| 97色色色色色| 免费亚洲婷婷中文字幕| 婷婷五月精品在线| 天天婬色综合| 亚洲综合在线播放| 亚洲综合网区| 色五月 婷婷, 大香蕉| 综合五月婷婷| 成人网址在线观看| 欧亚成人A片一区二区| 久久久久久丁香五月| 金品在线视频99| 青青草成人网| site:ornaments52.com| 亚洲欧洲另类图片| 亚洲激情综合| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 成人无码中文| 中文无码婷婷| AV国产有码| 国产午夜精品一区二区| 99综合| 五月天色婷婷激情| 99热精品在线| 国产乱轮一区二区三区| 97视频久久| 丁香五月天欧美| a在线免费v| 粉嫩AV久久一区二区三区 | 日本99视频| 五月婷婷乱| 久久婷婷网站| 操日本99| 婷婷六月丁| 99思思| 另类色视频| 超碰9在| 熟妇人妻中文字幕无码老熟妇 | 狠狠干2007| 五月99久久| 尤物一区二区| 久久五月天婷婷| 79精品视频| WWW.激情| 欧洲精品爱爱| 美女久久婷婷| 99热这里只有精品在线观看| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 热久久66| 97精品综合| 婷婷色在线视频| 婷婷五月丁香色情| 99热老司机| 大香蕉人人网| 丁香婷婷成年| 婷婷午夜| 操人91| 婷婷色五天| 婷婷五月天成人网站| av婷婷丁香 六月| 婷婷操超碰| 91趴趴| 五月丁香综合精品欧美| 丁香婷婷色五月激情综合| 五月天天天天天天天天天天天婷婷婷| 襙比视频| 琪琪秋霞| 91精品91久久久中77777| 秋霞AV美国| 日韩欧美不卡| 大战熟女丰满人妻AV| 天天干天天做| 舔色婷婷| 欧美国产一区二区三区| 亚洲五月天婷婷综合| 色五月丁香激情| 怡红院99| 深爱五月婷婷开心中文字幕| 97碰碰人人| 人妻九九九九| 久久伊人9| 91se在线观看| 五月天色色色色色| 精品自拍97| 91干网站| 99欧美精品99日本精品| 青草视频在线播放| 校花娇喘呻吟校长陈若雪视频| 色综合天天| www久久99| 丁香五月综合| 99热婷婷| 色色99| 国产真人做爰视频免费| 丁香五月综合| 日本精品人妻无码77777| 国产毛片欧美毛片久久久| 亚洲乱码精品久久久久..| 色色国产| 五月日韩中文字幕| 日本久久色| 超碰免费电影| 久热伊人9| 久久婷婷丁香| 狠狠色综合网| 免费视频舔| 日本ww亚洲| WWW.开心五月天.COM| 91久久综合亚洲噜噜成人在线| 日本97在线| 中文字幕婷婷| 五月天婷婷色五月天| 久久婷婷成人| 亭亭五月基地在线| 99热碰碰| 久久加勒比| 特黄三级又爽又粗又大| 这里只有精品96| 青柠影视免费高清电视剧| 三级三久久线久久99久目本WW| 噜噜五月天综合| 嫩草AV久久伊人妇女超级A| 岛国在线观看91| 激情丁香五月天图片| 97欧美在线| 99精品久久| www·五月天| 天堂草在线观看| 五月天另类视频| 天天插天天插天天插天天插 | 中文字幕人妻熟女在线| av九九| 五月婷丁香| 亚洲国产精品VA在线看黑人| 日韩在线观看网址| 超碰在线视屏| 99er免费在线观看| 噜噜五月天综合| 色播播五月天| AV在线二十六页| 五月丁香美女| 99热在线播放| 婷婷五月天av| 亚洲无码免费看| 91干| 久久人妻系列| 婷婷五月天在线观看| 婷婷亚洲综合| 91日综合欧美| 欧美五月丁香啪啪响视频| 欧美va视频不用播放器的va视频网| 日日夜夜狠狠干| 亚洲成人在线播放| 色五月婷婷少妇人妻| 婷婷六月中文字幕| 五月天综合图片| 激情久久久久久久久| 色综合久久88色综合天天99| 99久久极情精品一区| 欧美精品XXXXBBBB| 久婷狼色诱惑在线| 久久精品99久久久久久久久| 丁香五月在线自慰| 思思视频这里是精品| 婷婷五月天亚洲图片| 婷婷五月天首页| 国产激情在线| 久久九网| 日韩色色色色色| 爱草人视频| 欧美大片免费观看| 大香蕉久艹| 欧美丁香婷婷五月天| 久/久精品99看9| 欧美色图天堂网色| 一本伊人色婷| 丁香六月婷婷久久综合| 激情九月丁香婷婷| 亚洲综合视频天天精品| 五月天激情综合| 欧美日韩成人综合9| 丁香五月婷婷深爱综合激情| 99色网站| 九九婷婷热| 色婷婷欧美在线| 九九色逼| 91婷婷视频| 多精窝99在线视频| AAA久久| 伊人综合婷婷| 成人电影丁香六月天| 色色五月婷| 狠狠综合网| 婷婷色操| 玖玖玖婷婷婷| 99热只有精品在线播放| 丁香婷婷六月天| 百度4399有码精品V在线观看| 天天爱天天做天天爽| 久碰视频| 人妻久久久久| www.五月婷婷| 99热1| 深爱激情网综合| 99性爱| 91黄色五月天视频| 国产热精品| 国精产品一区一区三区免费视频| 丁香五月六月久久综合 | 天天色综合网吨吧| 狠狠干.com|