99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

Faster R-CNN與Visual Genome區(qū)域注意特征實(shí)踐

Faster R-CNN與Visual Genome區(qū)域注意特征實(shí)踐 簡介這份代碼包實(shí)現(xiàn)基于Faster R-CNNResNet-101的自下而上注意力模型面向圖像字幕與視覺問答VQA方向的研究者和開發(fā)者用以解決傳統(tǒng)CNN網(wǎng)格特征難以聚焦顯著物體區(qū)域的問題。模型借助Visual Genome的物體與屬性標(biāo)注進(jìn)行多GPU訓(xùn)練預(yù)訓(xùn)練權(quán)重可直接輸出顯著圖像區(qū)域的特征替代注意力式字幕與VQA模型中的CNN特征論文據(jù)此取得CIDEr 117.9、BLEU_4 36.9與70.3%的VQA總體準(zhǔn)確率。壓縮包共981個文件、約14.27MB以C源碼、Caffe網(wǎng)絡(luò)配置prototxt、Python腳本、CUDA核與Shell腳本為主另含Jupyter Notebook示例、Markdown說明及預(yù)訓(xùn)練權(quán)重覆蓋數(shù)據(jù)準(zhǔn)備、訓(xùn)練配置到特征提取各環(huán)節(jié)。已有753人學(xué)習(xí)讀者可獲得完整的Faster R-CNN訓(xùn)練流水線、顯著區(qū)域特征提取腳本與示例配置便于在自有數(shù)據(jù)上復(fù)現(xiàn)自下而上注意力特征并接入下游字幕或VQA模型。1. 從“整圖特征總差點(diǎn)意思”說起Faster R-CNN 加 Visual Genome 的自下而上注意模型能解決什么很多人第一次把 Faster R-CNN 的區(qū)域特征接到圖像字幕和 VQA 任務(wù)上都會遇到一個反直覺結(jié)果整圖池化看起來也能跑但一換到小目標(biāo)、遮擋和屬性問答就露餡。這套資源圍繞 Visual Genome 的區(qū)域標(biāo)注訓(xùn)練自下而上注意模型用 Caffe 做檢測與特征抽取再把區(qū)域特征送進(jìn) image captioning 和 visual question answering 分支MSCOCO 圖像常被拿來跑端到端驗(yàn)證Jupyter Notebook 負(fù)責(zé)把抽特征、訓(xùn)練和推理串成可復(fù)現(xiàn)的實(shí)驗(yàn)記錄。它適合已經(jīng)跑過基礎(chǔ) CNN 文本模型、想弄明白區(qū)域級注意到底怎么落地的人也適合需要一套可改參數(shù)、可看中間產(chǎn)物的工程樣本來排查指標(biāo)不漲的原因。2. 資源拆解與運(yùn)行底座Caffe、Faster R-CNN 與 Visual Genome 標(biāo)注怎么對齊2.1 這套資源由哪幾塊拼起來檢測器、特征、詞表與 Notebook這套資源不是單一模型文件而是“檢測器 區(qū)域特征 任務(wù)頭 實(shí)驗(yàn)記錄”的組合。Faster R-CNN 負(fù)責(zé)在圖像上產(chǎn)生候選框Visual Genome 的區(qū)域描述和屬性標(biāo)注讓候選框不只是物體框還能承載“什么顏色、什么動作、什么關(guān)系”這類語義VQA 和 image captioning 任務(wù)頭再消費(fèi)這些區(qū)域特征。Caffe 在這里的角色偏工程底座檢測網(wǎng)絡(luò)配置、權(quán)重加載和前向推理都圍繞它展開所以環(huán)境沒對齊時后面訓(xùn)練任務(wù)頭再花哨也沒有意義。Jupyter Notebook 則把抽特征、訓(xùn)練、推理切成可觀察的單元格適合調(diào)參和排查中間產(chǎn)物。模塊職責(zé)輸入輸出常見誤用Faster R-CNN 檢測器產(chǎn)生候選區(qū)域并做 ROI 特征原始圖像、檢測配置、權(quán)重區(qū)域框、分?jǐn)?shù)、區(qū)域特征直接把整圖特征當(dāng)區(qū)域特征用Visual Genome 標(biāo)注適配對齊區(qū)域描述、屬性與圖像區(qū)域標(biāo)注文件、圖像 ID區(qū)域語義標(biāo)簽、屬性表圖像 ID 與標(biāo)注 ID 沒統(tǒng)一VQA 任務(wù)頭問題編碼與區(qū)域注意分類問題詞表、區(qū)域特征、答案詞表答案分?jǐn)?shù)答案未歸一化就進(jìn)詞表圖像字幕任務(wù)頭區(qū)域特征解碼成句子區(qū)域特征、字幕詞表字幕序列時間步和區(qū)域數(shù)錯位Jupyter Notebook串聯(lián)抽特征、訓(xùn)練、推理配置、緩存、小樣本可復(fù)現(xiàn)實(shí)驗(yàn)記錄單元格亂序執(zhí)行后不回看我一般先驗(yàn)證檢測器輸出再碰任務(wù)頭。做法是抽 20 到 50 張圖打印每張圖的候選框數(shù)量、分?jǐn)?shù)分布和特征范數(shù)如果框數(shù)普遍為 0或者特征范數(shù)全是 0先別懷疑注意模塊回到檢測閾值和預(yù)處理查。這個順序能省掉大量“訓(xùn)練不漲”的假排查。資源里的 Notebook 適合當(dāng)實(shí)驗(yàn)記錄但不適合當(dāng)黑匣子每個單元格的輸入輸出要能對上否則換一臺機(jī)器就會翻車。2.2 環(huán)境與目錄約定Caffe 編譯、Python 依賴和權(quán)重放置Caffe 環(huán)境最容易出問題的地方不是編譯命令本身而是 Python 解釋器和依賴路徑混用。我的習(xí)慣是給這套資源單獨(dú)建一個工作目錄把檢測配置、權(quán)重、數(shù)據(jù)軟鏈接、輸出特征和 Notebook 分開放編譯 Caffe 時只把當(dāng)前環(huán)境需要的 Python 路徑寫進(jìn)配置不把系統(tǒng)里多個 Python 混在一起。下面這段腳本是目錄初始化和編譯前的檢查思路不是唯一寫法重點(diǎn)是每一步都能單獨(dú)驗(yàn)證。# 工作目錄按“配置、權(quán)重、數(shù)據(jù)、輸出、代碼”分開避免路徑互相污染 mkdir -p /workspace/region-attn/{configs,weights,data,outputs,notebooks} # 先確認(rèn)當(dāng)前 shell 的 python 和 pip 指向同一套環(huán)境 which python python -c import sys; print(sys.executable) # 進(jìn)入 Caffe 源碼目錄后按機(jī)器情況改 Makefile.config # 關(guān)鍵項(xiàng)CPU_ONLY、BLAS、PYTHON_INCLUDE、PYTHON_LIB、USE_OPENCV cd /workspace/region-attn/caffe make clean make -j$(nproc) make pycaffe # 把 pycaffe 加進(jìn)當(dāng)前環(huán)境的搜索路徑不要寫死到系統(tǒng)全局 export PYTHONPATH/workspace/region-attn/caffe/python:$PYTHONPATH python -c import caffe; print(caffe.__file__)這段腳本的邏輯說明先建目錄是為了讓后面所有路徑都有明確歸屬which python和sys.executable用來確認(rèn)解釋器一致避免編譯時用了一個 Python、運(yùn)行時又用另一個make pycaffe只編譯 Python 接口失敗時先看Makefile.config里的 Python 頭文件和庫路徑PYTHONPATH只對當(dāng)前 shell 生效適合臨時驗(yàn)證。參數(shù)上CPU_ONLY只在沒有可用 GPU 或只想驗(yàn)證流程時打開打開后特征抽取會慢很多USE_OPENCV和 BLAS 的選擇按機(jī)器實(shí)際庫來不要照抄別人的配置。權(quán)重放置也要有約定檢測權(quán)重放weights/配置文件放configs/數(shù)據(jù)用軟鏈接指向data/輸出統(tǒng)一落outputs/。這樣 Notebook 里只寫相對outputs/的路徑換機(jī)器時改一個根目錄即可。提示先跑單張圖的前向確認(rèn)caffe能導(dǎo)入、權(quán)重能加載、輸出 blob 名稱對得上再批量抽特征。2.3 數(shù)據(jù)契約MSCOCO 圖像、Visual Genome 屬性與 VQA 問答的字段映射數(shù)據(jù)契約沒定好后面所有指標(biāo)都不可信。MSCOCO 圖像通常用image_id關(guān)聯(lián)字幕和 VQA 問答Visual Genome 的區(qū)域標(biāo)注則有自己的圖像 ID 和區(qū)域 ID這兩套 ID 不能靠文件名猜必須有顯式映射表。VQA 分支還要把問題、答案、圖像 ID 綁在一起答案要做小寫、去標(biāo)點(diǎn)、數(shù)字歸一化否則同一個答案會裂成多個類別。下面這段代碼是一個最小映射骨架重點(diǎn)是先把字段關(guān)系跑通再談模型結(jié)構(gòu)。import json import re from collections import Counter # 答案歸一化小寫、去首尾空白、壓縮標(biāo)點(diǎn)數(shù)字單獨(dú)處理 def norm_answer(text): text text.lower().strip() text re.sub(r[^\w\s], , text) text re.sub(r\s, , text) return text # 讀取 VQA 標(biāo)注構(gòu)建 image_id - 問答列表 with open(data/vqa_annotations.json, r, encodingutf-8) as f: vqa json.load(f) # 讀取圖像 ID 映射外部 ID 到本地文件名不要假設(shè)文件名就是 ID with open(data/image_id_map.json, r, encodingutf-8) as f: id_map json.load(f) answer_counter Counter() samples [] for item in vqa[annotations]: image_key str(item[image_id]) if image_key not in id_map: continue answers [norm_answer(a[answer]) for a in item[answers]] answer_counter.update(answers) samples.append({ image_path: id_map[image_key], question: item[question].strip(), answers: answers, }) # 只保留出現(xiàn)次數(shù)達(dá)到閾值的答案低頻答案歸入占位類 min_freq 5 vocab {a for a, c in answer_counter.items() if c min_freq} for s in samples: s[answer_label] next((a for a in s[answers] if a in vocab), __unk__) print(samples:, len(samples), answers:, len(vocab)) print(samples[0])邏輯說明norm_answer把答案統(tǒng)一成可比較形式避免“Yes”“yes”“yes.”被當(dāng)成三類image_id_map是外部 ID 到本地路徑的橋缺了它就會出現(xiàn)“標(biāo)注有、圖像找不到”的靜默丟樣本min_freq控制答案詞表大小太小會引入大量低頻類太大會把有效答案壓進(jìn)__unk__。參數(shù)上min_freq可以從 5 到 10 之間試具體看數(shù)據(jù)規(guī)模問題長度和答案長度要在詞表構(gòu)建時統(tǒng)計分布不要拍腦袋截斷。字段映射建議固定成一張表image_id對圖像question_id對問答region_id對區(qū)域answer對歸一化答案attribute對 Visual Genome 屬性。每次換數(shù)據(jù)先跑一遍空值、重復(fù) ID 和缺失圖像檢查這比后面調(diào)學(xué)習(xí)率有用得多。3. 從候選框到區(qū)域特征用 Faster R-CNN 抽取自下而上注意特征的參數(shù)與落盤3.1 為什么不用整圖池化區(qū)域級特征的選型理由與參數(shù)邊界整圖池化把一張圖壓成一個向量優(yōu)點(diǎn)是簡單缺點(diǎn)是所有區(qū)域共享同一份表示遇到“左邊那只貓是什么顏色”這種問題時模型只能靠問題文本硬猜。自下而上注意的不同點(diǎn)在于候選區(qū)域來自檢測器的目標(biāo)性不是任務(wù)頭自己學(xué)出來的軟注意力Faster R-CNN 的 RPN 先給出可能包含物體的框再對每個框做 ROI 池化得到一組區(qū)域特征。VQA 和 image captioning 任務(wù)頭再在這組特征上做選擇。這個結(jié)構(gòu)適合區(qū)域級語義明顯的場景但不適合把所有希望都壓在“區(qū)域數(shù)越多越好”上框太多會引入背景噪聲框太少會漏小目標(biāo)。參數(shù)常見范圍作用調(diào)大后的風(fēng)險score_thresh0.2 到 0.5過濾低分候選框框太少小目標(biāo)被漏掉nms_thresh0.3 到 0.5抑制重疊框閾值過高會留下重復(fù)區(qū)域max_regions10 到 50控制每圖區(qū)域數(shù)顯存和后續(xù)注意計算量上升min_box_size8 到 32 像素過濾過小框小目標(biāo)召回下降特征維度按檢測器輸出ROI 池化后的通道數(shù)維度不匹配會直接報錯選型理由要落到任務(wù)上VQA 需要區(qū)域和問題的交互圖像字幕需要區(qū)域序列解碼二者都吃“區(qū)域質(zhì)量”。我一般先把score_thresh設(shè)得稍低保證召回再用nms_thresh和max_regions控制數(shù)量如果任務(wù)頭顯存吃緊優(yōu)先降max_regions不要一上來砍特征維度。特征維度必須和任務(wù)頭輸入層一致改檢測器輸出通道后要同步改任務(wù)頭否則訓(xùn)練時會在第一個全連接層報形狀錯誤。3.2 特征抽取腳本配置文件、閾值、NMS 與輸出格式特征抽取腳本的核心不是“調(diào)一次前向”而是把預(yù)處理、候選框過濾、NMS 和輸出鍵名固定下來。下面是一個 Caffe 前向的骨架寫法具體 blob 名稱要按資源里的檢測配置調(diào)整不要直接照抄 blob 名先在單張圖上打印net.blobs.keys()和輸出形狀。import numpy as np import caffe import cv2 # 檢測配置和權(quán)重按資源包實(shí)際路徑填寫 net caffe.Net(configs/detector.prototxt, weights/detector.caffemodel, caffe.TEST) # 常見預(yù)處理減均值、通道順序按訓(xùn)練配置來別把 BGR/RGB 弄反 mean np.array([104.0, 117.0, 123.0], dtypenp.float32) def preprocess(img_path, target_size600): img cv2.imread(img_path) h, w img.shape[:2] scale target_size / max(h, w) img cv2.resize(img, (int(w * scale), int(h * scale))) img img.astype(np.float32) - mean img img.transpose(2, 0, 1) # HWC - CHW return img[None, :, :, :] def nms(boxes, scores, thresh0.4): # 簡化版 NMS按分?jǐn)?shù)排序后依次抑制重疊框 order scores.argsort()[::-1] keep [] while order.size 0: i order[0] keep.append(i) xx1 np.maximum(boxes[i, 0], boxes[order[1:], 0]) yy1 np.maximum(boxes[i, 1], boxes[order[1:], 1]) xx2 np.minimum(boxes[i, 2], boxes[order[1:], 2]) yy2 np.minimum(boxes[i, 3], boxes[order[1:], 3]) w np.maximum(0.0, xx2 - xx1) h np.maximum(0.0, yy2 - yy1) iou w * h / ( (boxes[i, 2] - boxes[i, 0]) * (boxes[i, 3] - boxes[i, 1]) (boxes[order[1:], 2] - boxes[order[1:], 0]) * (boxes[order[1:], 3] - boxes[order[1:], 1]) - w * h 1e-6 ) order order[1:][iou thresh] return keep def extract_one(img_path, score_thresh0.3, nms_thresh0.4, max_regions30): blob preprocess(img_path) net.blobs[data].reshape(1, *blob.shape[1:]) net.blobs[data].data[...] blob net.forward() # 這里的 blob 名要按檢測配置替換先打印 net.blobs.keys() 確認(rèn) boxes net.blobs[rois].data.copy() scores net.blobs[scores].data.copy().reshape(-1) feats net.blobs[pool5].data.copy() keep np.where(scores score_thresh)[0] keep keep[nms(boxes[keep], scores[keep], nms_thresh)][:max_regions] return boxes[keep], scores[keep], feats[keep] boxes, scores, feats extract_one(data/sample.jpg) print(boxes.shape, scores.shape, feats.shape)邏輯說明preprocess里的均值和通道順序必須和檢測器訓(xùn)練時一致BGR/RGB 弄反是典型“特征看起來有值但指標(biāo)不漲”的原因nms用來壓掉同一物體的重復(fù)框nms_thresh越小抑制越強(qiáng)extract_one先按score_thresh過濾再 NMS最后截斷到max_regions。參數(shù)上target_size影響小目標(biāo)召回和顯存圖像長邊太小會漏小物體太大則單圖前向變慢max_regions要和任務(wù)頭的區(qū)域位置編碼或注意層容量匹配。代碼里故意保留了“blob 名要確認(rèn)”的注釋因?yàn)椴煌瑱z測配置的輸出層命名不完全一樣直接照抄很容易拿到空數(shù)組。抽完一張圖后先打印框數(shù)和分?jǐn)?shù)分布再批量跑。3.3 特征落盤與校驗(yàn)HDF5/TSV 的組織、維度與抽樣檢查區(qū)域特征落盤要有穩(wěn)定鍵名和可校驗(yàn)的維度。常見做法是按圖像 ID 建 HDF5 數(shù)據(jù)集每個數(shù)據(jù)集存boxes、scores、features三個數(shù)組如果后續(xù)要按區(qū)域做檢索再額外落一份 TSV 記錄圖像 ID、區(qū)域序號和分?jǐn)?shù)。鍵名統(tǒng)一用補(bǔ)零后的字符串或整數(shù)別一邊用000123、一邊用123。下面這段校驗(yàn)代碼適合放在抽特征之后先跑小樣本再全量。import h5py import numpy as np def save_region_features(path, image_id, boxes, scores, feats): # 統(tǒng)一鍵名格式避免 HDF5 里同時出現(xiàn) 123 和 000123 key str(image_id).zfill(6) with h5py.File(path, a) as f: if key in f: del f[key] grp f.create_group(key) grp.create_dataset(boxes, databoxes.astype(np.float32)) grp.create_dataset(scores, datascores.astype(np.float32)) grp.create_dataset(features, datafeats.astype(np.float32)) def check_h5(path, sample_n20): with h5py.File(path, r) as f: keys list(f.keys())[:sample_n] for k in keys: feats f[k][features][:] boxes f[k][boxes][:] zero_ratio float((np.abs(feats).sum(axis1) 0).mean()) print(k, regions:, feats.shape[0], dim:, feats.shape[1], zero_ratio:, round(zero_ratio, 3), boxes:, boxes.shape) check_h5(outputs/region_features.h5)邏輯說明save_region_features用補(bǔ)零鍵名統(tǒng)一格式重復(fù)寫入時先刪舊組避免調(diào)試時讀到上一次的臟數(shù)據(jù)check_h5抽樣看區(qū)域數(shù)、特征維度和全零比例zero_ratio高通常意味著候選框沒取到、預(yù)處理出錯或 ROI 層輸入不對。參數(shù)上sample_n不用太大20 到 50 個鍵就能看出問題如果特征維度在不同圖像之間不一致先查max_regions截斷邏輯和 ROI 池化輸出不要直接進(jìn)訓(xùn)練。落盤路徑建議按數(shù)據(jù)切分分文件例如訓(xùn)練集和驗(yàn)證集各一個 HDF5避免一個文件過大后隨機(jī)讀變慢。4. 把區(qū)域特征接到 VQA 與圖像字幕訓(xùn)練、推理與 Jupyter Notebook 工作流4.1 VQA 分支問題編碼、區(qū)域注意與答案詞表VQA 分支不是把問題向量和圖像向量拼起來就完事。常見做法是先用 LSTM 或 GRU 編碼問題得到每個時間步的隱狀態(tài)再用區(qū)域特征和問題向量算注意分?jǐn)?shù)對 K 個區(qū)域做 softmax 加權(quán)最后把加權(quán)區(qū)域向量和問題向量送進(jìn)分類層預(yù)測答案。這里的區(qū)域注意是任務(wù)頭自己學(xué)的軟注意和檢測器產(chǎn)生的“自下而上”候選區(qū)域是兩層概念前者決定看哪些區(qū)域后者決定有哪些區(qū)域可選。答案詞表要在訓(xùn)練前固定低頻答案歸入__unk__評估時對歸一化后的答案做匹配。import torch import torch.nn as nn class VQANet(nn.Module): def __init__(self, vocab_size, region_dim2048, hidden_dim512, num_answers1000): super().__init__() self.embed nn.Embedding(vocab_size, 300) self.question_encoder nn.LSTM(300, hidden_dim, batch_firstTrue) self.region_proj nn.Linear(region_dim, hidden_dim) self.attn nn.Linear(hidden_dim, 1) self.classifier nn.Linear(hidden_dim * 2, num_answers) def forward(self, question_ids, region_feats, region_maskNone): # question_ids: [B, L], region_feats: [B, K, D] q self.embed(question_ids) _, (h, _) self.question_encoder(q) q_vec h[-1] # [B, H] r self.region_proj(region_feats) # [B, K, H] score self.attn(torch.tanh(r q_vec.unsqueeze(1))).squeeze(-1) # [B, K] if region_mask is not None: score score.masked_fill(~region_mask, -1e9) weight torch.softmax(score, dim1) attended (r * weight.unsqueeze(-1)).sum(dim1) # [B, H] logits self.classifier(torch.cat([attended, q_vec], dim1)) return logits邏輯說明question_encoder取最后一個時間步的隱狀態(tài)作為問題向量region_proj把檢測特征投到同一維度attn給每個區(qū)域打分masked_fill用來屏蔽無效區(qū)域classifier接加權(quán)區(qū)域向量和問題向量。參數(shù)上hidden_dim要和區(qū)域特征維度解耦區(qū)域維度大時先投影再注意num_answers由答案詞表決定不要訓(xùn)練中途改region_mask在變長區(qū)域數(shù)時很重要沒有它會把補(bǔ)齊的零區(qū)域也算進(jìn) softmax。訓(xùn)練時先用小學(xué)習(xí)率跑通一個 batch確認(rèn) logits 形狀和標(biāo)簽范圍對得上再開全量。4.2 圖像字幕分支解碼器輸入、時間步對齊與 beam search圖像字幕分支的常見結(jié)構(gòu)是“區(qū)域特征編碼 文本解碼”。解碼器每個時間步輸入上一個詞和區(qū)域上下文輸出下一個詞分布。時間步對齊最容易出錯的地方是訓(xùn)練和推理不一致訓(xùn)練用 teacher forcing喂真實(shí)上一個詞推理用模型自己生成的上一個詞如果位置編碼或起始符沒對齊就會生成重復(fù)詞或空序列。區(qū)域特征可以取平均也可以做注意加權(quán)我一般先用平均池化跑通基線再換注意池化看提升。def beam_search(model, region_feats, start_id, end_id, vocab_size, beam_size3, max_len30, length_penalty0.7): # region_feats: [1, K, D]這里只演示單圖解碼流程 beams [([start_id], 0.0)] for _ in range(max_len): candidates [] for seq, score in beams: if seq[-1] end_id: candidates.append((seq, score)) continue logits model.decode_step(region_feats, seq) # [vocab_size] log_probs torch.log_softmax(logits, dim-1) topk torch.topk(log_probs, beam_size) for logp, token in zip(topk.values.tolist(), topk.indices.tolist()): candidates.append((seq [token], score logp)) # 按長度歸一化后的分?jǐn)?shù)排序避免長句被系統(tǒng)性壓低 candidates.sort(keylambda x: x[1] / (len(x[0]) ** length_penalty), reverseTrue) beams candidates[:beam_size] return beams[0][0]邏輯說明beam_search保留beam_size條候選序列每一步對每條序列取 top-k 詞擴(kuò)展length_penalty用來平衡長句和短句分?jǐn)?shù)取值小于 1 時更鼓勵長句max_len防止無限生成。參數(shù)上beam_size從 3 到 5 比較常見太大推理變慢length_penalty在 0.6 到 1.0 之間試字幕任務(wù)里太大會生成啰嗦句子。訓(xùn)練時decode_step的輸入序列要包含起始符推理時不要把真實(shí)字幕混進(jìn)去否則離線指標(biāo)會虛高。4.3 Jupyter Notebook 的執(zhí)行順序與中間產(chǎn)物緩存Notebook 的風(fēng)險是“看起來能跑”實(shí)際單元格順序已經(jīng)亂了。我的習(xí)慣是把抽特征、構(gòu)建詞表、訓(xùn)練、推理分成四個固定段落每段開頭檢查輸入文件是否存在輸出寫到帶時間戳或參數(shù)名的目錄。批量執(zhí)行用nbconvert不要靠手動點(diǎn)“全部運(yùn)行”來保證可復(fù)現(xiàn)如果 Notebook 里有大模型或大特征先清緩存再執(zhí)行避免讀到上一次的中間產(chǎn)物。# 用參數(shù)化方式執(zhí)行 Notebook輸出到獨(dú)立目錄避免覆蓋上一次結(jié)果 jupyter nbconvert --to notebook --execute notebooks/pipeline.ipynb \ --output outputs/run_001/pipeline_executed.ipynb \ --ExecutePreprocessor.timeout1800邏輯說明--execute會從頭執(zhí)行所有單元格能暴露單元格順序問題--output把執(zhí)行后的 Notebook 單獨(dú)落盤方便對比中間產(chǎn)物timeout按特征抽取或訓(xùn)練規(guī)模調(diào)整。參數(shù)上run_001這種目錄名要能對應(yīng)到配置不要用“最終版”這類不可回溯的命名。Notebook 里讀取路徑盡量用絕對路徑或從環(huán)境變量取根目錄相對路徑在本機(jī)沒問題換目錄執(zhí)行就會報找不到文件。每次改完單元格順序先重啟內(nèi)核再全量執(zhí)行一次這個動作能擋掉很多“結(jié)果不一致”的假問題。5. 避坑與排查特征、路徑、顯存和指標(biāo)的四類翻車現(xiàn)場5.1 特征全零或維度錯位從候選框閾值到 HDF5 鍵名現(xiàn)象抽完特征用腳本檢查發(fā)現(xiàn)某些圖像的區(qū)域特征全零或者訓(xùn)練時報features維度不匹配更隱蔽的是 HDF5 里能讀到鍵但鍵對應(yīng)的圖像 ID 和標(biāo)注對不上。原因常見有三類。第一score_thresh設(shè)得過高單圖沒有任何候選框通過過濾后續(xù)數(shù)組變成空第二預(yù)處理通道順序或均值不對檢測器輸出分?jǐn)?shù)整體偏低看起來像“模型不行”第三HDF5 鍵名一邊補(bǔ)零一邊不補(bǔ)零訓(xùn)練時按123取落盤時存成000123取不到就返回空數(shù)組。維度錯位多半是改了檢測器輸出通道或max_regions截斷邏輯任務(wù)頭輸入層沒同步。解決先在單圖上打印候選框數(shù)量、分?jǐn)?shù)最大值和特征范數(shù)不要批量跑完再猜。把score_thresh臨時降到 0.1 看框數(shù)是否恢復(fù)恢復(fù)說明閾值問題不恢復(fù)就查預(yù)處理和 blob 名。HDF5 鍵名統(tǒng)一用同一個函數(shù)生成讀寫都走它不要手寫字符串。任務(wù)頭輸入維度從配置文件讀不在代碼里寫死。下面這段檢查腳本可以放在抽特征之后。import h5py import numpy as np with h5py.File(outputs/region_features.h5, r) as f: bad [] for k in list(f.keys())[:100]: feats f[k][features][:] if feats.size 0 or np.abs(feats).sum() 0: bad.append((k, empty_or_zero)) elif feats.ndim ! 2: bad.append((k, bad_ndim)) print(bad samples:, bad[:10], count:, len(bad))這段腳本只做粗篩empty_or_zero指向候選框或特征寫入問題bad_ndim指向形狀問題。參數(shù)上抽樣 100 個鍵足夠發(fā)現(xiàn)系統(tǒng)性問題如果壞樣本集中在某個圖像 ID 段優(yōu)先查那批圖像的路徑和后綴。5.2 Caffe 環(huán)境與 GPU 顯存編譯、driver 與 batch 的連鎖反應(yīng)現(xiàn)象import caffe報找不到模塊或者前向跑到一半顯存溢出有時同一臺機(jī)器昨天能跑今天換了個 shell 就導(dǎo)入失敗。原因PYTHONPATH只在當(dāng)前 shell 生效換終端后失效編譯時用的 Python 和運(yùn)行時不是同一個解釋器CPU_ONLY配置和實(shí)際運(yùn)行模式不一致GPU 顯存被其他進(jìn)程占用或者單圖輸入尺寸、max_regions太大。Caffe 的報錯有時不夠直白導(dǎo)入失敗和顯存溢出容易被混為一談。解決按“導(dǎo)入、加載權(quán)重、單圖前向、批量前向”四層驗(yàn)證。導(dǎo)入失敗先看sys.path和caffe.__file__加載權(quán)重失敗看配置文件里的層名和權(quán)重是否匹配單圖前向失敗看輸入 blob 形狀批量才溢出就降 batch 或max_regions。顯存問題先用nvidia-smi看占用不要盲目重啟。我的血淚經(jīng)驗(yàn)是不要把PYTHONPATH寫進(jìn) Notebook 的第一個單元格就以為萬事大吉換內(nèi)核后要重新確認(rèn)。# 分層驗(yàn)證導(dǎo)入、路徑、單圖前向 python -c import caffe, sys; print(sys.executable); print(caffe.__file__) python -c import caffe; netcaffe.Net(configs/detector.prototxt,weights/detector.caffemodel,caffe.TEST); print(list(net.blobs.keys())[:5])參數(shù)上單圖驗(yàn)證時把輸入長邊調(diào)小、max_regions調(diào)低先確認(rèn)流程能走通再逐步放大到正式配置。不要用“能導(dǎo)入”代替“能前向”這兩步失敗原因完全不同。5.3 Notebook 狀態(tài)與路徑污染內(nèi)核重啟、相對路徑與緩存現(xiàn)象Notebook 里同樣的代碼第一次跑正常改了一個參數(shù)再跑結(jié)果對不上換目錄執(zhí)行時報文件找不到訓(xùn)練 loss 曲線和上次幾乎一樣懷疑模型沒更新。原因單元格亂序執(zhí)行變量還停留在舊狀態(tài)相對路徑依賴當(dāng)前工作目錄nbconvert和手動執(zhí)行的 cwd 可能不同中間特征或詞表緩存沒有按參數(shù)區(qū)分新實(shí)驗(yàn)讀到了舊文件。Notebook 的“全部運(yùn)行”不等于“干凈運(yùn)行”內(nèi)核里的舊變量不會自動清掉。解決每個實(shí)驗(yàn)開始前重啟內(nèi)核輸出目錄帶參數(shù)指紋讀寫路徑統(tǒng)一從環(huán)境變量或配置根目錄拼不在單元格里寫../data。批量執(zhí)行用nbconvert執(zhí)行后檢查輸出 Notebook 里的關(guān)鍵打印。緩存文件按score_thresh、max_regions、數(shù)據(jù)切分命名參數(shù)變了就換目錄。下面是一個路徑約定示例。import os from pathlib import Path ROOT Path(os.environ.get(REGION_ATTN_ROOT, /workspace/region-attn)) RUN_NAME vqa_k30_nms04_s03 OUT ROOT / outputs / RUN_NAME OUT.mkdir(parentsTrue, exist_okTrue) feature_path OUT / region_features.h5 print(feature_path:, feature_path)這段代碼把根目錄和運(yùn)行名分開RUN_NAME里帶上關(guān)鍵參數(shù)換參數(shù)就不會覆蓋舊結(jié)果。參數(shù)上REGION_ATTN_ROOT適合在本地和遠(yuǎn)程環(huán)境切換RUN_NAME不要用日期單獨(dú)命名要能看出區(qū)域數(shù)和閾值。5.4 指標(biāo)不漲的假象答案歸一化、詞表覆蓋與評估切分現(xiàn)象訓(xùn)練 loss 在降但 VQA 準(zhǔn)確率幾乎不動圖像字幕的 BLEU 或 CIDEr 看起來隨機(jī)波動換個隨機(jī)種子結(jié)果差很多。原因答案沒有歸一化yes、Yes、yes.被當(dāng)成不同類模型學(xué)到的是噪聲答案詞表覆蓋太低大量樣本落到__unk__準(zhǔn)確率自然上不去評估切分和訓(xùn)練切分有重疊或者評估時用了訓(xùn)練集詞表之外的答案映射字幕評估沒有固定解碼參數(shù)beam size 和長度懲罰一變指標(biāo)就漂。解決先統(tǒng)計答案頻次和詞表覆蓋率再看混淆矩陣。答案歸一化放在構(gòu)建詞表之前不要在評估時臨時改min_freq調(diào)大后觀察__unk__比例比例過高就降閾值或做答案聚類。評估切分固定成文件不要每次隨機(jī)切。字幕評估固定 beam size、max length 和 length penalty記錄在實(shí)驗(yàn)配置里。指標(biāo)不漲時先跑一個極小樣本過擬合如果小樣本都過擬合不了問題在數(shù)據(jù)管道或標(biāo)簽對齊不在模型容量。from collections import Counter answers [yes, Yes, yes., no, no, two, 2] norm [a.lower().strip().rstrip(.) for a in answers] counter Counter(norm) coverage sum(c for a, c in counter.items() if c 2) / len(norm) print(counter, coverage:, coverage)這段腳本只演示歸一化和覆蓋率計算coverage低說明低頻答案占比高需要調(diào)整詞表策略。參數(shù)上min_freq不要只看訓(xùn)練集驗(yàn)證集里出現(xiàn)但訓(xùn)練集沒有的答案要?dú)w入__unk__否則評估會泄漏。6. 進(jìn)階驗(yàn)證把區(qū)域數(shù)量、NMS 閾值與注意可視化做成可回滾實(shí)驗(yàn)6.1 三組參數(shù)的可回滾掃描區(qū)域數(shù)K、NMS 閾值和score_thresh是這套資源里最值得做小樣本掃描的三個參數(shù)。不要一上來全量訓(xùn)練先固定其他變量用 200 到 500 張圖跑三組配置觀察候選框數(shù)量分布、特征全零比例和任務(wù)頭小樣本過擬合能力。每組配置輸出到獨(dú)立目錄指標(biāo)和中間產(chǎn)物都能回滾。實(shí)驗(yàn)max_regionsnms_threshscore_thresh觀察點(diǎn)回滾條件A200.40.3框數(shù)是否夠小目標(biāo)小目標(biāo)漏檢明顯B300.50.2召回與噪聲平衡重復(fù)框過多、顯存漲C500.40.3任務(wù)頭上限訓(xùn)練變慢但指標(biāo)不漲掃描時固定隨機(jī)種子和數(shù)據(jù)切分記錄每組的驗(yàn)證指標(biāo)和單圖推理耗時。如果 B 組指標(biāo)最好但顯存吃緊優(yōu)先降K而不是砍特征維度如果 C 組沒有提升說明任務(wù)頭對區(qū)域數(shù)不敏感回到注意層結(jié)構(gòu)查。6.2 注意可視化與抽樣驗(yàn)證注意權(quán)重是排查“模型到底看哪”的直接手段。取一個驗(yàn)證樣本打印 top-5 區(qū)域的坐標(biāo)、分?jǐn)?shù)和注意權(quán)重和原圖對照如果權(quán)重集中在背景框先查候選框質(zhì)量和score_thresh不要急著改注意層。我一般會把可視化結(jié)果和特征文件一起落盤方便下次對比。# 假設(shè) weight 是 [K] 的注意權(quán)重boxes 是 [K, 4] topk weight.argsort(descendingTrue)[:5] for idx in topk.tolist(): print(box:, boxes[idx].tolist(), score:, float(scores[idx]), attn:, float(weight[idx]))這段代碼只打印 top-5參數(shù)上不需要畫圖也能判斷注意是否合理如果 top 區(qū)域全是邊緣框回到檢測閾值和 NMS。我后來每次接類似任務(wù)都先把K、NMS 閾值和score_thresh做成命令行參數(shù)跑三組小樣本再決定是否全量訓(xùn)練這套習(xí)慣讓我少返工很多次。如果你手上正好有這套資源先按第 3 章抽一小批特征再對照注意權(quán)重看區(qū)域質(zhì)量別直接沖全量訓(xùn)練。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
影音 五月 婷婷 久久| 国熟女视频| 日本欧美国产| 99亚洲精品| 色久综合| 婷婷六月成人| 婷婷色丁香五月| 综合xx网| 亚洲激情五月| 嫩草AV久久伊人妇女超级A| 亚洲精品又粗又大又爽A片| 五月丁香综合久久| 丁香五月在线自慰| 激情文学久久| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 亚洲AV电影av| 婷婷精品| 婷婷五月视频| 五月婷婷激情网| 久久丁香五月婷婷| 成人国产网站| 丁香五月天激情网址| www.99热视频在线观看| 婷婷五月激情六月| 可以看的av网站| 密着浓厚中出乚交尾GvG935| 人人操人人操919999| 色婷丁香五月| 99精品综合| 激情五月丁香五月| 精品综合网在线| 午夜婷婷久久| 婷婷激情五月综合在线视频| 九色91国产| 亚洲九九视频| 日韩婷久| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 婷婷玖玖五月天| 五月丁香综合啪啪啪啪啪| 色噜综| 婷婷99狠狠躁天天躁中| 一级内射毛片| 蜘蛛女免费观看完整版高清电影| 亚洲色五月| 五月丁香综合啪啪| 五月婷婷偷拍| 99热99热| 婷婷五月天在线观看| 婷婷五月超碰| 草婷婷在线| 婷婷在线播放| 亚洲九九99精品视频在线播放| 99日本黄站| 五月综合婷婷久久在线| 色五月婷婷中文字幕| 久婷视频| 色五月激情五月丁香五月婷婷啪啪综合| 思思热99热| 五月天激情小说| 五月天怕怕| 五月天色婷婷激情综合| 囯产精品久久欠久久久久久九大| 99热草草| 天天日天天摸天天| 五月婷婷久久大香蕉| 激情綜合W W W,激情五月天| 人人看人人97| 久久婷婷色五月| 欧洲毛片基地c区| 久婷婷久草| 五月丁了香蕉综合| 大香蕉久操| 婷婷酒色网| 久久视屏这里只有久久| 色色色欧美| 五月天婷婷影院| 亚洲色综合| 色丁香影院| 最近韩国日本免费高清观看| 性爱先锋AV| 色五月激情五月| 久久精品99国产精品日本| 综合AV在线| 丁香五月天偷拍| 69激情小说| 亚洲热热视频| 日韩ac不卡无码| 天天干天天干天天干天天干天天干| 精品无码久久久久久久久| 久久久久婷婷| 五月婷婷偷拍| 26uuu精品一区二区| 日韩欧美一级大黄网站| 五月丁香六月激情欧美综合| 九九婷婷五月天影视| 9 7总站超级碰免费视频| www.99久| 五月天久久久| 五月开心婷婷网| 久久久人妻| 九九无毛| 五月天综合视频| 婷婷五月天天| 五月丁香六月婷婷综合| 色婷婷91激情小说| 五月天涩涩| 色五月亚洲| www.99热最新视频8| 天天操天天操天天操天天操天天操| 最新久久网址| 久久综合爱| 超碰a女人的天堂| 五月天婷婷在线AN| 色婷婷色综合激情91| 久久一热| 五月婷婷国产| 无码橾| 色月丁| 五月天婷婷无码视频| 色狠狠激情五月| 五月天色色色色色| 激情综合五月天| 97色操| 激情五月天综合| 9久9久9久女女女九九九一九| 天天干天天色天天干| 成人短视频免费| 综合五月激情| 久热re在线视频| 九九这里有精品| 五月丁香最新| 六月婷婷激情图片| 天天综合亚洲综合网天天αⅴ| 激情五月天在线视频| 婷久久| 色色五月天丁香| 激情久久久久久久久| 色色无码| 丁香综合婷婷开心激情网| 天天狠狠夜夜狠狠2023| 亚洲综合婷婷五月| 日韩 mm 不卡| 丁香综合网| 狠狠操狠狠爱| 精品香蕉99久久久久网站| 中文字幕簧片| 99九九热视频免费| 国产成人+综合亚洲+天堂| 五月婷婷欧美| 丁香婷婷九月| 五月天激情小说欧美激情| 九九热免费视频| 4438亚洲欧美| www.婷婷亚洲基地| 97狠狠色| 婷婷丁香色五月天久久88| 成人精品一区二区三区四区五区 | 国产真实乱了老女人视频| 99热国品| 国产婷婷久久| 99ri精品| 婷婷五月天深爱| 综合色色婷婷| 天天日夜夜| 激情综合区| 色九九综合| 无码99| 99久久国产宗和精品1上映| 日本猛少妇色XXXXX猛叫| 三人荫蒂添的好舒服A片| 综合aV在线| 91免费试看| 久久久久久99精品无码| 丁香五月天无码AV| 这里只精品热在线18| 色色日本| 26uuu亚洲| 国产偷人爽久久久久久老妇APP| 久99在线| 91色五月| 综合五月天天天天天五月| 色五月婷婷丁香五月| WWW.17C亚洲精品| 色婷婷综合网站| 欧美日韩成人在线| 美腿丝袜AV天堂网| 五月开心婷婷极品激情| 丁香美女主播视频在线观看| 久久久久久久久久8888| 香蕉97碰碰碰欧美| 婷婷涩涩五月天| 日韩无码专区| 色婷婷久久综合丁香五月| 精品网站:999WWW| 婷婷导航| 99热99精品在线观看| 色色色五月天婷婷| 婷婷五月丁香啪啪| 开心五月综合激情综合五月| 丁香五月激情综合| 香蕉AV福利精品导航| 91制片厂久久久国产电影| 激情綜合網址| 噜噜噜噜在线| 欧美影院婷婷| 蒲京久久无码视频| 国产精品久久久久久白浆色欲| xx色综合| 五月天伊人久久久久| 婷婷深爱五月天| 色九四色| 热的五码久久精品| 亚洲色热| 婷婷五月花| 激情伊人网| 99re这里只有精品国产99| 五月丁香青草综合啪啪| 亚洲综合激情五月久久| 婷婷不卡基地| www.激情五月天.com| 天天婷婷色六月| 五月丁香啪啪| 99热999| 激情丁香久久| 日本久久人| 极品人妻VIDEOSSS人妻| 婷婷五月丁香综合| 九九婷婷五月天| 五月婷婷久久综合| 在线观看亚洲视频影院| 婷婷丁香五月高清| 久热一区| 深爱激情中文五月天av| 五月天成人综合| 色噜噜狠狠色综无码久久合欧美| 九九AV在线| 婷婷综合色五月天| 日本人妻伦在线中文字幕 | 日本婷婷五月天| 日韩成人影片在线观看| 色综合久久88色综合天天人守婷| 久久综合中文| 99在线精品视频免费| 99综合一区| 色久天| 色综合久久无码| 婷婷五月丁香五月丁香| 中文字幕,综合,91| 伊人五月婷| 色色婷婷五月天| 无码任你操| 欧美S码亚洲码精品M码| 色99亚洲| 激情综合五月| 日韩久久视频| 精品爆操| 五月天婷婷涩涩| 色亚洲色宗合| 日日夜夜狠狠| 无码一区二区日韩| 五月丁香六月激情欧美综合| 91超碰在线播放| 夜夜爽天天干| 久久99草五月婷婷| 五月精品免费XXX| 99在线精品视频| 久久五月婷| 激情五月天网站| 久草婷妨| 手机免费福利视频| 狠狠色综合久久久久| 丁香五月天婷婷久久| 99亚洲精品视频| 日本99在线| 激情五月丁香在线观看直播| www.夜夜操.con| 色噜噜狠狠色综合成人99| 久久久日韩特色特黄AAAA| 精品无码色欲AV| A久久| 大香蕉伊人久久| 婷婷五月丁香香蕉| 婷婷丁香五月网| 综合久久8| 大香蕉院线| 久久五月婷| 91久久久久久久| 天天干一干| 玖玖婷婷色| 丁香五月天激情网| 91无码一起草| 丁香五月 六月婷婷首页| 久久五月丁香| 天天爽天天爽| 日本97在线| 久久这里只有精品07| 天天插天天爽| 五月天无码| 91九色网| 亚洲综人色综网| 色爱综合网| 色99在线视频| 色色婷婷五月天| 激情99| 五月天婷婷AV| 久久最新色| 丁香五月激情网| 久久久欧美精品sm网站| 婷婷色情网| 99久扒热| www.婷婷五月| 国产精品噜噜在线视频| 99热在线观看| 婷婷五月天激情AV影院| 日本99婷婷| 终合激情网| 一二区成人电影| 综合一区二区三区| 五月丁香影院| 色婷婷丁香五月| 激情99。| 色婷婷aV四虎| 亚洲成人av在线播放| 天天操天天日天天爽| 婷婷色婷婷| 丁香五月图片| 婷婷五月天99综合网站| 日韩精品在线观看9| 九九婷婷五月天影视| 超碰亚洲欧美| 伊人大香久久| 婷婷丁香五月综合免费视频百花| 91色逼| 五月天天综合| 婷婷无码视频| 久久久人妻人伦| 26uuu在线观看| 开心 五月 综合| 九九在线精品| 99视频网| 狼人狠狠操| 一起草性爱不卡视频| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 久久这里只有精品99| 视频一二区| 九月婷婷综合| 深爱丁香激情| 丁香五月WWW| 久久精彩视频| 婷婷色中文字幕| 思思久久99热只有频精品66| 色五月婷婷在线观看| 色婷婷超碰| 色五月六月| 五月天成人在线视频丁香| 欧美情色电影一区二区| 九九成人| 久久五月丁香伊人青草| 婷婷五月娱乐在线| 99熟女啪啪视频| 亚洲在线资源| 亚洲乱码日产精品BD| 欧美激情综合色丁香婷婷五月天| 生活片五区| 久色网| 色婷婷丁香五月综合| av激情在线| 无码色色色| 2w在线视频| 丁香五月熟女| 色播五月| 丁香五月婷婷色| 国产avapp 网| 精品久久久中文字幕大豆网推荐理由| 亚洲熟妇无码乱子AV电影| 欧美性二区| 久久无码成人| 成人网站免费在线播放| 国产淫熟妇| 日韩精品超碰在线观看| 成人无码精品1区2区3区免费看| 国产无套精品一区二区| 激情五月天婷婷免费观看| 亚洲激情六月| 丁香五月六月| 亚洲最大激情无码| 日日想日日夜日日操| 伊人久久大香天蕉亚洲特级| 日韩少妇内射免费播放| 九九九九毛片| 九九久热| 思思视频精品| 热99精品视频五月| 99久久综合狠狠综合久久| 99热免费精品| 婷婷五月六月激情| 狠狠色丁香| 狠狠久久婷五月综合色| se99视频| z色五月播播久久| www.av视频xx999.com| 久久日曰| 99热在线观看| 97色永久免费视频| 五月丁香婷婷三级| 开心深爱五月天| 九月丁香八月婷婷久久综合久97| 国产99久久久国产精品免费看 | www.丁香六月婷婷久久天堂影院.con| www.久久| 五月婷婷久久大香蕉| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 久久九区| 五月丁香六月综合激情无码软件亮点| 丁香五月婷婷性爱| 爱射综合| 婷婷丁香五月激情密臀av| 玖玖婷婷五月天| 在线观看亚洲AV| 99久久er| 色的色综合| 五月婷婷久久久| 久久久久久久,99精品视频| 五月丁香综合啪啪| 丁香六月婷婷| 婷婷五月天激情在线| 99热思思在线观看| 黄网在线播放| 97电影99热| 91/九色黑人| www.婷婷| 五月丁香综合网| 99ri视频在线播放| 婷婷丁香小说| 精品无码99| 色亚洲视频| 日日噜噜夜夜狠狠久久丁香六月| 国产小网站| ai97re99一本| 欧美日韩二区在线| 国产熟妇的荡欲午夜视频| 超碰成人免费| 欧美内射AA| 五月婷婷九| 五月五婷婷| 午夜不卡成人一区二区| 亚洲精品网站色视频| 91综合国免费久入| 在线中文亚洲| www.9797国产| 97碰成超视频免费视频| 98色丁香五月婷婷综合网| 婷婷五月天综合久久日| 播丁香五月婷婷欧美| 人妻22p| 丁香色五月天| 色色色免费视频| 久久综合影院| 狠狠色综合网| 蜜桃五月天色| 人人操人av| 激情五月丁香在线观看直播| 人妻videos人妻高清| 激情q青青草在线婷婷| 另类在线| 丁香婷婷六月激情文学| 天天日日夜夜爽| 九九黄色网| 久久婷婷综合网| 日韩色五月| 六月婷婷香蕉| 婷婷五月天Av| 日本99热| 思思视频久久| 天天五月香欧美| 99超在线| 69热在线| 人妻系列久久久久久久久久久 | 综合色播| 激情婷婷色小说| 色五月婷婷丁香国产在线| 丁香五月婷婷无码AV| 一起草无码视频| 99re在线视频精品,这里只有精品18,| 婷婷五月综激情| 9久精品视频| 欧美综合123区| 91色五月| 视频综合网| 丁香五月日啪| 日日夜夜噜噜爽爽| 久久久精品人妻录| 婷婷六月综合激情| 五月天久久婷婷| 婷婷伊人五月天| 成功精品影院| 国产69久久久欧美黑人A片| 黄色录像网点| 五月丁香亭亭AV女优| 日韩无码性爱| 天天综合 99久久婷婷| 久热婷婷| 激情婷婷亚洲五月| 日操夜撸| av在线免费网站| 99久久婷婷| 囯产精品久久欠久久久久久九大| 男女啪啪做爰高潮无遮挡| 五月婷三级片| 久久综合色五月| 丁香六月婷婷开心| 五月情四婷婷| 婷婷色激情五月天| 国产99久久久| 男妓跪趴把舌头伸进我的嘴巴| 男同91| 热婷婷av| 激情久久五月天| www.天天干.com| 日本成人噜噜噜噜噜| 蜜桃五月天| 91色综合网| 五月丁香啪| 91久久日日| 久久婷婷五| 久久人人看| 色宗合,宗合网| 欧洲免费视频色| 超碰人人干| 五月天伊人| 超碰亚洲欧美| 色天使色婷婷| 草美女在线观看视频在线播放| 日韩av网址大全| 免费啪啪亚州视频| 无码激情AAAAA片-区区| 婷婷亚州综合| 天天肏屄夜夜爽| 丁香五月在线观看完整版| 思思99久久| 日韩中文字幕| 骚五月婷婷| 精品久久婷婷五月天| 思思久日精品视频| 丁香色婷婷| 日本色99网站| 超碰在线人妻| 婷婷深爱网| 成人片在线播放| 97色婷婷| 色色色婷婷五月| 婷婷五六日| 超碰爱爱爱| 天天天天操| 黄色aa观看aaguochan| 日本色道视频网站| 丁香五月天在线| 欧美99| 91黄色五月天视频| 久久99免费视屏| 男人的天堂五月丁香| 日韩999| 丁香六月丁香婷婷激情| 婷婷五月在线免费| 婷婷五月天堂| 激情丁香五月| 狠狠狠狠狠狠色| 日日夜夜噜噜爽爽| 五月丁香黄色视频| av在线不卡播放| 中文字幕在线免费观看视频| 色深爱五月| 99热99色| 五月丁香六月婷婷久久肏| 开心激情久久久久久久| 99热啪啪| 色婷婷啪啪| 免費亭亭成人| 久久久网站| 五月色情婷婷| 久草五月天电影网| 97精品自拍视频| 天天干天天av天天射| 婷婷亚洲天堂| 色婷婷小说网| 五月丁香色停停啪啪啪| 免费成人va| 久久久久久久人妻| 国产毛片操B| 狠狠草天天草| 激情六月丁香| 激情丁香五月| 久久机热这里只有精品| 91久久久久久| 亚洲中文av| 婷婷五月天天aV| 国外亚洲成AV人片在线观看| 丁香五月婷婷激情网| 成人免费va| 开心色色五月天综合| 黄色大片又大粗又爽| 婷婷色片| 五月丁香久久婷| 一本伊人色婷| 情欲禁地| 婷婷欧美偷拍综合| 99久在线精品99re8热| 啪啪操超碰| 婷婷开心激情五月激情网| 激情五月婷| 玖玖无码中文| 97色97干| WWW久| 婷婷丁香成人五月天| 中文字幕乱码亚洲精品一区| site:901-07.com| 婷婷在线精品| 五月丁香激情四射| 丁香五月AV| 996re热精品视频| 丁香五月色情| 久久人妻少妇嫩草AV| 激情丁香婷婷五月天| 天天干电影| 婷婷伊人久久| 久久永久视频| 久9热视频在线观看| 婷婷五月天视频亚洲| 噢美99| WWW.开心五月天.COM| 乱精品一区字幕二区| site:minyis.com| 五月天偷拍| 婷婷五月丁香五月| 色综合伊人网| 性韩日色婷婷五月天激情啪啪XXX| 超碰免费人妻| 99综合久久| 人妻中文在线| av在线资源| 九九aV| 91久热| 久久九九99| 成人视屏在线观看| 综合色色色| 久久狠狠欧美| 99热精品中文字幕| 另类激情五月| 青青草五月天| 天天骑日日爽| 婷婷亚洲综合| 四色 爱 婷婷 精品 亚洲 五月天| 99这里只有精品| caobi四区| 少妇水多A片太爽了| 丁香五月综合图片在线观看| 国产欧美性成人精品午夜| 色婷婷六月精品| 狠狠干.com| 亚洲va在线| AA片在线观看视频在线播放| 欧美狠狠地| 国产三级在线播放| 亚洲五月婷婷| 久久综合干| 深爱激情丁香| 妻久久久久| 久久婷婷综合五月| 看久久性爱视频| 久久99免费视屏| 久久小视频| 色色激情网| 色香欲综合| 在线国产精品色| 大地9中文在线观看免费高清| 青青草蜜臀| 玖玖九九超碰| 天堂综合久久| 五月丁香婷婷综合| 精品一二三区久久AAA片| 六月婷色六月| 人操人人| 超碰91人人操| 99热热九九| 狠狠干五月| 五月激情天天干| 狠狠爱激情网| 激情五月天丁香| 婷婷五月色丁香在线看| 婷婷色偷拍| 色噜噜综合网| 婷婷色天香| 苗黎美女四级成人版一级二级毛片| 丁香成人视频| 色琪琪一综合久久激情五月视频| 五月天婷婷基地| 精品三区影院| 99碰网站| 丰满老熟妇BBBBB搡BBB| 色99热| 中美日韩成人在线| 五月天激情网站| 丁香婷婷五月基地| 自拍偷窥99热| 中国丰满熟女A片免费观| 五月丁香婷婷开心| 成人AV在线网站| 激情又色又爽又黄的A片| 五月综合色播播丁香婷婷| 久草五月婷婷| 99国产精品白浆在线观看免费| 婷婷六月激情综合| 开心六月婷| 91九色偷拍| 五月丁香自拍| 另类丁香五月天区图| 超碰伊人碰婷婷五月| 色综合99| 91成人性爱视频| 91精品91久久久中77777| 亚洲情综合五月天| 五月天丁香综合久久国产| 99热99思午夜精品| 青青草婷婷久久| 99综合网| 久久丁香五月天| 五月天国产成人| 欧美色色日韩| 9久久精品| 亚洲狠狠干| 九九热这里有精品23| 成人一区在线观看| 啪啪一区| 91精品久久久久久久久| 五月激情综合五月| 夜夜大香蕉婷婷丁香| 超碰免费人| 色一情一乱一乱一区91| www五月天激情com| 永久的网站AAAA | 日韩性爱AV| 久久婷婷内射| 五月婷婷精品视频| 欧美噜噜噜草| 人操人人| 香蕉AV777XXX色综合一区 | 99视频| 天天婷婷综合| 五月天婷婷色情| 熟妇内谢69XXXXXA片| 79精品视频在线观看,| 婷婷六月激情啪啪| 色情丁香五月婷婷精品| 色综合久久88色综合天天| 久久久中文| 99热99美国在线观看| 五月天色婷婷基地| 天天摸天天舔在线视频| 97婷婷在线| 超碰九热| 婷婷伊人綜合中文字幕| 91丨九色丨熟女|老版| 五月天激情av| 色情五月丁香婷婷网| 激情图片久久| 超碰99成人在线| 99精品在线| 丁香五月手机在线| 天天五月情| 99这里精品| 99久久99九九九99九他书对| 9久热在线精品| 精品一二三区久久AAA片| 夜夜撸天天操| 久草a片| 狠狠操狠狠做| 九九热99精品| 欧美噜噜免费观看| 久久总和99| 久久超级碰视频| 伊人99久久| 涩五月婷婷| 色色色无码| 丁香五月最新地址| 少妇综合网| 夜夜操天天爽| 亭亭色天香| 中文人妻主播久久| 九久9精品| 99热线观看9| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 五月色俺婷婷| 亚洲婷婷丁香五月视频| 狠狠狠婷婷五月综合| 久久久久久激情| 久久综合色五月| 91热久| 久久婷婷六月综合国际| 午夜无码熟熟妇丰满人妻 | 五月丁香花伦理电影| 大香蕉av在线| 99久久久免费| 亚洲成人av在线| 五月丁香婷草| 久久久久久99精品无码| 成人一区在线观看| 色色婷婷婷丁香五月天| 久久免费干| 亚洲日本韩国| 中国女人做爰A片| 性一交一乱一交A片久| 久久婷婷五月综合| 婷婷五月天av| 五月婷婷开心网| 思思热视频在线| 99精品在线| 国产亚洲精品久久一区二区三区| 欧美精品18| 天天色视频| 六月丁香啪啪啪| 韩国激情五月天综合网| 丁香色五月天| 另类综合色| 亚洲婷婷欧美婷婷| 狠狠色噜噜| 可以直接看的AV| 九九热这里只有精品在线观看| www,婷婷| 99爱视频在线播放| 夜夜夜夜夜骑撸| 激情综合一| 开心五月婷婷| 欧美激情综合色综合啪啪五月| 五月丁香在线观看| 丁香五月在线观看| 九九综合色综合| 久9久9热久热| 五月天色色色| 91Chinese在线| 国产av天堂| 日韩无码AV电影网站| 丁香婷婷五月色综合| 成人AV片播放| 婷婷五月天AV在| 久99久视频免费观看| 在线成人网站| 开心久久xxx色| 99在线观看视频精品| 日韩av大全| 日韩操逼小电影| 激情五月天婷婷五月天| 99热碰碰| 超碰在线看| 丝袜大香蕉| 国产乱人偷精品人妻A片| 无码碰碰| 成人短视频免费观看| 激情图片婷婷| www.婷婷网| 欧美黑人巨大猛烈cuckold| 色色色色色色色色色999| 亚洲激情.com| www.色九月| 玖玖婷婷五月天| 激情深爱五月天| 最近免费中文字幕大全高清大全1 色狠狠色噜噜AV天堂五区 | 久热这里只有精品99re| 开心激情婷婷| 婷婷五月丁香色色| 999久久久国产精品| 天天综合五月天| 日韩免费乱轮网站| 精品九九视频| 六月婷婷五月丁香| 热久久99热欧美国产亚洲| 噼里啪啦完整版中文在线观看| 中文字幕人妻一区二区| 夜色综合网| 99re这里只有精品9| 五月天玖玖狠狠色色| 婷婷丁香五月综合| 亚洲激情五月天| www.9操| 免费人人操| 热99国产精品| 国产高清精品色| 黄色一级影片| 激情综合网五月婷婷| 亚洲天堂色| 午夜九九九九九九九九九九九九九| 久久久网站| 丁香六月婷婷久久亚洲天堂| 97精品在线| 激情五月婷婷网| 色情婷婷| 黄色99热| 思思热闹这里只有精品| 五月天综合图片| 激情伊人| 九久久婷婷| 久久婷婷人人| 天天网站天天爽| 色天五月天在线观看视频| 日日天天干| 久久久久久婷| 婷婷色在线观看| site:ornaments52.com| 九九热re99re6在线精品| 婷婷导航| 成人毛片在线免费观看| 丁香婷婷五月天色综合| 婷婷五月色天| 超碰久热| 538任你爽视频不一样的| 另类色视频| 激情婷婷五月社区| 丁香六月婷| 9 1大香蕉| 思思热久在线观看视频| 亚洲最大激情无码| 青青草国产亚洲精品久久| 色婷婷丁香社综合| 99精品这里只有免费视频 | 久久视频这里有精品99| 午夜免费试看| 久热99狠| 99久久婷婷国产综合| 人人人va亚洲视频在线| 久草五月天| 奇米四色五月天| 六月婷婷之青青草| 久99热在线观看| 密着浓厚中出乚交尾GvG935| 97操碰在线视频| 亚洲XX日本| 青青草tp| 九九九九无码| 久久亚洲色导航| 黄色一级影片| 狠狠插.com| 99色在线视频观看| 开心激情五月天网| 超碰v| 久99视频在线观看| 九九热这里只有精品在线观看| 丁香五月天啪啪| 91精品无码久久久久久五月天| 天天天天天天天操| 婷婷五月天色播| 五月天综合久久丁香91| 天天天天天天天操| 色婷婷激情| 色噜噜狠狠色综合成人网| 成人电影一区| 99在线精品在线视频| 九九色精品| 激情五月九九九| 五月丁香婷婷六月天| 超碰91在线| www.97干视频| 去干网最新版本亚洲版| 久久婷婷伊人| 9人人操人人看| 国产热精品| 99热婷婷| 中文资源在线a| 久色婷婷200| 五月天综合在线网| 99热久久这里只有精品| 久久久WWW| 99色日本| 曰日爽日日操| 大香蕉 婷婷| 99超在线| 99re视频在线播放| 色综合久久88| 五月激情婷婷女| 国产性av| 亚洲精品五十一区| 26uuu亚洲| 午夜爱插插| 九九在线精品| 第四色色六月色综合| 国产精品色一哟哟| 国产精品a无线| 色五月婷婷激情综合网| 久操人妻| 99自拍视频网站| 99视频| 欧美日韩婷婷五月天| 美女要搞搞天天搞搞搞网站| 九九在线精品| 激情五月天婷婷图| 97碰免费视频在线| 久久免费操| 99色视频| www热久久yy9| 色婷婷亚洲精品天天综| 97久久久久久久久久久| 丁香五月花婷婷开心| 中文字幕激情综合| caopeng97人人| 99热99热在线| 色九九一二| 婷婷五月丁香久久| 婷五月天影院| 日韩久久这里只有精品| 日韩精品一区二区三区,四区,五区视频 | www.色五月天.com| 国产精品久久久爽爽爽麻豆色哟哟| 亚州欧美国产久精国产99综合视频| 强伦轩人妻一区二区电影| 91ncom.色| 91精品久久久久久| 欧美99视频| 久久99精品久久久久久噜噜| 国产免费av在线| 五月婷婷激情综合| 色婷婷aV四虎| 影音先锋777xfplay色资源网站| www.99.色| 婷婷丁香五月高清| 亚洲一区二区 成人网站戴套| 有哪些A片网站| 99丝袜精品视频网站| 亚洲操b| 综合色婷婷| 五月激情天| 久热 91| 色婷婷操逼| 99精品热| 亚洲天天操| 久热这里只有精品在线观看 | 亚艹艹| 色九九丁香九月色九九色| 天天爱天天做天天| 99久超碰| 九九热av| 天天爽天天爽天天爽天天爽天天爽| 色噜噜狠狠色综无码久久合欧美| 天天搽天天射| 成人午夜视频精品一区| 91小黄书网址在线观看| 日韩一级| 夜夜爽天天爽| 91精品91久久久中77777久久玖玖九九 | 色婷婷婷婷| 亚洲激情五月| 色婷婷婷婷成人网| 琪琪布丁香社区激情五月天| 天天日天天爱天天噪| 五月天激情综合网| 97干欧美| 2015好吊操| 一本大道伊人AV久久综合| 1010日日无码| 婷婷五月中文字幕| 中文字幕不卡+婷婷五月| www.五月天婷婷.com| www.色五月| 丁香五月天在线观看| 色婷婷69| 97色婷| 开心激情久久久久久久| 怡红院成人AV| 4399在线日本A片| 激情深愛五月視頻| 韩国中文字幕91| 五月丁香六月婷婷网| 在线网黄| 香蕉久久国产AV一区二区| 五月丁香六月婷婷亚洲| 中文字幕+中文在线| 丁香五月婷婷色情综合| 99极品视频| 欧美日韩成人综合9| 性色天| 五月天婷婷色| 人人人操 超碰| 精品无吗va视频免费观看| 五月天色色网站| 国产做A爰片毛片A片美国| 91精品综合久久久久久五月丁香| 99热精品超碰| www.五月天婷婷| 久久99成人性爱高清视频| 五月婷婷日| 91超级碰碰| 99热99这里只有精品| 无码人妻激情| 激情五月婷婷| 亚洲国产99| 综合97五月| 性爱111111| AAA久久久| 五月丁香婷婷人体| 欧美色色色色色色| 俺也去色| 丁香五月婷婷色情综合| 97啪啪| 99天堂在线观看免费视频| 99热丁香| oVV4WIB3vFi8D| 玖玖婷婷婷丁香五月| 99精品视频在线观看| 五月婷婷综合在线视频小说| 婷婷丁香五月天婷婷| 99九九精品视频推荐| 99久久9| 伊人五月人妻精品| 国产免费av在线| 嫩草AV久久伊人妇女超级A| 能看的av网站| 亚洲色婷婷99一9|| 国产99久9在线| 最近中文字幕在线中文视频| 婷婷五月丁香在线视频| WWW夜夜| 色爱综合五月| 精品一二三区久久AAA片| 少妇性按摩无码中文A片| 女人天堂av| 97人操人免费视频| 国产看真人毛片爱做A片| 色99热| 99久久综合网| 超碰操网| 内射 无码 伊人| 99在线观看精品视频| 五月婷婷深爱六月| 97人人操人人爽| 日韩九九| www久热com| 色五月天.con| AV变态另类一区二区| 五月天激情影院| 高清无码入口| 色高清无码视频| 中文字幕在线播放视频| 抽插特写| www.夜夜操| 在线观看婷婷5月| 热的无码综合视频| 久热91| 婷婷五月丁香性爱| 丁香六月啪啪| 久久99视频| 亚洲色情在线| 色五月婷婷av| 久久182| 亚洲妇女熟BBW| www.yw色| 99热这里只有精品一区| 久久婷婷五月天激情新地址| 超级碰碰碰91| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 五月激香蕉网| 99久久综合网| 日本在线99| 狠狠五月天婷婷激情网。| 婷婷丁香色五月亚洲| 亚洲成人在线综合| 丁香花大香蕉婷婷综合| 色综合色综合网| 日本熟妇精品99| 91精品综合久久久久久五月丁香| 日操五月婷| 97干在线| 毛片新网地| 五月婷色丁香| 丁香六月婷婷色XXXX| 狠狠综合| 久久色情| 日韩精品一区二区亚洲AV观看| 日本成人小说婷婷六月| 婷婷五月天va| www色色com| 另类伊人婷婷| 艹天天射| 99热在线极品极品| 国产亚洲成AV人片在线观黄桃| 九九伊人网| 久热综合| 欧美色色色色色色色色色色| 操日挥操日日| 六月丁香婷婷在线波多| 第四色五月激情网| 九九精品视频免费在线| 991精品在线视频| 一婬一伦一区二区三区| 美女被肏网站在线看| 日本色色影片| 欧美电影在线观看| 欧洲色| 天天色宗合| 91丨九色丨国产打屁股| 婷婷色操| 五月天婷婷基地| 91成人性爱视频| 亚洲日日操| 九九在线这里只有精品视频| www 五月天 com| 天天射射夜| 五月天六月天| 久久久久综合激动五月天| 婷婷五月天伊人在线| 色情五月天视频网| 91九色网| 色婷久久| 91chinese在线| 男女99免费视频| 婷婷五月综合久久中文字幕| 五月综合丁香婷婷| 色婷婷色九月| 久久人人九| 日本婷久久| 91ncm视频| 情色五月天网站| 日本99在线| 成人丁香色| 538任你爽| 日本操碰碰| 色婷五月| 国产片天天爽夜夜爽| 大香蕉啪啪啪| 久久视频66| 婷婷五月花| 天天综合情| 五月天婷婷午夜丁香| 天天噜天天插| 99热久久这里只有精品| 狠狠搞综合色| 婷婷六月天精品| 色情免费视频播放| 成人婷婷五月天| 五月丁香婷婷啪啪综合网| 69色色视频| 五月丁香六月激情综合欧美| 五月丁香性| 欧美色97| www.99久久久| 99热精品无码| 色婷婷成人做爰A片免费看网站| 五月色综合| 激情操逼婷婷| 91人妻人人操| 日韩无码性爱| 久草视频一,二三四| Av九九| 密黄站| 亚洲AV无码久久精品色欲| 五月婷婷免费| 五月花综合视频| 99在线免费视频| 中文字幕,综合,91| 亚洲五月花| 久久香蕉网| 牛牛澡牛牛爽| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | WWW,五月| 五月五婷婷网| 五月激情婷婷色| 婷婷色成人| 9热精品| 五月婷婷六月丁香| 国产无遮挡又黄又爽免费网站|