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

ARTICLE DETAIL

資訊詳情

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

PyTorch中混淆矩陣可視化:從模型評估到熱力圖實戰(zhàn)

PyTorch中混淆矩陣可視化:從模型評估到熱力圖實戰(zhàn) 1. 項目概述為什么你的模型需要一張混淆矩陣訓(xùn)練完一個Pytorch分類模型大多數(shù)人習(xí)慣性看一眼測試集準(zhǔn)確率就覺得萬事大吉。但準(zhǔn)確率這個指標(biāo)在不少場景下是會騙人的——比如類別不均衡的數(shù)據(jù)集哪怕模型把少數(shù)類全部判錯只要多數(shù)類猜得足夠準(zhǔn)整體準(zhǔn)確率依然能保持在90%以上。你根本看不出模型到底在哪些類別上犯了迷糊。而混淆矩陣Confusion Matrix做的就是這件事把模型預(yù)測結(jié)果和真實標(biāo)簽做成一張二維交叉表每一行代表真實類別每一列代表預(yù)測類別。矩陣對角線上的數(shù)字是預(yù)測正確的樣本數(shù)非對角線位置就是具體怎么錯的、錯到了哪個類別。有了這張表你能直接回答三個核心問題模型在哪些類之間最容易混淆每個類別的精確率和召回率表現(xiàn)如何錯誤是偏向某一邊還是均勻分布這個項目我前后做了很多次踩過的坑包括但不僅限于類別順序?qū)Σ簧蠈?dǎo)致圖畫出來全是亂的、放在GPU上的張量忘記轉(zhuǎn)回CPU、歸一化方式選錯導(dǎo)致熱力圖深淺完全失真、第一版代碼在batch推理時忘了收集全部預(yù)測結(jié)果。這篇文章把整個過程完整梳理一遍從最基礎(chǔ)的依賴安裝到最終的熱力圖可視化每一步都會給出可以直接抄走的代碼同時解釋為什么這么寫。2. 準(zhǔn)備工作與核心思路拆解2.1 項目結(jié)構(gòu)與本方案選型邏輯先說整體設(shè)計。這個任務(wù)本質(zhì)上是三件事串聯(lián)得到預(yù)測結(jié)果、計算混淆矩陣、可視化展示。聽起來簡單但每件事都有幾個看似相似、實際千差萬別的實現(xiàn)方式。得到預(yù)測結(jié)果這一環(huán)常見的坑是用驗證集上的最好一次批次的預(yù)測結(jié)果而不是整個測試集從頭到尾的完整預(yù)測。你用驗證集loss挑出來的模型權(quán)重最終要看的還是它在測試集上的泛化表現(xiàn)所以做混淆矩陣一定要用測試集、完整跑完forward把所有預(yù)測和標(biāo)簽收集起來。另一個是注意要用torch.no_grad()包裹推理過程不然顯存會被多余的計算圖占滿尤其是輸入圖片分辨率高或batch size大的時候爆顯存不是開玩笑的。計算混淆矩陣這一環(huán)選sklearn.metrics.confusion_matrix還是自己寫計數(shù)邏輯我的建議是用scikit-learn的現(xiàn)成函數(shù)除非你有特殊需求。自己寫循環(huán)也可以但處理多分類、類別順序、預(yù)測值和真實值格式不一致這些細(xì)節(jié)時手寫代碼很容易出邊界問題。sklearn版本已經(jīng)經(jīng)過大規(guī)模驗證返回的矩陣形狀是(n_classes, n_classes)行是真實類別列是預(yù)測類別注意這個順序不要搞反可視化的時候如果發(fā)現(xiàn)圖和預(yù)期對不上先檢查這里??梢暬@一環(huán)純粹用Matplotlib還是用Seaborn取決于你想花多少時間調(diào)樣式。Seaborn的heatmap函數(shù)天然適配這類需求有可選的數(shù)值標(biāo)注、配色方案、行列標(biāo)簽控制幾行代碼就出效果。不過如果你在自定義模型或需要集成到自己的訓(xùn)練腳本里直接用Matplotlib也不麻煩。我會在后面的可視化章節(jié)給出兩種寫法和各自適用場景。2.2 環(huán)境依賴與工具選型最低配置如下Python 3.8以上PyTorch 1.10以上scikit-learn 0.24以上matplotlib 3.5以上numpy 1.21以上seaborn可選僅熱力圖畫得更快我實測過的組合是Python 3.10 PyTorch 2.0 scikit-learn 1.2 matplotlib 3.7沒有遇到兼容性問題。如果你還在用老版本的PyTorch比如1.6或者更早一些API細(xì)節(jié)會不同比如torch.no_grad()的用法在早期版本也支持但要留意數(shù)據(jù)類型轉(zhuǎn)換時tensor.cpu().numpy()在需要梯度時可能報RuntimeError后面故障排查章節(jié)會專門講。提示如果環(huán)境里沒安裝scikit-learn單純?yōu)榱水嫽煜仃囇b一個庫不要覺得這是多余。自己實現(xiàn)多分類混淆矩陣時要處理的邊界情況比你想象得多與其在這上面浪費(fèi)時間不如引入已經(jīng)打磨好的依賴。2.3 數(shù)據(jù)格式與類別標(biāo)簽對齊一個非常隱蔽但極其常見的問題訓(xùn)練代碼里的類別索引順序和可視化時顯示的類別名稱順序不一致。比如在Pytorch的torchvision.datasets.ImageFolder里類別順序是按文件夾名稱排序的Lexicographic order。你的文件夾可能叫apple, banana, grape那么索引0就是apple索引1就是banana。如果你在別處比如某個手寫的txt映射表定義了另一套順序畫出來的混淆矩陣行列標(biāo)簽就會錯位整個圖看起來還是有模有樣的但分析結(jié)論全部是錯的。所以我強(qiáng)烈建議固定一套標(biāo)簽列表并在代碼開頭顯式聲明class_names [apple, banana, grape] # 或者從訓(xùn)練數(shù)據(jù)集中直接提取 class_names train_dataset.classes用train_dataset.classes是最穩(wěn)妥的因為你訓(xùn)練時模型輸出的索引就是這么來的不會出現(xiàn)人工手抄錯誤。后續(xù)無論計算矩陣還是畫圖都從同一個列表取標(biāo)簽名。3. 核心代碼實現(xiàn)從模型推理到矩陣生成3.1 完整推導(dǎo)用測試集跑出預(yù)測結(jié)果先說這一段的目標(biāo)把測試集或者驗證集里所有樣本的真實標(biāo)簽和模型預(yù)測結(jié)果收集成兩個一維數(shù)組長度都應(yīng)該等于測試集樣本總數(shù)。一個典型的完整流程如下import torch import torch.nn.functional as F from torch.utils.data import DataLoader from tqdm import tqdm def collect_predictions(model, test_loader, device): model.eval() all_preds [] all_labels [] with torch.no_grad(): for inputs, labels in tqdm(test_loader, descEvaluating): inputs inputs.to(device) labels labels.to(device) outputs model(inputs) # outputs shape: (batch_size, num_classes) # 需要的是每個樣本的最大分?jǐn)?shù)對應(yīng)的索引 _, preds torch.max(outputs, dim1) # 關(guān)鍵轉(zhuǎn)回CPU并轉(zhuǎn)成numpy all_preds.append(preds.cpu().numpy()) all_labels.append(labels.cpu().numpy()) all_preds np.concatenate(all_preds) all_labels np.concatenate(all_labels) return all_preds, all_labels幾個細(xì)節(jié)解釋一下為什么使用torch.max(outputs, dim1)而不是torch.argmax兩者做的事情一樣但torch.max順帶把最大值的數(shù)值也返回了如果你后面想做置信度閾值篩選不需要再跑一次前向傳播。為什么model.eval()必須在循環(huán)前調(diào)用因為模型里的Dropout和BatchNorm在訓(xùn)練模式和推理模式行為差別很大。BatchNorm在train()模式下用的是當(dāng)前batch的統(tǒng)計量在eval()模式下用的是訓(xùn)練階段累積的全局統(tǒng)計量。忘記這一步預(yù)測結(jié)果可能是錯的且錯誤模式非常隱蔽——你不要指望它報錯只是數(shù)字不準(zhǔn)確。為什么收集預(yù)測和標(biāo)簽要用numpy而不是繼續(xù)保留tensor因為后面交給sklearn.metrics.confusion_matrix時numpy數(shù)組最方便。你當(dāng)然可以傳tensor進(jìn)去sklearn底層會嘗試轉(zhuǎn)numpy但遇到需要detach的場景就會報錯這里直接cpu().numpy()一步到位省心。3.2 核心邏輯構(gòu)建并理解混淆矩陣拿到all_preds和all_labels之后一行代碼就能生成矩陣from sklearn.metrics import confusion_matrix cm confusion_matrix(all_labels, all_preds) print(cm)這里有個非常值得注意的細(xì)節(jié)sklearn的confusion_matrix(y_true, y_pred)第一個參數(shù)傳真實標(biāo)簽第二個參數(shù)傳預(yù)測標(biāo)簽。我見過不止一次把順序?qū)懛吹娜绻惆l(fā)現(xiàn)自己矩陣對角線上的數(shù)字莫名其妙地大但精確率和召回率分析卻對不上先檢查是不是這一步參數(shù)傳反了。輸出的cm是一numpy二維數(shù)組形狀為(n_classes, n_classes)。cm[i][j]代表真實類別為i、預(yù)測類別為j的樣本數(shù)。沿行方向看每一行的總和等于該真實類別在測試集中的總樣本數(shù)沿列方向看每一列的總和等于模型預(yù)測為該類別的總數(shù)。舉個具體例子假設(shè)3分類的矩陣是[[50, 5, 3], [ 2, 45, 8], [ 1, 4, 60]]現(xiàn)在看第一行真實類別050個預(yù)測正確5個被錯判成了類別13個被錯判成了類別2。第一行總樣本數(shù)58。看第一列預(yù)測為類別050個確實來自類別02個來自類別11個來自類別2總預(yù)測數(shù)為53。你還能順手算出每個類別的精確率和召回率類別0精確率 50 / 53類別0召回率 50 / 58類別2精確率 60 / 65類別2召回率 60 / 64不從混淆矩陣出發(fā)光用sklearn.metrics里的precision_score、recall_score你確實也能拿到這組數(shù)字但一個是黑盒求解一個是看表手算顯然后者對模型行為的理解更清晰。3.3 歸一化問題原始數(shù)值與比例圖的取舍做可視化之前通常會糾結(jié)一個事情熱力圖顏色深淺到底表示原始數(shù)量還是百分比例我實際用下來的建議是兩者都做根據(jù)需求選擇展示。原始數(shù)值適合看絕對樣本量比如你的測試集每類大約500張一眼就能看出模型在某個類上錯了43張這個絕對值是否可接受取決于業(yè)務(wù)場景。但如果你想分析的是錯誤率的相對大小尤其是在類別樣本量差異很大的情況下用歸一化比例圖才不會被絕對數(shù)量誤導(dǎo)。例如測試集中類別0有1000個樣本類別1只有100個樣本。類別0錯了50個比例是5%類別1錯了10個比例是10%??丛紨?shù)值圖50比10大很多你很可能誤以為類別0的問題更嚴(yán)重。但歸一化之后才能看清類別1的錯誤率其實翻倍了。sklearn提供normalize參數(shù)cm_normalized confusion_matrix(all_labels, all_preds, normalizetrue)normalizetrue的意思是按行歸一化即每行真實類別的總和為1。這樣矩陣?yán)锩總€單元格的值表示真實類別為i的樣本中被預(yù)測為類別j的比例。對角線上的值就是每個類別的召回率。這是最常用的一種歸一化方式因為解釋起來直觀。還有一種normalizepred按列歸一化得到的是精確率視角??茨惴治鲂枨筮x擇。提示匯報結(jié)果時圖里標(biāo)注清楚是絕對數(shù)量還是歸一化比例。最好在副標(biāo)題里直接寫明normalized confusion matrix (row-wise)免得看圖的同事誤讀顏色深淺代表的意義。4. 可視化實戰(zhàn)從樸素表格到生產(chǎn)級熱力圖4.1 使用Matplotlib實現(xiàn)基礎(chǔ)熱力圖最樸素的方式一個for循環(huán)也能畫出格子但效率太低且代碼冗長。實際項目中我推薦直接使用plt.imshow或者M(jìn)atplotlib的matshow。給一個我常用的基礎(chǔ)版本import matplotlib.pyplot as plt import numpy as np def plot_confusion_matrix(cm, class_names, titleConfusion Matrix, cmapBlues, normalizeFalse): if normalize: cm cm.astype(float) / cm.sum(axis1, keepdimsTrue) fig, ax plt.subplots(figsize(8, 6)) im ax.imshow(cm, interpolationnearest, cmapcmap) ax.figure.colorbar(im, axax) # 設(shè)置刻度 ax.set(xticksnp.arange(cm.shape[1]), yticksnp.arange(cm.shape[0]), xticklabelsclass_names, yticklabelsclass_names, ylabelTrue Label, xlabelPredicted Label, titletitle) # 讓x軸的標(biāo)簽在底部顯示而不是頂部默認(rèn)imshow是頂部的 ax.xaxis.set_label_position(bottom) ax.xaxis.tick_bottom() # 在每個格子里標(biāo)注數(shù)值 thresh cm.max() / 2. for i in range(cm.shape[0]): for j in range(cm.shape[1]): ax.text(j, i, f{cm[i, j]:.2f} if normalize else f{cm[i, j]:d}, hacenter, vacenter, colorwhite if cm[i, j] thresh else black) fig.tight_layout() plt.savefig(confusion_matrix.png, dpi150, bbox_inchestight) plt.show()這段代碼有幾個細(xì)節(jié)值得注意為什么用cm.astype(float)原始混淆矩陣是整數(shù)類型整數(shù)除以整數(shù)在Python 3里得到的結(jié)果是浮點數(shù)但如果遇到某行和為0除法結(jié)果會是NaNastype(float)可以讓后續(xù)操作更順暢。另外如果直接把int類型矩陣傳給imshow顏色的映射不會有問題但在某些情況下annotate字符串格式化會有坑轉(zhuǎn)成float更安全。為什么用thresh cm.max() / 2來決定字體顏色如果格子的數(shù)值大于最大數(shù)值的一半說明格子顏色較深用白色字更清楚反之用黑色字。這個閾值設(shè)定簡單粗暴但效果很好實測各種顏色映射下都清晰。如果你用的是plt.text手動標(biāo)注而不是后面要講的Seaborn內(nèi)置annot功能這段邏輯就得自己寫。關(guān)于顯示方向Matplotlib默認(rèn)的imshow坐標(biāo)是從左上角開始y軸向下。這是圖像坐標(biāo)系的常規(guī)做法。如果你希望y軸從下往上數(shù)學(xué)坐標(biāo)系習(xí)慣可以加上ax.invert_yaxis()。但這個決定純屬個人偏好我用默認(rèn)方向沒遇到過問題只要x軸標(biāo)簽在底部、y軸標(biāo)簽在左側(cè)讀者就能自然理解。4.2 使用Seaborn一行畫出更美觀的熱力圖如果你不排斥引入seaborn熱力圖能畫得更快且默認(rèn)樣式在現(xiàn)代論文和報告里更順眼import seaborn as sns plt.figure(figsize(10, 8)) sns.heatmap(cm, annotTrue, fmtd, cmapBlues, xticklabelsclass_names, yticklabelsclass_names, cbarTrue, linewidths0.5, linecolorwhite) plt.xlabel(Predicted Label) plt.ylabel(True Label) plt.title(Confusion Matrix) plt.savefig(cm_seaborn.png, dpi150, bbox_inchestight) plt.show()參數(shù)解釋annotTrue在格子中顯示數(shù)值。fmtd因為數(shù)值是整數(shù)用十進(jìn)制格式。如果歸一化了改成fmt.2f。linewidths0.5給每個格子加白色邊框線。這個細(xì)節(jié)能讓大矩陣看起來不呆板。cbarTrue右側(cè)顯示顏色條。如果矩陣維度小于10Seaborn的標(biāo)注基本不會重疊如果類別數(shù)量多到20以上格子里放數(shù)字會擁擠這種情況建議只放顏色塊或者把字體調(diào)小sns.heatmap(cm, annotTrue, fmtd, annot_kws{size: 8}, ...)4.3 進(jìn)階可視化歸一化圖、錯誤分布圖與多子圖對比單一熱力圖只能說明模型整體行為。做更深入分析時我經(jīng)常把三個圖放在一起對比原始數(shù)值圖、歸一化比例圖、錯誤強(qiáng)調(diào)圖。錯誤強(qiáng)調(diào)圖的思路是對角線位置全部置為0或單獨畫非對角線位置用另一種顏色映射讓錯誤分布一眼可見。# 創(chuàng)建一個錯誤分布矩陣對角線保持白非對角線保留原值 error_cm cm.copy() np.fill_diagonal(error_cm, 0) plt.figure(figsize(8, 6)) sns.heatmap(error_cm, annotTrue, fmtd, cmapReds, xticklabelsclass_names, yticklabelsclass_names) plt.title(Error Distribution (Diagonal hidden)) plt.show()這張圖在類別數(shù)量較多時極其好用。比如你有一個10分類的模型正常混淆矩陣?yán)飵资畟€格子全是數(shù)字人類視覺很難快速找到關(guān)鍵信息。把對角線隱藏、只凸顯非對角線錯誤再加上紅色系顏色映射哪兩類最容易弄混一目了然。多子圖對比適合需要同時看訓(xùn)練集表現(xiàn)和測試集表現(xiàn)或者對比兩個不同模型權(quán)重的場景fig, axes plt.subplots(1, 2, figsize(16, 6)) sns.heatmap(cm_model_a, annotTrue, fmtd, cmapBlues, axaxes[0]) axes[0].set_title(Model A) sns.heatmap(cm_model_b, annotTrue, fmtd, cmapBlues, axaxes[1]) axes[1].set_title(Model B) plt.tight_layout() plt.savefig(compare_models.png, dpi150) plt.show()5. 實操記錄數(shù)據(jù)增強(qiáng)策略的直觀驗證前面講了不少理論這一節(jié)分享一個實際跑過的案例借此說明混淆矩陣可視化如何真正幫到模型調(diào)優(yōu)。某次做細(xì)粒度圖像分類任務(wù)類別非常相似比如不同品種的鳥。初始模型在測試集上準(zhǔn)確率82%看起來還行。但把混淆矩陣畫出來后發(fā)現(xiàn)問題很大一部分錯誤集中在“暗色羽毛的鳥類”之間比如A品種和B品種完全色調(diào)接近互相錯判的比例明顯偏高。針對這個情況我在數(shù)據(jù)增強(qiáng)里增加了顏色抖動ColorJitter、隨機(jī)灰度化RandomGrayscale同時針對易混類對的樣本做了簡單的人工檢查——發(fā)現(xiàn)部分訓(xùn)練樣本的標(biāo)注本身就模糊兩張看起來幾乎一樣的圖片標(biāo)成了不同類別。模型學(xué)到的就是這種模糊邊界再好的網(wǎng)絡(luò)也沒辦法憑空學(xué)會區(qū)分人類都無法分辨的差異。改了數(shù)據(jù)增強(qiáng)策略并清理了部分噪聲標(biāo)簽后重新訓(xùn)練。對比兩次的混淆矩陣歸一化圖A類和B類之間的錯判比例從13.8%降到7.2%整體準(zhǔn)確率提升到89%。這個提升要是只看準(zhǔn)確率數(shù)字你只知道“好了”但不知道為什么好、好在哪些類別上。而兩張混淆矩陣圖并排放在一起解釋性就強(qiáng)得多到底是普遍提升還是特定混淆緩解一眼就能分辨。這個案例想說明的核心思路很簡單混淆矩陣是模型錯誤診斷的入口不是終點。光會畫圖、會看比例還不行要能根據(jù)矩陣?yán)锏腻e誤模式反推數(shù)據(jù)或模型的癥結(jié)所在然后針對性調(diào)整。6. 常見問題與排查技巧實錄6.1 矩陣對角線特別大但精確率低問題出在哪場景你打印出的混淆矩陣對角線數(shù)值看起來很高即大多數(shù)樣本分類正確。但用sklearn.metrics.precision_score算出來的精確率低得離譜。這個矛盾通常是三個原因之一第一類別樣本量極度不均衡矩陣可視化時小類別被“吃掉”了。比如1000個A類樣本、50個B類樣本。A類幾乎全對B類錯一半。混淆矩陣上A類的格子大數(shù)字多B類的格子數(shù)字小視覺上容易被忽略但精確率計算把B類的糟糕表現(xiàn)放大了。排查方法不要只看矩陣同時打印每一行的總和和每一列的總和計算類別的樣本量分布。第二你用的是宏平均macro average還是微平均micro average。宏平均每個類別的權(quán)重相同小類別的表現(xiàn)會嚴(yán)重拉低整體分?jǐn)?shù)。微平均等價于整體準(zhǔn)確率你會覺得“還行”。第三標(biāo)簽順序錯位。預(yù)測時用的類別索引順序和計算指標(biāo)時的標(biāo)簽順序不一致后面對不上導(dǎo)致全部指標(biāo)都是亂的。排查方法很簡單隨機(jī)抽幾個樣本手動看預(yù)測結(jié)果和實際輸出對比。6.2 報錯RuntimeError: Cant call numpy() on Tensor that requires grad這個錯誤只會在一個場景出現(xiàn)你在torch.no_grad()外面執(zhí)行了模型推理或者你在loss.backward()之后、但在同一個tensor上嘗試轉(zhuǎn)numpy。排查方法確認(rèn)推理階段是否用了with torch.no_grad():。如果確認(rèn)用了還報錯檢查你是不是在拿到logits之后又做了某個操作導(dǎo)致新的tensor重新開啟梯度追蹤。# 錯誤寫法 outputs model(inputs) # requires_gradTrue _, preds torch.max(outputs, dim1) preds.numpy() # RuntimeError # 正確寫法 with torch.no_grad(): outputs model(inputs) _, preds torch.max(outputs, dim1) preds.numpy() # OK6.3 可視化時中文標(biāo)簽亂碼Matplotlib默認(rèn)字體不支持中文如果項目里的類別名稱包含中文畫圖的標(biāo)簽會變成一個個方框。解決方案是在繪圖前設(shè)置中文字體import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [SimHei, Microsoft YaHei, Noto Sans CJK SC] plt.rcParams[axes.unicode_minus] False這幾行代碼在Windows和Linux的中文字體選擇上略有不同實測在Windows用SimHei沒問題Linux服務(wù)器上如果沒裝Noto Sans CJK就先apt install fonts-noto-cjk。如果不想依賴系統(tǒng)字體還可以用font_manager指定字體文件路徑穩(wěn)妥但代碼量多一點。建議本地調(diào)試用系統(tǒng)字體生成報告時統(tǒng)一用服務(wù)器上固定字體避免圖片字體不一致的尷尬。6.4 矩陣很大時可視化的排版混亂假設(shè)你的類別數(shù)量是50甚至100。把所有類別標(biāo)簽都畫在同一張圖上橫向標(biāo)簽互相重疊格子里的數(shù)字糊成一片這種圖沒什么用。應(yīng)對策略有三種只展示一部分比如按錯誤數(shù)量排序只展示錯誤最多的前10對類別。降采樣把混淆矩陣按更大的粒度合并比如把相近大類合并后再畫。交互式展示用plotly生成可縮放的網(wǎng)頁圖鼠標(biāo)懸停能看具體數(shù)值。雖然無法把圖片嵌入靜態(tài)文檔但適合需要交付給業(yè)務(wù)方做探索的場景。6.5 矩陣?yán)锏臄?shù)值比樣本總數(shù)還多多出來的數(shù)據(jù)從哪來出現(xiàn)這個問題幾乎可以肯定是你在推理時沒有跳過數(shù)據(jù)集的最后一個小batch或者你重復(fù)跑了一次預(yù)測并把結(jié)果append了兩次。排查方法打印len(all_preds)和len(test_loader.dataset)兩者必須相等。如果all_preds多了看看是不是你的循環(huán)里沒有判斷邊界或者之前某次調(diào)試時沒有清空列表。# 確保列表是空的才開始 all_preds [] all_labels []6.6 GPU推理時顯存溢出如果測試集圖片分辨率高即便batch size適中也可能爆顯存。主要元兇是檢測模型Detection里的多尺度輸出或者超大特征圖。分類模型通常還好但如果你用了大卷積核或者輸入是2000x2000的圖也要小心。應(yīng)對方法減小batch size。用torch.no_grad()。如果推理流程復(fù)雜在循環(huán)里顯式調(diào)用torch.cuda.empty_cache()。順帶提一個真實遇到的坑batch size減小后最后一批樣本數(shù)少了歸一化時如果某一行對應(yīng)的類別一個樣本都沒有矩陣的一行之和會是0除以0會得到NaN。解決方法是歸一化時加上一個極小量epsilonrow_sum cm.sum(axis1, keepdimsTrue) cm_normalized cm / (row_sum 1e-12)7. 從混淆矩陣延伸到更多評估維度7.1 從矩陣一鍵導(dǎo)出精確率、召回率與F1混淆矩陣本身包含計算所有基礎(chǔ)分類指標(biāo)所需的信息。你可以算def metrics_from_cm(cm): n_classes cm.shape[0] precision np.zeros(n_classes) recall np.zeros(n_classes) f1 np.zeros(n_classes) for i in range(n_classes): # 精確率對角線 / 列和 precision[i] cm[i, i] / cm[:, i].sum() if cm[:, i].sum() 0 else 0 # 召回率對角線 / 行和 recall[i] cm[i, i] / cm[i, :].sum() if cm[i, :].sum() 0 else 0 # F1 if precision[i] recall[i] 0: f1[i] 2 * precision[i] * recall[i] / (precision[i] recall[i]) return precision, recall, f1或者直接依賴sklearnfrom sklearn.metrics import precision_score, recall_score, f1_score, classification_report print(classification_report(all_labels, all_preds, target_namesclass_names))classification_report輸出的表格文本在控制臺看很方便我每次訓(xùn)練完都會打印一份。雖然它不畫圖但和混淆矩陣圖配合使用一圖一表把模型表現(xiàn)講得很清楚。7.2 多分類任務(wù)的宏平均與加權(quán)平均在做多分類評估時經(jīng)常會遇到宏平均macro、微平均micro和加權(quán)平均weighted的選擇。這里做個簡單說明宏平均每個類別的指標(biāo)先算出來然后取平均值。類別權(quán)重相同小類別的表現(xiàn)會被放大適合你關(guān)心所有類別是否都被照顧到的場景。微平均所有樣本的TP、FP、FN加起來算總體指標(biāo)等價于整體準(zhǔn)確率對多分類而言適合樣本量均衡的場景。加權(quán)平均按每個類別的樣本占比加權(quán)計算能反映數(shù)據(jù)分布情況但大類影響大可能掩蓋小類別問題。從模型優(yōu)化的角度看我通??春昶骄鵉1因為如果某個小類別效果差宏平均會直接暴露出來。但從業(yè)務(wù)指標(biāo)匯報的角度可能更需要加權(quán)平均因為業(yè)務(wù)看的是整體效果?;煜仃噲D解決的正是這個問題不管哪種平均指標(biāo)它提供的只是總結(jié)數(shù)字矩陣圖能告訴你具體哪些類表現(xiàn)差。宏平均F1低了打開混淆矩陣圖一眼就能看到是哪個小類別被虐得最慘。7.3 用混淆矩陣輔助判斷閾值調(diào)整對于二分類任務(wù)混淆矩陣的四個基本項TP、FP、FN、TN直接決定了ROC曲線和PR曲線上每個點的位置。通過調(diào)整決策閾值通常默認(rèn)是0.5你可以讓模型更偏向“寧可錯殺也不放過”或者“寧可放過不可錯殺”。比如醫(yī)療篩查場景假陰性比假陽性更致命。你可以降低正類的判定閾值讓模型輸出概率大于0.3就判為正類。這會讓TP增多、FN減少但同時FP也會增加。此時畫出不同閾值下的混淆矩陣對比TP、FP的變化幅度比只盯著AUC曲線要直觀得多。多分類閾值調(diào)整稍微復(fù)雜但可以借助每個類別的概率分布直方圖配合混淆矩陣來做。核心是先明確業(yè)務(wù)訴求是精確率優(yōu)先還是召回率優(yōu)先然后基于混淆矩陣在不同閾值下的變化來選。8. 經(jīng)驗沉淀與后續(xù)擴(kuò)展方向整個流程實現(xiàn)下來我個人最大的感受是畫混淆矩陣本身很簡單難的是把它放到模型迭代的閉環(huán)里真正用起來。我現(xiàn)在的工作習(xí)慣是每次訓(xùn)練完不管結(jié)果好還是壞都固定輸出三樣?xùn)|西——測試集loss曲線、classification_report文本、混淆矩陣三合一圖原始數(shù)值、歸一化比例、錯誤分布。這三樣?xùn)|西保存到實驗?zāi)夸浵赂粢欢螘r間再回頭對比不同實驗版本時不用重新加載模型跑推理只翻圖和報表就能快速定位問題。后續(xù)如果你想讓這套可視化更自動化可以嘗試兩個擴(kuò)展方向第一個方向是把混淆矩陣集成到訓(xùn)練腳本中每個epoch結(jié)束在驗證集上自動畫一張圖。這樣訓(xùn)練過程中就能動態(tài)觀察是不是隨著epoch增大某些混淆點一直在改善另一些一直停滯。在線監(jiān)控的價值在于及早發(fā)現(xiàn)過擬合或?qū)W習(xí)率設(shè)置不當(dāng)?shù)膯栴}。第二個方向是結(jié)合模型的可解釋性工具。當(dāng)你在混淆矩陣中發(fā)現(xiàn)某兩類一直混淆別急著一味加數(shù)據(jù)、調(diào)模型先拿錯誤樣本出來看看——用Grad-CAM或SHAP分析模型重點關(guān)注圖像的哪些區(qū)域。很多時候你會發(fā)現(xiàn)模型其實在用一個非預(yù)期的特征做判斷比如區(qū)分兩種鳥時它關(guān)注的是背景草地顏色而非鳥本身的羽毛紋理。這個診斷路徑配合混淆矩陣能幫你做出更有針對性的優(yōu)化決策而不是盲目調(diào)參。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香五月婷婷五月| 99精品偷自拍| 26uuuu精品一区二区| 国产精品扒开腿做爽爽爽A片唱戏| 99热在线免费观看精品| av在线激情| 日韩九区| 丁香六月婷婷色播| 亚洲黄色网址| 99热91| 久色成人| 色综合色综合网| 亚洲字幕AV一区二区三区四区 | 丁香久久五月天视频在线观看| 狼人伊人天堂| 色色五月天婷婷| 五月天另类图片| 婷婷午夜精品久久久| 99婷婷| 噜噜色噜噜网| 特级片神马电影| 91婷婷色五月| 久久密臀婷婷| 少妇搡BBBB搡BBB搡毛茸茸| 99热色精品| 丁香五月伊人| 亚洲V国产V欧美V久久久久久| 六月激情久久| 丁香激情婷婷网| 99热久草| 久热91精品| 婷婷不干网| 伊人狠狠丁香婷婷综合尤物| 婷婷午夜综合| 亚洲国产精品VA在线看黑人| 色婷婷丁香| 丁香五月色播中文在线播放| 全部老头和老太XXXXX| 日日夜夜狠狠干| 99视频色在线观看| 99re这里只有精品9| 激情婷婷综合网| 五月天色五月| 久久九九色| 蜜臀99精品| 99热在线中文字幕| 热99久久这里只有精品| 天天综合色综合| 超碰在线国产| 玖玖资源在线视频| 91色久| www.色综合.com| 婷婷中文字暮| 天天色天天日天天舔| 中文无码精品一区二区三区| 26uuu淫色| 天堂久久精品| 五月丁香怕怕综合| 天天操天天操天天操| WWW·天天操·视频?| 一级性感黄色内射视频| 性日本激情| 伊九九三级区| 五月丁香六月婷婷亚洲激情综合| 午夜性爱影视一区77| 天天插天天插天天日| 另类综合激情| 99在线观看免费精品视频| 特黄三级片| 九热精品| 五月丁香六月婷精品视频| 五月丁香狠狠爱| 91人操| 激情中文在线| 超碰免费在线| 99re思思精品在线观看| 婷婷在线视频| 色婷五月天| 丁香五月天激情综合| 99视频在线精品免费观看2| 色色婷婷五月天| 婷婷丁香十月| 波多野结衣成人作品在线| 久久成人亚洲欧美电影| 成人丁香色| 久久婷婷五月综合色奶水99啪| 久久伦乱| 大伊久久| 色综合激情| 丁香五月色情| 超碰五月婷婷五月天| 色噜噜狠狠狠狠色综合久欧美| 26uuu成人网| 大胆伊人久久| 久久视频婷婷视频| 欧美影院| 激情性爱五月天网页| 婷婷久久色五月婷婷久久久| 9久久久久久久久久久| 成人丁香色| 开心婷婷五月激情网小说| 激情综合五月.....| 婷婷久久六月费| 婷婷久久亚洲| 超碰99在线观看| 精品视频二级九九| 日韩色久| 久久久五月四色| 97五月久久丁香婷婷| 激情五月天网| 五月开心久久| 色综合天天天天做夜夜| 91chinese在线| 久热re视频在线观看网站| 国产精品人妻在线网址| 五月花亭亭| WWW.桔色成人.COM| 97超级碰| 干婷婷五月天| 性爱视频久久| 狼人狠狠操| 天天色伊人| 色亚洲激情| 99九色视频在线观看| 草草女人亚洲| 激情综合五月激情| 大香蕉久艹| 色涩视频久久| 天天操夜夜玩!| 久操97| 欧美日本日韩| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 亚洲精品大片| 综合网啪啪| 五月天欧美 另类小说| 六月激情婷婷| 99人人干人人操| 激情五月综合免费| 99热这里有精品| 日韩人妻在线观看| 久久婷婷五月综合激情国产| 97在线日本| 深爱激情网噜噜色| 九九精品视频在线观看| 五月婷在线| 大香蕉七区| 日日狠狠久久偷偷四色综合免费| 99操免费视频| 婷婷五月天激情亚洲小说| 成人网在线视频| 丁香五月五月婷婷欧美大香蕉| www.99婷婷| 婷婷丁香五月高清| 亚洲AV另类| 五月婷婷开心激情六月蜜桃| 九七色色六月丁香| 五月天成人在线| 92久久精品一区二区| 大香蕉520| 天天天综合网| 五月丁香综合中文| 丁香色六月婷婷| 第四色网婷婷| 激情五月丁香五月| 五月色丁香综合| 99自拍视频| 玖玖午夜视频| 操一操干一干| 欧美激情xxxXX| 亚洲无码99| 丁香六月天AV| 9|人妻人人操| 97色色视频| 亚洲AV另类| 五月丁香六月激情视频| 天天肏在线观看| 色婷婷久久久| 婷婷五月丁香激情色情| 区啪精品| 五月成人网站| 五月停停丁香| 成人综合AV| 九九色欲网| 九九综合色综合| 丁香五月手机在线| 色综合久久88色综合天天人守婷| 婷婷五月成人社区| 婷婷色九月| 成人精品在线| yjzz亚洲国产| 91九色国产| 丁香五月婷婷六月婷婷| 我淫我色婷婷五月天激情四射| 天天狠狠色综合| 超碰在线个人观看| 人妻少妇色综合| 99久久a线观| 久久您您综合网| 天天夜夜爽| 伊人综合色干| 激情六月婷婷啪啪| 天天色亚洲| 五月丁香婷婷综合激情基地| 激情丁香九九五月综合网| 人妻久久久久久久 | 九月婷婷激情| 荫道BBWBBB高潮潮喷| 日日操,夜夜撸| 伊人9草在线观看| 91超级碰| 中文AV网| 婷婷五月天在婷| 先锋资源婷婷| 婷婷中文综合网| 99ri国产| 久久婷婷原创视频| 五月婷婷片| 国产精品久久久丁香五月八戒视频| 色五月婷婷青娱乐| 狠狠操婷婷| 色婷婷先锋| 黄桃AV无码免费一区二区三区| 欧美丁香五月| 五月丁香六月婷婷手机无线| 天天做天天爱天天爽夜夜揉| 超碰国产av| 三男玩一女三A片| www.色婷婷.com| 99高级会所久久| 丁香五月婷婷老师网站| 人妻丰满精品一区二区A片| 洗浴中心操B视频| 久久99网站| 久久丁香网| 91青娱乐青青草| 激情婷婷丁香色五月综合| 日韩色五月| 色吧99| 久久五月天综合| 婷婷五月综合啪| 综合亚洲六月婷婷在线| 成人av中文字幕| 婷婷狠狠狠爱| 亚洲人人操| 精品影院| 免费视频WWW在线观看网站| 亚洲成人网在线观看| 第四色首页| 五月丁香婷婷激情久久| 99亚洲综合| 伊人激情综合网| 69精品人人人人人人| 久久久久久久11111111111| 中文字幕在线资源| 五月天社区| 五月丁香久久久久| 九九99免费视频| 五月天 无码| 激情婷婷另类| 五月婷婷亞洲中文| 久久丁香五月婷| 五月天婷婷五月| 狠狠va| 做爱夜夜干天天操| 天天爽—爽| 深爱激情中文五月天av| 99亚洲综合| 五月天狠狠网站| 97人人做| 激情综合网婷婷久久| 九九久久精品| 久一这里有精品国产| 欧美黑人大吊| 深爱开心激情网| 色五月久久成人婷婷| 超碰狠狠操| 久久久性爱网| 26uuu四色| 亚洲综合新99视频| 天天干、天天日日| www.99热这里精品| 97色色综合| 五月婷婷丁香五月| 婷婷桃色网| 狠狠狠狠青草| 亚洲天堂99| 久久99久久99精品免视看婷| 欧美激情xxxXX| 欧美va| 亚洲欧州色情在线观看| 91九色国产在线| 天堂A∨在线| 99在线观看精品视频| 中文字幕成人| 91在线看片| 六月婷色| 久久婷五月综合色| 日韩aaa| 在线成人网址| 97午夜一区二区| 亚洲AV电影美洲AV电影| 成人va在线观看视频| 翔田千里aV中文字幕| 精品皮股午夜AV| 六月丁AV| 亚洲中文字幕网| 婷婷综合性爱网| 丁香五月婷婷婷桃花影院| 97色啪| 久久五月视频| nvrentiantang av| 亚洲精品又粗又大又爽A片 | 丁香五月天日韩无码| 国产操肏网站| 九九久久99| 丁香五月天中文字幕| 丁香六月婷婷开心| 婷婷亚州综合| 热热久久久久久久久| 欧美色婷婷| 久热免费视频| 碰碰人人漕| 五月丁香啪啪激情| 九九aV| 97超碰,人人舔,人人操,人人摸 | 婷婷伊人综合| 欧美丁香婷婷天天操| 色色色色av色色色色| 99性视频| 午夜婷婷久久| 婷婷五亚洲| 一本色道久久综合狠狠躁小说| 五月激香蕉网| 99在线观看视频蜜臀| 99热这里只有精品3| 色色色综合色| 大香蕉久久久| 五月的色婷婷高潮| 先锋影音av色五月天资源站| 深爱五月激情网| 久久亚洲天堂| 婷婷色色欧美| 欧美婷婷五月丁香| 91九色白丝| 欧美美女国产日韩一区二区久| 人妻少妇色综合| 农村熟妇高潮精品A片| 1024成人在线观看| 日欧大屏操| 激情内射人妻1区2区3区| 日本久久天堂| 婷婷九月丁香| 免费黄色片子| 色欲丁香| 婷婷四色五月| 丁香六月久久| 91viP在线看| 操骚货在线| 99热在线极品极品| www.丁香五月| 五月色情婷婷| jiZZdr| 色五月噜噜| 欧美另类五月激情| 精品九九九久| 丁香六月亚洲综合| 亚洲a片免费观看| 2025最新亚洲激情在线| 夜夜爽77777妓女免费下载| 日韩色色色色色| 性生活视频98791| 熟女91九色| 国产婷婷五月色情综合| 国产一区18| 婷婷五月六月丁香| 久久丝袜婷婷| 天天狠狠夜夜狠狠2023| 精品无码av丁香五月激情| 人妻久久久久久久 | 中文字幕激情综合| 色五月婷婷色| www.色五月| 九九九九这里只有精品| 99'无码| 97碰碰碰免费公开在线视频| 婷婷天天综合| 99碰碰碰| 伊人网大香| 五月丁香色色网| AV性爱网| 婷婷无码视频| 99啪啪网| www狠狠| 五月丁香va| 少妇出轨做爰高潮A片| 五月丁香亚洲综合网| 9九九久久精品无码专区| 天天情色五月天| 久久99大| 欧美在线视频免费播放| 欧美日韩大黄| 久久久久久久久久久久久久久久久精典| 色五月xxx| 激情内射人妻1区2区3区| 日日肏夜夜干| 婷婷综合色图| 四季8848精品成人免费网站| 99色色网| 天天综合干| 色停停影院五月天| 精品人妻伦一二三区久久| 色色婷婷综合网| 97日本在线| 五月色综合| 五月丁香av在线| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 婷婷国产成人| 99热九九这里只有精品| 国产偷人爽久久久久久老妇APP| 996日日爱| 五月久久婷婷天堂视频| 无码字幕中文| 思思久久99热只有频精品66| 亚洲操精品| 精品少妇蜜臀91| 99九无网码| 色五月激情五月| 色五月成人| 丁香五月婷婷啪| 亚洲色图啪啪| 一区二区成人电影免费播放| 超碰九色| 久人操| 丁香五月天在线直播观看| 色99www.| 影音先锋男人AV资源站| 亚洲久热| 啪啪综合网| 色五月丁香伊人五月| site:hcxsz888.com| 婷婷丁香五月天色色| 99热精品在线播放| 婷婷五月天视频| 日韩无码一区二区三区四区| 丁香六月婷婷久久综合八月| 99色综合网| 噜噜噜精品欧美成人在线观看| 五月综合亚洲色| 99在线免费视频| 久激情| 色综合播放| 色色色五月天婷婷| 中文超碰视在线| 国产在线激情视频| 国产内射婷婷| 精品9l九九九九九77777| 97人妻超级碰碰碰碰碰| 欧美婷婷色| 99国产精品久久久久久久久久久| 伊人综合网站| 亚洲成人影视在线| 大香蕉久久伊人网| 亚洲AV无码成人精品电影| 中文字幕av久久爽| 成人毛片在线免费观看| 9l视频自拍九色9l视频自拍九色9l社区 | 日韩高清成人| 9色视频在线| 五月色丁香| 97色欧美| 亚洲欧美婷婷五月色综合| 精品久久99码| 熟女少妇内射日韩亚洲| 99@久久@99精品视频| 99色综合久久| 天堂综合久| 五月天操逼网| 琪琪理论片| 国产六月婷婷| 99热精品在线播放| 五月天操逼网| 激情久久久| 精品成人无码A片观看香草视频| 人人摸人人干| 亚洲成人AV电影网| 婷婷中文在线| 色婷丨日丨天丨综合久久| 99热这里只有精品2024| 激情六月婷婷| 中文字幕永久在线| 国产黄色av| 激情综合色网| 久久久久99精品成人片| 九九色大香蕉| 免费看欧美成人A片无码| 色色色五月天婷婷| 激情综合网五月丁香| 老司机午夜福利视频金瓶梅| 色五月婷婷激情| 99re视频在线播放| 亚洲中文字幕AV在线| 久久久九九九 99| 国产免费AV在线| 人人舔人人色人人高潮| 99视频| 五月丁香在线| 五月婷婷日本| 丁香亚洲婷婷五月| 丁香九月婷| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 综合 蜜月 婷婷| 色情久久久| WWW.桔色成人.COM入口| 丁香五月天堂网| 九九热在线视频| 狠狠色婷婷丁香五月| 大香蕉综合在线| 日本va欧美va欧美| 五月丁香啪啪啪| 国产欧洲欧洲精品久久| 久热re在线视频| 玖玖资源在线视频| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 狠狠婷婷综合| 狠狠色婷婷| 成人色色视频| www.狠狠| 婷婷精品在线| 天天摸天天透天天舔| 亚洲成人在线播放| 日本三级中国三级99| 色情免费视频播放| 天天综合精品| 天天爽夜夜爽夜夜爽精品| 综合久久五月天| 国产av天堂| 射区导航| 国产精品VA在线| 少妇人妻丰满做爰XXX| 婷婷五月天激情综合| 99热这里只有精品最新地址获取| 五月丁香综合激情| 亚洲思思热久| 99操久久| 一月婷婷色色| 另类图片五月天| 久久R激情| 夜夜骑操AV| 婷婷丁香成人| 久久久久久激情| 爽天天天天天天天| 中文在线成人| 色五月涩涩婷婷| 91九色在线观看免费| 好好干av| 大香蕉久久视频久久视频 | 五月婷婷久久爱| 日日操夜夜爽天天天| 色综合激情| 五月丁香婷婷在线| 久久婷婷五月综合| 99视频内射三四| 婷婷精品在线| 婷婷久久五月| 夜夜干天天操| 天天草婷婷五月| 开心五月天激情网| 狠狠另类视频| 欧美色激情四射| 五月天狠狠干| 色八戒操婷婷| 操97免费超级视频| AV中文在线| 熟女激情五月天| 亚洲激情亚洲激情| 精品国产乱码久久久久夜深人妻 | 日本熟女一区二区| 狠狠色噜噜狠狠狠777奇米| 丁香五月天啪啪激情综合网| 亚洲AV成人在线观看| 99热亚洲精品66| 伊人超碰在线| AV在线观看网站| 99在线观看| 99热这里只有精品9| 啪啪婷婷五月天激情| 91色呦哟| 婷婷娌伦网| 深夜男女福利刺激影院一区完整| 五月天色图| 激情激情激情网| 五月婷婷综合天天操| 色久丁香五| 影音先锋一区| 国产乱妇乱子在线播视频播放网站| 丁香五月天婷婷久久综合| 亚洲狠狠爱婷婷| 久久538| 色播六月| 91九九九色在| 啪啪激情网| 99热国产这里只有| 久热久re| 综合色99| 五月激情综| 婷婷色五月丁香六月欧美啪| 国产人妻777人伦精品HD| 婷婷五月天综合小说网| 婷婷五月激情网| 色偷偷AV亚洲男人的天堂| 深爱激情网综合| 狠狠操综合| 狠狠色噜噜狠| 色婷婷香蕉| 色久五月| 九九综合九九| 日日操无码| 人妻操逼视频| 婷婷五月天亚洲| 色色综合成人网| 人人操操97| 久色激情| 91热久久| 狠狠色综合图片| 色色色欧美| 天天综合网网欲色| 99亚洲综合| 啪啪东京热| 日本欧美成人片AAAA| 五月婷婷开心五月| 五月婷伊人| 9福利性视频欧美| 夜夜嗨一区二区三区直播内容 | 五月激情婷婷在线| 五月婷婷六月丁香综合视频在线| 久久3p| 超碰69天堂| 91精品久久久久久77777| 人人视频人人干人人做| 五月丁香色婷| 丁香五月婷婷啪啪视频| 婷婷五月天伊人| 五月天综合| 99人人操人人摸| 99热99网| 五月婷婷无码| aaa久久| 人人操人| www。五月,com| 国产毛多水多女人A片| a在线观看| 91日视频| 久久精彩免费视频| 五月天播播| 99综合一区| 午夜性爱影视一区77| 成人五月天综合网| 一起草av| www久久久| 久碰久操| 爱射综合| 色婷婷五月开心六月综合| 一月婷婷色色| 亚洲AV综合网| 久久免费9| 综激情网| 久久久婷婷| 人人摸人人搞| 婷色五月天| 久久五月天婷婷| 色色五月天激情| 中文字幕永久免费| 九九99在线免费在线观看视频| 99re热在线视频观看| 色五月激情五月| 日婷婷久久开心| 丁香五月手机在线| 五夜丁香| 丁香九月婷婷| 色五月大香蕉| 97超碰,人人舔,人人操,人人摸| 亚洲情综合五月天| 国产av第一专区| AV在线不卡网站| 婷婷之玖玖| 超碰在线国产| 亚洲综合激情五月久久| 最近中文字幕2019视频1| 强壮公让我夜夜高潮A片视频| 亚洲亚洲人成综合网络| 国内熟女黄色系列| 成人在线视频一区| 久久久WWW| 激情五月天婷婷久久久久久久久久久| 五月丁香综合伦理片| 人人舔天天| 五月婷婷天天| 日日夜夜天天综合| 午夜不卡久久精品无码免费| 99视频日韩| 日本色色网站| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | aaaa久久| 偷拍91九色| wwwss在线观看| 中文不卡一二三区| 激情五月婷婷综合| 岛国av网站| 婷婷五月天国产传媒| 激情五月天第四色| 色偷偷综合| 国产精品18久久久| 综合网啪| 色网站99| 亚洲激情另类| 婷婷五月丁香五月| 综合色色综合| 五月丁香激情婷婷综合字幕| 丁香婷婷影院| 国产精品18久久久| 九九大香蕉黄色影院| 久草久青福利| 99色在线观看视频| 免费超碰在线观看| 91热在线| 2025色婷婷| 色情综合| 成人网在线视频| 天天模,夜夜模夜夜爽| 国产精品色| 日韩丰满少妇无码内射| 97热这里精品在线视频| 国产44页| 秋霞电影理论| 五月婷婷基地| 99色视| 天干干夜夜操| 99爱爱| 九 九九九AV| 伊人丁香六月婷婷| 亚洲综合1024| 99啪在线视频| 就去涩涩丁香五月天| 青青草成人网| 亚欧州精品视频| 免费观看欧美成人AA片爱我多深 | 98毛片| 99干日本| 百度4399有码精品V在线观看| wwccc久久久| 丁香女人五月天| 99热这里都是精品| 九 九九九AV| 九九热在线观看视频网站| 综合色图区| 久久婷婷五月天激情| 激情五月狠狠| 亚洲六月综合激情久久下卡| 包操45分钟网站| 欧美日朝成人| 国产在线黄色| 五月丁香无码| 大香蕉伊人爱在线| www.婷婷| www.五月丁香| 丰满人妻一区二区三区| 色99无码| 亚洲激情综合| 色播五月丁香综合| 五月亚洲| 97精品在线| 91av视频在线观看最新网址| 久久视频在线| 九九视频在线观看视频在线播放69| 婷婷五月丁香五月天| 性一交一乱一交A片久| 丁香六月AV| 天天舔天天爽| 激情文学天天| 四虎国产精品永久在线国在线| WWW.激情| 怡红院AV亚洲一区二区三区H | 色哟呦av| 天天天摸夜夜夜玩| 激情综合五月丁香六月婷婷| 这里只精品热在线18| 99热国产在线| 精品五月天| 极品九九九九九九| 亚洲婷婷丁香| 内射爽无广熟女亚洲| 五月天婷亚洲天综合网综合| 国产乱人偷精品人妻A片| 色婷婷成人在线| 精品人妻午夜一区二区三区四区 | 久碰久| 性综合网| 丁香综合婷婷开心激情网| 另类图片五月天| 狠狠色狠狠鲁| 91操在线| 99ri在线观看视频| 激情美女五月天| 黄色片久久| 开心激情播播五月天| 久久久久久久8| 99热最新网址| 天天色色婷婷| 亚洲色婷婷五月天| 久久久噜噜噜久久人妻| 久久五月天黄色五月天色网址| 欧美十二区| 九九无码| 开心 五月 综合| ai97re99一本| 五月婷网| 五月天激情婷婷丁香| 丁香五月天婷婷91| 激情六月婷婷| 婷婷色五月综合| 庭庭久久内射| 精品亚洲国产成AV人片传媒| 亚洲综合无码| 99激情| 日本成人噜噜噜| 四月婷婷五月色综合| 五月天婷婷婷| 婷婷天堂综合| 极品五月天| PORNY九色9l自拍视频成人| 色婷婷丁香A片区毛片区女人区| 天天综合社区| 噜噜色五月| 欧美碰碰| 欧美成人精品A片免费一区99| 亚洲激情免费视频观看| 亚洲色精彩| 久久色吧| 欧美性生交XXXXX无码小说| 久久久久久人妻| 五月丁香六月婷精品视频| 91视频久久久| 性做爰A片免费视频A片直播| AA久久| 婷婷五月天a| 人妻操逼视频。| 婷婷久久色| 99噜噜噜在线播放| 人人操AV| 激情五月天小说| 深爱五月天婷综合| 丁香六月婷婷综合激情欧美| 久9热插入| 日韩无码专区| 婷婷五月情| 九九精品视频在线观看| 视色网在线播放| 精品成人久久久久久久_一二三四视| 在线五月婷| 国产日韩欧美| 狠狠搞狠狠操| 成人视频一区| 久人操| 婷婷五月六月| 青青草原99热| 九六五月天婷婷| 五月天婷婷午夜丁香| 色色热| 生活片五区| 五月丁香成人小说| www.五月天社区| 四色女婷婷| 美臀自射自家人妻| 色欲人妻综合aaaaaaaa网| 激情性爱五月| 婷婷丁香五月91| 五月婷婷色白丝| 超级久久久| 91久女| 五月婷婷丁香91| 乱岳熟女50岁| 熟女少妇内射日韩亚洲| 婷色五月| 色99在线| 99热这里有精品| 九九这里只有精品| 在线只有精品| 精品一区二区三区四区五区六区| 99激情| 激情五月综合网| 色情综合网| 精品一二三区久久AAA片| 欧美日韩99| 色婷婷丁香五月| 北京熟妇搡BBBB搡BBBB| 全部老头和老太XXXXX| 丁香六月婷婷久久综合| 99在线精品免费视频| 蜜桃成语时李时珍 免费| 激情丁香五月| 99燥99日| 午夜激情久久| 玖玖婷婷视频| 久久婷婷五月丁香网| 影音先锋噜一噜| 五月丁香手机在线| 玖玖在线资源视频| 激情婷婷另类| 色婷婷综合视频| 五月丁香久久综合| 免费成人va| 亚洲综合丁香婷婷六月天| 四色女婷婷| 色色色9| 狠狠狠狠狠狠色| 国产激情综合五月久久| 国产美女无遮挡裸体毛片A片| 五月丁香花成人社区| 中文字幕综合色| 热99精品视频| 开心久久五月天| 丁香五月激情澎湃一区| 桃色激情网| a在线观看| 成人做爰A片免费看视频| 玖久久网站| 色情五月天丁香社区| 天天性视频| 日本性激情色播| 玖玖五月丁香| 久久精品99| 久久久日韩特色特黄AAAA| 热99免费在线| 99热精品少| 天天狠狠干| 天天综合在线网| 操逼五月婷婷| 亚洲天堂啪啪| 森林影视大全,最好看的2019年视频 | 亚洲九九视频| 99性色| 欧美日韩成人h| 色婷婷免费观看| 操逼在线视频| 欧美激情综合色综合啪啪五月| 久久人妻精品| 丁香六月成人网| 台湾综合丁香五月蜜桃| 婷婷六月啪啪 | 婷婷5月久久综合网站| 五月天婷婷免费| 九九亚洲小视频| 人人草公开操| 激情五月色在线播放| 久机视频这只有精品| 色9999综合久久| 四色综合网| 这里只有精品在线视频在线观看| XX色综合| 五月婷婷综合影院| ss99热| 9久久精品| 亚洲第一影院高清无码网站| 国产阿姨日皮艹逼内射视频| 超碰人人干| 成人国产欧美大片一区| 色综合久久44| 亚洲激情免费视频观看| 婷婷五月花| 四虎成人精品永久免费AV九九| 午夜婷婷五月天| 99精品网| 丁香五月性| 停婷丁五月在线| 97操在线| 管管補管管紱| 五月天久久婷婷| 五月天丁香久久| 九九性视频| 精品一二三区久久AAA片| 五月婷婷另类| 日韩成人中文字幕| 免费AV在线网址| 婷婷丁香五月天中文字幕| 一起草av| 色色是色N一| 91精品久久久久久| 综合伊人久久| 五月丁香综合在线| 91国产精品视频播放| 婷婷丁香六月影视| 涩涩五月天| 综合色色婷婷| 五月丁香啪啪啪综合网| 婷婷七月丁香色色| 激情五月综合婷婷| 五月激情久久| 丁香婷婷色五月| 五月天婷婷Av| 人妻自慰高清合集| 涩丁香91| 激情五月四色| 123日本不卡在线| 五月丁香婷庭在线| 激情五月婷婷在线观看| 91国产精品视频播放| 五月天色在线| 91色性感五月婷婷丁香| 五月天在线视频尤物视频在线看| 亚洲日韩乱码一区二区三区四区| 久久在线视频只有这里有精品| 欧美这里只有精品| 人人干天天舔| 九九Av| 婷婷色系婷色| 成人综合视频网址| 色婷亚洲| www99xxxx五月丁| 日本色五月婷婷| 成人综合视频在线| 日本久久综合| 天天弄天天爽| 国产AV一区二区三区日韩| 五月人妻婷婷| 九色亚洲| 99久视频| 五月丁香六月婷婷啪啪| 欧美色图天堂网| 国产噜一噜天天噜| BBWCUCKOLD精品熟妇| 久久机热这里只有精品| 狠狠干狠狠操狠狠爱| 狠狠色五月| 久久久人妻人伦| 天天插天天插| 天天摸夜夜夜| www久久艹| 色情五月综合婷婷| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 丁香五月天天日| 综合色五月亭亭| 天天操婷婷| 丁香五月婷婷啪啪啪| 99只有精品| 九九精品视频在线观看| 激情综合网五月丁香| 大香蕉久久| 婷婷五月天激情丁香| 色婷婷a| 国产精品国产成人国产三级| 五月天激情视频网站| 超碰国产av| 色色五月天婷婷| 青草激情综合| 少妇被下春药玩弄A片| 色五月丁香五月婷婷五月成人网| 六月婷基地| 婷婷爱五月| 99视频久久| 精品无码av丁香五月激情| 蜜乳AV成人| 五月天婷婷激情小说电影| 青青草婷婷综合五月| www,com,五月色色| 熟女人妻一区二区三区免费看| 丁香婷婷五月基地| 97人人干人人操| 亚洲狠9| 色综合色综合网| 五月婷婷亞洲中文| 99久久精彩视频。| 美女xx不卡| 性爱久久| 婷婷情色五月天| 丁香六月爱综合| 色999五月色| 996re热精品视频| 丰满人妻一区二区三区| 激情六月天婷婷| 一个色的综合| w婷婷五月婷婷w| 婷婷丁香五月社区亚洲| 九九亚洲| 久久98热re| 五月婷婷丁香狠狠撸久久| 激情视频网址| 五月婷婷丁香网| 国产精产国品一二三在观看| 丁香色综合| 色婷婷裸体色性在线| 狠狠操之狠狠操| www.色综合.com| 欧美高潮9| 亚洲欧洲中文日韩久久AV乱码| 丁香花五月天激情| 五月婷婷中文字幕| 无码激情精品色婷婷久久久久| 九九久久五月天| 激情久久综合网| 亚洲丁香花五月丁香花| 九色PORNY9l原创自拍| 9999三级片| 久久天天| 日韩精品二三区| 色色色色色色色色色999| 久久这里只精品66| 91一起艹| 国产成人高清| 好色婷婷| 91九色PORNY中文啦| 97久久综合网| 成人αV视频免费观看| 伊人久久婷婷| 亭亭玉月丁香| 97色婷婷| 日本色道视频网站| 亚洲婷婷91丁香| 99热资源在线| 激情深爱五月天| 丁香六月久久| 中文AV在线观看| 在线不卡中文字幕| 综合色色综合| 色综合久久综合| 婷婷激情四射五月天| 丁香久久激情俄| 欲求不满的人妻| 九一九九黄色| 97伦色婷婷| 婷婷丁香五月基地| 色97啪啪| 高清国产AV| 成人av观看| 99热主页日本| 成人视频一区| 丁香色五月直播| 五月婷婷伦理| 我爱宗和色| 91小黄书网址在线观看| www.26uuu.com亚洲电影| 99热99这里只有精品| 狠狠色噜噜色狠狠狠综合久久成人波 | 激情五月天第四色| 丁香久久激情俄| 东北黄色一级| 天天日夜夜欢| 激情五月综合网| 99在线观看精彩视频| 全国最新疫情| 99久久大片| 成人短视频在线免费观看| 亚洲网站999| 色综合丁香| 激情色播| 色婷五月天亚洲| 五月丁六月婷| 天天干天天干天天干天天干天天干| 99热97| 色~性~乱~伦~噜| 天天插天天爽| 黑人巨粗进入警花疼哭A片| 久久九网| 久久大香蕉视频| 99久热这里只有精品视频删减版| 色另类五月天| 久久这里只| 色五月色五天色情网| 五月天激情婷婷| 午夜微拍福利| 开心五月天激情网| 国产SUV精品一区二区883| 日本A片一区| 爆乳熟妇一区二区三区爆乳照片| 丁香五月在线伊人| 思思热视频在线观看| 波多野结衣AV无码Porn| 91久热| 色香五月天| 99视频| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 成人欧美一区二区三区在线观看| 婷婷在线精品| 操操天堂| 亚洲操精品| 色娸娸综合网| 国产精品色婷婷99久久精品| 五月天婷婷激情网| 婷婷久久丁香| 综合色视频| 五月天播播| 九伊人网| 停停五月色宗合| 秋霞日本免费毛片A片| 五月激情小说| 99色在线观看视频| 婷婷五月丁香色综合| 操碰久| 99热新网址| 无码人妻电影| 91久久婷婷| 五月天无码| 99热啪啪| 情情五月天色| 九九婷| 79色色色色| 久热婷婷在线视频| 亚洲综合另类| 久婷| www.超碰在线| 婷婷五月天少妇| 丁香六月天婷婷色| 亚洲综合激情五月| 五月婷婷黄| 婷婷久久久久| 婷婷激情肏屄网| 欧美黑人巨大性生话| 99热大| 婷婷内射视频在线| 另类图片天天影视在线观看| 色五月婷婷在线| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 乱乱av| 五月六月伦理| 久久九九中文字幕| 夜夜夜夜夜操| 婷婷五月天少妇| 99精品综合在线| 丁香五月激情网| AV激情五月| 九九成人电影婷婷| 俺去也五月天| 色区久久| 国产人妻777人伦精品HD| 综合激情网激情五月。| 人人操人人爽成人AV| 色婷婷视频在线| 亚州日本欧州韩美高青高潮一| 五月丁香综合久久夜夜| 91色噜噜狠狠狠狠色综合| 丁香五月 综合| 婷婷五月激情在线| www久久久久久久97| WWW丁香五月| 日韩99无码| 国产成人高清| 五月亚洲激情| 丁香五月天亚洲综合| 久久98| 色情五月天A片| 色久女| 精品二区| 精品久久9| 婷婷激情综合网| 激情久久久久久久久| 亚洲妇女熟BBW| 丁香五月天资源网| 噜综合| 色吊丝中文字幕| 久久久久这里只有精品| 色色丁香激情五月| WWW久久久| 182无码| 天天日,天天插| 日日夜夜久| 五月婷婷五月丁香综合| 久久九⑨|