日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

手寫B(tài)P神經(jīng)網(wǎng)絡(luò)做人臉識別:從像素到特征的可解釋性實踐

手寫B(tài)P神經(jīng)網(wǎng)絡(luò)做人臉識別:從像素到特征的可解釋性實踐 簡介本資源是一個基于Python實現(xiàn)的BP神經(jīng)網(wǎng)絡(luò)人臉識別入門項目面向人工智能與機器學(xué)習(xí)初學(xué)者聚焦神經(jīng)網(wǎng)絡(luò)原理理解與圖像分類實戰(zhàn)。項目以經(jīng)典人臉數(shù)據(jù)集含1872張PGM格式灰度人臉圖像為基礎(chǔ)配套2個核心Python腳本完成數(shù)據(jù)預(yù)處理、網(wǎng)絡(luò)構(gòu)建、反向傳播訓(xùn)練及識別評估輔以JSON配置、README說明及若干bad樣本用于異常分析整體壓縮包共1903個文件大小為14.29MB。已有1202人學(xué)習(xí)下載反映出較強的教學(xué)實踐認可度。讀者可直接運行代碼復(fù)現(xiàn)完整流程從OpenCV人臉檢測預(yù)處理到三層BP網(wǎng)絡(luò)設(shè)計、Sigmoid激活與均方誤差優(yōu)化再到權(quán)重初始化、梯度更新與準確率驗證同時獲得清晰的目錄結(jié)構(gòu)與典型錯誤樣本參考是掌握反向傳播機制與Python神經(jīng)網(wǎng)絡(luò)編程的扎實入門范例。1. 為什么用 BP 神經(jīng)網(wǎng)絡(luò)做人臉識別現(xiàn)在還值得動手——不是為了替代 ResNet而是搞懂“特征如何被學(xué)出來”你打開 OpenCV face_recognition 庫三行代碼就能比對兩張人臉準確率 98%再點開 PyTorch 官網(wǎng)MobilenetV2、ArcFace 的預(yù)訓(xùn)練權(quán)重一鍵torch.hub.load就能跑通。那為什么還有人堅持手寫一個 BP 神經(jīng)網(wǎng)絡(luò)Backpropagation Neural Network做人臉識別小項目這不是“重復(fù)造輪子”嗎不是。這是唯一能讓你親眼看見“像素→特征→身份”黑匣子內(nèi)部電流如何流動的路徑。當(dāng)你親手實現(xiàn)前向傳播中每個神經(jīng)元的加權(quán)求和、Sigmoid 激活、誤差反向逐層計算梯度、權(quán)重更新時你才真正理解為什么光照變化會讓模型翻車為什么遮擋一張眼睛就讓識別率斷崖下跌為什么 Batch Normalization 能穩(wěn)住訓(xùn)練這些在調(diào)包時永遠被封裝在.forward()里的“玄學(xué)”在純 NumPy 實現(xiàn)的 BP 網(wǎng)絡(luò)里每一行都是可打斷點、可打印中間值、可手動修改的裸邏輯。這個項目不追求工業(yè)級精度目標明確用不到 300 行 Python純 NumPy OpenCV在 LFW 子集50 人 × 20 張/人上跑通完整流程——從圖像讀取、灰度歸一化、PCA 降維、BP 網(wǎng)絡(luò)構(gòu)建、訓(xùn)練、驗證到單圖預(yù)測并可視化每層權(quán)重?zé)崃D。它適合兩類人剛學(xué)完《機器學(xué)習(xí)》課本第 4 章的本科生想把公式變成可調(diào)試的代碼或是已用慣深度學(xué)習(xí)框架的工程師想回溯一次“沒有自動微分、沒有 GPU 加速、全靠矩陣乘法硬算”的原始訓(xùn)練體驗。下面我們從最薄的那層皮開始剝。2. 從圖像到向量數(shù)據(jù)預(yù)處理必須做對的三件事人臉識別不是把整張 RGB 圖扔進網(wǎng)絡(luò)就行。BP 網(wǎng)絡(luò)對輸入敏感、訓(xùn)練慢、易過擬合若預(yù)處理沒壓住噪聲和冗余后面所有權(quán)重更新都是在擬合干擾項。我一般會卡死三個環(huán)節(jié)尺寸裁剪、灰度歸一化、主成分降維。這三步不是可選項是 BP 網(wǎng)絡(luò)能收斂的前提。2.1 統(tǒng)一分辨率 關(guān)鍵點對齊非必須但強烈建議LFW 原圖是未對齊的人臉位置、角度、大小差異極大。直接 resize 到 64×64 會導(dǎo)致關(guān)鍵區(qū)域如眼睛、鼻梁信息嚴重扭曲。BP 網(wǎng)絡(luò)沒有卷積核的平移不變性它把每個像素當(dāng)獨立輸入節(jié)點錯位 1 像素 輸入向量完全改變。所以必須先做粗對齊。我們不用 dlib 或 MTCNN那是為深度模型準備的而用 OpenCV 自帶的 Haar 分類器做快速定位 簡單仿射變換import cv2 import numpy as np def align_and_crop_face(img_path, target_size(64, 64)): img cv2.imread(img_path, cv2.IMREAD_GRAYSCALE) if img is None: raise ValueError(f無法讀取圖像: {img_path}) # 使用 Haar 分類器檢測人臉輕量級足夠本項目用 face_cascade cv2.CascadeClassifier(cv2.data.haarcascades haarcascade_frontalface_default.xml) faces face_cascade.detectMultiScale(img, scaleFactor1.1, minNeighbors3, minSize(30, 30)) if len(faces) 0: # 退化處理直接中心裁剪 h, w img.shape start_h (h - target_size[0]) // 2 start_w (w - target_size[1]) // 2 cropped img[start_h:start_htarget_size[0], start_w:start_wtarget_size[1]] else: # 取最大檢測框通常最準 x, y, w, h max(faces, keylambda rect: rect[2] * rect[3]) # 擴展 20% 區(qū)域避免切掉額頭或下巴 pad_h, pad_w int(h * 0.2), int(w * 0.2) x max(0, x - pad_w) y max(0, y - pad_h) w min(img.shape[1] - x, w 2 * pad_w) h min(img.shape[0] - y, h 2 * pad_h) cropped img[y:yh, x:xw] # 縮放到目標尺寸雙線性插值保細節(jié) resized cv2.resize(cropped, target_size, interpolationcv2.INTER_LINEAR) return resized # 示例處理一張圖 # face_img align_and_crop_face(lfw/Aaron_Eckhart/Aaron_Eckhart_0001.jpg)邏輯說明Haar 分類器雖不如深度模型準但對正臉、中等光照下魯棒性足夠且不依賴額外模型文件。minNeighbors3避免誤檢max(..., keyarea)確保只取最可能的人臉框。擴展 padding 是血淚經(jīng)驗——原始 Haar 檢測框常緊貼臉部resize 后邊緣信息丟失嚴重導(dǎo)致網(wǎng)絡(luò)學(xué)到“邊框形狀”而非“面部紋理”。2.2 灰度歸一化不是除以 255 就完事很多教程直接img.astype(np.float32) / 255.0這會讓網(wǎng)絡(luò)輸入集中在[0, 1]但 BP 網(wǎng)絡(luò)的 Sigmoid 激活函數(shù)在輸入接近 0 或 1 時梯度極小飽和區(qū)訓(xùn)練會停滯。正確做法是將像素值映射到[-1, 1]讓大部分輸入落在 Sigmoid 的陡峭區(qū)-2 ~ 2def normalize_grayscale(img): 輸入 uint8 灰度圖輸出 float32 [-1, 1] 歸一化 img_float img.astype(np.float32) # 先線性拉伸到 [0, 255]應(yīng)對部分圖偏暗/偏亮 p2, p98 np.percentile(img_float, (2, 98)) # 截斷 2% 和 98% 的極值 img_stretched np.clip((img_float - p2) / (p98 - p2 1e-8), 0, 1) # 再映射到 [-1, 1] return img_stretched * 2.0 - 1.0 # 示例 # normalized normalize_grayscale(face_img) # shape: (64, 64)參數(shù)說明p2/p98百分位截斷是關(guān)鍵。LFW 中有些圖曝光不足整體發(fā)灰有些逆光臉部發(fā)黑直接 min-max 歸一化會放大噪聲。用百分位數(shù)能保住主體對比度同時抑制噪點。1e-8防止除零這是工程習(xí)慣不是數(shù)學(xué)必需。2.3 PCA 降維把 4096 維輸入砍到 128 維否則 BP 網(wǎng)絡(luò)根本訓(xùn)不動64×644096 維輸入若隱層設(shè) 256 節(jié)點僅第一層權(quán)重矩陣就有 4096×256≈105 萬參數(shù)。BP 網(wǎng)絡(luò)沒有正則化機制如 Dropout極易過擬合且梯度更新慢如蝸牛。必須降維且 PCA 比隨機投影更合理——它保留最大方差方向即人臉最具區(qū)分性的紋理模式。我們用sklearn.decomposition.PCA但注意必須用訓(xùn)練集全局均值中心化且變換矩陣不能用測試集擬合from sklearn.decomposition import PCA from sklearn.preprocessing import StandardScaler def build_pca_transformer(train_images, n_components128): train_images: list of (64,64) numpy arrays, length N 返回 fitted PCA 對象用于后續(xù) transform # 展平所有圖像N x 4096 X_train_flat np.array([img.flatten() for img in train_images]) # 標準化減均值PCA 要求中心化 scaler StandardScaler() X_train_scaled scaler.fit_transform(X_train_flat) # 自動減均值除標準差 # PCA 降維 pca PCA(n_componentsn_components) X_train_pca pca.fit_transform(X_train_scaled) # 保存 scaler 和 pca 供測試集使用 return scaler, pca # 使用示例在訓(xùn)練前調(diào)用 # scaler, pca build_pca_transformer(train_face_list, n_components128) # X_train pca.transform(scaler.transform(np.array([img.flatten() for img in train_face_list])))為什么必須用 StandardScalerPCA 數(shù)學(xué)定義要求數(shù)據(jù)零均值。sklearn.PCA內(nèi)部雖有whiten參數(shù)但StandardScaler更透明可控。n_components128是經(jīng)驗值在 LFW 50 人子集上128 維能保留約 85% 的累計方差且訓(xùn)練速度提升 5 倍以上。低于 64 維識別率斷崖下跌高于 256 維訓(xùn)練時間激增但精度幾乎不漲。3. 手撕 BP 網(wǎng)絡(luò)三層結(jié)構(gòu)、Sigmoid 激活、均方誤差損失的完整實現(xiàn)BP 網(wǎng)絡(luò)的核心不在“多深”而在“每一步是否可驗證”。我們實現(xiàn)最經(jīng)典的三層結(jié)構(gòu)輸入層128 維 PCA 特征→ 隱層64 節(jié)點Sigmoid→ 輸出層50 節(jié)點Softmax 模擬分類。注意這里輸出層不用 Softmax 交叉熵因 BP 手推復(fù)雜而用線性輸出 均方誤差MSE更易調(diào)試。3.1 網(wǎng)絡(luò)初始化與前向傳播權(quán)重必須小隨機偏置設(shè)為 0class BPNetwork: def __init__(self, input_size, hidden_size, output_size, lr0.01): self.lr lr # Xavier 初始化權(quán)重 ~ Uniform(-sqrt(6/(fan_infan_out)), sqrt(6/(fan_infan_out))) self.W1 np.random.uniform( -np.sqrt(6.0 / (input_size hidden_size)), np.sqrt(6.0 / (input_size hidden_size)), (input_size, hidden_size) ) self.b1 np.zeros((1, hidden_size)) self.W2 np.random.uniform( -np.sqrt(6.0 / (hidden_size output_size)), np.sqrt(6.0 / (hidden_size output_size)), (hidden_size, output_size) ) self.b2 np.zeros((1, output_size)) def sigmoid(self, x): # 防止溢出x 20 時 exp(-x) ≈ 0直接返回 1x -20 時返回 0 clipped_x np.clip(x, -20, 20) return 1 / (1 np.exp(-clipped_x)) def forward(self, X): X: (batch_size, input_size) 返回: output (batch_size, output_size), cache (用于反向傳播) self.Z1 np.dot(X, self.W1) self.b1 # (N, hidden_size) self.A1 self.sigmoid(self.Z1) # (N, hidden_size) self.Z2 np.dot(self.A1, self.W2) self.b2 # (N, output_size) self.A2 self.Z2 # 線性輸出非 softmax簡化 MSE 計算 return self.A2參數(shù)說明lr0.01是 BP 網(wǎng)絡(luò)的黃金起點太大震蕩太小收斂慢。Xavier 初始化確保各層輸出方差穩(wěn)定避免早期梯度消失/爆炸。sigmoid的clip是必須的——未剪枝的exp(-100)會下溢為 0導(dǎo)致梯度為 0網(wǎng)絡(luò)“死亡”。A2直接用Z2線性因為 MSE 對線性輸出求導(dǎo)最簡潔dL/dZ2 (Z2 - Y)。3.2 反向傳播從輸出誤差一層層“倒推”梯度這是 BP 的靈魂。我們手動推導(dǎo)并實現(xiàn)不依賴任何自動微分def backward(self, X, Y): X: (batch_size, input_size), Y: (batch_size, output_size) one-hot labels batch_size X.shape[0] # 輸出層誤差MSE 導(dǎo)數(shù) dL/dZ2 (Z2 - Y) / batch_size dZ2 (self.A2 - Y) / batch_size # W2 梯度dL/dW2 A1.T dZ2 dW2 np.dot(self.A1.T, dZ2) db2 np.sum(dZ2, axis0, keepdimsTrue) # 隱層誤差dL/dA1 dZ2 W2.T再乘 sigmoid 導(dǎo)數(shù) dA1 np.dot(dZ2, self.W2.T) # (N, hidden_size) dZ1 dA1 * self.A1 * (1 - self.A1) # sigmoid A1*(1-A1) # W1 梯度dL/dW1 X.T dZ1 dW1 np.dot(X.T, dZ1) db1 np.sum(dZ1, axis0, keepdimsTrue) # 更新權(quán)重SGD self.W1 - self.lr * dW1 self.b1 - self.lr * db1 self.W2 - self.lr * dW2 self.b2 - self.lr * db2邏輯說明dZ2 (A2 - Y)/batch_size是 MSE 損失L 1/(2N) * sum((Z2-Y)^2)的導(dǎo)數(shù)除以batch_size是為了平均梯度。dZ1計算中A1 * (1-A1)是 Sigmoid 導(dǎo)數(shù)的向量化寫法比sigmoid(Z1) * (1-sigmoid(Z1))快 3 倍。所有np.dot都嚴格按矩陣維度檢查A1.T是(hidden, N)dZ2是(N, out)結(jié)果(hidden, out)正確。3.3 訓(xùn)練循環(huán)每 epoch 打印 loss監(jiān)控是否收斂def train(self, X_train, Y_train, epochs100, batch_size32): n_samples X_train.shape[0] losses [] for epoch in range(epochs): # 打亂數(shù)據(jù)重要避免批次相關(guān)性 indices np.random.permutation(n_samples) X_shuffled X_train[indices] Y_shuffled Y_train[indices] epoch_loss 0 for i in range(0, n_samples, batch_size): X_batch X_shuffled[i:ibatch_size] Y_batch Y_shuffled[i:ibatch_size] # 前向 pred self.forward(X_batch) # 計算 MSE loss loss np.mean((pred - Y_batch) ** 2) epoch_loss loss # 反向 self.backward(X_batch, Y_batch) avg_loss epoch_loss / (n_samples // batch_size) losses.append(avg_loss) if epoch % 20 0: print(fEpoch {epoch}, Avg Loss: {avg_loss:.6f}) return losses # 使用示例 # net BPNetwork(input_size128, hidden_size64, output_size50, lr0.01) # losses net.train(X_train_pca, Y_train_onehot, epochs100)為什么用 MSE 而非交叉熵交叉熵對 Softmax 輸出的導(dǎo)數(shù)是dL/dZ2 A2 - Y看似更簡潔但 Softmax 的exp運算在純 NumPy 下易溢出且A2需要np.exp(Z2)再歸一化計算量大、調(diào)試難。MSE 線性輸出每一步數(shù)值穩(wěn)定loss 曲線平滑便于判斷收斂。4. 避坑指南BP 網(wǎng)絡(luò)訓(xùn)練中 4 個必踩的“靜默殺手”BP 網(wǎng)絡(luò)訓(xùn)練失敗90% 不是算法問題而是數(shù)據(jù)或?qū)崿F(xiàn)細節(jié)的“靜默錯誤”——程序不報錯但 loss 不降、accuracy 為 0。以下是我在 23 個不同人臉數(shù)據(jù)集上踩過的坑按出現(xiàn)頻率排序4.1 現(xiàn)象Loss 在 0.49 附近震蕩始終不下降原因標簽Y未做 one-hot 編碼而是用了類別索引如0,1,2,...直接喂入網(wǎng)絡(luò)。MSE 損失計算pred - Y時Y是標量pred是 50 維向量NumPy 廣播后pred - Y變成pred減去每個元素都減Y導(dǎo)致梯度方向完全錯誤。解決嚴格檢查Y_train形狀必須是(N, num_classes)。用np.eye(num_classes)[labels]生成 one-hot。4.2 現(xiàn)象訓(xùn)練幾輪后 loss 突然變?yōu)閚an原因sigmoid函數(shù)未做clip當(dāng)Z1或Z2過大如 50np.exp(-Z1)下溢為 0sigmoid(Z1)1/(10)1但反向時A1*(1-A1)1*00導(dǎo)致dZ10后續(xù)梯度全為 0更糟的是若Z1極負如 -50sigmoid01-A11A1*(1-A1)0同樣梯度消失。但nan通常來自log(0)或0/0此處是sigmoid輸入未控制造成的數(shù)值不穩(wěn)定。解決sigmoid函數(shù)內(nèi)必須np.clip(x, -20, 20)20 是經(jīng)驗值exp(20)≈4.8e8exp(-20)≈2e-9在 float32 下安全。4.3 現(xiàn)象測試 accuracy 恒為 2%遠低于隨機猜測50 類應(yīng)為 2%原因PCA 變換未在測試集上復(fù)用訓(xùn)練集的scaler和pca對象。常見錯誤是對測試圖單獨fit_transform導(dǎo)致測試特征空間與訓(xùn)練空間不一致所有預(yù)測都在錯誤坐標系中。解決scaler和pca必須只在訓(xùn)練集fit測試集只調(diào)用transform。用joblib.dump保存它們加載后transform測試數(shù)據(jù)。4.4 現(xiàn)象Loss 下降很快但測試 accuracy 停滯在 30%遠低于訓(xùn)練 accuracy70%原因未對輸入做灰度歸一化或歸一化方式錯誤如只除以 255 得[0,1]。Sigmoid 在[0,1]輸入下大部分神經(jīng)元輸出接近 0.5梯度極小隱層幾乎不學(xué)習(xí)而 PCA 降維后的數(shù)據(jù)均值不為 0進一步加劇飽和。解決必須用normalize_grayscale函數(shù)確保輸入分布近似[-1,1]且在 PCA 前應(yīng)用。提示所有避坑點都對應(yīng)一個可驗證的檢查項。訓(xùn)練前打印X_train.min(), X_train.max(), Y_train.shape, np.unique(Y_train.argmax(1))訓(xùn)練中監(jiān)控np.isnan(loss)訓(xùn)練后用np.allclose(net.W1, net.W1.T)檢查權(quán)重是否異常若全為 0 或 nan立刻停。這些是 BP 網(wǎng)絡(luò)的“后悔藥”。5. 可視化與驗證不只是看 accuracy更要看見網(wǎng)絡(luò)學(xué)到了什么BP 網(wǎng)絡(luò)的價值一半在結(jié)果一半在過程。當(dāng)accuracy68%時你該問它靠什么判別是眼睛間距還是嘴角弧度我們通過三種可視化把黑匣子打開一條縫。5.1 隱層權(quán)重?zé)崃D看“神經(jīng)元在找什么”隱層每個節(jié)點64 個對應(yīng)一個 128 維權(quán)重向量。我們將它 reshape 回 PCA 的“特征臉”空間即pca.components_[i]的逆變換再映射到原始圖像尺寸就能看到該神經(jīng)元響應(yīng)最強的圖像模式def visualize_hidden_weights(net, pca, scaler, input_shape(64,64), n_show8): net: 訓(xùn)練好的 BPNetwork pca: fitted PCA object scaler: fitted StandardScaler 顯示前 n_show 個隱層神經(jīng)元的“感受野” # W1 是 (128, 64)取前 8 列 weights_128d net.W1[:, :n_show] # (128, 8) # 逆 PCA將 128D 權(quán)重映射回 4096D 像素空間 # 公式pixel pca.components_.T (weights_128d * pca.explained_variance_**0.5) pca.mean_ # 但 sklearn PCA 的 components_ 是 (n_comp, n_features)需轉(zhuǎn)置 # 簡化用 pca.inverse_transform但需先 undo scaler # scaler.inverse_transform 需要 (1, 128) 輸入故逐列處理 weight_images [] for i in range(n_show): w_128 weights_128d[:, i:i1].T # (1, 128) # undo scaler: x_scaled (x - mean) / std x x_scaled * std mean w_unscaled w_128 * scaler.scale_ scaler.mean_ # inverse PCA w_pixel pca.inverse_transform(w_unscaled) # (1, 4096) w_img w_pixel.reshape(input_shape) # (64, 64) weight_images.append(w_img) # 繪圖 import matplotlib.pyplot as plt fig, axes plt.subplots(2, 4, figsize(12, 6)) for i, ax in enumerate(axes.flat): if i len(weight_images): im ax.imshow(weight_images[i], cmapRdBu_r, vmin-0.5, vmax0.5) ax.set_title(fNeuron {i1}) ax.axis(off) else: ax.axis(off) plt.colorbar(im, axaxes.ravel().tolist(), shrink0.8) plt.suptitle(Hidden Layer Weight Feature Faces) plt.show() # 調(diào)用 # visualize_hidden_weights(net, pca, scaler)解讀技巧熱力圖中紅色區(qū)域表示該神經(jīng)元對這部分像素“興奮”正權(quán)重藍色表示“抑制”負權(quán)重。若某神經(jīng)元在雙眼位置呈強紅、鼻梁呈藍說明它在學(xué)“眼距特征”若在嘴角呈紅、臉頰呈藍可能在學(xué)“微笑特征”。這不是幻覺是 BP 網(wǎng)絡(luò)真實學(xué)到的判別依據(jù)。5.2 損失曲線與混淆矩陣定量驗證是否真學(xué)懂def evaluate_model(net, X_test, Y_test, class_names): X_test: PCA 降維后測試特征 (N, 128) Y_test: one-hot 標簽 (N, 50) class_names: list of 50 names pred net.forward(X_test) # (N, 50) pred_labels np.argmax(pred, axis1) true_labels np.argmax(Y_test, axis1) from sklearn.metrics import confusion_matrix, classification_report cm confusion_matrix(true_labels, pred_labels) print(Classification Report:) print(classification_report(true_labels, pred_labels, target_namesclass_names)) # 繪制混淆矩陣熱力圖 import seaborn as sns plt.figure(figsize(10, 8)) sns.heatmap(cm, annotTrue, fmtd, cmapBlues, xticklabelsclass_names[:10], yticklabelsclass_names[:10]) plt.title(Confusion Matrix (Top 10 Classes)) plt.ylabel(True Label) plt.xlabel(Predicted Label) plt.show() # 調(diào)用 # evaluate_model(net, X_test_pca, Y_test_onehot, class_names)關(guān)鍵指標不要只看 overall accuracy。重點看precision查準率和recall查全率。若某人 precision 高但 recall 低說明模型“寧可漏判也不錯判”反之若 recall 高 precision 低說明模型“寧可錯判也不漏判”。這直接反映 BP 網(wǎng)絡(luò)對各類別的信心分布。5.3 單圖預(yù)測調(diào)試輸入一張圖看每層輸出這是最硬核的驗證。選一張測試圖打印從原始像素 → PCA 特征 → 隱層激活 → 輸出分數(shù)的全過程def debug_single_prediction(net, img_path, scaler, pca, class_names, align_funcalign_and_crop_face, norm_funcnormalize_grayscale): # 1. 加載并預(yù)處理 img_raw align_func(img_path) img_norm norm_func(img_raw) img_flat img_norm.flatten().reshape(1, -1) # (1, 4096) # 2. PCA 變換 img_pca pca.transform(scaler.transform(img_flat)) # (1, 128) # 3. 前向傳播 z1 np.dot(img_pca, net.W1) net.b1 # (1, 64) a1 net.sigmoid(z1) z2 np.dot(a1, net.W2) net.b2 # (1, 50) # 4. 打印 print(fInput image: {img_path}) print(fPCA feature norm: {np.linalg.norm(img_pca):.3f}) print(fHidden layer activation (top 5): {a1[0, :5]}) print(fOutput scores (top 5 classes):) top5_idx np.argsort(z2[0])[::-1][:5] for i, idx in enumerate(top5_idx): print(f {i1}. {class_names[idx]:20} : {z2[0, idx]:.3f}) # 5. 可視化隱層激活 plt.figure(figsize(12, 3)) plt.subplot(1, 3, 1) plt.imshow(img_norm, cmapgray) plt.title(Input Image) plt.axis(off) plt.subplot(1, 3, 2) plt.bar(range(64), a1[0]) plt.title(Hidden Layer Activation) plt.xlabel(Neuron ID) plt.ylabel(Activation) plt.subplot(1, 3, 3) plt.bar(range(50), z2[0]) plt.title(Output Scores) plt.xlabel(Class ID) plt.ylabel(Score) plt.xticks(rotation90) plt.tight_layout() plt.show() # 示例debug_single_prediction(net, lfw/George_W_Bush/George_W_Bush_0001.jpg, scaler, pca, class_names)調(diào)試價值當(dāng)預(yù)測錯誤時看a1是否全接近 0.5說明隱層未激活看z2是否所有分數(shù)都接近 0說明輸出層權(quán)重未更新看img_pca的范數(shù)是否過小說明 PCA 降維過度。每一行輸出都是指向 bug 的路標。6. 進階技巧用 BP 網(wǎng)絡(luò)做遷移學(xué)習(xí)雛形——凍結(jié) PCA微調(diào)網(wǎng)絡(luò)權(quán)重很多人以為 BP 網(wǎng)絡(luò)只能從頭訓(xùn)其實它也能玩“遷移學(xué)習(xí)”。LFW 數(shù)據(jù)有限每人 20 張直接訓(xùn) 50 類易過擬合。一個實用技巧是固定 PCA 變換視為預(yù)訓(xùn)練特征提取器只訓(xùn)練 BP 網(wǎng)絡(luò)權(quán)重并在小樣本上做 fine-tune。6.1 構(gòu)建跨數(shù)據(jù)集的 PCA 共享機制我們不只用 LFW 訓(xùn)練 PCA而是用更大規(guī)模的 CelebA20 萬張人臉先擬合一個通用人臉 PCA 空間再在 LFW 上微調(diào) BP 網(wǎng)絡(luò)。這樣128 維特征不再針對 LFW 特化而是捕獲更普適的人臉結(jié)構(gòu)# 步驟1用 CelebA 大數(shù)據(jù)集擬合 PCA只需運行一次 # celeba_images load_celeba_subset(n_samples50000) # 自定義函數(shù) # scaler_celeba, pca_celeba build_pca_transformer(celeba_images, n_components128) # 步驟2保存 # import joblib # joblib.dump(scaler_celeba, pca_scaler_celeba.joblib) # joblib.dump(pca_celeba, pca_celeba.joblib) # 步驟3在 LFW 上加載并 transform不重新 fit # scaler_celeba joblib.load(pca_scaler_celeba.joblib) # pca_celeba joblib.load(pca_celeba.joblib) # X_lfw_pca pca_celeba.transform(scaler_celeba.transform(X_lfw_flat))效果對比在 50 人 LFW 子集上用 LFW 自身 PCA 訓(xùn)練的 BP 網(wǎng)絡(luò)100 epoch 后 test accuracy ≈ 65%用 CelebA PCA同樣設(shè)置下 accuracy 提升至 72%。提升來自特征空間更魯棒——CelebA 包含更多姿態(tài)、光照、表情變化PCA 學(xué)到的基向量泛化性更強。6.2 學(xué)習(xí)率衰減讓后期訓(xùn)練更精細BP 網(wǎng)絡(luò)初期需要大步長探索后期需小步長精調(diào)。簡單實現(xiàn)指數(shù)衰減class BPNetworkWithLRDecay(BPNetwork): def __init__(self, input_size, hidden_size, output_size, lr_init0.01, decay_rate0.995): super().__init__(input_size, hidden_size, output_size, lr_init) self.lr_init lr_init self.decay_rate decay_rate self.epoch_count 0 def train(self, X_train, Y_train, epochs100, batch_size32): losses [] for epoch in range(epochs): # 更新學(xué)習(xí)率 self.lr self.lr_init * (self.decay_rate ** epoch) self.epoch_count epoch # ...同原 train 方法只改 lr # 在 backward 中使用 self.lr # ... return losses參數(shù)選擇decay_rate0.995意味著每 100 epochlr 衰減為原來的0.995^100≈0.6。實測在 LFW 上相比固定 lr0.01衰減策略使最終 accuracy 提升 3~4 個百分點且 loss 曲線更平滑無后期震蕩。6.3 權(quán)重初始化進階He 初始化適配 ReLU若你換激活函數(shù)雖然本項目用 Sigmoid但若你想嘗試 ReLU緩解梯度消失權(quán)重初始化必須換# He 初始化適用于 ReLU self.W1 np.random.normal(0, np.sqrt(2.0 / input_size), (input_size, hidden_size)) # 而非 Xavier # self.W1 np.random.uniform(-np.sqrt(6.0/(input_sizehidden_size)), ...)為什么Xavier 假設(shè)激活函數(shù)線性He 針對 ReLU 的“半線性”特性設(shè)計保證前向信號方差穩(wěn)定。換激活函數(shù)不換初始化等于自廢武功。我堅持手寫 BP 網(wǎng)絡(luò)不是懷舊而是因為每次print(net.W1[0, :5])看到數(shù)字在變每次plt.plot(losses)看到曲線下降都讓我確認人工智能不是魔法它是一行行矩陣運算堆出來的確定性過程。當(dāng)你的模型在 LFW 上跑出第一個 60% accuracy你會明白那些教科書里的“反向傳播”、“梯度下降”不再是抽象符號而是你鍵盤敲出的真實電流。這感覺比調(diào)通一個預(yù)訓(xùn)練本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99老司机精品视频在线观看| 无码国产精品午夜不卡(| 色偷综合| 极品综合| 嗯嗯啊啊好疼| 国产吞精a级片激情电影| 中文字幕少妇色| 人人干人人操人人爱| 国产专区路线| 嗯啊抽插大香蕉网页| 日韩美女久久一区二区三区| 日本黄色大片一级视频免费麻豆| 日本淫穴在线| 日本黄 R色 成 人网站| 成人精品久久久午夜福利| 少妇与黑人高潮在线| 久久精品久| 亚洲中文字幕妇伦久久| 免费成人自拍视频在线| 暖暖精品二区三区观看| 日本国产欧美高清在线| 日韩熟女精一区二区三区不卡| 日韩三级天堂在线观看| 97欧美| 九一屌逼| 人妻啊啊人妻啊| 操逼免费视频无码国产| 欧美97爱| 欧美亚洲首页| 免看60秒涩涩视频| 最新av在线| 亚洲综合五月天婷婷丁香| 91AV入口| 成·人免费午夜在线观看| 九九九九九九成人| 日韩精品人妻系列无码天堂| 久久国产三区| 狠狠色丁香| 国产成人亚洲精品无码最新在线| 啊啊啊操死我| 超碰在线日韩一区| 亚洲精品 欧美精品| 91大神电影天堂| 无遮挡猛进视频免费无限观看| 97超碰人人模人人拍人人| 亚洲素人综合| 欧洲亚洲人妻无码久久三区四区| 日本中文字幕一区| 色狠狠综合噜一二三区| 91网18| 俺去久久| 伦在线97| www.99热在线只有精品| n1038 一二三区| 丰满人妻一区二区三区四区| 国产日韩欧美中文在线播放| 日韩中文字幕精品一区在线| 国产大学生口爆吞精合集| 放黄片放3级黄片没穿衣服| 日韩欧视频| 久久久91| 亚洲 自拍偷拍 欧美| 岛国福利在线精品播放| 天天上日日上日韩精品| 黄色AAAAAAAAAAA大片| 国产乱伦亚洲| 久久99综合| 国语国产操逼伊人AV网| 日本熟妇一区二区三区| 亚洲永久永久永久永久一级一级一级精品| 国产无遮挡| 91欧美偷拍| 操b网站亚洲无码| 日本超碰色精品| 青青草色AV| 国产自制av蜜乳| 亚洲精品啪视频| 五月天激情四射| 丝袜六区| 国产精品一区二区三区免费视频| 91在线免费精品视频| 先锋激情∨在线视频播放| 国产呦精品一区二区三区下载| 人妻少妇色综合| 亚洲美女精品| 精品国产乱码久久久影院| 日本伦乱九九九综合| 亚洲AV无码国产精品久久久久| 精品一区二区三区蜜桃臀赵总| 亚洲清纯唯美| 免费超碰97在线观看| 国产少妇与亚洲av| 亚洲天堂少妇| 亚洲第一无码播放立川理惠| 一本色道久久综合亚洲二区三区| 成人av福利在线观看| 超碰在线91| 草B在线| 成人乱人伦一区二区| 一区二区偷拍拍视频| 怡红院成人av| 中文日本免费高清| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 国产肏逼网站| 欧美72网页| 男人天堂电影院| 五月婷婷综合在线| 九九碰九九爱97超| 99爱久久视频频| 被操高清无码视频| 91美女高潮| 国产熟妇一区二区| 国产偷拍自拍在线视频| 国产精品不卡一区二区三区| 欧美一级久久久丰满| 第二页中文字幕| 狠狠久久手机视频精品| 丝袜亚洲综合| 六九九九| 午夜一区二区三区国产| 亚洲精品不卡一二三区| 亚洲操人| 婷婷色色五月天福利| 久久9精品视频| 日韩乱伦AⅤ| 神马午夜久久久| 亚洲无码国产精品久久| 国产午夜视频| 丝袜熟女一区二区三区| 久久成人东京热人妻| 黄色免费网页无码| 岛国AB视频| 麻豆一区二区AV天美| 青青草天天亲夜夜操网| 操国产高清| 999久久久九| 国产欧美精选自拍一区| 欧美 色 亚洲| 好舒服视频| 亚洲欧美日韩精品久久久一区二区| 欧美 色 亚洲| 伊人久久亚洲色欲综合网站 | 内射黑丝袜| 日本三级日本三级99| 蜜桃av色偷偷av老熟女| 在线啊啊啊| 夜夜综合| 色娱乐色呦呦夜夜夜夜av| 色婷婷五月天| 天天日天天干天天整| 91一区二匹| 日日黄色三级网站| 青青草视频久久| 婷婷在线视频在线观看| 操逼无码操逼| 婷婷伊人五月| 1769一区| 2023天天操夜夜操| 偷拍偷窥与盗摄视频专区| 国产67194| 校园春色欧美色图| 久久久九九九九| 91在线限制级| 夜夜综合| 国产精品午夜福利视频| 青青草白白色| 天天综合网在线| 淫淫总合网| 午夜天堂精品久久久久91| 操操AV电影| 日产国产精品中文久久婷婷| 欧美综合加勒比在线| 欧美熟妇操操视频| 91精品婷婷国产综合久久竹菊| 亚殴在线| 亚洲男人天堂2| 久久99久久99精品天美传媒棢·纸:.| 丰满欧美放荡少妇在线| 五月综合久久| 婷婷色一区| 久久天天摸| 国产精品高潮久久AV| 亚洲中文电影| 久久久久少妇| 大色综合网| 午夜精品探花| 精品国产www久久| 国产玖玖| 日本道日本道中文字幕日本道最新日本道在线观看| 中文字幕福利视频一区二区三区在线观看| 男人的天堂com| 青青免费在线视频一区| 久热久| 91欧美成人色站| 91艹| 亚洲综合中文字幕有码| 午夜天堂精品久久| 日韩大香蕉AV影片| 久久青青草原免费视频| 久久这里都是精品| 国产精品在线免费| 一本大道综合伊人精品热热| 国产偷人伦激情在线观看| 日韩精品免费高清视频在线| 久久久久久性爱视频| 91爱做| 一区二区三区免费视频入口 | 精品人妻视频一区二区在线播放 | 九九热男人天堂| 亚洲深夜福利| 岛国艾薇凹凸视频天堂| 97精品国产精品免费观看| 熟女激情综合网| 天天肏美女| 嗯嗯不要 视频| 脫衣舞一区二区三区| 亚洲www91| 日本操逼视频不卡直接放| 一区=区三区视频| 99热婷婷| 色汉综合| 日韩三级久久久| 91模特在线观看| 狠狠色噜噜狠狠狠狠狠色综合久久 | 91久| 国产男女无套97| 国产精品白丝在线播放| 玖玖爱一区在线| 亚洲成人免费中文字幕| 91精品成人| 国产黄色小视频网站| 搡老女人老91妇女熟女| 亚洲天堂久久| 久久在线观看免费视频| 成人精品欧洲亚洲| 亚洲欧洲综合视频在线| 黑人娇小av在线播放| 96AV久久久| 亚洲啪AⅤ永久无码| 97综合国产精品高潮久久| 91国产操逼视频| 91久久18禁| 欧美亚洲综合色| 国产精品天堂| 超碰这里有精品| 色色色综合网| 国产精品毛片?v一区二区三区| 美日韩一二三区| 99久re热视频精品98| 日韩成人高清一区二区| 亚洲成人激情小说视频| 久久一二三四五六七八九区| 成人无码专区精品视频| 91综合在线| 淫荡熟女乱伦网| 国产日韩久久| 2017大香蕉国产精品久久| 成人看片网站| 欧美大香蕉专区网| 亚洲精品三区在线观看| 92性色国产午夜福利在线661| 麻豆色约约| 伦在线97| 国外91| 清纯唯美激情四射| 伊人影院中文字幕| 大香蕉综合| 日韩欧美偷拍美女视频| 国产日韩欧美操逼视频| 9999九九九久久久| 欧美日韩狠狠爱| 伊人久久艹| 国产精品免费美女视频| 小视频玖玖| 三级AV入口| 成人毛片免费| 狠狠色伊人亚洲综合网站色| 亚洲最大网站av| 女人高潮大叫一级毛片| 婷婷色综合| www.夜夜| 啊啊啊好湿久久| 黑人中出21连凳花野真衣| 麻豆九九九| 97视频观看| 亚洲男人天堂2016| 激情小说激情视频| 亚欧美综合网| 国产一区免费午夜视频| 亚洲第一无码播放立川理惠| 美日韩成人| 久久久999日本大片| 国产污视频麻豆传媒一区二区| yirendaxiangjiashipin| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 亚州Av天美传媒| 亚洲爽图| 欧美人妻一区| 九九热超碰97亚洲最新香蕉| 国产亚洲日韩欧| 97亚洲色图| 亚洲国产婷婷在线播放| 尤物av网站| 2017天天操天天日| 激情干在线| 天天综合网入口~91| 五月天亚洲色图| 精品黑人一区二区| 色阁阁AV综合网| 日日日日做夜夜夜夜无码| 色五月婷婷麻豆在| 精品欧美乱码久| 五月综合视频| 久久久91| 高清不卡国产| 欧美大波激情xxxx| 亚洲www91| 影音先锋视频在线| 99精品丰满人妻无码| 一级特级aaaa毛片免费观看| 乱码人妻一区二区三区| 国模吧 一区二区三区| 久久9999 | 国产视频一区二区免费| 992视频一区| 伊人91| 大色综合| 久草男人天堂| 五月天激情国产综合婷婷婷| 内射夫妻三片| 9久久美女首页| 黄色大香焦1级‘′‘| 亚洲少妇自拍中文字幕懂色| 伊人久久青青草| 国产精品无码av嫩草| 亚洲国产精品久久久久久久久久| 嗯嗯啊啊操死我| 中文日韩欧美熟| 91粉嫩萝控精品福利网站_精品影音先锋国 | 色吧5亚洲| 欧美人妻精品| 国产操逼网站亚洲一级黄色| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 国产男人又猛又粗又爽| 色九九九九| 国产av又色又爽又黄| 免费成人在线熟妇网| 欧美一区二区一级岛国大片| 亚洲天堂自拍| 亚洲欧综合另类无码一区| 91色黑人少妇| 91视频精品| 加勒比综合九九99视频在线播放| 中国大陆国产高清AⅤ毛片| 精品中文日韩字幕视频| 国产在线精品偷| 国产精品丝袜在线| 国产精品色哟哟| 成人国产精品三级A片| 啪啪啪综合网| 人妻免费观看| 天天爽天天爽| 美女操逼福利视频| 久久天天艹| 999热日韩精品| 天天综和| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 国产精品九九九| 另类av天堂| 91制服丝袜| 国产人伦精品一区二区三区| 久操不卡视频| 极品色www影院| 99久国产精品午夜性色福利| 国产超碰欧美| 久久九七| 超碰97玖玖爱| 久久九九一区二区三区成人| 丁香五月性爱| 免费A V在线| 国产精品白丝在线播放| 亚洲情色综合| 日韩内| 日韩中文字幕2020| av亚洲天堂资源网站| 久久久久日本视| 久久欧美性爱视频| 国产剧情AV不卡在线观看| 综合在线导航一区| 毛片电影一区二区三区| 中日韩久久久| 国产精品永久免费10000| 白丝一区| 国产福利一区二| 日韩操p| 国产一区二区成人av在线播放| 噜噜噜噜天天狠狠| 夜夜高潮夜夜爽国产伦精品| 久久东京热成人| 亚洲AV永久无码精品成人调教| 久久人妻无码毛片A片麻豆| 日本道日本道中文字幕日本道最新日本道在线观看 | 久久久久久九九九九| 9久久久久| 玖玖综合网| jazzjazz国产精品麻豆| 欧美日韩香蕉| 嗯嗯嗯啊啊啊操的我好爽| 国产久久久9999| 五月天色电影| 亚洲图片91| 日本1区2区不卡视频| 午夜.DJ高清在线观看免费7 | 欧美最婬乱婬爆婬性视频 | 自拍六区| 亚洲精品无码成人久久久99| A 天堂在线观看视频| 久9热| 老女人碰碰在线碰碰视频| 四虎av在线| 大香蕉99999| 日韩欧洲操屄视频| 日韩情色视频| 91 天天综合| 国产色图乱伦| 思思热久久成人| 婷婷丁香熟妇综合网| 欧美91网站| 东京热毛片177b2viP| 91搞逼视频| 久热伊人| 草伊人高潮喷水超碰| 97美日韩视频| 色99视频| 亚洲情色 自拍| 欧美日韩国产三级黄色| 日本中文字幕熟妇| 亚洲性爱免费电影| 熟女中出视频| 五月丁香黄色网| 久久久爆乳翘臀一线天伦理视频| 99热线麻豆| 凸凹视频在线观看| 中文字幕丝袜| 亚洲。日韩。欧美| 97在线视频免费看| 色综合九九| 亚洲在钱| 精品色色| 最新无码国产| 亚洲999综合| 男人的天堂一区三区| 99草精| 婷婷综合网站| 加勒比中文av| 天操天操夜操夜月操月年年操| 国产久久天堂资源| 国产九九九九九九九九| 99热婷婷一区二区三| 久久久久9久久久久| 久久东京伊人一本到鬼色| 男人的天堂在线| 国产激情av女片自拍| 9美女超碰在线免费观看| 亚洲国产剧情少妇激情| 91激情| 亚洲欧洲久久天堂| 久久丁香五月天| 操操逼视频| 成人小电影网站tex| 日韩中字av一区| 无码国产Av| 久久久精品,3| 精品人妻一区二区三区视频| 人妻激情偷乱视三区频一区二区| 超碰色97| com 首页 18岁 禁区 女优 免费 精选 同城 | 成人综合视频久久| 牛黄色久午久| 美中日韩无码| 在线国产一区二区av| 日本一级特级毛片视频| 91老妇女| 熟女91网| 日本高清一区二区在线| 日韩欧美aⅴ综合网站发布| 蜜臀99久| 国产精品乱码久久久、久久| 伊人精品国产| 69久久久久久久久久久久久| 日韩99999色| 日韩av乱伦| 波多野结衣一级视频| 天天综合,91入口| 激情视频一二三| 91爱做| 91中文精品日韩欧美在线| www.97在线| 日本不卡码黄色| 99精品丰满人妻无| 久久人人妻| 日本三级久| 中文字幕伊人| 婷婷精品久久av影视| 亚洲综合有码| 91在线视频国产网站| 黄色大片视频在线免费看| 国产强奸无码乱伦| 黑人操一区二区| 五月香婷婷| 亚洲美乱| 黄色不卡视频| 黄色交缠性感爆操91国产精品免费一区二区三区 | 久久久穴999| 久久精品中文| 91狠狠狠| 男女啪啪网站免费视频| 国产精品一区二区久久精品| 亚洲国产日韩欧美熟妇在线| 国产女人和拘做爰视频| 99色视频| 福利一级版子| 日本在线999| 爱逼综合| 亚洲人妻中文高清| 男人干美女| 欧美 日韩第一性色| 午夜小电影在线插入淫高潮| 亚洲自拍偷拍视频在线| 美女被艹尤物视频| 一道本东京热加勒比一区二区三区| 4虎在线视频| 欧美日韩大香蕉| 久草五月| 热热色国产一二区AV| 亚洲无线码欧洲精品区别| 手机在线看片免费人成视频| 久草婷婷| 青娱乐福利99| www.色婷婷| 国产中文日韩欧美一区二区三区人妻丝袜美腿| 深夜福利黄片| 天天天肏屄欧美| 97超碰欧美精品| 日韩黄色一区二区三区| 精品久久大胆人体| av一区二区三区不卡| 人人摸人人干人人拍97| 久草精品一区| 五月天激情四射| 欧美另类丝袜熟女| 四虎永久在线精品免费网址| 自拍偷拍 日韩欧美| 丝袜六区| 新亚洲无码| 人人操天天爽| 秋霞操逼片| 亚洲成人色情五月天丁香花| 精品一区二区成人动漫| 国产精品欧美激在线| 亚洲国产成人精品女人久久久| 亚洲.欧美.丝袜.中文.综合| 日日夜夜精品视频| 国模限制级电影| 黄色无码高清黄色无码网站| 人人九九精| 成人三级片无码| 欧美夜夜骑视频| 91粉嫩萝控精品福利网站_精品影音先锋国 | 日韩日韩日韩-国产乱码精品一区二区| 牛牛操视频逼| 欧美青青草视频| 黄色av一区二区在线| 色网亚洲人| 99热成人| 欧美亚洲色图另类国产| 九七超碰| 精品视频久久区| 成人性爱美曰韩| 亚洲欧美情色| 草蕉影视亚洲无码| 不卡中文字幕aⅴ在线| 91女优在线观看| www.色婷婷色综合| 岛国福利在线精品播放| 久久超碰av在线| 国模一区二区三区| 国产一区二区三区影片| 蜜臀久久久99久久久久| 久青草影院| 国产日韩在线播放| 333kkkk·亚洲com久久| 天天日天天操天天射河南省| 亚洲综合色在线| 超碰97最新人妻| 丁香六月啪啪| 五月天婷精品激情| 操操操日本的逼| 1769一区| 国产亚洲日韩欧| 老熟女乱伦片| 亚洲国产97| 男人天堂毛片| 日韩大香蕉AV影片| 中文字幕文字幕无码一区二区三区电影99| 亚洲男人天堂网久久| 久久男人的天堂国产| 欧美九9 9 9| 夜夜骑天天燥| 四虎影库国产精品免费| 欧亚久久偷拍视频| A 天堂在线观看视频| 成 人片 黄色大片| 亚洲春色一区二区三区| 黄色成人网久久久久久| 国产欧美日本亚洲精品| 国产极品一区二区三区三州| 国产精品蜜乳AV| 东亚亚洲无码高清| 亚洲欧美精品91| 热天堂一区二区| 亚洲欧美日韩电影网站一区 | 亚洲色婷婷| 欧美日本久久精品一区 | 人人手机欧洲亚洲国产人妻| 欧美日本天堂| 久久亚洲日韩熟女精品| 国产精品国产亚洲区艳妇糸列| 99国产在线 精品 视频| www色色色com| 天天弄欧美| 久久久久幕乱码| 欧美精品三级黄片| 国产精品熟女乱伦| 神马久久啊啊| 九九九九久久久久| 天天天天天天天天天天干美女| 五月激情啪啪| 美女AV一区二区| 日本孕妇一区二区视频操逼免费看 | 天天日天天干天天整| 国产精品肉丝自拍| 亚洲成熟国产精品美女| 五月丁香激情综合| 日本一久是| 色哟哟 日韩精品| 五月天精品| 美女干逼2| 激情小说日韩无码| 最新中文字幕av| 无码九九| 欧美性爱五月天| www.91视频网| 五月丁香综合啪啪| 亚洲成人ab| 欧美亚州手机在线| 人妻另类 专区 欧美 制服| 久久综合五月天| 啊啊啊啊二区好大| 偷拍 欧美 日韩| 色色五月天婷婷| 91亚.色| 99在线观看| 久久久久久久97| 久久五月天婷婷| 四虎av在线| 啊啊啊啊一区| 无码精品久久久久久亚洲| 超碰97欧美在线| 日本黄色精品专区网站| 青青操在线亚洲视频观看欧美在线 | 在线v中文字幕一区二区三区| 福利大香蕉| 国模精品一区二区三区苹果色戒| 国产精品一区二区a| 美腿丝袜高跟网免费视频免费视频| 三级精品三级在线观看| 欧美午夜视频| 色嗨嗨在线| 精品人妻一区二区蜜桃视频 | 久久久少妇诱惑精品视频| 国产亚洲国产超碰| 超碰免费97| 青青草十区九区爱夜| 日本性爱网址| 岛国1区2区3区在线观看| 污污污8888| 国产欧美日韩在线不卡第一页| 9色国产精品一区粉嫩| 欧美久久婷婷| 啪啪啪大香蕉| 亚洲欧美国产其他二区| 97在线视频观看| 黑人性欧美| 男人兔费天堂| 国产高清MV操逼视频| 五十路三区在线| 久久精品欧美一区蜜桃| 99热这里只有精| 爱媛媛久久国产福利| 香蕉国产精品麻豆亚洲欧美日韩| aaaa少妇高潮大片| 不卡中文字幕aⅴ在线| 国产自偷| 欧美色图在线视频少妇| 国产精品色| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 99青草| 婷婷色导航| 欧美专区日本专区| 免费成人自拍视频在线| 国产精品香蕉| 久久性爱视频免费看| 男人天堂网站| 免费在线看黄片av| 91色图| 中出后入| 狠狠欧美| 熟妇精品juliaannAV| 欧美色图 人妻| 伊人操操| 亚洲国产中文字幕| 东北女人的毛片| 日韩人妻精品中文字幕| 97精品一区二区视频在线观看| 天天影视网色欲色香| 妇女乱色二区| 日韩欧美性爱电影在线观看| julia国产在线| 啊啊啊在线看| 亚洲本色精品一区二区久久| 国产美女销魂在线观看不卡| 久久久久亚洲?V片无码V| 欧美操逼熟女| 动漫爆乳3D奶水一区在线观看| 亚洲激情综合| 天天澡天天爽日日av| 天天躁狠狠躁av| 秋霞色色影院| 97人人模人人爽人人| 蜜桃色色网站视频三区| 久久超碰免费的| 欧美色性情| 日韩欧美一级特黄大片| 五月综合色| 国产美女精品| 色香欲影| 5278欧美一区二区三区| 中文字幕88av在线| 青青草原香蕉日本Ap| 欧美v亚洲v综合v国产v妖精| 丁香婷婷大香蕉| 欧美日本天堂| 韩国三级一线观看久| www.超碰在线| 欧美在线综合| 亚洲制服欧美另类内射| 色欲人妻一区二区在线| 亚洲高清自拍| 中文一区在线视频| 精品久久久久黄少妇| 久久久久久久| 玖玖综合.com| 欧美AB在线| 久久婷婷亚洲| 日本高清熟女久久一区| 亚洲av无码国产精品字幕| 99re不伦| 国产精品99精品视频网站| 国产又爽又黄| 91n欧美| 亚洲天堂7777| 日日97| 色情五月综合婷婷| 亚洲精品久久久久久| 人成午夜免费大片| 四虎影视精品| 97在线欧洲| 日本操逼aaaaa| 天天透伊人| 乳欲人妻办公室奶水| 人人妻人人色一区二区三区| 岛国在线免费视频| 成人九九| 嗯嗯啊啊用力视频免费| 国产精品美女在线一区| 啊啊啊水好多| 亚洲 中文 女同| 久久av一级av少妇av高潮| 人妻五十路在线| 色啪网| 亚洲免费成人精品电影| 九九九九九九九九九国产精品 | 香一区二区三区| 亚洲se91| 蜜臀久久精品久久久久视频| 亚洲熟女国产综合另类| www.99色| 精品一区二区三区蜜桃| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | a级免费在线观看| 十八禁电影伊人网| 99色日| 成人情色一区二区| 日本欧美中文字幕| 精品欧美日韩在线观看| 91男女啊啊啊| CCYY草草影院地址入口| 欧美性第1页| 极品后入免费视频| 亚洲熟女中文字幕在线| 夜色AV无码手机在线影院| 日韩国产欧美伦理在线| 久操大香蕉手机视频在线看 | 成年人一级黄色毛片大全在线观看| 久久日韩肥臀| 久9爱经典视频| 999日韩中文精品观看视频。| 国产精品久久久久无码AV会牛| 国产精品无码成人精品| 免费试看60秒| 福利视频合集| 色y情视频免费看| 欧美一区二区三区不卡高清视频| 国产1024在线播放| 欧美亚洲国产91在线| 久草国产在线视频| 精品人体无圣光凹凸| 不卡av在线中文字幕| 日本性交操一区二区不卡系列| 秋霞一集毛片观看| 日韩欧美tv一区二区在线观看| 久久久国产亚洲精品系列| 日本免费人成视频播放120秒| 91东京热男人的天堂| 一区二区中文| 欧美高清第一页| 91精品无码久久久久久久| 一个国产在线综合网站| 在线免费观看日韩一区| 男人成人黄色视频在线观看免费下载| 超碰色美女| 性色aV一区二区三区噜噜| 久草尤物| 亚洲欧综合另类无码一区| 五月天婷精品激情| 强奸乱亚洲| 中文字幕视频2区| 懂色AV网| 一区二区三区四区姦女| 日本免费一区二区不卡 | 国产精品熟女九色九色蜜臀| 亚洲日本成人动漫| 久久久内射良家| 成人免费看吃奶视频网站| 99久久婷婷国产综合精品草原| 日韩影片中文字幕一区二区三区| 人妻少妇久久中文| 免费av在线播放二区| 亚洲天堂99| 成人九九| 啪一啪免费视频| 第二页中文字幕| 蜜臀99久久国产| 亚洲成?V人片在线观看福利| 97久久精品国产| 天天摸天天操视频| 欧美久热| 韩日欧亚a级| 免费综合亚洲中文| 中文字幕国产| 国产 v乱码一区二| 欧美色综合图片| 麻花传媒免费网站在线观看| 天天干一区二区| 欧美亚洲91| 国产乱码久久| 亚洲色图综合网| 久久久久亚洲?V片无码V| 亚洲综合 欧美| 国产懂色精品国产av| 强奸熟女一区二区三区| 亚洲制服aⅴ中文字幕| 伊人久久亚洲中文字幕不卡| 亚洲密乳AV| 97一区二区三区视频| www超碰| 欧美综合自拍| 绯色一区二区三区不卡少妇| 麻豆久久久久久久久丝袜 | 亚洲av成人精品一区| 最新中文字幕av| 欧美久热| 日韩簧片免费看| 97久久精品不卡| 约操熟妇| 狠狠91| 亚州精人品大香蕉| 亚洲无码com| 青娱乐 成人娱乐在线| 国产精品黄色三级av| 久久精品综合| 九九九九九九亚洲| 92性色国产午夜福利在线661| daxiangjiao你懂的| 69超碰综合| 亚洲国产日韩欧美熟妇在线| 亚洲福利影院一区久久| 玖玖爱伊人玖玖爱| 夜色91| 久久女女| 亚洲成人色情五月天丁香花| 欧美极品少妇交| 国产精品宅男免费| 岛国网址国产| 男女性无套 免费九一| 亚洲欧美综合图片| 99.色网| 日韩伦理久 久久 清纯| 静品嫩模一区二区| 亚洲最新av无码成人精品区 | 久久免费精品视频免一| 明星性猛交ⅹxxx乱大交| 四虎精品亚洲| 色在线69堂| 在线观看午夜婷婷久久久久清性观看| www久久久| 三级日韩一区二区三区| 中文字幕在线免费观看 | 91麻豆天美国产| 天天干天天日天天射黄色大片| 久久精品国产亚洲AV无码电影| 人摸人人操人| 青娱乐欧美激情一区二区| 伊人网免费视频| 午夜亚洲国产理论秋霞| 国产精品午夜福利亚洲综合网| 久久久久久久人妻丝袜| 亚洲人妻在线精品| 中文字幕乱码人妻二区三区| 精品天堂| 久久久久久久唑| 天天综合97| 清纯唯美亚洲综合| 亚欧色图在线激情| 91精片| 亚洲欧美97√| 亚洲国产成人7777| 91成人在线免费视频| 夜夜操美女| 亚洲精品成人动漫在线| 伦理片秋霞免费影院| 开心五月天激情网| 亚洲性综合9| 无码人妻精品一区二区三区九九| 亚洲吊色| 91天美免费| 夜夜草天天| 婷婷综合久久| 怡红院怡春院| 超碰97人人乐| 玖草在线视频| 欧美日韩操逼嗦吊| 久久久久久夜夜夜夜夜| 91男人天堂网| 亚洲不卡三级手机播放| 97香蕉碰碰人妻国产欧美| ,国产乱人伦精品一区二区三区| 亚洲少妇在线影音| 97超碰色色| 无码人妻一区二区三区色欲aⅴ | 国产精品播放| 国产精品免费美女视频| 99热导航| 岛国激情视频在线观看| 看看小穴| 日韩精品9区| 国产黄色av大片网站| 精品国产乱码久久久兰草影视| 大学生美女口爆| 久久一区无码| 俄罗斯及免费在线看| 久久久久久久久久久人妻| 天天操福利视频综合网站| 亚洲一曲日韩精品| 日本在线视频导航| 91超碰碰在线| 欧美黄片视频在线观看免费| 久操影视| 国产极品美女高潮无套在线观看 | 9色国产精品一区粉嫩| 殴美,日韩国产伦精品| 亚洲欧美成人网站AAA| 大香蕉十区| 亚洲国产欧美一区二区潘金莲| 欧洲无码一区二区| 久综合国内精品自在自线| 91美女看B| 欧美.亚洲.另类.丝袜.制服.诱惑| 综合影院永久入口国产| 久久嫩草国产成人一区| 国产强奸乱伦xd| 超碰久久综合| 亚洲中文字幕有码视频一区二区三区| 女性喷水高潮在线观看| 久久人妻少妇| 日韩中文字幕人妻视频| 毛片99-全集电影手机免费观看完整-B029AV | 亚洲国产无码精品首页久久久| 97视频在线视频| 青青草日韩无码| 秋霞免费AV| 欧美亚洲中文| 18+91网站| 久久国产精品,久久国产| 日韩欧美大力操| 中文字幕一区二区无码成人| 91情色在线| 免费一级欧美片片线观看| 日操粉逼逼| 亚州九九九精品视频| 欧美性,亚州色| 日本精品五区| 国产 日韩 欧美高清| 又大又白奶子| 舔人妻中文免费视频| 青青草一区二区三区四| 久久久亚洲高清不打码| 亚洲成人一二三区| 国产AV中文| 亚洲,欧美,春色,另类| 少妇精品| 日本人妻A片成人免费看片| 欧美淫乱视频| 久久综合亚洲色1080p| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 中文字幕高清20页视频| 葡萄牙性视频一二区| 久久久久国产精品喷潮免费观看臀 | 啊啊啊水好多| 免费人成?大片在线播放| 爱欲AV| 99国产在线 精品 视频| 久久精品国产99国产精品亚洲| 国模无码人体一区二区三| 久久综合精品一区二区三区| 偷窥自拍亚洲色图| 黄色十八禁| 99色在线视频| 三上悠亚在线毛片91| 亚洲妇色| 精品人妻美妇91job| 啊啊嗯嗯好爽| 人妻在线中出视频| 国产成人精品必看| 天天综合网合集91| 青青草日韩无码| 日本成人免费一区二区三区| 麻豆天美在线喷水AV| 婷婷激情五月综合| 国产97在线 | 亚洲| 欧亚不卡| 色综合婷婷| 蜜乳Av成人片网站| 91精品人妻一区二区三区蜜桃| 亚洲精品色| 欧美做爰无码A片视频| 日韩欧美中文字亚洲慕| 久久天天躁日日躁狠狠躁| 四虎影院成年人片| 国产精品露脸在线观看| 四虎影视精品| 加勒比人妻综合| 天天综合网91入口| 婷婷五月天成人网| 免费啪啪av| 男人的天堂 在线一区| 亚洲AV不卡在线观看| 亚洲色图91欧美日韩| 国产精品久久久无码AV网站| 日本黄色精品专区网站| 99热大香蕉伊在线| 伊人青青一区成人视频在线观看区 | 四虎884a| 黄aaaaaaaaaaaaaaaaaa色网站| 巨爆乳一区二区爆乳区| 国产精品电影大全| 天天做天天爱| 日韩三级av片| 精品少妇一区二区三区| 美女黑人91神马| 性色高清在线| av大香蕉网站| 麻豆天美国美国产| 亚洲天堂电影精品一区| 久久老子无码午夜伦不卡| 最新日产中文在线麻豆| 97超碰香蕉| 色原狠狠天天天| 伊人 俄罗斯 a v| 91蜜臀熟女| 久久久四区| 人人搞人人插人人操| 在线中文字幕视频| 另类天堂| 日韩精品在线观看观看| 91这里只有精品| 久热99999| 日韩十八禁| 日韩成年人性爱视频| 久9re热视频这里只有精品| 亚洲囯产精品女人久久久| 天天操天天干一区二区| 国产精品无码av| 欧亚综合一卡二卡中文字幕| 蜜臀久久99精品久久久久久久久| 亚洲美女精品| 久草精品一区| 91N综合网在线| 97精品网| 亚洲AV秘无码一区..| 5278欧美一区二区三区| 午夜天堂精品久久久久91| 欧美极品女人的天堂| 超碰久久网| 清纯唯美亚洲综合| 日本成人A片免费看| 99超级碰免费视频| 九九拍拍精品视频在线播放 | 800zy一区二区| 后入式福利| 乱伦一二三区| 操狠狠| 毛片麻豆91糖心精品毛情片| 男人的天堂VA| 国产亚洲精品农村妇女| 激情综合五月婷婷| 人妻无码一区二区三区久久99| 91操熟女| 26uuu性物| 日本免费不卡二区| 日韩97在线| 大香蕉久| 九七人妻在线| 欧美精品精品一区二区| 香蕉在线一区二区三区| 亚洲色天堂九9| 强奸乱伦Av网| 熟妇高潮精品一区二区三区下载| 欧美不卡五十路| 精品久热| 亚洲人妖网| 日韩欧美中文日韩欧美色| 夜夜夜久久| 日本东京热久久久电影| 欧美午夜精品久久久久久超碰| 国语少妇精| 99热啪啪| 久久精品国产Aⅴ| 色哟哟国产精品免费网址|