色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

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

從零手寫YOLO檢測頭:網(wǎng)格預(yù)測、標(biāo)簽分配與損失收斂實戰(zhàn)

從零手寫YOLO檢測頭:網(wǎng)格預(yù)測、標(biāo)簽分配與損失收斂實戰(zhàn) 1. 為什么我選擇從零手寫一遍YOLO檢測頭先說結(jié)論如果你已經(jīng)能熟練調(diào)用現(xiàn)成的檢測框架跑通推理卻說不清一張 640×640 的圖進去之后為什么輸出是 8400 個候選框、為什么正樣本只有寥寥幾個、為什么 loss 里有一項幾乎不下降——那這篇內(nèi)容就是寫給你的。我打算把一次完整的實驗過程攤開講用 PyTorch 把一個 YOLO 風(fēng)格的單階段目標(biāo)檢測模型從數(shù)據(jù)管道、骨干網(wǎng)絡(luò)、檢測頭、標(biāo)簽分配、損失函數(shù)一路搭到訓(xùn)練收斂和推理可視化。這里說的“YOLO”不是指某個具體版本的官方實現(xiàn)而是指單階段、Anchor-based、輸出為網(wǎng)格化預(yù)測張量這一整類檢測范式的核心骨架。選它做實驗的理由很實在相比兩階段方法它沒有區(qū)域建議網(wǎng)絡(luò)那一層整條鏈路是端到端可微的任何一個環(huán)節(jié)寫錯都會立刻體現(xiàn)在 loss 曲線上調(diào)試反饋非常直接相比純分類任務(wù)它又多出了坐標(biāo)回歸、正負樣本分配、NMS 后處理這幾塊真正的“工程難點”正好是檢驗自己是否真的理解檢測模型的分水嶺。適合誰看有 PyTorch 基礎(chǔ)、寫過 Dataset 和訓(xùn)練循環(huán)、能看懂卷積和矩陣運算但對“檢測模型到底怎么訓(xùn)起來”還停留在調(diào)包階段的同學(xué)。全文的代碼都是可運行的片段級實現(xiàn)我刻意避開了過度封裝參數(shù)含義全部寫進注釋你可以直接抄進自己的實驗倉庫。至于我為什么堅持手寫而不是直接改開源倉庫——因為改別人的代碼時你永遠在猜作者為什么這么寫自己寫一遍錯一次就永遠記住了。2. 先想清楚輸入輸出約定再動手寫第一行代碼動手搭網(wǎng)絡(luò)之前我強制自己先在紙上寫清楚三件事輸入張量的形狀、輸出張量的形狀、以及兩者之間的語義映射。這一步偷懶后面 80% 的 bug 都源于此。很多人一上來就抄 backbone結(jié)果訓(xùn)了兩天發(fā)現(xiàn) loss 不降回頭一查是 anchor 順序和輸出通道的排布對不上。這種錯誤不會報異常只會安靜地浪費你的時間。2.1 網(wǎng)格化預(yù)測張量的形狀為什么是 S×S×(B×(5C))先定義清楚符號。把輸入圖像統(tǒng)一縮放到 640×640網(wǎng)絡(luò)以 32 倍下采樣輸出特征圖于是得到 20×20 的網(wǎng)格。每個網(wǎng)格單元負責(zé)預(yù)測 B 個邊界框每個框帶 5 個量中心點相對網(wǎng)格的偏移 x、y寬高 w、h以及一個 objectness 置信度。再加 C 個類別的條件概率通道數(shù)就是 B×(5C)。以單尺度、B3、C80 的配置為例輸出張量形狀是 1×20×20×3×85。但我更推薦把三個尺度拼起來看stride 8 得到 80×80stride 16 得到 40×40stride 32 得到 20×20把它們?nèi)空蛊讲淳W(wǎng)格順序拼接總數(shù)是 80×80×3 40×40×3 20×20×3 19200 4800 1200 25200 個預(yù)測。這個數(shù)字很重要它就是你后面標(biāo)簽分配時要處理的候選總量也是你評估顯存占用的依據(jù)。補充說明一個容易混淆的點不同實現(xiàn)里“(5C)”和“(C5)”的排布順序不一樣有的是[x, y, w, h, obj, cls...]有的是[obj, cls..., x, y, w, h]。這純粹是工程約定但一旦定了就必須全鏈路統(tǒng)一從標(biāo)簽編碼、損失計算到解碼推理任何一處反了都會導(dǎo)致模型學(xué)到一個完全錯位的映射。我的習(xí)慣是把它寫成常量并只在一處引用# 每個 anchor 的預(yù)測向量長度4 個坐標(biāo) 1 個 objectness C 個類別 NUM_CLASSES 80 NOOBJ 4 1 NUM_CLASSES # 85 # 通道索引約定全局唯一定義禁止在別處硬編碼數(shù)字 IDX_XYWH slice(0, 4) IDX_OBJ 4 IDX_CLS slice(5, 5 NUM_CLASSES)這套 slice 常量看起來啰嗦但我在排查一次“類別分數(shù)全部趨同”的問題時就是靠全局替換 slice 才確認不是索引錯位導(dǎo)致的省了至少半天。2.2 坐標(biāo)為什么要預(yù)測偏移量而不是絕對值這是我在第一次實驗里踩得最深的坑。如果直接讓網(wǎng)絡(luò)回歸框中心的絕對像素坐標(biāo)訓(xùn)到中期 loss 會卡在一個較高的平臺反復(fù)震蕩。原因是絕對坐標(biāo)的取值范圍是 0~640而卷積輸出的數(shù)值分布天然集中在較小的區(qū)間網(wǎng)絡(luò)為了輸出大數(shù)值必須把權(quán)重推到很大的量級梯度尺度失衡。正解是讓網(wǎng)絡(luò)只預(yù)測相對網(wǎng)格左上角的偏移量并用 sigmoid 壓到 0~1解碼時再加回網(wǎng)格坐標(biāo)寬高則預(yù)測相對于 anchor 尺度的對數(shù)縮放比。這樣每個輸出單元的回歸目標(biāo)都落在 0~1 或接近 0 的小范圍內(nèi)數(shù)值穩(wěn)定得多。解碼公式我固定成下面這樣寫在decode函數(shù)里訓(xùn)練和推理共用同一份def decode(pred, anchors, stride, grid_size): # pred: [B, A, H, W, 5C]A 為該尺度 anchor 數(shù) device pred.device gy, gx torch.meshgrid( torch.arange(grid_size, devicedevice), torch.arange(grid_size, devicedevice), indexingij) grid torch.stack((gx, gy), dim-1).float() # [H, W, 2] xy (torch.sigmoid(pred[..., 0:2]) grid) * stride # 解碼到輸入尺度 wh torch.exp(pred[..., 2:4]) * anchors.view(1, -1, 1, 1, 2) obj torch.sigmoid(pred[..., 4:5]) cls torch.sigmoid(pred[..., 5:]) return torch.cat([xy, wh, obj, cls], dim-1)注意meshgrid的indexing參數(shù)必須顯式寫成ij否則在較新版本的 PyTorch 里會產(chǎn)生警告而且在寬高不相等的特征圖上會靜默給出轉(zhuǎn)置后的網(wǎng)格坐標(biāo)全錯卻不會報錯。我因為這個排查過一整晚。寬高用exp而不是 sigmoid是因為尺度縮放比理論上無上界用指數(shù)映射可以覆蓋任意大小目標(biāo)同時讓梯度形式保持簡潔。3. 數(shù)據(jù)管道比模型更容易出錯的地方我現(xiàn)在的經(jīng)驗是檢測任務(wù)的調(diào)試時間大概七成花在數(shù)據(jù)和標(biāo)簽上。模型結(jié)構(gòu)寫錯了頂多 shape 報錯數(shù)據(jù)寫錯了是“能跑、loss 也降、但 mAP 上不去”最難定位。所以這一節(jié)我把數(shù)據(jù)管道拆得細一些。3.1 圖像與框的同步增強最容易寫錯的是翻轉(zhuǎn)后的 x 坐標(biāo)檢測的增強和分類最大的區(qū)別所有幾何變換必須同時作用于圖像和標(biāo)注框而且框的表示形式在變換前后要來回轉(zhuǎn)換。我采用內(nèi)部統(tǒng)一的中間格式(cx, cy, w, h)歸一化到 0~1因為縮放、翻轉(zhuǎn)在這個格式下計算最簡潔只在最終編碼時才轉(zhuǎn)成像素單位。水平翻轉(zhuǎn)的坑在于框中心 x 變換后應(yīng)該是1 - cx但寬不變。而如果你順手把 x1、x2 也做了1 - x再重排結(jié)果雖然等價代碼里卻很容易忘記重排導(dǎo)致 x1 x2。我的做法是統(tǒng)一走中心點格式翻轉(zhuǎn)只改一個數(shù)def hflip(img, boxes): img img[:, ::-1, :].copy() boxes boxes.copy() boxes[:, 0] 1.0 - boxes[:, 0] # 只改中心 x寬高不變 return img, boxes另外隨機縮放和隨機裁剪之后那些面積被裁掉大半的框必須過濾。我用的閾值是保留可見面積占原面積 30% 以上、且裁剪后寬高都不小于 4 像素的框。閾值不是玄學(xué)是基于實測低于這個比例的目標(biāo)在特征圖上已經(jīng)不足一個感受野的中心區(qū)域強行保留只會給回歸分支注入噪聲標(biāo)簽。3.2 一個 batch 內(nèi)如何組織多尺度標(biāo)簽多尺度輸出意味著標(biāo)簽也要按尺度分別準(zhǔn)備。我的Dataset.__getitem__返回的是原始圖像張量和未編碼的歸一化框 類別編碼放到collate_fn里批量做理由是編碼過程依賴 anchor 配置而這些配置是全局的放在 batch 級別做可以順便完成 padding 對齊。collate 階段的處理順序我固定為取 batch 內(nèi)最大寬高做 letterbox 填充保持長寬比灰色 114 填充記錄每張圖的縮放比和填充偏移然后按三個尺度分別計算每個 GT 落在哪個網(wǎng)格、與哪幾個 anchor 的 IoU 超過閾值。這里的 DOIIoU 閾值我設(shè)成 0.5 起步但對小目標(biāo)尺度放寬到 0.4因為小目標(biāo)匹配到的 anchor 天然 IoU 偏低卡太死會導(dǎo)致正樣本極度稀疏。下面這個表格是我實測的 anchor 配置針對自建數(shù)據(jù)集以行人和車輛為主調(diào)過兩輪供參考輸出尺度stride特征圖anchor 尺寸像素適用目標(biāo)小880×80(12,16), (19,24), (28,36)小于 32px 的目標(biāo)中1640×40(38,52), (56,76), (82,110)32~96px 的目標(biāo)大3220×20(116,150), (160,210), (240,320)大于 96px 的目標(biāo)anchor 不是隨便給的我的做法是先對自己的訓(xùn)練集跑一遍 K-means距離用 1-IoU把聚類中心按面積排序后三等分再微調(diào)讓相鄰尺度的比例接近 2 倍。直接用公開數(shù)據(jù)集的默認 anchor 到自己數(shù)據(jù)上召回率通常會掉幾個點。4. 骨干網(wǎng)絡(luò)與頸部結(jié)構(gòu)的選擇邏輯結(jié)構(gòu)選型這件事我的判斷標(biāo)準(zhǔn)只有一個在目標(biāo)硬件的推理預(yù)算內(nèi)保證足夠的下采樣倍數(shù)和足夠的跨尺度融合能力。檢測需要大感受野來定位大目標(biāo)也需要高分辨率特征圖來定位小目標(biāo)這兩者靠單一尺度無法同時滿足所以多尺度輸出是必需項不是可選優(yōu)化。4.1 從 Darknet 風(fēng)格殘差塊講起的最小可用骨干我不建議一開始就上很復(fù)雜的結(jié)構(gòu)。實驗初期我的骨干只用了“卷積 殘差塊堆疊”的最小組合每個 stage 由一個 stride2 的下采樣卷積開頭后接 N 個殘差單元通道數(shù)按 32→64→128→256→512 遞增。這套結(jié)構(gòu)的好處是每一層的形狀都能手算出來出問題一眼能定位。殘差塊內(nèi)部我用 1×1 降維 3×3 提特征的瓶頸結(jié)構(gòu)并在 3×3 卷積后接 BatchNorm 和 LeakyReLU負斜率 0.1。選 LeakyReLU 而不是 ReLU 的原因很實際檢測任務(wù)里大量回歸目標(biāo)的梯度在負半軸也有貢獻ReLU 在負區(qū)直接截斷會讓回歸收斂變慢。這個差異我在對比實驗中觀察到過換成 ReLU 后坐標(biāo) loss 的下降速度明顯滯后。class Bottleneck(nn.Module): def __init__(self, cin, cout): super().__init__() cmid cout // 2 self.conv1 nn.Conv2d(cin, cmid, 1, biasFalse) self.bn1 nn.BatchNorm2d(cmid) self.conv2 nn.Conv2d(cmid, cout, 3, padding1, biasFalse) self.bn2 nn.BatchNorm2d(cout) self.act nn.LeakyReLU(0.1, inplaceTrue) self.short (nn.Identity() if cin cout else nn.Conv2d(cin, cout, 1, biasFalse)) def forward(self, x): y self.act(self.bn1(self.conv1(x))) y self.bn2(self.conv2(y)) return self.act(y self.short(x))顯存方面提醒一句訓(xùn)練時把torch.backends.cudnn.benchmark打開輸入尺寸固定的話能白撿一成左右的速度但如果你的 dataloader 會輸出不同尺寸的圖比如沒做統(tǒng)一 letterbox這個開關(guān)反而會導(dǎo)致反復(fù)重選算法速度更慢。4.2 頸部融合上采樣加拼接而不是直接相加三個尺度的特征要互相“看見”彼此的信息否則小尺度分支缺語義、大尺度分支缺細節(jié)。我采用的路徑是自頂向下從 stride 32 的特征圖開始1×1 卷積把通道壓到統(tǒng)一值我設(shè) 256然后雙線性上采樣 2 倍與 stride 16 的同通道特征沿通道維拼接再過一組 3×3 卷積融合重復(fù)一次到 stride 8。用拼接而不是相加是因為拼接保留了不同來源特征的獨立性讓后續(xù) 1×1 卷積自己去學(xué)如何加權(quán)相加則強制假設(shè)兩路特征語義對齊這個假設(shè)在淺層往往不成立。代價是通道數(shù)翻倍帶來的顯存開銷所以我在拼接后緊跟一個 1×1 卷積把通道壓回去實測能省下約 15% 的顯存而不掉精度。提示上采樣我用F.interpolate(..., modenearest)而不是轉(zhuǎn)置卷積。轉(zhuǎn)置卷積容易在特征圖上產(chǎn)生棋盤格偽影對小目標(biāo)的定位有肉眼可見的負面影響而且參數(shù)更多。最近鄰插值雖然“粗糙”但在檢測任務(wù)里配合后續(xù) 3×3 卷積完全夠用。5. 檢測頭、標(biāo)簽分配與損失函數(shù)整個實驗的核心我把這一節(jié)放在最中間因為這里是 YOLO 類模型真正區(qū)別于普通回歸網(wǎng)絡(luò)的地方。頭部結(jié)構(gòu)本身很簡單幾個卷積難的是如何決定哪個預(yù)測該對哪個 GT 負責(zé)以及如何為不同質(zhì)量的預(yù)測賦不同權(quán)重。5.1 檢測頭的三種輸出分支與解耦設(shè)計每個尺度上我接一個檢測頭結(jié)構(gòu)是先 3×3 卷積把頸部輸出壓到中間通道我取 256然后分出三個并行的 1×1 卷積分支分別輸出坐標(biāo)4 通道、objectness1 通道、類別C 通道。這就是所謂的解耦頭。為什么要解耦因為分類需要的是語義不變性同一個物體平移、縮放后類別不變回歸需要的是位置敏感性。讓同一組卷積核同時服務(wù)這兩個目標(biāo)存在內(nèi)在沖突。我在實驗中做過對照耦合頭訓(xùn)到第 30 輪時類別 loss 和坐標(biāo) loss 會互相拉扯表現(xiàn)為其中一個下降另一個就抬頭換成解耦頭后兩條曲線都能單調(diào)下降。代價是參數(shù)量增加不多完全值得。單尺度檢測頭的實現(xiàn)如下注意輸出通道順序要和前面定義的常量嚴格一致class DetectHead(nn.Module): def __init__(self, cin, num_anchors, num_classes): super().__init__() self.stem nn.Sequential( nn.Conv2d(cin, 256, 3, padding1, biasFalse), nn.BatchNorm2d(256), nn.LeakyReLU(0.1, inplaceTrue)) self.reg nn.Conv2d(256, num_anchors * 4, 1) self.obj nn.Conv2d(256, num_anchors * 1, 1) self.cls nn.Conv2d(256, num_anchors * num_classes, 1) def forward(self, x): x self.stem(x) # 輸出統(tǒng)一調(diào)整為 [B, A, H, W, C] 便于后續(xù)按 anchor 維處理 b, _, h, w x.shape reg self.reg(x).view(b, -1, 4, h, w).permute(0, 1, 3, 4, 2) obj self.obj(x).view(b, -1, 1, h, w).permute(0, 1, 3, 4, 2) cls self.cls(x).view(b, -1, self.num_classes, h, w).permute(0, 1, 3, 4, 2) return reg, obj, cls坐標(biāo)分支我不加任何激活原始輸出直接交給 loss配合前面說的 sigmoid/exp 在解碼時處理objectness 和類別分支同理sigmoid 在 loss 內(nèi)部配合 BCEWithLogits 使用避免數(shù)值不穩(wěn)定。這是一個非常容易出錯的細節(jié)如果在頭部就套了 sigmoid再用 BCEWithLogits 就相當(dāng)于做了兩次變換loss 會一直偏高且梯度異常。5.2 正負樣本分配我用的簡化版動態(tài)分配策略早期的 YOLO 只按“GT 中心落在哪個網(wǎng)格”來分配正樣本一個 GT 一個正樣本監(jiān)督信號太稀疏。我現(xiàn)在的做法是對每個 GT找出中心點落在其內(nèi)部或附近的網(wǎng)格計算這些網(wǎng)格上所有 anchor 與該 GT 的 IoU凡是 IoU 超過正閾值的都作為正樣本IoU 低于負閾值的作為負樣本中間的忽略不計入 loss。關(guān)鍵在于引入中心先驗一個網(wǎng)格即使 IoU 夠高如果它的中心離 GT 中心太遠也不應(yīng)該算正樣本否則會讓模型學(xué)到“從遠處預(yù)測物體”的壞習(xí)慣。我的過濾條件是中心距離落在 GT 寬高的一半范圍內(nèi)。這個約束加上之后訓(xùn)練初期 loss 的抖動明顯減小。分配過程我用一個 mask 張量實現(xiàn)形狀與輸出對齊1 表示正樣本、0 表示負樣本、-1 表示忽略def assign_targets(gt_boxes, anchors, strides, grid_sizes, pos_thr0.5, neg_thr0.4): # 返回每個尺度上的 mask 與回歸目標(biāo)此處展示單尺度核心邏輯 masks, targets {}, {} for s, (anc, st, gs) in enumerate(zip(anchors, strides, grid_sizes)): # 展開該尺度所有預(yù)測框中心為網(wǎng)格中心尺寸為 anchor cx (torch.arange(gs).float() 0.5) * st cy (torch.arange(gs).float() 0.5) * st # ... 構(gòu)造 [gs*gs*A, 4] 的候選框與每個 GT 算 IoU iou pairwise_iou(candidates, gt_boxes) # [N_cand, N_gt] best_iou, best_gt iou.max(dim1) mask torch.full_like(best_iou, -1.0) # 默認忽略 mask[best_iou neg_thr] 0.0 # 負樣本 mask[best_iou pos_thr] 1.0 # 正樣本候選 # 中心先驗過濾網(wǎng)格中心必須落在 GT 內(nèi)部 mask[~inside_center(candidates, gt_boxes[best_gt])] -1.0 masks[s], targets[s] mask, build_reg_target(candidates, gt_boxes[best_gt]) return masks, targets代碼里pairwise_iou和build_reg_target是輔助函數(shù)分別算兩兩 IoU 和把 GT 編碼成相對偏移量。我在實現(xiàn)pairwise_iou時犯過一個經(jīng)典錯誤直接用x1 cx - w/2這種形式計算但沒有對坐標(biāo)做 clamp導(dǎo)致超出圖像邊界的框算出負寬度IoU 出現(xiàn)負值進而讓一批本該是負樣本的候選被誤判為忽略。修復(fù)方法是在算面積前統(tǒng)一clamp(min0)。5.3 三項損失的權(quán)重配比與不收斂的排查經(jīng)驗損失由三部分組成坐標(biāo)回歸 loss、objectness 的二元交叉熵、類別的二元交叉熵。坐標(biāo)我用 CIoU 形式因為它同時考慮重疊面積、中心距離和長寬比收斂更快后兩項用帶 logits 的 BCE。權(quán)重配比是這套實驗里我最不愿意給“標(biāo)準(zhǔn)答案”的部分因為強依賴數(shù)據(jù)分布。我踩坑后穩(wěn)定下來的一組起點是坐標(biāo) 7.5、objectness 1.0、類別 0.5。給坐標(biāo)更高的權(quán)重是因為定位精度直接決定 mAP 的上限objectness 保持 1.0 是因為正負樣本極度不均衡如果權(quán)重給太高負樣本的 loss 會淹沒正樣本類別權(quán)重壓到 0.5 是因為在正樣本已經(jīng)很少的情況下類別分支的梯度容易過大。另外必須處理正負樣本比例。實測下一個 batch 里正樣本可能只有幾十個而負樣本上萬。我用的策略是只對負樣本中 objectness 預(yù)測值最高的前 K 個計算 lossK 取正樣本數(shù)的 3 倍其余負樣本直接忽略。這一步聽起來粗暴但它比直接給負樣本乘個小權(quán)重更有效因為它聚焦在“模型最困惑的負樣本”上。判斷訓(xùn)練是否正常我只看三個信號一是坐標(biāo) loss 應(yīng)該在 10 輪內(nèi)降到初始值的三成以下二是 objectness loss 的下降曲線要平滑如果出現(xiàn)周期性尖峰多半是某個 batch 的標(biāo)簽編碼有問題三是正樣本數(shù)量均值應(yīng)該穩(wěn)定在一個區(qū)間內(nèi)如果隨 epoch 劇烈波動說明標(biāo)簽分配的中心先驗在邊界目標(biāo)上失效了。我曾遇到 objectness loss 每 5 個 epoch 準(zhǔn)時跳一次的問題最后定位到是 dataloader 的 shuffle 與采樣器組合導(dǎo)致某個類別的樣本被集中投放改回標(biāo)準(zhǔn)隨機采樣就平了。6. 訓(xùn)練循環(huán)、顯存控制與推理后處理網(wǎng)絡(luò)和數(shù)據(jù)都跑通之后剩下的工作是從“能訓(xùn)”到“訓(xùn)得動、訓(xùn)得好”。這一節(jié)的每一條都是我在有限顯存條件下被逼出來的直接照做能省很多試錯時間。6.1 學(xué)習(xí)率調(diào)度、混合精度與梯度累積的組合我用 AdamW 起步初始學(xué)習(xí)率 1e-3 配 weight decay 5e-4前 3 個 epoch 做線性 warmup之后余弦退火到 1e-5。warmup 不是可有可無的檢測頭是隨機初始化的前幾百步梯度尺度很大直接上高學(xué)習(xí)率會把坐標(biāo)分支推到一個 bad local minimum表現(xiàn)為坐標(biāo) loss 長期卡在高位不下來?;旌暇任矣胻orch.cuda.amp但loss 計算部分強制在 float32 下進行。原因是 objectness 的 BCE 在 fp16 下容易溢出尤其是當(dāng)某個 batch 里出現(xiàn)極端難負樣本時。寫法上我用 autocast 包裹前向loss 前用float()轉(zhuǎn)換scaler torch.cuda.amp.GradScaler() for imgs, gts in loader: imgs imgs.cuda(non_blockingTrue) with torch.cuda.amp.autocast(dtypetorch.float16): reg, obj, cls model(imgs) # 關(guān)鍵損失計算退回到 fp32保證數(shù)值穩(wěn)定 loss compute_loss(reg.float(), obj.float(), cls.float(), gts) scaler.scale(loss).backward() scaler.unscale_(optimizer) torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm10.0) scaler.step(optimizer) scaler.update() optimizer.zero_grad(set_to_noneTrue)梯度裁剪的閾值我設(shè) 10.0實測下來只有當(dāng)標(biāo)簽編碼出現(xiàn)異常時才會觸發(fā)所以它其實充當(dāng)了一個免費的異常探針如果你發(fā)現(xiàn)裁剪頻繁觸發(fā)別急著調(diào)大閾值先去查標(biāo)簽。顯存不夠時用梯度累積每 4 個 micro-batch 做一次step等效 batch 翻 4 倍。這里有一個細節(jié)必須配對處理——BN 的統(tǒng)計量在小 batch 下會失真我改用SyncBatchNorm或者在凍結(jié) BN 統(tǒng)計量的前提下累積否則等效 batch 放大了但 BN 看到的仍是小 batch精度對不上。6.2 NMS 的實現(xiàn)細節(jié)與置信度閾值的標(biāo)定方法推理階段把三個尺度的解碼結(jié)果拼成一個[N, 5C]的大張量先按 objectness 過濾閾值 0.05 起步寧低勿高因為后續(xù) NMS 還會再篩再依次做按類別的 NMS。我的 NMS 實現(xiàn)里最容易寫錯的邊界是IoU 計算要用到裁剪后的坐標(biāo)且不同類別的框不互相抑制。def nms(boxes, scores, iou_thr0.45): # boxes: [N, 4] 格式為 xywh坐標(biāo)已還原到原圖尺度 x1, y1 boxes[:, 0] - boxes[:, 2] / 2, boxes[:, 1] - boxes[:, 3] / 2 x2, y2 boxes[:, 0] boxes[:, 2] / 2, boxes[:, 1] boxes[:, 3] / 2 areas (x2 - x1).clamp(min0) * (y2 - y1).clamp(min0) order scores.argsort(descendingTrue) keep [] while order.numel() 0: i order[0].item() keep.append(i) xx1 torch.clamp(x1[order[1:]], minx1[i]) yy1 torch.clamp(y1[order[1:]], miny1[i]) xx2 torch.clamp(x2[order[1:]], maxx2[i]) yy2 torch.clamp(y2[order[1:]], maxy2[i]) inter (xx2 - xx1).clamp(min0) * (yy2 - yy1).clamp(min0) iou inter / (areas[i] areas[order[1:]] - inter 1e-7) order order[1:][iou iou_thr] return keepIoU 閾值我最后定在 0.45。這個值不是拍腦袋密集場景比如人群設(shè) 0.5 以上會殘留大量重復(fù)框而設(shè) 0.3 又會把相鄰的兩個真實目標(biāo)合并掉。我的標(biāo)定方法是拿驗證集畫一張“置信度閾值-召回率”曲線找召回率曲線開始陡降前的拐點通常落在 0.25~0.35 之間而 NMS 的 IoU 閾值則固定 0.45兩者不要混在一起調(diào)否則你無法判斷性能變化歸因于哪一個。6.3 調(diào)試檢測模型時我常用的三個可視化手段第一是把標(biāo)簽畫回原圖。訓(xùn)練前必須做這一步我見過太多因為歸一化坐標(biāo)和像素坐標(biāo)混用導(dǎo)致框全部擠在左上角的案例而 loss 依然在降因為模型確實在學(xué)習(xí)這個錯誤分布。第二是把預(yù)測框在訓(xùn)練中期畫出來哪怕框很亂只要它開始聚集在目標(biāo)附近就說明坐標(biāo)分支方向?qū)α恕5谌前闯叨确謩e統(tǒng)計正樣本數(shù)如果某個尺度長期是 0說明 anchor 尺寸和你的數(shù)據(jù)分布完全錯配那個尺度的檢測頭永遠學(xué)不會。有一次我把這三個手段串起來排查了一個典型問題mAP 卡在 0.2 上不去可視化發(fā)現(xiàn)所有預(yù)測框都比真實框小一圈。原因是我在編碼時用了log(w_gt / w_anchor)解碼時卻用了exp(pred) * anchor的寬高順序搞反了把 w 對到了 h 的 anchor 上。這類錯誤不可能從 loss 數(shù)值看出來只能靠可視化。7. 幾個必須提前知道的邊界與經(jīng)驗最后分享幾條我認為比代碼本身更值錢的經(jīng)驗。第一不要在小數(shù)據(jù)集上追求多尺度。我最初在只有 1200 張圖的數(shù)據(jù)集上直接開三個尺度訓(xùn)練結(jié)果最小尺度分支一直是零正樣本白白多算了 40% 的前向開銷。數(shù)據(jù)量小的時候先用單尺度stride 16把整條鏈路驗證通再逐步加尺度效率高得多。第二objectness 的分支比類別分支更容易出問題優(yōu)先調(diào)它。很多“mAP 上不去”的表象根因是 objectness 的校準(zhǔn)不好——模型給了目標(biāo)很高的類別分數(shù)但 objectness 很低NMS 前就被閾值濾掉了。檢查方法是單獨統(tǒng)計正樣本上的 objectness 均值正常情況下它應(yīng)該隨訓(xùn)練穩(wěn)步上升到 0.8 以上。第三關(guān)于驗證集的選擇我堅持按場景而非隨機劃分。隨機劃分會讓同一段連續(xù)視頻或被同一組采集條件下的圖片同時出現(xiàn)在訓(xùn)練集和驗證集里驗證 mAP 虛高 5~10 個點是常有的事。按場景、按采集批次、甚至按時間劃分得到的數(shù)字才代表真實泛化能力。常見癥狀大概率根因快速驗證方式loss 完全不降標(biāo)簽編碼與輸出通道順序不一致單 batch 過擬合測試看能否記住 4 張圖坐標(biāo) loss 平臺震蕩直接回歸絕對坐標(biāo)未用相對偏移檢查解碼公式的縮放項某尺度無正樣本anchor 尺寸與數(shù)據(jù)分布錯配統(tǒng)計各尺度的正樣本數(shù)框普遍偏小或偏移anchor 寬高順序與編碼時不一致可視化預(yù)測框與 GT 疊加訓(xùn)練后期 mAP 回落學(xué)習(xí)率未退火或正樣本過擬合打印每輪正樣本數(shù)與 lr我還想強調(diào)一個調(diào)試習(xí)慣用 4 張圖做單 batch 過擬合測試。把這個小實驗跑通loss 降到接近 0預(yù)測框和 GT 幾乎重合就等于證明了數(shù)據(jù)管道、編碼、損失、解碼這整條鏈路自洽。凡是鏈路級別的 bug都會讓這個測試失敗而鏈路一旦自洽剩下的問題都只是超參和容量問題排查范圍小得多。這個習(xí)慣幫我省掉的調(diào)試時間比我讀過的所有文檔加起來都多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产在线精品电影观看| 成人资源中文字幕在线观看| 麻豆成人av| 岛国黄色大片网站| 乱抡国产91| 韩国毛片一区二区三区| 午夜呻吟欧美| 一块操欧美| 日本乱人伦片中文三区| 国产后入式在线观看| 人妻激情另类| 大香蕉五月天婷婷| 人妻aa| 东京热,男人的天堂| 婷婷五月天福利| 人人摸.人人色| 国产精品久久| 欧美综合亚洲| 欧美国产操逼| 97超碰亚洲| 亚洲 中文 女同| 粉嫩粉嫩一区性色AV片| 国产成人久久精品蜜臀| 四虎影视精品| 国产99999| 亚洲91大片| 91色噜噜狠狠| 欧美性爱97超碰 | 色欲天天综合网| 五月婷婷六月丁香网址| 国产精品午夜AV完会免费| 手机av亚洲丝袜美腿日韩第一页二页| 丁香九月激情| 色欲日韩欧美在线一区| 亚洲蜜桃V妇女| 美國A片| 日本人妻中文字幕| 无码137片内射在线影院| 大色网久久| 97精品综合久久网| 五月天亚洲网| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 啊啊啊好舒服好爽啊啊啊视频| 成人午夜视频免费播放| 久久九九综合| 亚洲欧美九九| 中文高清一区二区的| 人妻99p| 国产精品自拍欧美在线| 亚洲欧洲日韩国产自在线| 超清福利精品视频在线| 日日噜噜夜夜狠狠视频无| av爱爱爱| 亚洲国产ⅴ高清在线观看| 午夜激情成人在线观看| 啪啪资源网| 亚洲蜜乳av| 97精品熟女少妇一区 | 青青国产精品在线| 夜夜狼人妻| 自拍二页| 欧美天天搞| 91 天天综合| 清纯唯美综合亚洲| 成人国产视频在线观看| 人妻一二三区| 国产小u女在线观看| 亚洲天堂 视频你懂的| 日本精品第一视频在'| 桃色五月天| 中文字幕一二三区| 加勒比久久av| 天天综合97| 免费福利视频中文字幕| 91人妻人人澡人人爽人人精品| 爱妃国产亚洲视频中文字幕| 国产精品久久久久久无码红治院| 日本久久精品| 躁躁日曰躁2020| 久久线上视频免费看| 久久高潮妇女视频| 国产精品日韩在线一区| 日韩无码成人电影| 欧洲小说色图视频另类| 中文字幕在线免费观看 | 国产天美欧美| 大屁股国产在线视频| 国产精品午夜福利| 日本天天操| 五月丁香啪啪啪| 97亚洲资源| 精品丰满熟妇人妻一区| 精品超碰国产| 国产精品密臀网在线观看| 欧美亚州综合网图片| 99久久亚洲精品无码毛片潘甜甜 | 国产美女激情| 亚洲囯产精品女人久久久| 色999亚洲人成色| 后入 亚洲 美女 射| 中文久久96| 屁股久久久久久| www.久久最新地址| 国产精品乱码久久久久久久久久久久| 国产美女自拍视频| 青青草原人妻| 欧日韩一二三f区| 国产久久av| 宗合情欲网| 日韩熟女精一区二区三区不卡| 26uuu偷拍亚洲欧洲综合| 色婷久久| 熟女乱伦A| 精品国产91av一区二区三区| 欧美福利视频啊啊啊啊| 国产精品久久久久无码Av网曝门| 欧美欧美啪啪视频| 日韩免费福利在线观看| 国产无码三级视频在线观看| 高清无码一区二区三区| 欧美日韩啪啪电影| 操逼1区| 欧美日韩啪啪电影| 无码天天操| 亚洲天堂7777| 国产亚洲色婷婷久久99精品91葵花宝典| 美女尤物人人操| 蜜臀AV秘一区翔田千里| 少妇啪啪自拍| 日本欧美一区二区三区免费| 国产精品视频白浆免费| 国内毛片无码一级毛片| 免费观看欧美日韩操逼视频| 成人老鸭窝人人在线视频| 人妻碰碰碰碰碰碰| 啊啊啊久久久视频| 天天插网| 欧美强奸乱能| 欧美操逼一二三区| 最新精品久久蜜桃 | 国产白嫩精品久久| 青青久久手机线视频| 综合五月婷婷亚洲一区| 国内自拍 日韩激情 99| 嗯嗯啊啊视频在线看| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 亚洲成人av色网| 久久国产精品91| 人妻密肉在线观看| JuliaAnnXXX888| 国产传媒一区二区三区| 中文字幕久久婷婷丁香五月天| 18禁在线视频| 亚洲天堂7777| 日本大片日本一区二区免费高清| 久插综合| 亚洲男人天堂2017| 国产午夜福利专区综合| 亚欧高清在线| 日韩伦理久 久久 清纯| 曰韩少妇无码| 91肉片| 免费亚洲黄色视频在线观看| 91N欧美| 日日日骚女人精品| 日产操逼| 巨爆乳肉感一区二区三区竹菊影视| 超碰日本97美女人妻人人玩人人爱| 国产精品 午夜福利| 99日视频在线免费| 亚洲少妇在线影音| 午夜在线播放| 中文字幕一区二区三区视频播放| 婷婷情色五月天| 蜜臀Av一区二区三区| 欧美性爱第一页久久| 亚洲熟女av日韩熟女| 免费网站观看www在线观| 丁香九月激情| 日韩精品人妻中文字幕久久久| 蜜臀一二三区| 日韩欧美国产一区二区三区四区| 国产欧美美女免费观看视频| 亚洲资源吧| 黄色片一区二区三区四区五区| 成人片在线播放| 麻豆传媒一区二区在线观看| PMv在线观看| 免费A V在线播放| 91性高| 欧美天天| 黑丝日韩av丝袜av| 手机看av网站在线看| 成人小说另类在线| 天美传媒婬乱在| 亚洲丝袜二区在线| 大香蕉92| 大香蕉92| 国产夜夜操| 91丝袜美女国产| 加勒比在线视频一区二区三区 | 天天干天天日天天射黄色| 亚洲欧美国产其他二区| 国产传媒操逼视频| 欧美一区二区福利在线| 少妇熟女1区2区3区| 老司机香蕉| 99热国产| 男人的天堂久久| 福利一级版子| 青青草久久| 新视频sss国产| yazhousetuoumei| 6080yy午夜理论三级一区二区三区无码| 亚洲熟女性高潮久久久| 蜜桃视频成a人v在线| 老子午夜伦不卡影院| 久久专区| 欧美亚洲中文| 九九无码| 欧美日韩插逼视频| 日本精品网站在线中文| 在线色导航| 国产精品免费1区2区视频| 久久久久久性爱免费视频| 精品熟女呻吟久久91| 97视频在线看| 家庭乱伦麻豆| 日韩99精品视频综合区| 国产精品亚洲免费| 日韩欧美午夜一区二区| 日本 免费 一区二区三区 久久香蕉| 91宗合网| 亚洲第91页| 欧美性爱1080p| 97人人色| 日韩精品人妻中文字幕有码午| 国产午夜在线观看| 啊啊啊啊啊啊啊啊啊啊在线观看| 无码国产精品午夜不卡(| 91亚洲情色| 东京热激情视频一二三区| 在线视频免费观看午夜| 久久骚| 3571色综合一区二区二区| 欧美色图片| 欧美亚洲成人在线一区二区三区| 亚洲九月丁香| 欧美一区二区一级岛国大片| 日韩欧美蜜桃精品久久中文字幕久久| 日本欧美成人片AAAA| 97超碰人人操人人操| 91少妇通奸网站| 大香樵伊人网| 日韩乱伦视频| 福利视频香蕉免费一区二区在线| 人妻少妇精品无码专区二区密桃 | 国产精品蜜臀久久久久无码AV| 天天日美女的B| 丁香六月天| 国产二区三区免费视频| 竹菊一区二区三区AV线| 天天天天天天天天综合| 欧美综合自拍成人自拍第二十页| 日韩欧美成人午夜福利| 色色色色色色色色色色色色色色综合| 亚洲中文日韩欧美大香蕉视频| 少妇无码999| 吉川爱美亚洲二区在线| 920日本午夜免费| 丰满岳乱妇一区二区三区| 精品人妻丰满熟妇一区二区三| 国产传媒1234区| 手机看片1024你懂的国产| 婷婷色色五月天福利| 久久九九精品一区二区| 狠狠夜色午夜久久综合在线| 97超碰jingpin| 插穴性爱视频在线观看| 91视频伊人| 亚欧美综合网| 亚洲天堂男人天堂网| 欧美999999| 夜夜高潮夜夜爽高清视频一| 激情文学网伊人| 丁香五月综合| 九月丁香婷婷色| 激情五月天中文字幕色| 97在线视频免费| 超碰在线日韩一区| 亚洲自拍欧美色综合| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 亚洲男人的天堂一区二区| 五月丁香六月婷| aaaa少妇高潮大片| 日韩国产欧美伦理在线| 日韩性爱视频在线免费观看| 久草资源欧美在线视频| 久久久久久久极品香蕉视频| 美女露胸露尿口| 国产超碰在线| 久久人人爽人人爽人人片Ⅴ| 十八禁啪啦拍视频无遮挡| 高清无码 国产精品| 91美女视频在线免费观看| 超碰导航97| 天天日B夜夜干B时时操B| 国内操逼视频二区| 91精品亚洲内射孕妇| 日韩精品高清资源在线 | 2020中文字幕| 国产精品乱码久久| 96爱综合| 精品午夜福利国产一区二区在线观看| 久久超碰亚洲人| 韩国三级一线观看久| 啊啊啊com| 亚洲欧美另类图片| 欧美日日操| 天天综合91| 国产精品成人蜜臀AV在线| 99re95| 亚洲熟女乱色一区二区三区| 天天干天天日天天射黄色片| 日韩色欲久久一二三四区| 亚洲色图 图片| 亚洲成a人在线观看久| 91美女高潮| 福利在线黄片| 97欧美综合| 一区麻豆 高清中文字幕| 日韩免费簧片| 毛片麻豆91糖心精品毛情片| 天天爱天天操| 青娱乐福利99| 欧美久久久| 日本天天干天天搞一区| 国产精品无码论坛| 91宗合网| 亚洲欧美日韩有码| 天天精品| 一二三区操逼国产91| 射丝袜高跟鞋99| 1人人看人人摸人人操| 亚洲色图综合网| 巨爆乳肉感一区二区三区竹菊影视 | 91爰爱欧美| 少妇高潮对白在线观看| 亚洲国产精品无石码久久| 国产亚洲欧洲在线观看| 韩国三级理论在线| 国产日韩无码一区二区三区久久区| 日本最新免费韩国1区2区视频播放| 欧美强奸乱能| 91狠狠综合| 国产久久久久影院老熟女| 婷婷五月天成人网| 台湾成人无码AV| 亚洲色图欧美色图在线播放| 性爱欧美五月| 久久久com| 一区二区三区免费岛国片| 91制服丝袜中文字幕| 久久久99久9| 韩日无码在线观看| 日本操逼视频免费| 在线洲亚线| 999综合色| 人妻少妇蜜桃视频欧美一区| www.av在线观看| a片久久久久久久久久久久 | 色婷婷五月天| 日韩无码黄色片| 人人操人人色网| 综合熟妇一区二区三区| 久久香蕉超碰97国产精品| 日本熟妇一区二区三区| 婷婷导航| 91精品久久久久久77777| 久久精品中文字幕观看| 日本久久女同性恋视频| 伊人骚琪琪亚洲天堂网站| 五十路人妻在线| 情色av电影| 99热这里都是精品| 操一区| 综合免费无码中文| 国产一区免费午夜视频| 91性高朝久久久久久久久| 一起草视频在线| 一区二区三区一亚洲中文字幕、综合区灬 | 91天天综合日韩欧美| 欧美极品色| 人妻色情天天操| 中文字幕伊人| 国产丸一视频| 91精品免费| 黑人精品久久97| 大香蕉99热| 啊啊啊好湿久久| 日本天堂网| 荡小穴在线观看| 97亚洲性爱| 天天干2区3区| 97自拍一区| 国产美女激情| 亚洲综合69| 国产精彩女在线观看视频| 好屌色综合| 视频在线中文字幕| 夜夜夜爽www精品视频| 男人的天堂在线| 中文字幕人乱码中文字的预防方法 | 伊人AAA| 大香蕉碰| 美女干逼2| 青青草久草AV| 国产97色在线| 欧美中出| 粉嫩av在线一区二区| 丁香婷婷九月| 香一区二区三区| 日本东京热大香蕉a片| 啊啊啊不要嗯嗯在线观看| 老鸭窝成人| 淫荡网址| 日本免费中文字幕在线| 激情五月天丁香社区| 超碰国产在线| 日本曲间由美性生活片| 97精品视频免费| 久久久精品久久| 三四中文字幕| 大香蕉久| 97色色色| 久久久久密臀视频| 极品少妇久久久| 五月婷婷丁香六月丁香| 极品极品色影院| 国产亚州精品美女久久久免费| 91久久久久久久久18| 九九九午夜| 超碰成人公开| 中文字幕在线日亚洲9| 色妹子A V| 亚洲精品久久一区二区三区蜜桃臀| 欧美色老汉| 久久黄片国产一区二区| 亚洲操逼网| 九九热视频这里只有精品| 91男同| 国产一区二区三区高清视频| 中文字幕在线日亚洲9| 九九九九九九九九九九九免费国产| 日韩少妇无吗| 操逼视频国产无套| 日韩三级视频一区二区三区| 97精品网站| 少妇厨房愉情理伦片bd在线观看| 久久久 国产精品| 香蕉久久精品| 国产91精品在线免费| 91在线精品| 久久色一区二区| 亚洲日韩97| 精品无码一区二区三区| 9/A片| 一本久道久久综合狠狠爱一密臀精| 在线无码网站| 色香在线| 日韩免费看在线黄色片| 玖玖在线视频| 性欧美999| 免费一级欧美片片线观看| 91国产大片| 久久老熟女| 99精品成人免费看| 高清孕妇孕交 交孕妇| 91深夜夜| 久久骚少妇| 翔田千里无码中出中文字幕| 国产一区二区三区不卡手机在线| 思思久热在线精品66| 天天干天天拍| 97干色| 国产精品久久久久av| 99热大香蕉伊在线| 偷窥自拍亚洲天堂网爆| 今日头条成人一区二区三区四虎精品| 日韩 国产 欧美自拍| 99色在线观看| 91久久久久久久久18| 五月丁香啪啪| 懂色Av| 99.色网| 内射夫妻三片| 热热色综合网| www.婷婷| 亚洲不卡一| 4399成人黄A片| 另类欧美色| 欧美熟女少妇| 日韩性爱1级片视频| 欧美天堂超碰97| 无码WWW免费视频网站| 久久久神马影院| 欧美亚洲日本激情在线| 亚洲丝袜少妇在线| 欧美激情片一区二区| 久久精品一区二区一8| 青青草自拍视频在线播放| 国产午夜精品理论片一二三区区| 自拍视频大全亚洲专媒视频/一区二区三区 | 精品无码久久久久久久杏吧| 97视频620| 亚洲啪啪视频一区二区| 亚洲图片小说欧洲| 狠狠躁天天躁日日躁| A 天堂在线观看视频| 综合亚洲网| 欧美香蕉视xxx| 亚洲97久久精品亚洲| 蜜桃天美传媒AV一区二区三区| baisiav| 国产精品免费日韩| 超碰美国| 久久久91福利姬| 久久亚洲影院一区二区| 亚洲欧洲精品视频发布| 久久东京热久久| 天天操美美| 中文字幕五区| 操逼操网| 天天夜躁日日躁狠狠2002| 十八禁电影伊人网| 色综和网| 欧美中文字幕男人天堂久久精品| 92午夜免费福利视频| 伊人九九| 国产超碰97| 青青草视频爽一爽| 国产亚洲人妻综合日韩 久久| 秋霞网—男女啪啪亚洲免费体验区 | 欧美1727免费观看视频| 午夜福利免费精品视频| 三男一女不戴套的A片| 超碰色美女| 精品久久久不卡一区二区| 91 手机在线播放 绯色| 在线无码视频| 人人干黄色| 丝袜美腿av女优在线| 国产精品久久久久久久免牛肉蒲团| 校园春色制服丝袜中文字亚洲| 久久久久久精品免费看A级| 亚洲性爱成人| 日韩欧美性吧婷婷乱伦大香蕉| 久久粉色| 久久在肏| 97色欧洲| 91超碰在线观看| 插入粉嫩少妇视频| 亚洲资源网| 欧美第38页| 久久久久久久久久久人妻| 国产激情综合五月久久| 亚洲国产麻豆一区二区三区| 老熟女乱子伦中文字幕一区二区| 免费看片黄| 国产家庭乱伦性爱视频| 日韩激情电影中文字幕| 日韩欧洲操屄视频| 亚洲**2021在线观看| 亚洲国产成人精品女人久久久| 老熟妇91| 亚洲成人AB| 国产精品国产| 97爱碰| 日韩在线人妻网站| 欧美 亚洲 大香| 麻豆福利视频导航| 色婷婷基地| 色999五月色| 综合熟女| 青青草日逼视频| 欧美一二在线| 欧美猛交黑寡妇中文字幕| 人妻爽爽啪视频| 蜜桃丰满熟妇av无码区不卡| 久久熟女精品不卡一区| 欧美自拍网| 99re免费| 思思热久久成人| 插日本熟女视频| 中日高清无码操逼视频| 亚洲高潮少妇| 黄总AV色图| n1038 一二三区| 97一区二区三区视频| 青操影院| 色网色网色网色网色网色| 精品国模无码| 黄片直播三级黄片两女一男| 婷婷99| yirendaxiangjiashipin| 欧美色图 人妻| 欧亚 另类 久| 97爱综合| 91成人在线免费视频| 九九热精品在线| 精品亚洲俞拍视频一区| 色亚洲欧美| 久久精品 六十路 熟女 欧美| 6080YYY午夜理论片在线观看| 97摸视频| 裸模AV女优| 色香网| 强奸乱伦AV网址| 色婷网| 狼人综合婷婷激情四射 | 一级做a爰片性色毛片久久| 色婷婷六月丁香七月婷婷| 中文字幕在线高清男人的天堂 | www.婷婷五月天| 花野真衣| 东京热大香焦| 五十路六十路七十路熟婆| 亚洲综合中文字幕有码| 色噜噜国产在线| 日本伦理一区二区| 欧美日韩欧美| 人人摸.人人色| 精品女人999| 肉丝无码中文高清| 精品丝袜无码一区二区三APP| 大香蕉啪啪网| 久操在97| 五十路六十路七十路熟婆| 婷婷亚洲综合| 九99久久| 夜嗨影院| 亚洲www91| 日韩成人高清一区二区| 亚洲 日本 一 二 三| 久久精品日韩专区免费观看| A级毛片在线看免费| 强奸xx国产| 国模91| 国产精品干干干| 97色97好| 超碰在线欧美性爱激情| 超碰人人草| 亚欧操逼片在线观看| 欧美另类综合久久| 91强在线播放| 豆花视频操逼网址| 91亚州日韩高清| 久久综合97| 九九在线视频| 日本亚洲嫩草影院啪啪| 亚洲精品无码久久AV| 欧美情色贴图| 日韩人妻一二三区视频| 最新av在线| 国产二区视频在线观看电影| 天天影视网综合少妇| 青草精品视频日本久久久久网站在线| 激情五月天丁香| 偷拍2020| 人人透人人操| 大香蕉日亚洲日本亚大| 日韩去日本高清在| 国产91 丝袜在线播放| 久久婷婷色| 欧美第五页| 久久香蕉影院| 欧美日韩在线小说| 久久內射| 久久夜黄色无码A级大片| 黄色成品网站| 波多野42部无码喷潮在线观看| 亚州 综合 色图| 久久国内| 欧美在线第五页| 4399成人黄A片| 天天澡天天爽日日AV| 中文字幕乱碼在线| 在线欧美69V免费观看视频| 天天干1区2区在线| 九九成人视频| 国产JDAV无码视频在线观看| 欧美人人天天网| 久久久久久欧美精品se一二三四| 欧美性色网| 午夜福利在线视频1000| 每日更新AV| 亚洲色人阁| 国产乱人妻精品入口| 国产精品一区av在线| 日本高清视频在线观看黄已三辽| 伊人久久88国产女| 26uuu性| 成人小电影网站tex| 亚洲射综合网| 色婷婷导航| 久9九综合在线| 91久久18禁| 日本色婷婷| 丰满美女一级毛片在线播放| 青青草一区二区三区四| 在线天堂999| 日韩不卡a级视频专区| 中文字幕在线免费观看| 中文字幕视频免费| 色哟哟的毛片| 香蕉人人操tv| 一级性爱视频免费在线| 日日躁天天躁狠狠躁| 日韩三级在线观看mp4| 色五月婷婷网| 日本一级二级三级网站| 久久久久久久免费A片国产成a人亚洲精∨品无码 | 男人的天堂激情| 操逼日韩无码| 97香蕉网| 深爱伊人影院| 国产十八禁视频| 色噜噜人妻av 中文字幕| 殴美大黄片| 超碰色男人操熟女| 黄色无码高清黄色无码网站| 欧美热图99| 日日噜噜夜夜久久亚洲一区二区| 色综合中文字幕不卡| 三级三久久线久久99久目本WW| 97超碰超碰| 欧美成人精品一区| 亚欧操逼片在线观看| 欧美国产有色电影| 久久大线蕉一区| 99热这里是精品| 日本123区操B视频| 人妻丰满熟妇一区二区三| 亚洲综合电影| 欧美一级A一级a爱片久久| 欧美综合1性辶| 啊啊啊轻点在线观看| 劲爆欧美人妖三区91| 91高跟美女在线播放| 欧美日韩人人精品| 美女黄页| 男人的天堂.com| 亚洲成?V人片在线观看福利| 日本欧美亚洲高清在线看| 亚洲国产尤物yw在线观看| 手机看片日韩人妻| 涩涩涩综合| 国产精品久久久久久亚洲色欲| 久久久久亚洲Av无码专区老牛影视| 超碰97COm中文| 欧美,亚洲,日韩,v,天堂,手机在线观看| 久久久成人精品| 蜜臀无码一区二区| 国产有码一区| 一区二区不卡| 伊人亚洲综合| 日日干男人的天堂| 色眯眯av| 欧美色图另类图片| 婷婷爽人人婷婷爽视频| 91肉丝| 少妇久久久久久久久| 欧美超碰在线| 亚洲一区中文精品| 尤物黄色在线观看网站| 无色无码| 色婷婷99| 日韩精品人妻中文字幕有码午| 成年女人一区| 日韩午夜国产| 色香91| 夜夜做夜夜爽精品视频| 上床啊啊啊| 色综合国产在线观看| 中文字幕日韩人妻视频| 国产欧美日韩精品中文| 五月婷婷丁香| 丰满少妇一区二区三区四区观看| 青青草日本中文字幕| 久久9精品网站| 一本色道综合久久欧美日韩精品| 九九九久久久| 沈阳熟女高潮对白视频| 欧美不卡二区| 色色国产| 亚洲色图欧美色图制服诱惑| 亚洲欧美洲综合| 日本黄色精品专区网站| 黄片免费看黄片免费看| 日本在线不卡123| 亚州熟妇精品| 久操国产在线| 久久精品午夜国产亚洲AV无码| 无码av永久免费专区网站| AV九九| 麻豆一区在线| 国产熟女精品一区二区| 日韩丰满熟妇| 蜜臀亚洲中文| 综合天天。| 亚洲人成网站7777| 国产精品久久久三级无码| 性欧美天天| 91宗合网| 333kkkk·亚洲com久久| 亚洲欧美天堂在线| 亚洲国产精品久久久男人的天堂| 国产一线二线三线av| 免费1级a做爰片观看| 狠狠操狠狠爱| 97国产伦理| 一区二区三区美女超清| 狠狠干综合| 国产一区二区精品在线视频| 国产91福利小视频在线观看| 婷婷五月天影院| 青草视频人妻在线观看| 1769一区| 亚州情色j区| 欧美日韩狠狠爱| 日韩丝袜二区| 精品无码人妻一区二区免费蜜桃| 久久久新亚洲AV| 丁香六月婷婷久久综合| 人伦四五区| 天堂中文资源在线bt| 国产丝袜美腿美女麻豆| 狠狠婷婷亚洲中文综合久久| 国产久久av| 人人噜夜夜操| 91春色| 国产自偷自拍一区| 亚洲熟妇综合久久久久久| 久操网址| 青青草原综合久久大伊人精品| 久热最新在线杭州| 色玖玖| 97在线视频网站| 亚洲综合色网| 亚洲欧美洲综合| 亚洲欧美日韩综合在线尤物| 91美女高潮| av天堂手机版追回| 九九久久国产精品怡红院| 日本色色色视频| 我爱操| 国产成人网址| 亚洲日韩美女丝袜美腿人妻视频| 色5月婷婷| 91精品人妻一区二区三区蜜臀| 成功精品影院| 91老熟女| 激情图片亚洲色图| 乱伦a片视频| 狠操91,com| 日本有码影片下载 | 久九9精品| 日韩操逼性鲍| 久久中日麻豆| 男人a天堂手机在线版| 久久综合久色欧美综合狠狠 | 精品视频专区| 99久久婷婷丁香| 日本东京热大香蕉a片| 天天操夜夜操狠很操| 中亚黄色三级大片| 日本岛国黄色网址| 久久超碰网| 国产不卡精品91| 美女视频尤物网在线看| 精品熟女一区=区三区| 男女激烈网站最新| 久操| 人妻啊啊人妻啊| 国内毛片欧美香蕉精品| 91一起操| 婷婷久久五月综合激情| 老熟女中文字幕高清| 亚洲国产欧美中文永久| 美女黄网| 白丝在线一区| 啊啊啊操一区| 精品99999| 亚洲人久久久网| 丁香五月天激情网站| 啊啊啊啊啊啊好多水| 精品无码久久久久| 亚洲天堂区| 脫衣舞一区二区三区| 精品亚洲俞拍视频一区| 日本高清一区二区在线| 韩国一级做a久久久久| 日韩淫色网| 3028国产精品| 超碰97中文| 成人精品在线观看| 欧美日韩免费性爱| 玖玖资源视频一区二区三区| 久jiu久神马影院| 超碰人人超在线观看| 日韩免费高清大片在线| 97在线播放| 狠狠2050在线观看| 黄页18禁| 色欲天天综合网| 大黄片做爱的大的| 精品人妻一区二区免费蜜桃视频| 黄色片G G G| 嫩草 人人网精品| 99在线精品视频| 成人三一级一片aaa| 3PAV乱伦视频| 夜夜夜爽www精品视频| 久久骚| 99re8免费高清在线| www.夜夜| jk白丝没脱就开始啪啪| 在线视频免费观看午夜| 日日妻色网| 超碰天天操| 日韩成人午夜精品久久高潮| 欧美制服另类丝袜| 婷婷久久大香蕉| 久久久久国产精品片区无码直播| 国内毛片国产欧美拍| 久热这里只有精品9| 中日992视频| 97在线/亚洲| 插B在线观看| 97 国产精品| 91亚洲欧美综合高清在线| 欧美在线 亚洲| 精国久久一区二区三区98| 夜夜操一区二区| 美女AV一区二区| 成人欧美日超碰| 日本九九久久99| 亭亭在线资源| 久久婷婷苹果| 国内毛片四区| 啊啊啊免费视频| 久艹日日日| 秋霞一集毛片观看| 国产精品4p在线观看| 亚洲第一狼人丝袜美女另类| 免费黄色片。| 激情视屏国产乱伦强奸| 偷窥自拍亚洲天堂网爆| 色噜噜婷婷| 免费的av网| 你草精品在线视频| 丝袜狂射91| 99这里只有精品| 日韩精品人妻| 99热这里只有精品18| 亚洲国产精品久久AV| 性暴力欧美猛交在线直播| 久久黄色视频一区二区三区| 久久av成人无码免费| 日日碰狠狠添天天爽超| 91美女丝袜诱惑视频| 操九九九九九九| 天天操美美| 97bbn| 神马麻豆福利院| 97资源视频| 国产欧美日韩精品中文| 九九热最新| 国产精品 亚洲情色| 亚洲。天堂。日本在线观看| 亚洲中文sv| 可以免费看黄片的视频| 一区二区三区机械有限公司| 97超级久久强资源| 欧美与日韩97| 好涩综合| 国产女人与拘做受视频免费| 影音先锋国产精品| 97干天天| 嗯嗯啊啊操我| 综合免费无码中文| 九九天堂| 亚洲综合情色| 国产精品人妻无码久久久老鸭窝| 精品成人无码| www.狠狠干.coom | 十八禁电影伊人网| 综合欧美亚洲| 91精品无码人妻系列| 26uuu国产免费观看| 自拍丝袜美腿人妻| 极品色综合| 国产探花精品在线| 亚洲熟妇丝袜在线观看| 丝袜天堂网| 色五天伊人| 亚洲乱色视频一区、二区在线| 久久久99999久网站| а√天堂资源官网在线资源| 欧美成人一级免费电影| 97精品久久久久久久| 国产精品一区在线播放| 国产女人操逼视频| 青青操少妇| 国产精品剧情| 99热在线播放| 搡老女人老91妇女熟女| 久久男人精品| 免费看毛片操穴| 女上位精品在线| 人人操肉肉| 动漫片子网站3黄| 国产女大学生AV| www.99中文字幕| 1204av韩国| 亚洲 小说 欧美 激情 另类| 清柠毛片| 国产乱子伦一区二区三区在线观看| 国产男人又猛又粗又爽| 亚洲黄色网址| 性在久久久久久| 丝袜综合| 久久久99免费| 手机av天堂久久久久| 青青草国产欧美非洲黑人| 淫妻综合网| 日韩高清一二三| 日韩性爱视频在线免费观看 | 91东京热男人的天堂| 快点操死我| 日本中文字幕不卡视频| 97午夜剧场日韩| 国产精品女aA片爽爽视频| 婷婷色导航| 欧成人精品H无码| 国产无遮挡| 人妻色偷色噜| 欧美91在线+|+欧美| 国产精品露脸在线观看| 精品乱码久久久久| 三级三级三级a级全黄三| 国产第11页| 操逼网站视频漫画国产| 欧美在线啊啊啊| 九九久久一区二区伦理| 日本不卡免费二区| 国产精品青草综合久久| 欧美美女视频| 真实高潮91| 国产黄色在线播放观看| 亚洲日本天堂| 在线强奷到舒服的无码视频 | 26uuu国产成人综合| 亚洲情色无码一区二区三区| 日韩中文字幕在线视频观看| 精品视频久久| 人人摸人人干| 亚洲 自拍偷拍 欧美| 欧美少妇高潮视频| www.久久爱| 白丝被操91| 久久精品99| 五月丁香综合| 日本黄色精品专区网站| julia ann久久| 久久激情视频| 无码人妻一区二区三区色欲aⅴ | 蜜乳AV一区| 国产视频第2页| 操碰97| 国产隔壁老王影院在线| 九九免费影片| 国产亚洲 中文欧美久久| 欧美日韩国产三级黄色| 亚洲综合草草| 日韩紧密久久| 免费1级a做爰片观看| 亚洲欧美97√| 四虎AV影视国产精品亚洲精品| 久久夜黄色无码A级大片| 综合欧美亚洲| 97网址97| 开心五月婷婷| 自拍偷拍 日韩无码| 天天色图| 98超碰日本| 啊好爽受不了无码| 黑人操一区二区| 亚洲欧美日韩偷拍色图| 日韩av情韩国爱禁区av一区二区| 九九Av| 日韩 欧美 另类 人妻| 欧美色图片| 女同性恋中文字幕| 天天α片| 日本三级韩三级99久久| 国产日韩在线播放av| 欧美亚洲高清| 98超碰欧美| 欧美色日本| 超碰 另类 欧美| 欧亚成人| 中文字幕日韩电影人妻| 97爱亚洲| 欧美日本不卡| 99热这里只有是精品10| 色九九九| 天天做天天爱天天爽| 丁香六月东京热| 操迟操逼在巾线Fre看| 91观看 国产白丝| 丰满熟女人妻一区二区三五十一路| 啊啊啊啊啊啊啊好爽不要| 五月丁香婷婷综合| 最近的最新的中文字幕视频| 日日噜噜夜夜狠狠视频无| 97AV在线观看| 9丨久久九九九| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 97ai亚洲| 夜夜 中文视频rt| 欧亚日韩三区| 韩国三级三级BD在线| 大香樵伊人网| 少妇超碰在线| 久久人妻精品| 国模少妇一区二区三区| 亚洲国产午夜真人一级片中文字幕精品黄网站| 韩国国产欧美情侣视频在线| 日本黄页视频在线观看| 高清不卡国产| 亚洲美女精品| 国产人伦精品一区二区三区| 婷色五月| 黄污污污污| 国产精品老熟女一区二区| 久久精品三级影视| 一起草精品人妻| 亚洲啪啪性视频| 全球成人中文在线| 亚洲日本韩国在线| 大香蕉手机视频| 国产精品免费视频不卡| 久操精品网| 欧美少妇熟女| 日韩女优在线| 熟女中出视频| 亚洲日韩久久精品一区| 亚洲综合一| 日本久久久久久久久久|