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

ARTICLE DETAIL

資訊詳情

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

基于卷積神經(jīng)網(wǎng)絡(luò)的垃圾識(shí)別分類系統(tǒng)設(shè)計(jì)與實(shí)踐

基于卷積神經(jīng)網(wǎng)絡(luò)的垃圾識(shí)別分類系統(tǒng)設(shè)計(jì)與實(shí)踐 簡(jiǎn)介面向高校深度學(xué)習(xí)課程設(shè)計(jì)與期末大作業(yè)場(chǎng)景這份資源提供了一套基于卷積神經(jīng)網(wǎng)絡(luò)的垃圾識(shí)別分類系統(tǒng)完整Python實(shí)現(xiàn)。項(xiàng)目已獲導(dǎo)師指導(dǎo)并獲得97分高分涵蓋數(shù)據(jù)集、模型與全部源碼下載后可直接運(yùn)行適合需要在較短時(shí)間內(nèi)搭建可演示圖像分類項(xiàng)目的學(xué)習(xí)者。壓縮包內(nèi)含2000個(gè)文件其中近2000張jpg/jpeg圖片構(gòu)成訓(xùn)練與驗(yàn)證數(shù)據(jù)集包含電池、塑料瓶等常見生活垃圾的圖像樣本13個(gè)py腳本負(fù)責(zé)數(shù)據(jù)加載、模型構(gòu)建、訓(xùn)練與預(yù)測(cè)流程另附j(luò)son配置與md說明文檔整體包體約564.69MB目錄結(jié)構(gòu)清晰。已有264人學(xué)習(xí)使用。通過該資源可系統(tǒng)了解CNN圖像分類項(xiàng)目的完整組織方式包括數(shù)據(jù)預(yù)處理、網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)、訓(xùn)練調(diào)參與結(jié)果評(píng)估等關(guān)鍵環(huán)節(jié)源碼注釋完整便于在此基礎(chǔ)上二次開發(fā)也可直接用于課程設(shè)計(jì)答辯演示或期末大作業(yè)提交。1. 課程設(shè)計(jì)級(jí)的垃圾識(shí)別系統(tǒng)到底在做什么拿到“基于深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的垃圾識(shí)別分類系統(tǒng)”這份源碼包先別急著解壓找里面的模型文件。課程設(shè)計(jì)級(jí)別的項(xiàng)目核心不是“識(shí)別”這個(gè)動(dòng)作本身而是你有沒有把一條完整的深度學(xué)習(xí)鏈路講清楚數(shù)據(jù)怎么整理、卷積神經(jīng)網(wǎng)絡(luò)怎么從圖里提特征、訓(xùn)練時(shí)哪些參數(shù)要調(diào)、最后怎么讓模型跑一個(gè)可演示的界面。這套系統(tǒng)的本質(zhì)是一個(gè)圖像多分類任務(wù)——卷積神經(jīng)網(wǎng)絡(luò)把一張垃圾照片區(qū)分成紙板、玻璃、金屬、紙張、塑料、廚余這幾個(gè)固定類別同時(shí)輸出每個(gè)類別的置信度。它能幫你應(yīng)付答辯中最常見的追問“網(wǎng)絡(luò)結(jié)構(gòu)為什么這么定”“訓(xùn)練集有多少張圖”“l(fā)oss降到多少算正?!?。適合誰適合正在做課設(shè)或畢設(shè)的學(xué)生以及想快速跑通一個(gè)完整CNN項(xiàng)目的Python開發(fā)者。2. 卷積神經(jīng)網(wǎng)絡(luò)為什么能區(qū)分垃圾特征提取邏輯與選型理由2.1 卷積核在干什么從邊緣、紋理到局部形狀一張垃圾照片進(jìn)入卷積神經(jīng)網(wǎng)絡(luò)并不是像人眼那樣先“看到”一個(gè)瓶子、一團(tuán)紙巾而是先被切成一塊塊小窗口每個(gè)窗口與一組卷積核做乘法累加。淺層卷積核對(duì)的是邊緣和顏色突變比如瓶蓋的圓弧輪廓、玻璃碎片的高光邊界中層的卷積核把這些邊緣組合成紋理比如紙張的褶皺、金屬的反光條紋深層則組合出局部形狀“這里有一個(gè)帶弧度的瓶身”“這里有一團(tuán)柔軟材料的質(zhì)感”。每一層之間還夾著激活函數(shù)和池化。ReLU把卷積結(jié)果里的負(fù)響應(yīng)清零相當(dāng)于篩選出“對(duì)這個(gè)特征有反應(yīng)”的區(qū)域池化把分辨率縮小讓網(wǎng)絡(luò)對(duì)垃圾在畫面里的位置偏移不那么敏感。這個(gè)“卷積-ReLU-池化”的疊加過程就是CNN在垃圾識(shí)別場(chǎng)景下最有價(jià)值的特性它不需要人為設(shè)計(jì)顏色直方圖或紋理算子而是讓數(shù)據(jù)自己決定用哪些特征去區(qū)分紙殼和塑料瓶。用Python驗(yàn)證網(wǎng)絡(luò)到底學(xué)到了什么最直接的辦法是把第一層卷積核畫出來。以下是可視化第一個(gè)卷積層權(quán)重的小腳本import torch import matplotlib.pyplot as plt def visualize_first_layer(model): conv1 model.conv1.weight.data # 形狀 [64, 3, 7, 7] kernel_grid conv1[:16] # 只看前16個(gè)卷積核 fig, axes plt.subplots(4, 4, figsize(8, 8)) for i, ax in enumerate(axes.flat): kernel kernel_grid[i].permute(1, 2, 0).numpy() # 歸一化到 0~255 區(qū)間不然圖像太暗看不清 kernel (kernel - kernel.min()) / (kernel.max() - kernel.min()) ax.imshow(kernel) ax.axis(off) plt.savefig(conv1_filters.png, dpi120)這段代碼的邏輯不復(fù)雜model.conv1.weight.data拿到的是第一個(gè)卷積層的權(quán)重張量形狀是[輸出通道數(shù), 輸入通道數(shù), 核高, 核寬]對(duì)RGB圖片來說輸入通道數(shù)是3所以每個(gè)卷積核本身是一張三通道小圖。permute(1, 2, 0)把維度從[C, H, W]整成[H, W, C]才能被matplotlib正常顯示。參數(shù)上只取了前16個(gè)卷積核目的是拼成4x4網(wǎng)格時(shí)每張圖還能看清紋路。如果畫出來全是均勻噪點(diǎn)說明網(wǎng)絡(luò)還沒訓(xùn)練或者訓(xùn)練崩了如果能看到清晰的邊緣、顏色條紋說明底層的特征提取器已經(jīng)成立。2.2 垃圾識(shí)別這類任務(wù)為什么最終都會(huì)落到CNN做課程設(shè)計(jì)時(shí)最常見的替代方案有兩個(gè)一是傳統(tǒng)的HOG特征加SVM分類器二是直接用Transformer結(jié)構(gòu)。前者的問題是特征完全靠人工調(diào)瓶子的高光、紙張的褶皺這些外觀在垃圾場(chǎng)景里變化太大HOG描述子很難穩(wěn)定描述“透明玻璃瓶”和“碎玻璃片”的共性后者在幾千張圖片的課設(shè)數(shù)據(jù)集上容易欠擬合Transformer沒有卷積那種先天的局部歸納偏置訓(xùn)練樣本不夠時(shí)注意力機(jī)制學(xué)到的往往是噪聲。CNN的平移等變性是垃圾識(shí)別最需要的性質(zhì)。一個(gè)易拉罐出現(xiàn)在畫面左上角還是右下角卷積網(wǎng)絡(luò)都能給出類似響應(yīng)因?yàn)榫矸e核在整張圖上滑動(dòng)不依賴物體位置而塑料瓶和紙杯在自然場(chǎng)景里往往就是隨手扔在地上的姿態(tài)和位置千差萬別這個(gè)特性直接決定了識(shí)別能不能穩(wěn)定。另外CNN在小數(shù)據(jù)集上的梯度回傳更平穩(wěn)ResNet這類結(jié)構(gòu)還帶了短路連接訓(xùn)練時(shí)不容易出現(xiàn)梯度消失對(duì)課設(shè)這種“機(jī)器配置一般、數(shù)據(jù)量不大”的邊界條件非常寬容。當(dāng)然CNN也有限制。它本質(zhì)上是在學(xué)習(xí)紋理和形狀的統(tǒng)計(jì)關(guān)聯(lián)所以當(dāng)玻璃和透明塑料放在一起、光線又很雜時(shí)模型會(huì)把“高光區(qū)域”當(dāng)作決策依據(jù)這就容易出現(xiàn)誤分類。這個(gè)短板不是網(wǎng)絡(luò)結(jié)構(gòu)能單獨(dú)解決的要放到數(shù)據(jù)增強(qiáng)和類別平衡那一層去處理。2.3 用forward hook查看中間特征圖判斷模型有沒有走偏訓(xùn)練中途想確認(rèn)網(wǎng)絡(luò)到底在關(guān)注垃圾的哪些部位可以給某一層掛一個(gè)前向鉤子把特征圖抽出來feature_map {} def hook_fn(name): def fn(module, input, output): feature_map[name] output.detach() return fn model.layer1[0].conv1.register_forward_hook(hook_fn(layer1)) model.layer4[2].conv2.register_forward_hook(hook_fn(layer4)) with torch.no_grad(): output model(torch.randn(1, 3, 224, 224)) print(feature_map[layer1].shape) # 期望 [1, 64, 112, 112] print(feature_map[layer4].shape) # 期望 [1, 256, 14, 14]register_forward_hook是PyTorch提供的內(nèi)置接口鉤子函數(shù)會(huì)在前向傳播經(jīng)過該模塊時(shí)被調(diào)用input是輸入張量output是輸出張量。這里layer1[0].conv1是ResNet第一個(gè)殘差塊里的第一個(gè)卷積層輸出分辨率還是112x112適合觀察淺層特征layer4[2].conv2靠近輸出特征圖縮小到14x14語義更抽象。打印shape時(shí)注意淺層特征圖上單個(gè)像素對(duì)應(yīng)原圖很小的一個(gè)感受野所以看到一片白色或黑色區(qū)域不要慌用熱力圖疊加到原圖上更直觀。把第2章的這些手段串起來你就能說清楚“模型為什么把這張塑料瓶圖片分到了玻璃那一類”這在答辯中非常加分。3. 數(shù)據(jù)集整理與預(yù)處理從解壓目錄到可訓(xùn)練狀態(tài)3.1 數(shù)據(jù)目錄約定與訓(xùn)練/驗(yàn)證劃分腳本課程設(shè)計(jì)的垃圾數(shù)據(jù)集通常有兩種組織方式一種是按類別建子目錄比如dataset/glass/xxx.jpg、dataset/plastic/yyy.jpg另一種是給一個(gè)CSV表格每行記錄圖片路徑和類別標(biāo)簽。前一種直接用torchvision.datasets.ImageFolder就能讀取后一種需要自己寫Dataset類。無論哪種第一步都要把原始數(shù)據(jù)拆成訓(xùn)練集和驗(yàn)證集保證模型在沒見過的照片上評(píng)估。下面這段腳本把“原始圖片目錄”按8:2比例劃分到train和val兩個(gè)目錄下import os import random import shutil random.seed(42) # 固定隨機(jī)種子讓結(jié)果可復(fù)現(xiàn) src_dir dataset_raw # 原始數(shù)據(jù)內(nèi)部按類別分子目錄 out_dir dataset_split for class_name in os.listdir(src_dir): class_path os.path.join(src_dir, class_name) if not os.path.isdir(class_path): continue images [f for f in os.listdir(class_path) if f.lower().endswith((.jpg, .jpeg, .png))] random.shuffle(images) val_count int(len(images) * 0.2) for split, subset in ((train, images[val_count:]), (val, images[:val_count])): dest os.path.join(out_dir, split, class_name) os.makedirs(dest, exist_okTrue) for img in subset: shutil.copy(os.path.join(class_path, img), os.path.join(dest, img)) print(f{class_name}: 總數(shù){len(images)}驗(yàn)證集{val_count}張)關(guān)鍵參數(shù)說明random.seed(42)不只是為了“可復(fù)現(xiàn)”這個(gè)說法而是讓你在多次對(duì)比實(shí)驗(yàn)時(shí)驗(yàn)證集始終是同一批圖片否則你很難判斷精度提升來自模型改動(dòng)還是數(shù)據(jù)劃分差異。劃分比例用8:2是因?yàn)檎n設(shè)數(shù)據(jù)集通常只有幾百到幾千張驗(yàn)證集太小的話精度指標(biāo)抖動(dòng)會(huì)非常明顯。注意這里用的是shutil.copy而不是move原始數(shù)據(jù)盡量保留備份后面要重新劃分比例或做增強(qiáng)對(duì)比時(shí)還能再用。如果你拿到的是CSV標(biāo)注的數(shù)據(jù)集就在這一步把CSV按行索引shuffle后再寫回兩個(gè)新CSV邏輯一樣。3.2 transform組合與歸一化參數(shù)小數(shù)據(jù)集怎么調(diào)數(shù)據(jù)增強(qiáng)是垃圾識(shí)別課設(shè)里最影響最終精度的環(huán)節(jié)。一個(gè)常用但合理的訓(xùn)練集transform是這樣from torchvision import transforms train_transform transforms.Compose([ transforms.RandomResizedCrop(224, scale(0.6, 1.0)), transforms.RandomHorizontalFlip(p0.5), transforms.RandomRotation(15), # 隨機(jī)轉(zhuǎn)15度模擬隨手扔在地上的姿態(tài) transforms.ColorJitter(brightness0.2, contrast0.2, saturation0.2), transforms.ToTensor(), transforms.Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]) ]) val_transform transforms.Compose([ transforms.Resize(256), transforms.CenterCrop(224), transforms.ToTensor(), transforms.Normalize(mean[0.485, 0.456, 0.406], std[0.229, 0.224, 0.225]) ])訓(xùn)練集和驗(yàn)證集transform必須分開寫這是新手最容易忽略的坑。訓(xùn)練時(shí)RandomResizedCrop會(huì)隨機(jī)裁剪一塊區(qū)域再縮放成224x224scale(0.6, 1.0)的意思是裁剪區(qū)域占原圖面積的60%到100%低于0.6會(huì)導(dǎo)致垃圾主體被裁掉一半網(wǎng)絡(luò)學(xué)到的全是殘片特征。ColorJitter的三個(gè)參數(shù)用來模擬不同光照下的垃圾但brightness不宜超過0.3因?yàn)槔R(shí)別里顏色是有效特征——綠色玻璃瓶和棕色玻璃瓶本身就是兩個(gè)視覺類別把顏色抖動(dòng)調(diào)太大反而制造噪聲。驗(yàn)證集不加入任何隨機(jī)變換只用Resize(256)加CenterCrop(224)這是為了保證評(píng)估時(shí)每次輸入同一位置的圖像內(nèi)容精度指標(biāo)才可比較。均值標(biāo)準(zhǔn)差用的是ImageNet的標(biāo)準(zhǔn)值如果你的模型是加載ImageNet預(yù)訓(xùn)練權(quán)重這里保持一致能讓特征分布直接對(duì)接。3.3 自定義Dataset加載CSV標(biāo)注并做類別映射遇到CSV格式的數(shù)據(jù)集時(shí)寫一個(gè)自定義Dataset是標(biāo)準(zhǔn)做法。以下代碼把CSV里的相對(duì)路徑和標(biāo)簽轉(zhuǎn)換成模型輸入所需的張量對(duì)import pandas as pd import torch from torch.utils.data import Dataset from PIL import Image class GarbageCSVDataset(Dataset): def __init__(self, csv_path, root_dir, transformNone): self.data pd.read_csv(csv_path) # 列img_path, label self.root_dir root_dir self.transform transform self.classes sorted(self.data[label].unique()) def __len__(self): return len(self.data) def __getitem__(self, idx): row self.data.iloc[idx] img Image.open(f{self.root_dir}/{row[img_path]}).convert(RGB) if self.transform: img self.transform(img) label torch.tensor(self.classes.index(row[label])) return img, label__getitem__返回兩個(gè)東西一個(gè)是經(jīng)過transform的圖片張量一個(gè)是整型標(biāo)簽。這里self.classes用sorted排序讓類別索引在多次運(yùn)行中保持一致避免訓(xùn)練完保存模型、下次推理時(shí)發(fā)現(xiàn)“玻璃”的索引變了。convert(RGB)這行很容易漏但很重要——數(shù)據(jù)集里的圖片如果本身就是灰度圖PIL會(huì)返回L模式單通道圖直接進(jìn)卷積網(wǎng)絡(luò)通道數(shù)對(duì)不上.convert()強(qiáng)制統(tǒng)一成三通道。標(biāo)簽這里直接返回Tensor而不是整數(shù)是為了方便后續(xù)直接喂給CrossEntropyLoss少一次類型轉(zhuǎn)換。數(shù)據(jù)量很小的時(shí)候pd.read_csv是瓶頸但課設(shè)規(guī)模無所謂不需要上LMDB或TFRecord那套工業(yè)方案。4. 模型搭建與訓(xùn)練從遷移學(xué)習(xí)到完整訓(xùn)練循環(huán)4.1 為什么用ResNet18遷移而不是從零訓(xùn)練自定義CNN垃圾識(shí)別數(shù)據(jù)集的規(guī)模決定了模型選擇。課設(shè)數(shù)據(jù)通常幾百到兩三千張從零訓(xùn)練一個(gè)七層自定義CNN參數(shù)數(shù)量輕松超過百萬這點(diǎn)數(shù)據(jù)根本不夠?qū)W出穩(wěn)定的卷積核。更穩(wěn)的做法是加載在ImageNet上預(yù)訓(xùn)練過的ResNet18把最后一層全連接替換成垃圾類別數(shù)。預(yù)訓(xùn)練權(quán)重里的淺層卷積核已經(jīng)能識(shí)別通用邊緣紋理你只需要讓網(wǎng)絡(luò)在垃圾數(shù)據(jù)上微調(diào)高層語義。ResNet18相比ResNet50參數(shù)量小四倍左右在課設(shè)數(shù)據(jù)集上過擬合的風(fēng)險(xiǎn)低很多。單卡訓(xùn)練時(shí)ResNet18用224x224輸入、batch size 32顯存占用大約2.5GB集成顯卡也能跑。如果用的是自建CNN效果往往比遷移差是因?yàn)樽越ńY(jié)構(gòu)沒有預(yù)訓(xùn)練先驗(yàn)這是結(jié)構(gòu)設(shè)計(jì)彌補(bǔ)不了的不是網(wǎng)絡(luò)深度問題。4.2 訓(xùn)練循環(huán)代碼與超參數(shù)配置搭建模型和訓(xùn)練主循環(huán)的代碼本身不算長(zhǎng)難點(diǎn)在超參數(shù)配合。以下代碼是課設(shè)場(chǎng)景下驗(yàn)證過比較穩(wěn)的配置import torch import torch.nn as nn from torch.optim import lr_scheduler from torchvision import models model models.resnet18(weightsmodels.ResNet18_Weights.IMAGENET1K_V1) num_classes 6 model.fc nn.Linear(model.fc.in_features, num_classes) model model.cuda() criterion nn.CrossEntropyLoss() optimizer torch.optim.SGD(model.parameters(), lr0.001, momentum0.9, weight_decay1e-4) scheduler lr_scheduler.CosineAnnealingLR(optimizer, T_max30, eta_min1e-6) batch_size 32 epochs 30 for epoch in range(epochs): model.train() running_loss 0.0 correct 0 for images, labels in train_loader: images, labels images.cuda(), labels.cuda() outputs model(images) loss criterion(outputs, labels) optimizer.zero_grad() loss.backward() optimizer.step() running_loss loss.item() * images.size(0) _, preds torch.max(outputs, 1) correct (preds labels).sum().item() scheduler.step() print(fEpoch {epoch1}: loss{running_loss/len(train_loader.dataset):.4f}, facc{correct/len(train_loader.dataset):.4f})三個(gè)核心參數(shù)值得展開說。第一優(yōu)化器用的是SGD加momentum0.9而不是直接在遷移任務(wù)上默認(rèn)用AdamAdam收斂快但泛化性能通常略遜SGD在課設(shè)這種小數(shù)據(jù)上差距更明顯。weight_decay1e-4是L2正則能壓住過擬合別加到1e-2那會(huì)把權(quán)重約束得過死loss下不去。第二學(xué)習(xí)率從0.001開始配合CosineAnnealingLR每輪把lr往下降訓(xùn)練后期用一個(gè)更細(xì)的步長(zhǎng)在局部最小值附近精調(diào)。T_max30要和epochs一致如果epochs改成50而T_max不跟著改余弦周期就對(duì)不上。第三全連接層替換成num_classes維度后模型其余部分的參數(shù)仍然沿用ImageNet預(yù)訓(xùn)練值整個(gè)模型一起參與訓(xùn)練不需要手動(dòng)凍結(jié)淺層。loss.item() * images.size(0)這里乘的是batch張數(shù)后面除以len(train_loader.dataset)時(shí)才是每個(gè)樣本的平均loss不是batch維度的平均。4.3 checkpoint保存策略不只存模型還要存優(yōu)化器訓(xùn)練到二十輪左右loss會(huì)變得平滑這時(shí)候要做的是保存“可能繼續(xù)訓(xùn)練的狀態(tài)”而不僅僅是推理用的權(quán)重。以下是保存和恢復(fù)的兩種寫法# 推理時(shí)夠了只存模型權(quán)重 torch.save({model_state: model.state_dict(), num_classes: num_classes}, garbage_model.pt) # 中斷恢復(fù)時(shí)夠了把優(yōu)化器和epoch也存下來 torch.save({model_state: model.state_dict(), optimizer_state: optimizer.state_dict(), epoch: epoch, loss: running_loss}, garbage_model_checkpoint.pt)只保存state_dict而不保存整個(gè)model對(duì)象是因?yàn)閙odel對(duì)象包含網(wǎng)絡(luò)結(jié)構(gòu)定義反序列化時(shí)對(duì)PyTorch版本和代碼結(jié)構(gòu)敏感只存權(quán)重推理時(shí)先用代碼重建ResNet18再load_state_dict兼容性最好。把num_classes一并存進(jìn)字典是為了防止你換了數(shù)據(jù)集類別數(shù)后加載舊權(quán)重時(shí)報(bào)尺寸不匹配。第一行代碼保存的權(quán)重用于最終演示和答辯第二行專門用于訓(xùn)練中途斷電或調(diào)參后回退load時(shí)用optimizer.load_state_dict(checkpoint[optimizer_state])恢復(fù)學(xué)習(xí)率調(diào)度器也會(huì)跟著回到正確位置。5. 避坑記錄垃圾識(shí)別訓(xùn)練與部署中的典型翻車現(xiàn)場(chǎng)5.1 loss一直在降但驗(yàn)證集精度卡在30%現(xiàn)象訓(xùn)練loss從0.8降到0.2曲線很正常但每輪驗(yàn)證精度始終在30%左右跟隨機(jī)猜差不多。原因數(shù)據(jù)增強(qiáng)里的RandomResizedCrop在裁剪時(shí)把垃圾主體切沒了網(wǎng)絡(luò)一直在學(xué)垃圾周圍的背景地板也可能是驗(yàn)證集圖片和訓(xùn)練集來自同一場(chǎng)景模型學(xué)到的是場(chǎng)景而不是垃圾本身。解決先關(guān)掉RandomResizedCrop改用Resize(256)CenterCrop(224)做一輪基準(zhǔn)實(shí)驗(yàn)確認(rèn)精度能上去后再逐步加增強(qiáng)如果關(guān)掉后精度就正常把scale下限從0.6提高到0.8限制裁剪范圍。5.2 訓(xùn)練時(shí)正常推理單張圖片全預(yù)測(cè)成同一個(gè)類現(xiàn)象訓(xùn)練和驗(yàn)證精度都達(dá)到90%但拿手機(jī)拍一張塑料瓶模型輸出“玻璃”置信度99%換紙殼還是“玻璃”。原因推理時(shí)忘了做和訓(xùn)練一樣的預(yù)處理。訓(xùn)練時(shí)用了Normalize(mean/std)推理代碼里如果只做ToTensor()輸入分布完全偏離模型期望——訓(xùn)練數(shù)據(jù)每個(gè)通道的像素均值接近0.5而你的輸入是0到1的原始像素值。解決把驗(yàn)證集的val_transform原封不動(dòng)用到推理管道前后保持一致不要手工再寫一遍。5.3 廚余垃圾樣本占一半其他類別只有幾十張現(xiàn)象總精度看起來有85%但看每個(gè)類別的召回率廚余垃圾接近100%金屬只有20%。原因類別不平衡模型只需把所有圖片都判成廚余就能拿到低loss。解決給CrossEntropyLoss傳一個(gè)weight參數(shù)類別樣本越少權(quán)重越大讓少數(shù)類別的錯(cuò)誤得到更高的懲罰。計(jì)算方式是統(tǒng)計(jì)每類樣本數(shù)取倒數(shù)后再歸一化以下是具體代碼import torch import torch.nn as nn class_counts torch.tensor([800, 120, 90, 300, 200, 60], dtypetorch.float32) total class_counts.sum() weights total / (class_counts * len(class_counts)) weights weights / weights.sum() * len(class_counts) # 歸一化回均值1 criterion nn.CrossEntropyLoss(weightweights.cuda())這里total / (class_counts * len(class_counts))是給少數(shù)類更高權(quán)重的經(jīng)典做法。設(shè)權(quán)重均值被歸一化回1是為了避免整體loss數(shù)值被放大后需要重新調(diào)學(xué)習(xí)率。注意class_counts的順序必須和你的類別索引順序一致而這個(gè)順序就是自定義Dataset里classes排序后的順序兩處千萬別錯(cuò)位。5.4 加載保存的模型報(bào)尺寸不匹配現(xiàn)象load_state_dict報(bào)錯(cuò)提示fc.weight的大小和預(yù)期不符或者某個(gè)block的參數(shù)缺失。原因模型保存時(shí)用的是num_classes6現(xiàn)在重建的模型類別數(shù)改成了8全連接層維度對(duì)不上另一種常見原因是讀權(quán)重時(shí)用了torch.load(path)直接加載整個(gè)文件而不是先建模型再load。解決檢查model.fc.out_features是否等于數(shù)據(jù)集實(shí)際類別數(shù)如果保存時(shí)還存了num_classes字段加載時(shí)先讀出來再做判斷。代碼寫法上統(tǒng)一用新建模型加load_state_dict的方式避免依賴pickle反序列化帶來的版本兼容問題。5.5 顯存不夠batch size只能設(shè)為8訓(xùn)練慢還抖動(dòng)現(xiàn)象batch size設(shè)32直接爆顯存改成8以后能跑但loss曲線震蕩很厲害。原因除模型本身外DataLoader的num_workers和pin_memory也會(huì)占額外顯存batch size過小時(shí)每個(gè)batch計(jì)算出的梯度方差大優(yōu)化器更新方向不穩(wěn)定。解決優(yōu)先檢查圖片分辨率是不是真需要224如果不是降到160×160能省約一半顯存其次用torch.cuda.amp混合精度訓(xùn)練把a(bǔ)utocast包住前向傳播和loss計(jì)算顯存占用能再降三分之一并且課設(shè)數(shù)據(jù)量小混合精度對(duì)精度幾乎沒有影響。6. 讓“黑匣子”開口說話用Grad-CAM和混淆矩陣驗(yàn)證模型真的學(xué)會(huì)了課程設(shè)計(jì)答辯時(shí)最怕的問題是“你怎么證明模型是學(xué)到了垃圾特征而不是記性背下了訓(xùn)練集”。兩個(gè)工具能直接回答這個(gè)問題Grad-CAM熱力圖展示模型決策時(shí)看了圖片的哪個(gè)區(qū)域混淆矩陣列出錯(cuò)誤到底發(fā)生在哪些類別之間。Grad-CAM的思路并不復(fù)雜把最后一個(gè)卷積層的輸出特征圖按類別梯度做加權(quán)求和得到一張和輸入圖片同尺寸的熱力圖熱力高的區(qū)域就是模型做出判斷的主要依據(jù)。用PyTorch實(shí)現(xiàn)時(shí)需要在前向時(shí)記錄目標(biāo)層輸出反向時(shí)記錄目標(biāo)層的梯度from torch.autograd import Function # 記錄最后一層卷積的輸出和梯度 features {} def save_feature(module, input, output): features[output] output def save_grad(module, grad_input, grad_output): features[grad] grad_output[0] target_layer model.layer4[2].conv2 target_layer.register_forward_hook(save_feature) target_layer.register_backward_hook(save_grad)拿到特征圖和梯度后先對(duì)梯度做空間維度的平均得到每個(gè)通道的權(quán)重再對(duì)特征圖做加權(quán)求和最后套R(shí)eLU只保留正響應(yīng)區(qū)域weights features[grad].mean(dim(2, 3), keepdimTrue) cam (weights * features[output]).sum(dim1, keepdimTrue) cam torch.relu(cam).squeeze().detach().cpu().numpy() # 插值回224x224并歸一化到0~255 from torch.nn.functional import interpolate cam interpolate(torch.tensor(cam).unsqueeze(0).unsqueeze(0), size(224, 224), modebilinear).squeeze().numpy()最后把熱力圖疊加到原圖上alpha設(shè)為0.4左右超過0.6會(huì)蓋住垃圾本身的細(xì)節(jié)看不清模型關(guān)注的是瓶蓋還是標(biāo)簽。我自己的習(xí)慣是會(huì)同時(shí)跑一組“錯(cuò)誤分類”的圖片把預(yù)測(cè)錯(cuò)誤和預(yù)測(cè)正確的熱力圖并排貼到答辯PPT里——大概率你會(huì)發(fā)現(xiàn)模型對(duì)錯(cuò)誤樣本的關(guān)注區(qū)域也和正確樣本大不相同這說明它并不是單純?cè)诓隆;煜仃嚨慕庾x重點(diǎn)不要放在“整體精度多少”而要看哪些類別互混。兩張紙類和紙板類如果經(jīng)常被弄混說明兩者在紋理特征上接近解決方案是增加這兩個(gè)類別的樣本數(shù)量或者手動(dòng)去除訓(xùn)練集里標(biāo)注錯(cuò)誤的圖片——課設(shè)數(shù)據(jù)集里標(biāo)注錯(cuò)誤的情況其實(shí)比想象的常見。按上述操作做完答辯時(shí)說“我通過熱力圖發(fā)現(xiàn)模型主要依據(jù)瓶身紋理分類并通過混淆矩陣定位到紙類和紙板類的混淆針對(duì)性補(bǔ)充了100張訓(xùn)練圖片”這句話比報(bào)一個(gè)95%的精度更有說服力。做這個(gè)課設(shè)項(xiàng)目的最后一段路我踩過最深的坑就是“訓(xùn)練時(shí)改了一堆增強(qiáng)參數(shù)但沒有記錄每次改了什么”。從第3章開始每次實(shí)驗(yàn)把transform配置、學(xué)習(xí)率、epoch數(shù)、驗(yàn)證精度一行行記進(jìn)一個(gè)TXT文件等你回頭調(diào)參或者寫論文時(shí)這套記錄就是最快的后悔藥。希望這篇筆記幫你在答辯前少走幾個(gè)彎路祝順利。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色婷婷五月影视| 99精品在| 九九色中文| www.99日本| 人妻性爱| 久热这里只有国产| 婷婷的99视频网站| 久久久久久久久久久月丁| 五月大香蕉| 五月丁香六月激情在线| 思思热久久爱| 五月丁香六月花| 色五月网址| 九九热青青草| 婷婷激情综合色五月久久91| 久久加勤综合| 久9综合| se99视频| 欧洲亚洲精品| 五月丁香六月欧美综合网站| 伊人99热| 久久香蕉网| 五月丁香淫淫婷婷婷| 九九国产视频| 天天搞夜夜爽夜夜爽| 亚洲成人AV在线| 精品一二三区久久AAA片 | 人妻丰满精品一区二区A片| 日韩色色视频| 殴美日韩成人| 99日本在线| 66色在线日韩| 变态另类9| 日韩AV大全| 五月天婷婷色小说| 欧美日本va| 久久久人人人妻丝丝丝| 天天爽天天摸| 激情五月综合网| 五月激情六月婷婷| 九九热自拍| 视频一二区| 婷婷丁香色无五月| 9久热免费视频99| 这里只有精品视频在线| 开心五月综合激情网| 可以看的av| 婷婷五月天无码| 99免费在线| 色婷婷综合网站| 99久久综合精品五月天| 五月婷婷激情中文字幕| 狠狠操狠狠爱| 久久er99热精品一区二区| 欧美成人va| 色五月在线播放| 99九九视频| 91欧美| 99久在线精品99re8热| 91 九色 熟女| 国产精产国品一二三在观看| 婷婷激情四射五月天| 3DAV亚洲香蕉久久 一区二区| 色五月开心久久网| 欧洲毛片基地c区| 538午夜激情| 国产在线6| 亚洲 无码 中文字幕 中出| 五月在在观看| 久久多色| 五月综合人妻| 久热伊人| xx人人xx| 五月激情综合网| 67194线路二在线观看| 国产黄色av| 色婷婷AV在线| 热久久视频99| 日日夜夜婷婷| 丁香五月www| 大香蕉啪啪网| 可以免费看的AV网站| 99视频网址| 亚洲日日日| 婷婷色情 | Www.Av网9| 日本久久婷| 一本久久亚洲五月婷婷| 任你爽精品免费视频6| 99re这里| 色婷婷啪啪| 九九99在线观看视频| 狠狠色情婷婷| 超碰在线国产| 久久超级碰视频| 婷婷丁香五月亚洲欧美| 丁香五月中文字幕色播| 99碰碰。| www好屌操| 五月婷婷开心网| 伊人色综合网| 五月丁香六月婷综合成人综合 | 无码字幕中文| www.五月天婷婷.com| 天天色综合网吨吧| 97干干干丁香| 天天色五月| 91色操| 狠狠精品干练久久久无码中文字幕| 日本视频欧美观看免费| 《蜘蛛女》梁铮1995| 久久九九网| 五月婷婷精品视频| 丁香五月在线观看完整版| 久久永久视频| 91丨九色丨熟女|老版| 婷婷五月天视频小说| 中文字幕av在线| 免费碰碰视频久| 综合五月草| 五月婷婷丁香五月 | 狠狠做五月| 激情五月婷婷丁香综合网| 婷婷色五月天在线| 久久综合九九| 色婷婷激情| 色播五月综合网| 99日韩网站| 五月天综合在线| 六月撸婷婷| 狠狠干 狠狠操| 中国女人做爰A片| 成人AV在线网站| 五月天婷婷视频小说| 一本久久婷婷| 色婷婷亚洲精品天天综| 中文字幕无码成人电影| 久狠狠| 激情综合五月丁香六月婷婷| 色五月婷婷丁香五月| 蜜桃婷婷丁香综合久久开心亚洲| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 五月丁香婷婷六月天| 亚洲热热视频| 综合激情网| 五月婷婷五月天| 婷婷久久久| 91肏| 激情图片亚洲| 色色欧美色色| 色五月成人| 丁香五月天社区婷婷| 婷婷色网站| 九久九精品| 久久婷婷五月草视频| 久热一区| 五月天婷综合| 五月天色婷伊人| 婷婷激情六月| 亚洲国产精品综合色区| 久综合九| 丁香五月婷婷基地| 久久亚洲激情五码| 婷婷伊人中文字幕| 久久小说网| 五月天婷婷在看| 久热在线中文字幕色999舞| 青青草蜜臀| 538在线精品| 色青青视频| 成人αV视频免费观看| 激情五月天无码| AV在线不卡播放| 华人在线免费| 九九久久综合| 婷婷丁香五月社区亚洲| 成人国产综合| 天天色天天舔天天爱天天爽| 91色噜噜狠狠狠狠色综合| 欧美日综合| 丁香五月婷婷久久久| 国产精品久久久久久妇女6080| 天天干天天 亚洲| 色婷婷五月天成人网| 六月激情网| 久久99热精品a片在线观看| www.久操| 99热免费| 六月丁香综合| 天天摸天天日天天舔| 九九青草热| 亚洲激情婷婷| 天天干天天插| 丁香六月爱综合| 六月丁香婷婷色狠狠久久| 欧美在线视频99| 激情亚洲五月| 五月丁香手机在线| 九九99在线视频| 亚洲无码99| 丁香五月激情性色郤| 任我鲁这里有精品视频| 99热有精品在线观看| 欧美色五月| 天天网站天天爽| www.91在线看| 中文字幕高清av| 色区久久| 亚洲欧美丁香五月天亚洲欧美| 色婷婷婷av| 冬月かえでAV无码播放| 婷婷99视频在线| 九九操操| 婷婷五月大香蕉| 五月天婷婷五月| 日韩啪啪视频| 思思热高清在线观看| 97在线视频观看| 激情五月婷色| 婷婷中文综合网| 99热精品免费| 99免费在线| 日韩1区2区| 丁香五月色综合色播五月| 成人VAV视频在线观看| 大学生高潮无套内谢视频| 激情綜合網址| 婷婷五月丁香超碰| 久久精彩视频| WWW.婷婷| 99爱在线免费视频| 色五月天电影| 开心婷婷五月| 丁XX 成人| 美英法精品无码免费视频| 那里有AV网址| 五月在线婷色| 五月婷婷丁香大陆免费| 亚洲爱爱无码婷婷色五月| 色五月首页| 久久久99日本大片| 婷婷五月天丁香社区| 婷婷成人av| 激情文学综合婷婷五月天丁香花| 怡红院AV亚洲一区二区三区H | 狠狠狠狠狠狠狠狠| 狠狠色噜噜狠| www.ywav| 久草嫩草在线观看| 1区2区视频| 五月色网| 亚洲精品色色色| 婷婷五月天亚洲天堂| 久久只有这里精品免费| 色婷婷五月天激情在线播放| 婷婷五月天com| 日日操夜夜爽天天天| 久色姿源| 五月天婷婷在线播放免费| 人妻肉射免费观看| 色婷婷亚洲六月婷婷中文字幕| 天天日天天干天天天| 久久机热这里只有精品| 五月天亭亭俺也| 五月开心色| 日本激情五月天‘| 丁香五月综合激情性爱| 婷婷五月天小说网| av大片在线| 青青草伊人婷婷| 国av网| 色婷婷亚洲综合天堂| 草久私拍| 激情综合五月| 99福利视频| 婷婷射婷婷舔| 丁香九月婷婷综合| 国自产拍偷拍精品啪啪一区二区| www.久久99精品| 亚洲国产另类av| www.精品久9| 91AV婷婷| 久久久99精品| 色五月超碰| 久9视频| 91人久| 久久99免费视频| 日本激情91| 99免费视频久久| 国产成人VA| 午夜电影网VA内射| 99色亚洲| 五月天堂色色| 青草视频在线蜜臀| 色五月天堂| 婷婷色婷婷| 婷婷酒色网| 中文精品在| 电影《战争与艾拉》免费观看| 天天射夜夜骑| 激情六月婷婷| 婷婷 丁香 精品| 欧美影院婷婷| 大香蕉视频婷| 97五月天婷婷午夜| 9久热在线视频精品| 欧美搡BBBBB摔BBBBB| 亚洲欧洲一二| 五月婷婷丁香五月婷婷| 婷婷激情四射| 99热99美国在线观看| 久久99热这里只有精品23| 天天情色综合网| 婷婷色五月天在线观看| 9l视频自拍9l九色9l成人| 色9色| 天天干天天干天天干| 少妇AB又爽又紧无码网站| 色五月中文字幕| 亚洲精品乱码久久久久久综合| 91碰超| 一本色道久久综合狠狠躁一二三| 亭亭丁香久久五月| 五月色婷婷综合| 五月天大香蕉视频| 五月天激情婷婷丁香| 99热在线只有精品| 高清视频一区| 另类A片| 婷婷五月丁香性爱| 六月丁香婷婷在线波多| 国产肥白大熟妇BBBB视频| 色婷婷A| 色亚洲激情| 久久久国产精品黄毛片| 丁香六月中文| 99色色网| 婷婷操逼网| 色优久久| 五月色综合| 综合婷婷五月天| 五月综合激情久久| 99热99热| wwww.色婷婷| 激情五月天婷婷视频| wwwss在线观看| 狠狠搞狠狠操| 欧美VA视频| 橾逼网| 免费一区二区三区| 婷婷五月天狠狠搞干| av在线播放网站| 天天日狠狠| 激情五月综合网| 婷婷激情四射| 五月婷色| 婷婷五月伦理| 人人操人人添人人摸97| 久久婷婷综合国产| 亚洲无码播放| 色香欲综合| 六月丁香激情综合网| 老司机伊人| 天天爽人人综合免费7799| 久久色五月天| 天天激情5月天亚洲| 99热这里只有精彩| 天天做天天爱天天爽在| 日韩人妻白浆视频系列| 激情五月天激情五月天| AA久久| 国产激情久久久| 99精品在线播放| 天天插天天干| 色综色五月天婷婷| www.9797国产| 思思热在线视频精品| 天天日日人| 天天碰夜夜操| 五月天天天天天天天天天天天天天天天婷婷婷| 91精品久久久久久久| 婷婷激情六月| 久久色五月天综合网| 亚洲成人AV一区在线观看| 色 色 色综合com| 丁乡久久| 可以直接看的av网站| 国产精品99久久久久久久女警| 五月涩涩网| 看逼中文字幕| 五月天婷婷综合| 开心五月丁香综合久久| 亚洲AV无码一区二| 天堂成人A片永久免费网站| 99惹精品视频| 久久久久久综合88| 亚洲中文AV| 在线观看免费狠狠色丁香香综合| 777久久综合视频| 久婷婷久草| 色综合久久44| 天天情色综合网| 婷婷激情视频| 日本成人内射| 久久怡红院| 可以免费看的av网站| 99久久精品色老| 亚洲成av人影院| 九九热视频这里只有精品| 欧日美女Va| 九九99偷拍视频| 岛国AV网| 另类激情五月在线视频欧美| 婷婷五月丁香激情色情| 色播六月| 69精品人人人人人人| 婷婷狠狠操| 夜夜撸天天操| WWW激情五月天| 婷婷月综合| 琪琪色五月婷婷老师| 97久久人人操| 五月婷婷啪啪| 天天爽天天草| 久久婷婷操| 日本色道视频网站| 91超级碰在线视频| 金品在线视频99| 亚洲乱码日产精品BD| 五月天丁香综合| 26uuu另类亚洲欧美日本一| 另类在线| 91精品久久久久久久| 99精品网址| 任你躁XXXXX麻豆精品| 91狠狠综合久久| 深爱五月婷婷| 99精品大片| 另类激情五月| A色色| 六月综和久久| 99热香港| bbwcuckold精品熟妇| 色综合网址| 97人妻碰碰碰久久久久-最近国语高清| 国产又爽又猛又粗的视频A片| 人人操人人爽成人AV| 国产XXXX搡XXXXX搡麻豆| 深爱激情综合| 超碰在线国产| 欧美成人精品A片免费一区99| 五月天激情电影| www.五月婷婷.com| 丁香伊人网| 综合婷婷都市激情| 超碰在线观看9| 5月婷婷6月六月丁香| 激情开心五月天婷婷基地丁香社区| 激情五月六月丁香| 亚洲 六月 综合| 婷婷激情丁五月| 全国最新疫情| 色五月综合激情| 色五XX| 五月婷婷六月丁香色| 五月激情天天干| 婷婷色情六月| 九九色播五月丁香| 五月婷婷激情综合| 久久久久9999| 超极99精品| 91人人爱| 丁香五月大香蕉AV| 丁香婷婷五月综合色情| 久久久er热| 久久五月天激情视频| 五月天激情中文字幕| 操嫩逼电影| 日韩十国产极品久久| 丁香五月电影| 99热这里只有精品2| 五月婷婷综合视频| 婷婷五月天 丁香五月天 裸体| 欧美十二区| 丁香操逼| www九九| 婷婷五月成人有| 综合在线丁香五月| 久久久久这里只有精品| 五月天偷拍| 成人无码髙潮喷水A片| 夜夜夜叫天天天做| 美女五月狠狠| 人妻人人操| 九久久婷婷| 亚洲AV成人无码电影| 狠狠色噜噜狠狠狠狠综合| 中文字幕成人| 99国产小视频| 一起草AV| 97ai婷婷| 五月婷婷五月丁香综合| 99精品亚洲| 激情色色| 狠狠色婷婷色| 五月天·www·com| 岛国av网站| 五月天婷婷社区| 香蕉视频性爱BB做爱| 婷婷伊人综合中文字幕| 五月婷婷色吧!| 日本操碰碰| 亚洲中文字幕在线观看| WWW色色色COm| 99热99re6国产在线播放| 99re在线视频| AⅤ在线播放网| 激情av| 久久色五月天激情小说| 亚洲精品色| 一起草aV| 久久综合天天综合| 人人草人人舔| 人人澡玖玖一| 俺去也婷婷| 国产精产国品一二三在观看| 操人91| 激情开心五月天婷婷基地丁香社区| 色婷婷狠狠18禁| 91日本在线免费| 开心丁五月| 激情丁香九九五月综合网| 一级片操逼视频| 久久综合婷婷| 99九九热在线观看| 亚洲av成人电影在线观看| 丁香五月色| 五月激情婷婷国产精品久久久久久| 欧洲日韩一区二区三区| 亚洲国产99| 久久综合影院| 婷婷激情综合| 三级99热| 色五月天成人| 在线成人av播放| 热这里| 日韩精品AV一区二区三区| caop在线视频| 大香蕉精品视频| 激情久久丁香| 久久九九国产精品怡红院| 激情五月婷婷丁香综合网| 亚洲色欲欧美一区二区三区| 久久久久人妻| 婷婷丁香五月视频| 伊人99热| 婷婷丁香五月天综合网| 欧洲色区| 天天操天天操| 国产五月视频| 久色国产| 久久九九经典| 99久视频| 99视频35精品视频在线观看| 秋霞A V毛片| 欧美啪啪9| 狠狠爱婷婷丁香| 五月久久婷婷天堂视频| 中文字幕综合| 久久综合五月天| 久婷| 六月丁香基地| 野战J办公桌椅H| 涩涩五| 精品少妇人妻AV无码专区偷人 | 丁香五月婷婷俺也要去| 婷婷六月香| 婷婷五月天高清无码| 奇米影视在线视频| 天天爽天天爽| 国产韩日亚洲美州欧亚综合在线| ay2区| 国产精品色| WWW.桔色成人.COM入口| 色欲色欲久久宗合网| 国产精品视频久久99| 4399精品一区二区| 伊人www22综合色| 婷婷激情综合网| 九九aV| 99综合99| 日本久久超碰| 久久婷婷六月综合| 激情五月婷婷六月丁香| 九九aV| 熟妇人妻中文字幕无码老熟妇| 色青五月天| 变天就操逼婷婷五月| 超碰99资源站| 五月婷婷久久开心网| 日日夜夜亚洲一区| 国产成人综合在线| 中文字幕日韩无码制服诱或| 99久久.www| 99热亚洲精品| 久久精品亚洲一级牲爱综合 | 激情久久四色| 国产黄色大片| 在线99热| 狠狠五月天| 色天天综合天天综合频道。| 婷婷五月丁香人妻无码高清| 亚洲婷婷五月天| 99免费热视频| 五月天婷婷一起草| 九月色婷婷综合| www.久久爱| 婷婷丁香十月| 伊人成人宗合网| 91九色欧美| 国产真人做爰视频免费| 五月天丁香婷| 亚洲最大五月六月丁香婷婷| 中文字幕婷婷五月天| 五月色婷婷夜色| 99视频只有精品| 日日日日日| 国产精品久久久60086| 日韩啪| 9l视频自拍九色9l黑人| 五月激情综合网| 97色永久免费视频| 色婷五月天激情| 婷婷六月色丁香视频在线观看| 欧美成人日韩| 国产AV成人精品| 超碰99在线观看| 热五月婷婷| 五月丁香在线看| 丁香五月骚喷水视频| 天堂久久精品| 婷婷五月丁香花综合| 97luluse| 成人亚洲精品久久久久 | 日韩av一区二区在线/日产精品久久久 | 婷婷中文字幕| 五月婷婷五月| 五月婷婷性爱| 99ri在线观看视频| 免费看欧美成人A片无码| 五月丁香激情欧洲啪啪| 五月天婷婷久久综合| 婷婷,五月天,丁香,第一| 99久久99久久| 成人电影在线免费试看| 小泽玛利亚视频一区二区| 99视频热99| 欧美色图片88| 91se精品国产| www.色多多婷| www天堂99| 五月丁香六月片| 免费看欧美成人A片无码| 色播综合| 噜噜噜狠狠色综合| 色婷婷六月| 五月丁香六月婷综合成人综合| 久99热| 99热综合| 开心激情站| 五月天婷婷色| 少妇性BBB搡BBB爽爽爽视頻| 亚洲V国产V欧美V久久久久久| 色婷婷丁香五月| 人妻丰满精品一区二区A片| 欧美电影在线播放| 91男人操女人视频| 超碰一区二区| 婷婷久久18| 婷婷久久性爱| 五月丁香六月久久| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 色一情一乱一乱一区91Av| 色婷婷黄色网络| 婷婷五月丁香六月伊人网| 亚洲在线激情婷婷五月| 亚洲精品色色色| www激情com| 久久久久久人妻| 欧美激情综合色综合啪啪五月| 久久久婷| 婷婷五月天亚洲五码| 狠狠综合久久综合| 欧美综合激情五月天| 婷婷五月丁香六月天亚洲综合| 五月丁香六月香综合激情| 六月色播| 99碰碰| 这里只有精品视频| 免费碰碰视频久| 色婷成人狠干| 久久久人妻人伦| 亚州日本欧州韩美高青高潮一| 丁香综合网| 综合激情在线视频| 亚洲精品又粗又大又爽A片| 色情婷婷久久五月天| 天天综合久久| 久热这里只有精品在线观看| 日日日日操| 天天射美女| 久九男女天堂| 五月婷婷综合网| 五月天婷婷激情小说电影| 久久AV无码精品人妻系列试探| 日韩操啪| 丁香五月婷婷久久久| 无码色色| 久久久久久人妻| 丁J香六月首页| 五月丁香亚洲校园欧美| 日日操天天爽| 99久久这里只有精品| 日本三级第一页| 黄网网站在线播放| 丁香五月亚洲综合| 99精品在线观看| 大大香蕉综合在线| 色婷婷91激情小说| 激情五月五月婷婷| 99ree6| 亚洲中文字幕av| 五月婷av| 艳妇野外情欲放荡HD| 婷婷丁香激情综合色情| 婷婷五月美女直播| 国产99久久久国产精品免费看| 9伊人网| 五月婷婷久久网| 99热6精品| 五月婷婷综合影院| 我要看激情五月天| 日本欧美成人片AAAA| 玖玖爱综合网| 丁香婷婷视频在线| 激情五月婷婷综合网| 噜噜色五月| www.91操| 色九月婷婷丁香| 可以看的AV网站| 超碰在线50| 欧美噜噜免费观看| 色婷婷综合网站| 99久久久久久www| 六月丁AV| 99精品综合在线| 五月婷婷免费| 国产精品美女久久久久AV超清 | 色色色综合色| 超碰国产在线观看| www.AV在线| 五月天影院| 五月J香蕉婷婷| 免費亭亭成人| 色色色综合网| 都市激情蜜桃婷婷五月天| 99热综合| 五月五婷婷网| 99视频只有精品| 玖玖婷婷五月天| 99色婷婷视频| 九九香蕉网| 噜噜噜狠狠色综合| 美日韩成人| 色欲一区二区三区精品A片| 婷婷伊人久久| 91欧美| www.99热| 九九色精品| 精品久久久人妻| 色狠狠五月天| 九九色逼| 激情五月婷婷伊人| 九月丁香久久网| 婷婷爱五月天人人爱| 婷色综合| 99热在线观看免费精品| 伊人玖玖精品| 99性视频| 一个色的综合| 思思干精品| 激情综合网五月| 97久人人| 97色色色| 久久婷婷五月综合色播| www.色欲丁香婷婷| 精品爆操| 久久久精品99亚洲综合| 国精产品一区一区三区免费视频 | 婷婷丁香熟妇综合网| 99亚色色色| 国产偷人爽久久久久久老妇APP| 思思w99| www.com任你艹| 色五月综合激情| 欧美va国产va| 亚洲欧洲小视频9| www.99久久久| 成人五月天在线视频在线观看| 婷婷六月激情综合| 久草a片| 狠狠色婷婷在线| 久婷婷视平| 99热| 天堂爱爱| 九九激情视频| 五月开心网| 伍月婷丁香花全集| 久久多色| 91丁香色| 久久视频婷婷视频| 夜夜操狠狠操天天操| 大香蕉七区| 99九九精品| 婷婷十月激情综合网| 日韩操人| 99爱在线| 天天爽天天操| 可以看的av网站| 蜜桃婷婷五月| 97干在线看| 亚洲国产精品SUV| 色五月亚洲| 五月婷婷丁香伦理网| 丁香视频| AV片一区在线观看| 五月天激情影院| 夜丁香五月婷婷| 色婷婷婷av| 99re免费在线视频| ..真实国产乱子伦毛片 | 大地资源色婷婷视频在线| 亚洲人妻电影| 极品五月天| 日本精品在线噜噜噜| 狠狠狠狠青草| 人妻丰满精品一区二区A片| 婷婷的色色五月天| 激情美女五月天激情在线| 99人妻碰碰碰久久久久禁片| 91欧美日韩| 国产又粗又大又爽又黄| 久色网址| 停婷丁五月在线| 婷婷五月久久| 亚洲久久视频| 成人在线视频网| 色综合久久综合| 欧州婷婷五月天综合| 五月婷婷婷婷| 日韩在线9| 五月丁香婷婷综合视频| 蜜乳国产网站| sisi热国产| 超碰在线人妻| 996er热| 婷婷玖玖五月天| 婷婷五月激情在线| 婷婷六月天国产综合| 91精品综合久久久久久五月丁香| 久久视频婷婷视频| 区美毛片子| 婷婷成人视频| 九九这里有精品| 情久久综合五月天| 色婷婷五月中文字幕在线dvd| 激情五月色综合国产精品| 日本色婷婷久久99精品91| 久久99网站| 淫视馆aV二区一区| 性一交一乱一交A片久久四色| 14色综合婷婷| 狼人婷婷久久| 亚洲五月天婷婷| 国产激情在线| 99亚洲视频| 中文字幕AV网址| 99精品人人| 黄色成人网站在线播放| 六月婷婷av| 六月色色| 99re热精品视频国| WWW、日本色丁香co m| 天天做综合| 美女婷婷六月色| 亚洲爱爱无码婷婷色五月| 五月丁香婷婷激情| 亚洲综合色五月| 色五月综合激情| 久久爱婷婷| 99色色视频| 97丁香婷婷| 99精品在这里| 欧亚成人A片一区二区| 色www久视频| 五六月婷婷久久| 九九激情| 亚洲99在线| 婷婷五月天色色| 亚洲午夜AV| 色伊人91在线视频| 亚洲韩国日产综合AV| 国产精品视频网| 久久久久久久97| 【乱子伦】黄色| 呦呦AV| 婷婷五月天堂| 在线中文字幕视频| 五月天婷婷小说| 91在线资源| 五月丁香花视频| 天天做天天爱天天摸| 99re热视频| 亚洲熟妇无码乱子AV电影| 五月丁香狠狠爱| 免费无码毛片一区二区A片| 丁香啪啪中文字幕| 综合色五月| 色青青视频| 色色色色色网| 亚洲综合色网| 激情综合另类| 99热只有精品综合| 亚洲久久婷婷| 99热这里只有精品1025| 亚洲视频在线观看| 激情丁香五月AV| 99爱视频精品在线观看| 激情综合色婷婷啪啪六月天| 国产精品成人AV在线| 99无码| www.久久久久久久久久久| 婷婷综合| 九九热视| 狠狠色婷婷7777久| 色色五月激情| 99色啊| 五月婷在线| 中文字幕丰满孑伦无码专区| 久久久27操| 天天综合五月| 人人97碰| 性爱激情五月| 日日干五月天婷婷| 激情丁香五月天图片| 激情五月综合| 亚洲av日韩无码| 狠狠狠狠操| 色99在线视频| 狠狠九九婷婷韩| 婷婷丁香一月| 99精品久久| 激情五月婷婷她| 五月激情综合婷婷| 丁香色五月 97干| 久久九九99.www| 五月视频日本免费观看| 色五月天丁香婷婷| 97涩婷婷婷婷基地| 春色激情第四色| 久久丁香五月天| 亚洲av无码精品色午夜| 伊人婷婷五月| 91Chinese在线| 久操综合| 99热只有| 伊人成综合五月婷婷| 开心婷婷五月天电影院| 97人人射| 五月丁香花视频| 99这里只有精| 人人综合色| 久久网思思| 亚洲人妻av伦理| 秋霞黄色一级久久| 五月丁香色情| 99精品无码| 玖玖综合色区在线观看| w婷婷五月婷婷w| 黄桃AV无码免费一区二区三区| 色婷五月| 成人AV在线网站| 丁香激情四射| 色婷久| 婷婷五月中文字幕| 26UUU精品一区二区| 99热草草| 丁香综合网| 久9综合| 久久机热思思热| 97人碰人操| 9999色色色色| 国产99久| 久久精品亚洲一级牲爱综合| 26uuu成人网| 五月丁香花开综合网| 久久久精品婷婷五月天| 天天色综合综合| 国产精品男人AV不卡| 五区毛片七区毛片| 婷婷五月丁香国产| 五月婷色激情五月| 超级碰碰视频无码| 99色 | 无码 色| 人操人| 日日干天天| 免费国产视频| 久热99| 夜夜骑日日操| 国产欧美性成人精品午夜| 丁香婷婷射| 久久精品熟女亚洲AV麻豆| 五月婷婷丁香综合| 人妻五月天激情开心网| 欧美成人日韩| 综合网色| 丰满老熟妇BBBBB搡BBB| 五月久久亚洲| 丁香婷婷老司机久操| 这里只有精品视频在线| 日韩综合天堂| 第九色区av天堂| 都市激情小说婷婷| 婷婷久久图片| 婷婷色五月丁香六月欧美啪| Se.婷婷五月天| 亚洲狠9| 婷婷久久综合| 性爱动图国产麻豆一区二区三区| 天天插天天干| 丁香六月色婷婷| 五月玖玖| 国产真实乱了老女人视频| 激情综合激情五月一起草| 五月天激情久久| 五月天婷婷综合网| 可似看的AV| 99啪啪视频| 日本视频久久| 综合99久久天天综合| 久久综合激情五月天| 99久久婷婷精品视频| 六月久久婷婷| 久色成人| 色欧美日| 成人电影一区| 婷婷五月激情五月激情| 色五月综合网| 九月性爱网| 久久97| 九九性视频| 丁香五月婷婷五月天在线| 超碰免费电影| 五月天激情影院| 丁香婷婷视频| 亚洲精品欧洲精品| 操日本三片99| 日日操夜夜擼| 日本三级黄色大片| 五月天激情网页| 国产99久久久| 丁香五月婷婷影院| 99噜噜噜在线播放| 欧美激情综合色综合啪啪五月| 五月丁香六月激情网| 久久九九玖玖| Www.Av网9| 狠狠爱综合网| 丰满人妻一区二区三区| 99色色最新视频| 人人操日| 美腿丝袜AV天堂网| 日本无码专区| 99爱在线免费视频| 丁香五月成人婷婷| 综合六月激情婷婷| 丁香六月天AV| 在线天堂9| 色综合播放| 欧美成人AAA片一区国产精品| 操碰99| 六九色综合婷婷五月天| 丁香社区婷婷五月| 久色视频首页| 五月婷在线| AV无码免费| 婷婷综合在线视频| 8050一级网| 777影视理论片大全在线观看 | 九七色色六月丁香| 91日韩在线| AAA久久| 91丁香五月| 九九在线精点品| 日本社区五月天激情| www.色婷婷。com| 婷婷 久综合| 激情久久综合| 9久热在线视频精品| 超碰色天堂| 久久色午夜在线导航| 亚洲中文字幕翔田千里| 亚洲午夜在线视频| 99热在线观看| 亚洲操操操| 久久久久9| 五月天另类视频| 丁香婷婷久久| 99综合免费视频| 色五月天激情| 综合色情网| 99ri在线观看视频| 9 1超碰九色| 超碰在线视屏| 婷婷亚洲影院| 中文激情网| 五月婷婷综合网| 五月天综合婷婷| 色色色色色色色色综合网| 激情久久五月天| 婷婷导航| 综合久| 熟女人妻一区二区三区免费看| 丁香五月大香蕉| 伊人综合网站| 91无码色色| 亚洲在线网站| 影音先锋91男人资源在线播放| 中文成人在线| 操九色| 99久久综合网| 人人澡天天色天天做| 天天上天天爽| 色色网站免费观看| 色五XX| 99综合网| 亚洲综合婷婷| 久久五月丁香| 欧美三9久九观看| 亚洲成人精品三区| 婷婷成人AV| 色停停香蕉视频| 成人精品一区二区三区四区五区| 五月在在观看| 婷婷五月天成人小说| 五月天婷婷爱| 激情婷婷五月天| 五月丁香六月片| 婷婷影院欧美| 超碰在线看| 五月丁香WWW| 激情婷婷啪啪| 丁香婷婷五月综合色情| 久久精品99国产精品日本| 67194中文在线| 任你操精品免费| 婷婷欧美激情综合| 五月久久丁香| 五月丁香琪琪| 四LLL少妇BBBB槡BBBB| 日本在线wwww| 一级片sese片.COM| 狠狠狠五月婷婷六月丁香| 久久久免费精彩视频| 狠狠干夜夜干| 精品九九九久| 丁香五月91| 极品人妻videosss人妻| 亚洲VA口| 久久精彩视频| 伊人久久综合| 色色色色色级无码| 欧美色色色色色| 91啪啪视频| 综合婷| 色五月婷婷成人视频| 亚洲精品婷婷| 北京熟妇搡BBBB搡BBBB| 九九www| 五月丁香六月婷婷中文版| 天天日夜夜| 国产欧美日韩综合精品一区二区| 99ri在线播放| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 五月婷婷亚洲色视频| 久久婷婷五月综合| 九伊人网| 这里只有精品在线播放| 亚洲第一黄网| 亚洲色区17| 99热成人精品| 久久婷婷网| 五月天激情亚洲| 丁香五月综合久久八| www.色婷婷| 色色色色色色综合网| 天天久久狠狠色综合| 天天爽天天日天天舔| 久久综合婷婷| AA久久| 综合网激情五月天| 婷婷刺激综合| 99久久综合狠狠综合久久| 久久久99久久| 色屌丝中文字幕| 91色色五月天| 99在线er热| 五月婷婷激情| 91九色无码内射| 五月天色婷婷图片| 狠狠色综合网| 丁香色综合| 99热这里只有精品9| 亚洲人操亚洲人| 色婷婷欧美在线| 五月婷婷,六月丁香| 91九色中文字幕女在线观看| 天天日日夜夜爽。| 丁香六月婷婷色XXXX| 久久激情综合| 久久人妻精品| 日本九九九九| 婷婷丁香九月| 日本久久99久久| 色五月激情| 97色综合视频| 五月天社区狠狠| 色色色五月天婷婷| 五月激情婷婷色| 这里只有精品视频在线| 婷婷月五天在线在线看| 91超碰九色| 婷婷激情在线| 97性视频| 91干在线| 激情综合九月| 亚洲AV人人操| 日韩成人无码人妻| 婷婷五月AV| 色欲丁香| 九九香蕉网| 99这里只有精品视频| 97人人干| 99视频在线| 天天插天天插天天日| 狠狠综合网| 思思久ren热| 中文字幕日产A片在线看| 天天爽日日搞| 国产偷人爽久久久久久老妇APP | 人人操AV| 猫咪伊人久久| 婷婷99狠狠躁天天躁| 婷婷久久午夜网| 欧美美女视频|