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

ARTICLE DETAIL

資訊詳情

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

MATLAB實(shí)現(xiàn)受限玻爾茲曼機(jī):從原理到實(shí)踐

MATLAB實(shí)現(xiàn)受限玻爾茲曼機(jī):從原理到實(shí)踐 簡(jiǎn)介本資源是一份面向機(jī)器學(xué)習(xí)初學(xué)者與研究者的受限玻爾茲曼機(jī)RBMMATLAB實(shí)現(xiàn)代碼包聚焦無(wú)監(jiān)督特征學(xué)習(xí)與概率生成建模任務(wù)適用于圖像數(shù)據(jù)如手寫(xiě)數(shù)字的隱層表示訓(xùn)練與采樣生成。壓縮包共29個(gè)文件包含7個(gè)核心MATLAB腳本如RBM.m、trainRBM.m、gibbs.m、8個(gè)預(yù)訓(xùn)練模型參數(shù)文件.mat格式含RBM50.mat、RBM200.mat等不同隱單元規(guī)模、10張可視化結(jié)果圖.jpg涵蓋權(quán)重圖、重構(gòu)圖及損失曲線以及訓(xùn)練/驗(yàn)證數(shù)據(jù)文本digitstrain.txt等和說(shuō)明文檔README.md。資源大小為8.86MB結(jié)構(gòu)清晰模塊分工明確訓(xùn)練主流程、Gibbs采樣、Sigmoid激活、權(quán)重可視化等功能均獨(dú)立封裝便于理解RBM前向傳播、對(duì)比散度CD訓(xùn)練及采樣機(jī)制。目前已有592人學(xué)習(xí)下載可直接運(yùn)行main.m復(fù)現(xiàn)經(jīng)典RBM訓(xùn)練過(guò)程并基于K5/K10/K20等預(yù)存模型快速開(kāi)展特征提取或生成實(shí)驗(yàn)。1. 從理論到實(shí)踐為什么選擇MATLAB實(shí)現(xiàn)RBM如果你正在機(jī)器學(xué)習(xí)或深度學(xué)習(xí)的入門(mén)階段尤其是對(duì)神經(jīng)網(wǎng)絡(luò)中的生成模型感興趣那么“受限玻爾茲曼機(jī)”這個(gè)名字你一定不陌生。它不像卷積神經(jīng)網(wǎng)絡(luò)那樣直接處理圖像也不像循環(huán)神經(jīng)網(wǎng)絡(luò)那樣擅長(zhǎng)序列但它在特征學(xué)習(xí)、協(xié)同過(guò)濾、降維乃至深度信念網(wǎng)絡(luò)的構(gòu)建中扮演著奠基者的角色。很多教程和論文會(huì)告訴你RBM的數(shù)學(xué)原理但當(dāng)你真正想動(dòng)手跑通一個(gè)例子看看它如何從一堆隨機(jī)數(shù)中“學(xué)習(xí)”出數(shù)據(jù)的潛在結(jié)構(gòu)時(shí)往往會(huì)卡在實(shí)現(xiàn)這一步。這時(shí)MATLAB就成為了一個(gè)極具吸引力的選擇。為什么是MATLAB對(duì)于算法研究者、在校學(xué)生以及需要快速驗(yàn)證想法的工程師來(lái)說(shuō)MATLAB提供了一個(gè)近乎“一站式”的環(huán)境。你不需要花大量時(shí)間去配置復(fù)雜的Python深度學(xué)習(xí)框架如TensorFlow或PyTorch及其依賴(lài)也不用擔(dān)心版本沖突。MATLAB的語(yǔ)法直觀矩陣運(yùn)算原生高效并且內(nèi)置了豐富的可視化工具這對(duì)于理解RBM這種基于概率和能量模型的“黑箱”學(xué)習(xí)過(guò)程至關(guān)重要。你可以實(shí)時(shí)看到權(quán)重矩陣的變化、重構(gòu)誤差的下降曲線甚至可視化學(xué)習(xí)到的特征這種即時(shí)反饋對(duì)加深理解有巨大幫助。當(dāng)然MATLAB并非生產(chǎn)部署的首選但其在算法原型開(kāi)發(fā)、教學(xué)演示和科研探索中的便捷性是其他工具難以比擬的。本文將帶你從零開(kāi)始在MATLAB中實(shí)現(xiàn)一個(gè)標(biāo)準(zhǔn)的二值受限玻爾茲曼機(jī)。我們不會(huì)止步于一個(gè)能運(yùn)行的“玩具代碼”而是會(huì)深入每一步背后的動(dòng)機(jī)解釋為什么參數(shù)要這樣初始化、為什么采樣要那樣做、對(duì)比散度算法究竟在干什么。我會(huì)分享在調(diào)試過(guò)程中遇到的典型“坑”比如學(xué)習(xí)率設(shè)置不當(dāng)導(dǎo)致的震蕩、權(quán)重初始化太小造成的學(xué)習(xí)停滯以及如何正確評(píng)估一個(gè)RBM模型是否真的學(xué)到了東西。無(wú)論你是想完成課程作業(yè)還是為更復(fù)雜的深度模型打基礎(chǔ)這篇內(nèi)容都將提供一條清晰的、可復(fù)現(xiàn)的路徑。2. 受限玻爾茲曼機(jī)核心原理速覽與MATLAB建模思路在動(dòng)手寫(xiě)代碼之前我們必須對(duì)RBM有一個(gè)清晰、直觀的理解這決定了我們?nèi)绾斡肕ATLAB的數(shù)據(jù)結(jié)構(gòu)和運(yùn)算來(lái)刻畫(huà)它。你可以把RBM想象成一個(gè)兩層、對(duì)稱(chēng)連接的神經(jīng)網(wǎng)絡(luò)但它沒(méi)有通常意義上的“輸出層”。底層叫可見(jiàn)層代表我們能看到的數(shù)據(jù)比如一張二值化圖片的像素。頂層叫隱藏層是我們希望機(jī)器自動(dòng)學(xué)習(xí)到的、能夠解釋數(shù)據(jù)規(guī)律的特征。每個(gè)可見(jiàn)層神經(jīng)元和每個(gè)隱藏層神經(jīng)元之間都有連接權(quán)重但同層神經(jīng)元之間沒(méi)有任何連接這就是“受限”的含義——它讓概率計(jì)算變得可處理。RBM是一個(gè)基于能量的模型。它為系統(tǒng)的每一種狀態(tài)即每一組具體的可見(jiàn)向量v和隱藏向量h的取值定義一個(gè)“能量”能量越低的狀態(tài)出現(xiàn)的概率越高。這個(gè)能量函數(shù)是核心E(v, h) -b*v - c*h - v*W*h這里v是可見(jiàn)層向量h是隱藏層向量b是可見(jiàn)層的偏置c是隱藏層的偏置W是連接權(quán)重矩陣。公式里的三項(xiàng)分別代表了可見(jiàn)單元自身、隱藏單元自身以及它們之間交互對(duì)能量的貢獻(xiàn)。我們的目標(biāo)是調(diào)整參數(shù)W, b, c使得訓(xùn)練數(shù)據(jù)即我們觀測(cè)到的v對(duì)應(yīng)的能量盡可能低也就是讓模型認(rèn)為這些數(shù)據(jù)出現(xiàn)的概率高。那么給定可見(jiàn)層狀態(tài)v隱藏層神經(jīng)元h_j取值為1的概率是多少由于層內(nèi)無(wú)連接這個(gè)計(jì)算是獨(dú)立并行的公式非常簡(jiǎn)潔P(h_j1 | v) sigmoid(c_j sum_i(v_i * W_{ij}))在MATLAB里這就是一個(gè)sigmoid函數(shù)1./(1exp(-x))的應(yīng)用。給定隱藏層狀態(tài)h計(jì)算可見(jiàn)層神經(jīng)元v_i取值為1的概率也是對(duì)稱(chēng)的P(v_i1 | h) sigmoid(b_i sum_j(h_j * W_{ij}))這種給定一層、另一層條件獨(dú)立且可并行計(jì)算的性質(zhì)是RBM能夠進(jìn)行高效吉布斯采樣的基礎(chǔ)也是后續(xù)對(duì)比散度算法的關(guān)鍵。我們的學(xué)習(xí)目標(biāo)是最大化訓(xùn)練數(shù)據(jù)的似然概率。通過(guò)推導(dǎo)權(quán)重的更新規(guī)則可以表示為ΔW learning_rate * ( v_i h_j_data - v_i h_j_model )尖括號(hào)代表求期望。v_i h_j_data是當(dāng)可見(jiàn)層固定為訓(xùn)練數(shù)據(jù)時(shí)隱藏層根據(jù)上述概率采樣或取其概率值即“均值場(chǎng)”然后計(jì)算v_i和h_j的關(guān)聯(lián)。這代表了數(shù)據(jù)驅(qū)動(dòng)的“正能量”它試圖降低訓(xùn)練數(shù)據(jù)的能量。v_i h_j_model則是模型本身定義的分布下的期望計(jì)算它理論上需要從模型分布中采樣直到平衡這非常耗時(shí)。Hinton提出的“對(duì)比散度”算法巧妙地解決了這個(gè)問(wèn)題用訓(xùn)練數(shù)據(jù)初始化可見(jiàn)層然后進(jìn)行少數(shù)幾步通常是1步即CD-1吉布斯采樣可見(jiàn)→隱藏→可見(jiàn)來(lái)近似這個(gè)模型期望。這構(gòu)成了我們MATLAB實(shí)現(xiàn)的核心迭代循環(huán)。在MATLAB中建模我們將把W定義為一個(gè)[n_visible, n_hidden]的矩陣b是[n_visible, 1]的列向量c是[n_hidden, 1]的列向量。訓(xùn)練數(shù)據(jù)data是一個(gè)[n_samples, n_visible]的矩陣每一行是一個(gè)樣本。所有的運(yùn)算都將利用MATLAB高效的矩陣乘法來(lái)實(shí)現(xiàn)避免低效的循環(huán)。3. MATLAB環(huán)境準(zhǔn)備與數(shù)據(jù)預(yù)處理實(shí)戰(zhàn)工欲善其事必先利其器。在開(kāi)始編寫(xiě)RBM核心算法前我們需要確保MATLAB環(huán)境就緒并將數(shù)據(jù)處理好。這個(gè)過(guò)程看似簡(jiǎn)單卻藏著不少初學(xué)者容易忽略的細(xì)節(jié)直接影響到后續(xù)訓(xùn)練的成敗。首先確保你有一個(gè)能正常運(yùn)行的MATLAB版本。對(duì)于RBM這類(lèi)基礎(chǔ)算法其實(shí)對(duì)版本要求并不高R2016a之后的版本都完全夠用。關(guān)鍵在于你需要熟悉如何在MATLAB中組織你的項(xiàng)目。我強(qiáng)烈建議為這個(gè)RBM項(xiàng)目單獨(dú)創(chuàng)建一個(gè)文件夾比如命名為MyRBM_Project。在這個(gè)文件夾里你可以創(chuàng)建以下文件主腳本train_rbm.mRBM核心函數(shù)rbm.m以及可能的數(shù)據(jù)加載和可視化腳本。這樣做的好處是路徑清晰便于管理也方便你后續(xù)擴(kuò)展成深度信念網(wǎng)絡(luò)。接下來(lái)是數(shù)據(jù)。RBM的可見(jiàn)層單元默認(rèn)是二值的0或1。因此我們使用的數(shù)據(jù)必須是二值化的或者可以合理地解釋為概率。一個(gè)經(jīng)典的數(shù)據(jù)集是MNIST手寫(xiě)數(shù)字但它的像素值是0到255的灰度。直接使用是不行的。常見(jiàn)的預(yù)處理方法是設(shè)定一個(gè)閾值如128大于閾值置1否則置0。但更推薦的方法是將其歸一化到[0, 1]區(qū)間即將每個(gè)像素值除以255。此時(shí)像素值可以解釋為該像素點(diǎn)“激活”為1的概率。我們的RBM代碼將能夠處理這種連續(xù)概率值此時(shí)稱(chēng)為“伯努利-高斯RBM”的可見(jiàn)層但采樣時(shí)仍按此概率進(jìn)行二值化。在MATLAB中加載和預(yù)處理MNIST數(shù)據(jù)可以借助一些開(kāi)源工具箱但為了理解本質(zhì)我們可以用一個(gè)小型人造數(shù)據(jù)集開(kāi)始。假設(shè)我們想學(xué)習(xí)一個(gè)簡(jiǎn)單的“十字”圖案。我們可以創(chuàng)建一些5x5的二值圖像其中中心行和中心列的像素為1其余為0。在MATLAB中我們可以這樣生成數(shù)據(jù)% 生成合成數(shù)據(jù)十字圖案 n_samples 1000; % 1000個(gè)樣本 img_size 5; % 5x5圖像 data zeros(n_samples, img_size*img_size); % 初始化數(shù)據(jù)矩陣 for i 1:n_samples img zeros(img_size); img(ceil(img_size/2), :) 1; % 中心行置1 img(:, ceil(img_size/2)) 1; % 中心列置1 % 添加少量隨機(jī)噪聲使數(shù)據(jù)更真實(shí) img img 0.1 * randn(img_size); % 添加高斯噪聲 img (img 0.5); % 二值化閾值0.5 data(i, :) img(:); % 展平為行向量并存入數(shù)據(jù)矩陣 end % 檢查數(shù)據(jù)維度應(yīng)該是 1000 x 25 disp(size(data));注意在實(shí)際科研中你可能會(huì)用到loadMNISTImages等函數(shù)來(lái)讀取真實(shí)MNIST數(shù)據(jù)。但無(wú)論數(shù)據(jù)來(lái)源如何預(yù)處理的核心原則是一致的確保數(shù)據(jù)矩陣的每一行是一個(gè)樣本每一列是一個(gè)特征可見(jiàn)單元且值在[0,1]區(qū)間內(nèi)。對(duì)于非二值數(shù)據(jù)務(wù)必進(jìn)行歸一化。數(shù)據(jù)準(zhǔn)備好后我們還需要思考一個(gè)問(wèn)題需不需要?jiǎng)澐钟?xùn)練集和測(cè)試集對(duì)于RBM這種無(wú)監(jiān)督學(xué)習(xí)模型我們通常用所有數(shù)據(jù)來(lái)訓(xùn)練以學(xué)習(xí)數(shù)據(jù)的分布。評(píng)估則可以通過(guò)查看模型重構(gòu)數(shù)據(jù)的能力或者用學(xué)習(xí)到的特征作為下游任務(wù)如分類(lèi)的輸入。因此在初始實(shí)現(xiàn)階段我們可以用全部數(shù)據(jù)訓(xùn)練。但一個(gè)好的習(xí)慣是始終保留一小部分?jǐn)?shù)據(jù)作為“驗(yàn)證集”用于監(jiān)控訓(xùn)練過(guò)程是否過(guò)擬合雖然RBM的過(guò)擬合風(fēng)險(xiǎn)相對(duì)較低但仍可能發(fā)生。最后初始化一個(gè)隨機(jī)數(shù)種子是個(gè)好習(xí)慣這能確保你的實(shí)驗(yàn)結(jié)果是可復(fù)現(xiàn)的。在MATLAB中可以使用rng(42)42是一個(gè)常用種子來(lái)固定隨機(jī)數(shù)生成器。這對(duì)于調(diào)試和對(duì)比不同參數(shù)的效果至關(guān)重要。4. RBM核心算法實(shí)現(xiàn)權(quán)重初始化與對(duì)比散度有了清晰的理論認(rèn)識(shí)和準(zhǔn)備好的數(shù)據(jù)我們現(xiàn)在可以著手實(shí)現(xiàn)RBM最核心的部分參數(shù)初始化和對(duì)比散度訓(xùn)練循環(huán)。這是將數(shù)學(xué)公式轉(zhuǎn)化為可運(yùn)行代碼的關(guān)鍵一步其中每一步的設(shè)計(jì)都有其道理。首先我們初始化參數(shù)W, b, c。初始化不當(dāng)會(huì)導(dǎo)致訓(xùn)練初期梯度消失或爆炸。一個(gè)廣泛使用的經(jīng)驗(yàn)法則是從均值為0、標(biāo)準(zhǔn)差較小的正態(tài)分布中隨機(jī)初始化權(quán)重W。標(biāo)準(zhǔn)差通常設(shè)為0.01或1/sqrt(n_visible)。偏置b和c可以初始化為0。在MATLAB中我們可以這樣寫(xiě)function [W, b, c] rbm_init(n_visible, n_hidden) % 初始化RBM參數(shù) % n_visible: 可見(jiàn)層單元數(shù) % n_hidden: 隱藏層單元數(shù) % 返回: 權(quán)重矩陣 W, 可見(jiàn)層偏置 b, 隱藏層偏置 c % 權(quán)重初始化使用較小的隨機(jī)值打破對(duì)稱(chēng)性 std_dev 0.01; % 或者 1/sqrt(n_visible) W std_dev * randn(n_visible, n_hidden); % 偏置初始化為0 b zeros(n_visible, 1); c zeros(n_hidden, 1); end接下來(lái)是核心的訓(xùn)練函數(shù)它實(shí)現(xiàn)了對(duì)比散度算法。我們將遵循CD-1的流程并采用“小批量”隨機(jī)梯度下降來(lái)加速訓(xùn)練并增加穩(wěn)定性。函數(shù)的輸入包括數(shù)據(jù)、隱藏單元數(shù)、學(xué)習(xí)率、訓(xùn)練輪次和批量大小。function [W, b, c, errors] train_rbm(data, n_hidden, learning_rate, n_epochs, batch_size) % 使用對(duì)比散度(CD-1)訓(xùn)練RBM % data: 訓(xùn)練數(shù)據(jù)每行一個(gè)樣本值在[0,1] % n_hidden: 隱藏層單元數(shù) % learning_rate: 學(xué)習(xí)率 % n_epochs: 訓(xùn)練輪次 % batch_size: 批量大小 % 返回: 訓(xùn)練好的參數(shù) W, b, c以及每輪的重構(gòu)誤差 [n_samples, n_visible] size(data); num_batches ceil(n_samples / batch_size); % 初始化參數(shù) [W, b, c] rbm_init(n_visible, n_hidden); errors zeros(n_epochs, 1); % 記錄每輪的平均重構(gòu)誤差 for epoch 1:n_epochs err_sum 0; % 打亂數(shù)據(jù)順序 shuffled_idx randperm(n_samples); data_shuffled data(shuffled_idx, :); for batch 1:num_batches % 獲取當(dāng)前小批量數(shù)據(jù) batch_start (batch-1)*batch_size 1; batch_end min(batch*batch_size, n_samples); batch_data data_shuffled(batch_start:batch_end, :); batch_size_curr size(batch_data, 1); % 將數(shù)據(jù)矩陣轉(zhuǎn)置便于后續(xù)矩陣運(yùn)算 (n_visible x batch_size) v0 batch_data; % 初始可見(jiàn)層狀態(tài)概率值 % --- 正向傳播計(jì)算隱藏層概率并采樣 --- % h0_prob: 給定v0時(shí)隱藏層激活的概率 (n_hidden x batch_size) h0_prob sigmoid(bsxfun(plus, c, W * v0)); % 等價(jià)于 c W*v0 h0_state h0_prob rand(size(h0_prob)); % 二值采樣 % --- 計(jì)算數(shù)據(jù)相關(guān)的統(tǒng)計(jì)量 --- % positive_associations: v_i h_j_data 的近似 positive_associations v0 * h0_state / batch_size_curr; positive_visible_bias mean(v0, 2); % v_i_data positive_hidden_bias mean(h0_prob, 2); % 這里用概率也可以用采樣后的狀態(tài) % --- 負(fù)相從模型中采樣CD-1--- % 從h0_state重構(gòu)可見(jiàn)層 v1_prob sigmoid(bsxfun(plus, b, W * h0_state)); % 重構(gòu)的可見(jiàn)層概率 v1_state v1_prob rand(size(v1_prob)); % 采樣得到v1 % 從v1_state再次計(jì)算隱藏層 h1_prob sigmoid(bsxfun(plus, c, W * v1_state)); % h1_state h1_prob rand(size(h1_prob)); % CD-1通常這里不采樣直接用概率 % --- 計(jì)算模型相關(guān)的統(tǒng)計(jì)量 --- % negative_associations: v_i h_j_model 的近似 (CD-1) negative_associations v1_state * h1_prob / batch_size_curr; negative_visible_bias mean(v1_state, 2); negative_hidden_bias mean(h1_prob, 2); % --- 參數(shù)更新 --- W W learning_rate * (positive_associations - negative_associations); b b learning_rate * (positive_visible_bias - negative_visible_bias); c c learning_rate * (positive_hidden_bias - negative_hidden_bias); % --- 計(jì)算當(dāng)前批次的重構(gòu)誤差用于監(jiān)控--- % 使用v0和重構(gòu)的v1_prob之間的交叉熵或均方誤差 reconstruction_error -sum(sum(v0 .* log(v1_prob 1e-10) (1-v0) .* log(1-v1_prob 1e-10))) / batch_size_curr; err_sum err_sum reconstruction_error; end % 記錄本輪平均誤差 errors(epoch) err_sum / num_batches; % 可選每若干輪打印一次進(jìn)度 if mod(epoch, 10) 0 fprintf(Epoch %d, Reconstruction Error: %f\n, epoch, errors(epoch)); end end end % Sigmoid輔助函數(shù) function y sigmoid(x) y 1 ./ (1 exp(-x)); end這段代碼有幾個(gè)關(guān)鍵點(diǎn)需要解釋矩陣運(yùn)算與維度注意我們始終將數(shù)據(jù)以列向量的形式堆疊成矩陣n_visible x batch_size。這樣W * v0就能一次性計(jì)算所有樣本的隱藏層輸入極大提升了效率。bsxfun函數(shù)用于處理偏置向量與矩陣的加法對(duì)于新版MATLAB直接使用運(yùn)算符即可自動(dòng)廣播。采樣策略在正向傳播中我們根據(jù)概率h0_prob進(jìn)行了二值采樣得到h0_state。這是“隨機(jī)”RBM的標(biāo)準(zhǔn)做法。也有一種變體叫“均值場(chǎng)”方法直接使用概率值而不采樣這通常會(huì)使訓(xùn)練更穩(wěn)定但可能丟失一些隨機(jī)性。在負(fù)相中CD-1算法通常只對(duì)可見(jiàn)層進(jìn)行采樣得到v1_state而對(duì)第二次的隱藏層使用概率h1_prob來(lái)計(jì)算梯度這被證明是更有效的。重構(gòu)誤差我們使用二進(jìn)制交叉熵作為重構(gòu)誤差它衡量了原始數(shù)據(jù)v0概率值與重構(gòu)數(shù)據(jù)v1_prob概率值之間的差異。添加一個(gè)極小值1e-10是為了避免對(duì)數(shù)為負(fù)無(wú)窮。這個(gè)誤差是監(jiān)控訓(xùn)練進(jìn)程的重要指標(biāo)它應(yīng)該隨著訓(xùn)練輪次增加而穩(wěn)步下降。批量更新我們不是用一個(gè)樣本更新一次參數(shù)而是用一個(gè)小批量batch_size的數(shù)據(jù)計(jì)算平均梯度后再更新。這能減少參數(shù)更新的方差使訓(xùn)練過(guò)程更平滑也更能利用MATLAB的矩陣運(yùn)算優(yōu)勢(shì)。5. 訓(xùn)練過(guò)程監(jiān)控、調(diào)參與常見(jiàn)問(wèn)題排查代碼寫(xiě)好了直接運(yùn)行可能不會(huì)一帆風(fēng)順。訓(xùn)練一個(gè)RBM就像烹飪火候?qū)W習(xí)率、食材比例網(wǎng)絡(luò)結(jié)構(gòu)、時(shí)間訓(xùn)練輪次都需要細(xì)心把控。這一節(jié)我們來(lái)聊聊如何監(jiān)控訓(xùn)練過(guò)程調(diào)整關(guān)鍵參數(shù)并解決那些讓你抓狂的典型問(wèn)題。首先學(xué)習(xí)率是首要超參數(shù)。學(xué)習(xí)率太大權(quán)重更新會(huì)“過(guò)沖”導(dǎo)致重構(gòu)誤差劇烈震蕩甚至發(fā)散變成NaN。學(xué)習(xí)率太小訓(xùn)練會(huì)慢如蝸牛誤差下降曲線幾乎是一條平線。對(duì)于RBM一個(gè)常見(jiàn)的起始值是0.01或0.1。我個(gè)人的經(jīng)驗(yàn)是可以先設(shè)為0.1觀察前幾十輪的重構(gòu)誤差。如果誤差爆炸立刻降到0.01或0.05。如果誤差下降非常緩慢可以嘗試增大到0.2。一個(gè)更穩(wěn)健的策略是使用衰減的學(xué)習(xí)率比如每50輪將學(xué)習(xí)率乘以0.95。其次隱藏層單元數(shù)決定了模型的容量。單元太少模型無(wú)法捕捉數(shù)據(jù)的復(fù)雜結(jié)構(gòu)重構(gòu)誤差會(huì)停留在一個(gè)較高的平臺(tái)。單元太多則可能導(dǎo)致過(guò)擬合模型會(huì)記住訓(xùn)練數(shù)據(jù)的噪聲而非一般規(guī)律。對(duì)于我們的5x5十字圖案25個(gè)可見(jiàn)單元隱藏單元數(shù)可以從10到50之間嘗試。一個(gè)粗略的經(jīng)驗(yàn)法則是隱藏單元數(shù)可以與可見(jiàn)單元數(shù)在同一數(shù)量級(jí)或略少。你可以通過(guò)觀察“權(quán)重可視化”來(lái)輔助判斷如果很多隱藏單元學(xué)習(xí)到的權(quán)重圖看起來(lái)是重復(fù)或模糊的可能意味著隱藏單元過(guò)多或訓(xùn)練不足。批量大小影響梯度估計(jì)的噪聲和訓(xùn)練速度。較小的批量如10 20會(huì)帶來(lái)噪聲更大的更新有時(shí)有助于跳出局部最優(yōu)但訓(xùn)練不穩(wěn)定。較大的批量如100 200能提供更平滑的梯度估計(jì)訓(xùn)練更穩(wěn)定但可能內(nèi)存消耗更大。對(duì)于MNIST60000樣本批量大小128或256是常見(jiàn)選擇。對(duì)于我們的合成數(shù)據(jù)1000樣本批量大小64或128比較合適。訓(xùn)練輪次需要通過(guò)監(jiān)控重構(gòu)誤差來(lái)決定。在訓(xùn)練開(kāi)始時(shí)誤差應(yīng)該快速下降。隨著輪次增加下降速度會(huì)變慢最終趨于平穩(wěn)。你可以繪制誤差隨輪次變化的曲線。當(dāng)曲線在連續(xù)多輪比如50輪內(nèi)不再有明顯下降變化小于一個(gè)閾值如1e-5就可以考慮停止訓(xùn)練了。設(shè)置一個(gè)最大輪次如500作為保險(xiǎn)?,F(xiàn)在讓我們把訓(xùn)練和監(jiān)控腳本整合起來(lái)% 主腳本訓(xùn)練并監(jiān)控RBM clear; close all; clc; % 1. 生成或加載數(shù)據(jù) % 這里使用第3節(jié)生成的合成數(shù)據(jù)假設(shè)變量data已存在 % 或者加載MNIST等 % load(mnist_train.mat); % 假設(shè)數(shù)據(jù)在變量 train_x 中且已歸一化到[0,1] % data train_x; % 2. 設(shè)置超參數(shù) n_hidden 20; % 隱藏層單元數(shù) learning_rate 0.1; % 初始學(xué)習(xí)率 n_epochs 200; % 訓(xùn)練輪次 batch_size 64; % 批量大小 % 3. 訓(xùn)練RBM [W_trained, b_trained, c_trained, errors] train_rbm(data, n_hidden, learning_rate, n_epochs, batch_size); % 4. 可視化訓(xùn)練過(guò)程 figure; plot(1:n_epochs, errors, b-, LineWidth, 1.5); xlabel(訓(xùn)練輪次 (Epoch)); ylabel(平均重構(gòu)誤差); title(RBM訓(xùn)練誤差曲線); grid on; % 5. 可視化學(xué)習(xí)到的權(quán)重特征 % 將權(quán)重矩陣的每一列對(duì)應(yīng)一個(gè)隱藏單元重塑為圖像尺寸 img_size sqrt(size(W_trained, 1)); % 假設(shè)是方形圖像 if img_size floor(img_size) % 確保可以重塑 figure; for i 1:min(25, n_hidden) % 最多顯示25個(gè)特征 subplot(5,5,i); w_img reshape(W_trained(:, i), img_size, img_size); imagesc(w_img); colormap(gray); axis image off; title(sprintf(Hid %d, i)); end sgtitle(RBM學(xué)習(xí)到的隱藏層特征權(quán)重列); end運(yùn)行這段代碼后你會(huì)得到兩張圖。第一張是誤差曲線它應(yīng)該是一條平滑下降的曲線。如果曲線震蕩嘗試降低學(xué)習(xí)率。如果曲線幾乎水平嘗試增大學(xué)習(xí)率或檢查權(quán)重初始化是否過(guò)小。第二張圖是權(quán)重可視化。每個(gè)子圖代表一個(gè)隱藏單元與所有可見(jiàn)單元連接的權(quán)重。對(duì)于一個(gè)學(xué)習(xí)良好的、處理圖像數(shù)據(jù)的RBM這些權(quán)重圖應(yīng)該看起來(lái)像“邊緣檢測(cè)器”或“局部斑點(diǎn)”它們代表了模型從數(shù)據(jù)中提取的基礎(chǔ)特征。如果所有圖都是模糊的噪聲說(shuō)明模型可能沒(méi)有學(xué)到有意義的東西需要檢查數(shù)據(jù)、學(xué)習(xí)率或訓(xùn)練輪次。常見(jiàn)問(wèn)題與排查重構(gòu)誤差為NaN或Inf這幾乎總是因?yàn)閷W(xué)習(xí)率太大導(dǎo)致權(quán)重更新爆炸。立即降低學(xué)習(xí)率例如降到原來(lái)的1/10。同時(shí)檢查sigmoid函數(shù)的輸入是否過(guò)大導(dǎo)致指數(shù)運(yùn)算溢出。可以在sigmoid函數(shù)中加入數(shù)值穩(wěn)定處理y 1./(1 exp(-max(min(x, 50), -50)));將輸入限制在[-50, 50]區(qū)間。誤差不下降檢查數(shù)據(jù)確保數(shù)據(jù)已正確歸一化到[0,1]。打印幾行數(shù)據(jù)看看。檢查初始化權(quán)重初始化標(biāo)準(zhǔn)差std_dev不能為0或太小。嘗試0.01或0.1。檢查學(xué)習(xí)率學(xué)習(xí)率可能太小。嘗試增大。檢查梯度更新在訓(xùn)練循環(huán)中打印positive_associations和negative_associations的范數(shù)看看梯度是否非零且方向合理。訓(xùn)練速度慢確保你使用了矩陣運(yùn)算而不是在循環(huán)中對(duì)每個(gè)樣本單獨(dú)計(jì)算。對(duì)于大數(shù)據(jù)集可以考慮將數(shù)據(jù)轉(zhuǎn)換為single單精度類(lèi)型以減少內(nèi)存占用和加速計(jì)算但要注意精度損失。模型過(guò)擬合雖然RBM作為生成模型過(guò)擬合表現(xiàn)不如判別模型明顯但如果隱藏單元過(guò)多它可能會(huì)過(guò)度記憶訓(xùn)練數(shù)據(jù)。除了減少隱藏單元可以引入權(quán)重衰減即在梯度更新中加入一個(gè)懲罰項(xiàng)W W lr * (positive_associations - negative_associations - weight_cost * W)其中weight_cost是一個(gè)小的正數(shù)如0.0002。6. 模型評(píng)估與應(yīng)用重構(gòu)、采樣與特征提取訓(xùn)練完成后我們?cè)趺粗肋@個(gè)RBM模型是好是壞它除了能降低一個(gè)叫“重構(gòu)誤差”的數(shù)字還能做什么這部分我們將探討RBM的三個(gè)核心應(yīng)用數(shù)據(jù)重構(gòu)、隨機(jī)采樣和特征提取并在MATLAB中實(shí)現(xiàn)它們。這才是模型價(jià)值的真正體現(xiàn)。6.1 數(shù)據(jù)重構(gòu)與可視化重構(gòu)是檢驗(yàn)RBM學(xué)習(xí)質(zhì)量最直觀的方式。給定一個(gè)測(cè)試樣本我們讓RBM進(jìn)行一次“正向傳播”數(shù)據(jù)→隱藏層和一次“反向傳播”隱藏層→可見(jiàn)層得到重構(gòu)后的數(shù)據(jù)。比較原始數(shù)據(jù)和重構(gòu)數(shù)據(jù)可以直觀看出模型抓住了哪些主要特征丟失了哪些細(xì)節(jié)。% 假設(shè)我們有一個(gè)測(cè)試樣本 test_sample (1 x n_visible 的行向量) test_sample data(1, :); % 取第一個(gè)訓(xùn)練樣本作為示例 % 將行向量轉(zhuǎn)為列向量以便計(jì)算 v_test test_sample; % 正向傳播得到隱藏層概率/狀態(tài) h_prob sigmoid(c_trained W_trained * v_test); % h_state h_prob rand(size(h_prob)); % 采樣得到隱藏狀態(tài)這里我們用概率 % 反向傳播重構(gòu)可見(jiàn)層 v_recon_prob sigmoid(b_trained W_trained * h_prob); % 使用概率h_prob進(jìn)行重構(gòu) % 如果想得到二值重構(gòu)可以采樣v_recon v_recon_prob rand(size(v_recon_prob)); % 可視化比較 img_size sqrt(length(v_test)); if img_size floor(img_size) figure; subplot(1,2,1); imagesc(reshape(v_test, img_size, img_size)); title(原始圖像); colormap(gray); axis image off; subplot(1,2,2); imagesc(reshape(v_recon_prob, img_size, img_size)); title(RBM重構(gòu)圖像 (概率)); colormap(gray); axis image off; end % 計(jì)算該樣本的重構(gòu)誤差交叉熵 recon_err_single -sum(v_test .* log(v_recon_prob1e-10) (1-v_test).*log(1-v_recon_prob1e-10)); fprintf(單個(gè)樣本重構(gòu)誤差: %f\n, recon_err_single);一個(gè)好的RBM其重構(gòu)圖像應(yīng)該能清晰保留原始圖像的主體結(jié)構(gòu)。對(duì)于十字圖案重構(gòu)結(jié)果應(yīng)該依然是一個(gè)清晰的十字。如果重構(gòu)結(jié)果模糊或失真嚴(yán)重說(shuō)明模型沒(méi)有充分學(xué)習(xí)到數(shù)據(jù)的分布。6.2 吉布斯采樣與生成新樣本RBM作為一個(gè)生成模型最酷的能力是從其學(xué)到的分布中“幻想”出新的、與訓(xùn)練數(shù)據(jù)類(lèi)似但又不完全相同的樣本。這個(gè)過(guò)程通過(guò)吉布斯采樣實(shí)現(xiàn)從一個(gè)隨機(jī)初始的可見(jiàn)層狀態(tài)開(kāi)始交替地對(duì)隱藏層和可見(jiàn)層進(jìn)行采樣經(jīng)過(guò)足夠多的步驟后采樣得到的可見(jiàn)層狀態(tài)就來(lái)自于模型分布。function generated_sample rbm_gibbs_sample(W, b, c, n_steps, img_size) % 從訓(xùn)練好的RBM中通過(guò)吉布斯采樣生成樣本 % n_steps: 采樣步數(shù)越多樣本越接近模型分布 % img_size: 生成圖像的尺寸用于可視化 n_visible size(W, 1); n_hidden size(W, 2); % 隨機(jī)初始化可見(jiàn)層可以全0.5或隨機(jī)二值 v rand(n_visible, 1) 0.5; % 隨機(jī)二值初始化 % v 0.5 * ones(n_visible, 1); % 或用概率0.5初始化 for step 1:n_steps % 給定v采樣h h_prob sigmoid(c W * v); h h_prob rand(n_hidden, 1); % 給定h采樣v v_prob sigmoid(b W * h); v v_prob rand(n_visible, 1); end generated_sample v; % 最終采樣得到的可見(jiàn)層狀態(tài) % 可視化生成的樣本 if nargin 5 ~isempty(img_size) figure; imagesc(reshape(generated_sample, img_size, img_size)); colormap(gray); axis image off; title(sprintf(吉布斯采樣生成樣本 (步數(shù)%d), n_steps)); end end % 使用訓(xùn)練好的模型生成一個(gè)樣本 gen_sample rbm_gibbs_sample(W_trained, b_trained, c_trained, 1000, img_size);采樣步數(shù)n_steps需要足夠大以確保馬爾可夫鏈達(dá)到平穩(wěn)分布。通??梢詮?00步開(kāi)始嘗試觀察生成的樣本是否穩(wěn)定。如果模型訓(xùn)練得好生成的樣本應(yīng)該看起來(lái)像訓(xùn)練數(shù)據(jù)例如一個(gè)模糊但可辨的十字形狀。這是一個(gè)強(qiáng)有力的證明表明RBM確實(shí)捕捉到了數(shù)據(jù)的本質(zhì)特征。6.3 特征提取將RBM作為預(yù)處理工具RBM的隱藏層激活可以看作是對(duì)輸入數(shù)據(jù)的一種“編碼”或“特征表示”。這些特征通常比原始數(shù)據(jù)更具代表性和區(qū)分度。我們可以用訓(xùn)練好的RBM為下游任務(wù)如分類(lèi)提取特征。% 為整個(gè)數(shù)據(jù)集提取隱藏層特征 % data_matrix 是 n_samples x n_visible 的數(shù)據(jù)矩陣 data_matrix data; % 假設(shè)是我們的訓(xùn)練數(shù)據(jù) n_samples size(data_matrix, 1); % 將數(shù)據(jù)轉(zhuǎn)置為 n_visible x n_samples 以便矩陣乘法 data_for_feat data_matrix; hidden_features_prob sigmoid(bsxfun(plus, c_trained, W_trained * data_for_feat)); % hidden_features_prob 的維度是 n_hidden x n_samples % 轉(zhuǎn)置回來(lái)得到 n_samples x n_hidden 的特征矩陣 extracted_features hidden_features_prob; % 現(xiàn)在extracted_features 可以作為新的特征輸入到邏輯回歸、SVM等分類(lèi)器中。 fprintf(提取的特征矩陣維度: %d x %d\n, size(extracted_features));這里我們使用了隱藏層的概率值h_prob作為特征而不是采樣得到的二值狀態(tài)。概率值包含了更多信息通常作為特征效果更好。這些特征維度更低n_hidden維且是原始數(shù)據(jù)的一種非線性變換往往能提升后續(xù)分類(lèi)器的性能。注意在深度信念網(wǎng)絡(luò)中正是通過(guò)堆疊多個(gè)RBM將每一層的隱藏層特征作為下一層的輸入從而逐層學(xué)習(xí)到越來(lái)越抽象的特征表示。我們這里實(shí)現(xiàn)的單層RBM是構(gòu)建更復(fù)雜深度模型的基礎(chǔ)模塊。7. 性能優(yōu)化、擴(kuò)展與踩坑實(shí)錄當(dāng)你跑通了一個(gè)基礎(chǔ)的RBM并看到了初步結(jié)果后可能會(huì)想如何讓它跑得更快、更穩(wěn)、處理更復(fù)雜的數(shù)據(jù)這一節(jié)我將分享一些進(jìn)階的優(yōu)化技巧、處理非二值數(shù)據(jù)的方法以及我在實(shí)踐中踩過(guò)的一些“坑”。7.1 性能優(yōu)化向量化與并行化我們之前的實(shí)現(xiàn)已經(jīng)充分利用了MATLAB的矩陣運(yùn)算這是最大的性能優(yōu)勢(shì)。但仍有優(yōu)化空間使用單精度數(shù)據(jù)如果內(nèi)存和精度允許將數(shù)據(jù)和參數(shù)轉(zhuǎn)換為single類(lèi)型可以加速計(jì)算并減少內(nèi)存占用??梢栽跀?shù)據(jù)加載后使用data single(data);并在初始化參數(shù)時(shí)使用randn(..., single)。預(yù)分配數(shù)組在訓(xùn)練循環(huán)中我們?yōu)槊總€(gè)批次計(jì)算h0_prob,v1_prob等。確保這些中間變量不會(huì)在循環(huán)中動(dòng)態(tài)改變大小這有助于MATLAB的JIT即時(shí)編譯優(yōu)化。利用GPU對(duì)于大規(guī)模數(shù)據(jù)和大網(wǎng)絡(luò)MATLAB支持使用GPU加速。你可以使用gpuArray將數(shù)據(jù)和參數(shù)轉(zhuǎn)移到GPU上。例如data_gpu gpuArray(data);然后在GPU上進(jìn)行所有矩陣運(yùn)算。這通常能帶來(lái)數(shù)量級(jí)的加速但需要你有兼容的NVIDIA GPU和Parallel Computing Toolbox。7.2 處理實(shí)值數(shù)據(jù)高斯-伯努利RBM我們的RBM假設(shè)可見(jiàn)層是二值的。但現(xiàn)實(shí)中很多數(shù)據(jù)是實(shí)值的比如像素灰度值、音頻波形等。這時(shí)可以使用高斯-伯努利RBM。其核心改變?cè)谟诳梢?jiàn)層單元的條件分布從伯努利分布變?yōu)楦咚狗植颊龖B(tài)分布。這意味著可見(jiàn)層單元v_i的條件均值是sigmoid(b_i sum_j W_{ij} h_j)的函數(shù)但方差需要額外學(xué)習(xí)或固定。數(shù)據(jù)需要標(biāo)準(zhǔn)化為零均值和單位方差或某個(gè)固定方差這是高斯分布的要求。權(quán)重更新公式需要做相應(yīng)調(diào)整。在MATLAB中實(shí)現(xiàn)時(shí)一個(gè)常見(jiàn)的簡(jiǎn)化是固定可見(jiàn)層方差為1。此時(shí)可見(jiàn)層采樣公式變?yōu)関_i ~ N( mean_i, 1 )其中mean_i b_i sum_j W_{ij} h_j。 而重構(gòu)誤差則從交叉熵變?yōu)榫秸`差。這需要對(duì)train_rbm函數(shù)中的采樣和重構(gòu)誤差計(jì)算部分進(jìn)行修改。這是一個(gè)重要的擴(kuò)展方向讓你能處理MNIST原始灰度圖等數(shù)據(jù)。7.3 我的踩坑實(shí)錄與經(jīng)驗(yàn)技巧學(xué)習(xí)率與權(quán)重初始化的耦合我曾遇到過(guò)模型完全不學(xué)習(xí)的情況誤差曲線是一條直線。排查后發(fā)現(xiàn)是因?yàn)闄?quán)重初始化標(biāo)準(zhǔn)差std_dev設(shè)得太小如1e-5導(dǎo)致sigmoid函數(shù)的輸入始終在0附近梯度極小。無(wú)論學(xué)習(xí)率多大更新都微乎其微。經(jīng)驗(yàn)權(quán)重初始化的尺度要與學(xué)習(xí)率匹配。通常用1/sqrt(n_visible)或0.01是安全的起點(diǎn)。“死神經(jīng)元”問(wèn)題在訓(xùn)練過(guò)程中某些隱藏單元可能因?yàn)槌跏紮?quán)重不利或?qū)W習(xí)過(guò)程中梯度始終很小導(dǎo)致其激活概率永遠(yuǎn)接近0或1不再對(duì)學(xué)習(xí)有貢獻(xiàn)。這被稱(chēng)為“死神經(jīng)元”。對(duì)策可以監(jiān)控隱藏層的平均激活度。如果某個(gè)單元的平均激活度在整個(gè)訓(xùn)練集上長(zhǎng)期接近0或1可以考慮在偏置更新中加入一個(gè)“稀疏性”懲罰鼓勵(lì)平均激活度接近一個(gè)目標(biāo)值如0.1或者簡(jiǎn)單地重新初始化這個(gè)神經(jīng)元的權(quán)重。CD-K中K的選擇我們使用了CD-1即只進(jìn)行一次吉布斯采樣。理論上K越大CD-3 CD-10對(duì)模型期望的近似越好但計(jì)算成本也越高。在實(shí)踐中CD-1對(duì)于很多問(wèn)題已經(jīng)足夠好并且是訓(xùn)練深度信念網(wǎng)絡(luò)時(shí)的標(biāo)準(zhǔn)選擇。經(jīng)驗(yàn)除非你追求極致的模型性能并且有充足的計(jì)算資源否則CD-1是性?xún)r(jià)比最高的選擇。重構(gòu)誤差下降但生成樣本質(zhì)量差有時(shí)誤差曲線看起來(lái)很好但用吉布斯采樣生成的樣本卻是一團(tuán)噪聲。這可能是因?yàn)槟P拖萑肓四硞€(gè)局部最優(yōu)或者學(xué)習(xí)到的分布是多峰的而采樣過(guò)程沒(méi)有充分混合。排查嘗試增加吉布斯采樣的步數(shù)如5000步并使用不同的隨機(jī)種子初始化。同時(shí)檢查訓(xùn)練數(shù)據(jù)的多樣性是否足夠。MATLAB版本與函數(shù)兼容性代碼中使用了bsxfun函數(shù)這在舊版MATLAB中是必須的。但在R2016b及以后版本MATLAB引入了隱式擴(kuò)展可以直接使用、-、.*、./等運(yùn)算符對(duì)維度匹配的數(shù)組和向量進(jìn)行操作。如果你在新版MATLAB中看到關(guān)于bsxfun的警告可以安全地將其替換為直接運(yùn)算符。例如h0_prob sigmoid(bsxfun(plus, c, W * v0));可以寫(xiě)成h0_prob sigmoid(c W * v0);MATLAB會(huì)自動(dòng)將列向量c擴(kuò)展到與矩陣W*v0相同的列數(shù)。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色欲婷婷五月天| 被强行糟蹋的女人A片| 91婷婷搞| 沈娜娜av| 最近免费中文字幕大全高清大全1 色狠狠色噜噜AV天堂五区 | 日本色超碰| 婷婷少妇激情| 五月婷婷网站| 久色五月婷婷综合| 天天做天天爱天天爽夜夜揉| 99亚洲精品视频| 天堂无码人妻精品AV一区| 国产无套精品一区二区| 开心五月色婷婷综合开心网| 五月亭亭激情综合| 99精品网| 五月婷色| 五月婷婷,六月丁香| 五月天色婷婷伊人网| 另类天堂| 超碰久热| 人人草成人视频| 九九人人自拍| 中文字幕婷婷| 亚洲无码另类| 91久久久久久| 丁香婷婷五月天校园春色| 婷婷丁香综合| 9福利性视频欧美| 97操女视频| 成人做爰高潮A片免费视频| 婷婷激情九月| 激情色色色| 婷婷五月香蕉| 亚州色色色| 超碰日日操| 激情五月丁香五月| 免费观看大片视频 丁香婷婷 六月欧美| 久久五月激情网| 成人 在线 日韩| 99热这里全是精品| 丁香五月手机在线| 婷婷色情网| 激情五月婷婷六月丁香| 激情五月天激情综合网| 丁香五月天论坛| 五月丁香无码| 婷婷日欧美在线观看| 日韩视频99| 99热99re6国产在线播放| 无码地址| site:publishdd.com| 日韩抽插操逼| 停停五月丁香| 中美日韩成人在线| 五月丁香激情综合| 久久精99| 亚洲啪视频| 久这里只有精品99| 99热传媒| 久久婷婷六月综合综合| 色婷婷婷婷| 9操在线| 91色欲综合| 1024欧美看片| 操碰99| 婷婷综合精品| 26uuu亚洲色| 激情婷婷综合| 五月亭亭狠狠| 99色综合| 欧美三级大片AA在线看| 久久婷婷五月综合色奶水99啪| 国产九九一区二区三区| 狠狠搞狠狠操| 99精品国产在热久久| 成人国产欧美大片一区| 97成人超碰免| 五月天婷亚洲综合在线嫩草网| 狠狠干总合| 婷婷六月伊人| AV在线资源| 激情五月天婷婷五月天| 亚洲婷婷综合视频| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | av激情在线| 超碰免费人人| 99re思思久久| 国产肥白大熟妇BBBB视频| 九九色情网站| 色噜噜狠狠色综合网| 情色婷婷五月天| 9有码中文| 九九色热| 婷婷五月激情五月丁香五月| 国产丁香五月天婷婷| 色五狠狠| 国产成人精品一区二三区熟女在线 | 九月婷婷综合网| 成人婷99最新| 色播激情五月天| 婷婷丁香五另类网站| 色色丁香| AV色五月婷婷| WWW99热| 五月情四婷婷| 婷婷激情五月综合| www久久久久| 亚洲AV成人在线| 久久这里有精品99| 五月激情影院| 天天激情5月天亚洲| 夜夜操天天干| 99国产97在线,| 黄色AV日韩| 常久最新免费的色吊丝| 日本少妇裸体做爰高潮片 | WwW色婷婷| 色婷婷成人网| 天天干天天操天天射| 在线观看免费视频| 色五月涩涩婷婷蜜桃| 五月婷婷激情综合网| 欧洲色| 色情婷| 天天成人丁香美女AV| 久久怕怕视频| 成人必爱视| www.色综合.com| 丁香婷婷啪啪啪| 婷婷五月色色| 激情五月综合第一页| 色婷亚洲| 欧洲区自拍| 婷婷五月精品中文字幕| 91在线看片| 襙比视频| 人人人操 超碰| 99re热在线视频| 伊人五月天在线| 黑人巨粗进入警花疼哭A片| 五月婷精品| WWW.桔色成人.COM| 爱久综合| 五月天婷婷综合网| 一二三区视频韩国| 99九九热播在线免费视频| 激情合网婷婷| 狠狠精品干练久久久无码中文字幕 | 色综合五月| 996热| 激情综合网五月婷婷| 日本 色综合| 丁香六月婷婷综合啪啪| 色女人久久| 激情婷婷五月| 久久婷婷网| 91爱啪啪| 深爱激情五月天色婷婷| 婷婷国产五月天17c| 夜丁香五月婷婷| 五月丁香六月激情| www.夜夜操| 色域五月婷婷丁香| 丁香五月天社区| 综合激情开心五月| 婷婷五月综合丁香久久| 婷婷在线播放| 九九热九九| 强壮公让我夜夜高潮A片视频| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 婷婷欧美综合| 五月婷婷深深爱爱| 久久日婷婷| 婷婷六月久久综合导航| 综合久久婷婷| 五月婷婷香蕉视频| 99欧州偷拍视频| 五月丁香六月综合情在线观看| 91热爆在线| 久久99色色| 久久38视频| 激情五月天婷婷| 91爱啪啪| 婷婷香五月天| 五月天婷婷综合久久| 国精产品一区一区三区免费视频| 六月激情久久| 夜夜噜夜夜奇| 激情久久肏屄视频| 久久曰9| 色色无码| 开心五月婷婷在线| 亚洲小视频免费播放| 丁香五月偷拍| 丁香五月婷婷AV| 激情五月天激情网| 99久久99视频| 色亭亭影园| 色色色综合| 人人澡天天色天天做| 色噜噜丁香| 久久久久久97| 婷婷色色欧美| 99成人精品| 99自拍视频网站| 久久香蕉网| 久热99久热| 久操无码| 色播五月网| 五月婷婷开心深| 精品一区久热| 久久草大香蕉| 五月丁香婷婷在线| 美女丁香五婷婷| 噜噜噜噜噜在线| 婷婷综合天堂| 青青草青青草五月天| 激情99| 激情综合激情五月| 丁香六月婷婷综合激情欧美| 影院久久久| 五月丁香综合| 色婷婷丁香五月在线观看| 五月婷婷六月丁香免费| 啪啪夜久久| 亚洲午夜成人av电影网| 99热自拍| 99日韩| 五月婷婷丁香大陆免费| 99热狠狠操| 五月天电影网| 五月婷婷六月丁香| 丁香婷婷大香蕉| 成人综合AV| 五月婷婷开心亚州在线| 久久久久人无码人妻| 色九区| aV欲望人妻中文字幕| 国产在线aaa片一区二区99| 国产精品久久久久久久久久 | 五月丁香欧美综合| 五月婷婷激情日本| 182TV大香蕉| 五月丁香操亭亭网| 狠狠xx| 五月色丁香激情| 丁香婷婷综合五月天| 91男同| 4438国产免费看| Www.se.久久| 综合性视频99| 五月婷婷久久综合| 天天操天爱综合| 五月永久激情| 色婷婷综合网站| 亚洲婷婷婷| 婷婷亚洲五月丁香综合在线| 影音先锋 婷婷| 日本www五月婷婷| 精品色情一区二区三区四区| 婷婷狠狠久久| 六月丁香婷婷五月| 五月天伊人网| 青青草tp| 久热婷婷| 九九热9| 天天久久九九| 色情五月天丁香社区| 色情五月天。| 婷香五月网在线| 五月天婷婷xxx| 五月丁香色色网| 五月丁香六月综合情在线观看| 色色色色综合网| 婷婷天堂站| 爱婷婷都市激情| 99热这里有精品| 五月天丁香| 亚洲熟女色| 麻豆雪千夏| 91人人网| 99在线精品免费视频| 狠狠操狠狠色| 97色97干| 亚洲第一色色色色| 五月天婷婷影院影院观看| 天天激情站| 亚洲六月婷婷| 久久久天堂国产精品女人| 国产又爽又猛又粗的视频A片| 激情五月婷婷老师| 依人大香蕉| 久久精品在线| 激情图片婷婷| 日韩二区搞逼插逼毛片| 99九九综合久久九九| 91婷色| 99这里只有免费的精品| 婷婷爱五月| 婷婷综合五月| 色99超碰| 五月的丁香六月的婷婷| 97se视频在线| 综合视频五月| 思思热在线| www五月| 久久99激情五月天| 玖玖在线视频福利| 五月丁香六月婷婷网| 超碰在线看| 在线看的免费网站| 久久性操| 五月天婷婷爱| 91无码色色| 五月婷婷偷拍| 成人五月天视频播放| 超碰在线9| 日韩成人影片网站| 五月色综合| 五月综合婷婷五月| 激情都市另类| 综合欧美五月婷婷| 欧美色色色色色色| 婷婷五月偷拍| 婷婷五月天小说| 成人色图情色成人网 www.5b5b5bcom 五月天 | 亚洲乱啪| 色五月首页| 成人va在线播放| 九九99在线| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 9久热在线视频精品| 天天干天天色天天干| 天天日夜夜拍| 五月丁香婷婷综合网| 99精品福利视频| 成人午夜天| av九九| 狠狠色丁香久久综合婷婷亚洲成人福利| 九九99精品| 26uuu| 丁香五月天大香蕉啪啪| 综合性视频99| 久久精品一区二区三区四区| 丁香六月亚洲| 年轻的妺妺伦理HD中文| 久久婷婷六月| 99婷婷| 欧美日本VA| 色玖玖爱| 色玖玖| 久久婷婷综| 婷婷五月天网址| 99在热线免费视频| 五月天婷婷久草丁香| 丁香五月天天高清在线| 久久精彩视频99| 丁香五月激情澎湃一区| 九九这里精品| 国产黄色在线观看| 99热6这里只有精品| 欧美性生交XXXXX无码小说| 久久婷婷六月| 丁香六月婷婷久久综合| 玖玖在线资源视频| 亚洲在线免费成人| 丁香五月激情无码视频| 在线观看欧美3区| 狠狠色无码| 天天躁日日躁狠狠躁日日躁2022年5月9日| 色偷偷狠狠| 两性婷婷丁香五月| 丁香五月偷拍| 夜夜 操无码| 久久多色| 开心亚洲久久开心| 伊人丁香五月婷婷潮吹| 婷婷五月色综合| 91九色精品| 4399在线日本A片| 噜噜噜狠狠色综| 欧美精品18| 2025中文在线视频字幕免费观看| 情色五月天 网站| www.亭亭五月天| 99精品网址| 99国产97在线,| 久久婷婷五月综合伊人| 成人五月丁香社区| 嫩BBB搡BBBB榛BBBB| 9999热这里只有精品| 天堂网操| 五月丁香五月婷婷| 99视频网| 久久狠狠欧美| 久久免费干| 日韩久久色| 777久久精品| 久久性爱网| 五月天成人网在线观看| 五月情丁香色| 野外99热| 日本精品久久久久中文字幕| 日韩1区2区| 丁香五月婷婷啪啪啪| 777精品久无码人妻蜜桃| m色激情网| 色玖玖爱| 99在线资源视频| 爽极品色| 激情五月丁香六月| 婷婷丁香77777| 九九99九九精品视频| 超碰免费成人| 色播五月| 丁香五月婷婷天激情| 欧美色97| 婷婷WWW久久| 色综合色色| 五月激情婷婷丁香| www.狠狠色.com| 久久伦乱| 九九美女视频| 色噜噜丁香| 国产激情综合| 在线视频激情网站| 欧美人妻一区二区| 全国最新疫情| 久久精品国产色| 成人人操| 激情婷婷22月间| 另类少妇人与禽zOZZ0性伦| 丁香婷婷激情五月天无毒不卡蜜桃| 侠女刀之记忆电影在线看免费| 99视频91| 色婷婷四虎| 中文字幕日产A片在线看| 九九99热| 久色激情| 天天艹夜夜艹| 天天摸天天舔| 五月婷婷基地| 色婷婷五月天天天干天天操天天爽| 综合婷婷| 轮奸综合网| 成人丁香色| 野外99热| 国产精品岛国片在线观看免费| 成人午夜天| 99精品亚洲| 韩国19 主播内部福利vip免费播放| 99热在线观看| 亚洲色无码A片一区二区麻豆| 99热亚洲精品| 99无码黄色视频| 欧美色色色色色色| www.henhenl| 色综合色综合色综合色综合| 激情都市丁香婷婷| 日韩精品一品二区三区的使用体验| 深爱激清网| 五月婷婷我| 色情一区二区播放| 丁香五月网在线观看| 成人婷婷五月天| 色五月婷婷天天干| 俺五月| 综合色天天| 中文人妻主播久久| 开心日韩丁香婷婷五月| www.sezonghe| 丁香五月播播| 操人久久| 激情五月天色播| 五月激情天| 欧美韩国日本| 啪啪视频99| www.久久99精品| 丁香五月天日韩无码| 九九激情| 久99久在线| 日韩九区| 性爱电影科技贸易有限公司| 五月婷婷丁香综合网| 欧美国产一区二区三区| 超碰色综合| 综合激情五月天| 美日韩成人| 五月婷在线| 九月婷婷在线视频| 97精品自拍视频| 九九热黄色| 亚洲日日日| 丰满老熟妇BBBBB搡BBB| 婷婷五月欧美AA片免费| 狠狠爱婷婷爱| 丁香六月婷婷高清| 深爱激情丁香| 日日干夜夜干| 9久操| 在线婷婷| 久久这里有精品在线观看| 天天狠狠夜夜狠狠2023| 日本欧美成人片AAAA| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 九九热精品视频在线观看| 国产毛片欧美毛片久久久 | 婷色五月| 久草五月丁香婷婷综合| 91色噜噜狠狠狠狠色综合| 思思久久99热| 青青草成人网| 少妇性BBB搡BBB爽爽爽电影| 一婬一伦一区二区三区| 开心 五月 综合| 狠狠色综合精品视频在线| 久久色情| 久久五月天丁香| 九九国产视频| 狠狠高潮精品亚洲1| 久热免费视频| 9l视频自拍九色9l视频在线观看| 天天碰天天插天天操| 天堂综合久久 | 天天操天天谢| 玖玖资源在线视频| 色九综合| 夜夜操激情| 性色五月天| 国产高潮白浆一区二区| VA国产在线综合网站| 九九亚洲| 99精品视频播放| 激情小说五月天社区丁香| 这里只有精品免费视频| 婷婷香蕉精品| 少妇日麻屄| 亚洲视频操| 丰滿爆乳一区二区三区| www.minyis.com【JT】实力收量可预付TG@LXSPSW8 | 日本精品人妻无码77777| 日本三级中国三级99| 九九99九九精品免费 | 亚洲乱码日产精品BD| 久久婷婷91| 久久这里有精品视频| 北京熟妇搡BBBB搡BBBB| 久久亚洲婷婷| 在线观看欧美| 丁香五月婷婷大香蕉| 五月天色婷婷基地| 无码激情AAAAA片-区区| 色综合久久五月| 久久伦乱| 国产精品色婷婷99久久精品| 九九热这里| 青吴乐视频| 日本天天综合| 综合久| 丁香婷婷人妻| 午夜丁香婷婷| 久久婷婷影院| 五月婷婷在线丁香| 激情九月婷婷| 精品无码av丁香五月激情| 婷婷性爱| www,8050,午夜三级| 丁香五月天黄色片| 丁香色六月婷婷| 国产综合色婷婷精品久久| 五月婷婷导航| 婷婷五月丁香综合| 丁香5月激情网| 99成人在线观看| 亚洲色精彩| 六月丁香网| 丁香女人五月天| 国产精品18久久久| 这里只有精品在线播放| 狠狠色色色| 欧美爆乳一区二区三区| 精品操逼一区二区| 亚洲色图五月丁香| 丁香五月亚洲激情婷婷射| 婷婷色在线| 五月婷俺去也| 亚洲综合网在线| 99九九精品视频| 人妻操日日| 播五月开心婷婷欧美综合| 超碰99资源站| 五月婷婷深深爱| 嫩草AV久久伊人妇女超级A| 熟女乱论网| 激情5月婷婷| AV性爱在线| 色九月欧美| 久久这里只有精品99| 色久婷婷网| 色图亚洲91| 五月婷婷综合视频| 国产99美少妇| 成人短视频免费| 99碰超| 69午夜成人影片| 日韩大片艹艹| 香蕉AV福利精品导航| 天天射色五月天| 久久婷婷婷| 97色色婷婷| 综合五月天完整| 丁香婷婷六月天| 成人精品视频99在线观看免费| 日韩99色99| 丁香六月婷婷开心| 99色热综合| 秋霞AV美国| 丁香五月影院| 99噜噜| 成人AV在线网站| 黑人无码一区| 国产午夜精品一区二区三区四区| www.日本91| 天天肏天天插| 另类激情五月| 青青操日本摸摸看看| 日韩成人免费电影| 综合在线色婷婷| 99久久国产宗和精品1上映| 99热99在线精品| 国产AV国片偷人妻麻豆| 久婷婷婷| 色五月第四色| 五月婷婷久久激情| 婷婷丁香色五月亚洲| 玖玖资源站中文| 久久99免费视屏| 久草婷婷视频| 久久综合九色综合97婷婷| 欧美五月婷婷| AV性爱网| 久久五月综合| 青青草视频福利| aaaaa不卡| 欧美VA视频| 99@久久@99精品视频| 色五月激情五月开心五月| 色五月婷婷五月| 亚洲成人乱码av网站| 性色播| 8区视频在线| 99热99思午夜精品| 97操女视频| 香蕉网婷婷| 五月丁香五月激情综合色综合| 99色婷婷视频| 六月婷婷av| 色五月婷婷一二| 婷婷五月天性| 五月丁香网中文字幕| 婷婷久久五月天| 久操福利| 婷婷97碰碰| 99超碰人人| 五月的色婷婷高潮| 欧美天堂久久| 性爱激情久久| 超碰婷婷五月| 色婷婷狠狠18yy| 国产性av| 丁香8月手机综合| 免费无码毛片一区二区A片| 99精品视频网| 色噜噜狠狠一区二区三区| 67194成I人在线观看线路1| 久久婷丁香五月| 色婷婷a v| 999婷婷综合| 午夜色婷婷| 色婷婷亚洲婷婷| 黄网免费看| 五月停亭六月,六月停亭的英语 | 啪啪激情网站| 亚洲色无码| 色色色9| 国产欧美va| 婷婷欧美| 婷婷亚洲色| www.天天干| 影音先锋91在线资源站| 夜色.cnm| 欧美日本国产欧美日本韩国99| 97影院一级片| 3pAV| 五月草影视| 久久天天| 国产ava| 啪啪啪大香蕉| 伊人成人宗合网| 洗浴中心操B视频| 日本色爽| 久久久97| 黄色激情网站在线观看| 成人视频在线免费播放| 激情四射五月天偷偷看婷婷| 久色中文| 亚洲性爱电影| 99视频| 丁香六月激情综合网| www.久久久久| 五月天电影网| 中美日韩成人在线| 免费视频在线观看的网站| 六月婷婷青青青视频| 五月婷婷色影院| 天天摸夜夜爽天天做| 婷婷五月色天| 九色PORNY9l原创自拍| 亚洲人操亚洲人| 激情爱爱网站超大免费| 色情丁香五月天| 天天做天天爱天天玩| 六月丁香五月婷婷| 亚洲AVwwwwwww| 天天日夜夜B久久| 思思久久精品| 在线观看免费视频| 五月天婷婷基地综合网| 欧美Va在线| 在线婷婷| 亚洲视频码| 激情五月天婷婷久久久久久久久久久| 日本社区五月天激情| 超碰免费在线| 六月丁香狠狠爱| 激情综合激情五月| 午夜丁香| 激情综合五月婷婷六月丁香| 丁香婷婷影院| 啪啪六月婷婷| 六月久久狠狠| 熟妇人妻中文字幕无码老熟妇| 久久婷婷五月天激情四射| 激情丰满熟妇五月| 99爱视频在线观看| 视频一二区| 人妻久久久久久久久久| 久久婷婷五月天| 婷婷的99视频网站| 亚洲美女网Va| 色五月色开心开心五月| 综合网激情五月天| 色情五月婷婷| 色婷婷免费视频| 思思精品视频| 婷婷五月丁香国产| 日日干日日s| 色色色色综合| 99免费热视频在线| 成功精品影院| 亚洲成人AV一区在线观看| oVV4WIB3vFi8D| 六月婷婷天天操夜夜爽视频| 97碰碰在线观看视频| 五月天操逼激情| 激情婷婷亚洲五月| 激情五月婷婷| 99热欧| 国产这里只有精品| 丁香六月啪| 国产在线黄色| 九色 在线| 538在线精品| 丁香五月天社区婷婷| 亚洲中文乱字字幕线在永久| 久久久天堂国产精品女人| 天天做天天爱天天爽夜夜揉| 五月天大香蕉| 美日韩成人| 大香蕉啪啪啪| 就要爱综合| 99亚洲精品视频| 亚洲五月天,激情视频| 色欲婷婷五月天| 91久久综合亚洲鲁鲁五月天| 婷婷色在线| 色欲天天综合网| 色综合久久久久| 久久人人妻| 天天搞夜夜叫| 操操操97| 九九久热| 免费黄色AV| 成人五月丁香社区| 婷婷色在线| 久久国产色| 午夜 外网 精品 在线| 9色91视频| 天天日天天操天天干| 日本成人内射| 婷婷五月,偷窥偷拍网| 色婷婷9| 婷婷天天日婷婷| 狠狠操天天操综合| www.婷婷五月.com| 操人久久| 精品无码av丁香五月激情| 亚洲电影在线观看| 亚洲色网络| 操碰99| 日产精品一线二线三线芒果| 伊人狠狠操| 亚洲AV免费国产电影| 91干在线| 久久久婷婷婷| 天天综合天天玩夜夜玩天天玩夜夜玩 | www.lchjjc.com| 久久久久婷 | 婷婷九月亚洲| 日本五月婷婷久久久六月丁香| 久久久高清| 91无码视频| 亚洲激情丁香五月基地| 婷婷99丁香| 99精品综合| 久8色色| 色婷婷免费观看| 一本色道久久88综合日韩精品| 天天综合中文| 狠狠色噜噜狠狠色噜噜噜999| 五月丁香六月激情| 色综合激情| 情婷婷五月天| 狠狠做五月| 婷婷中文字暮| 天天草天天爽| 这里有精品| 婷婷五月天影视| 六月婷婷九月丁香| 欧美A级成人婬片免费看理论| 超碰97免费在线| 99热综合在线观看| 激情丁香社区| 久久9热综合| 性无码专区无码| 9月色婷婷| 三级成人网站| 丁香九月久久| 久久日韩婷婷五月| 香蕉久久av一区二区三区| 啪色综合| 亚洲综合狠狠艹| 看婷婷五月天网| 91好好热日本在线| 五月婷婷 婷婷五月 一区二区 久久久| www.99热视频| 天天草天天摸| 五月婷婷婷婷婷婷艺术| 俺来也综合网精品一区 | 日本va欧美va欧美va精品| 热热久久99| 99热 免费| 久久九九爽| 五月亭大香蕉| #NAME?| 日本人妻伦在线中文字幕| 狠狠爱综合网| 99热1| 久久久天天啊| 99热在线这里| 互月天综合| 熟女乱论网| 91碰碰碰| 99热国产| 五月丁香91| 婷婷五月丁香色播| 怡春院天天干| 欧美一级毛卡片无码| 日本强伦片中文字幕免费看| 六月激情综合| 激情五月婷婷网| 狠狠爱综合| 五月丁香成人| 天堂久久婷婷| 猫咪伊人久久| 成人av中文字幕| 九九精品亚洲| 五月天另类激情在线| 人草人人| 丁香五月亚洲| 人人舔人人| 久久这里只有欧美| 天天摸天天日天天舔| 五月丁香六月欧美| 亚洲五月天婷婷在线| 操逼棍操逼| 99青青草| 99爱视频在线| 丁香五月婷婷大香蕉| 女人被男人吃奶到高潮| www.久久爱.com| 玖玖在线视| 综合久久99| 99热这里只有精品5| 欧美精品999| CHINESE熟女老女人HD视频| 国产又粗又大又爽又黄| 狠狠色噜噜狠| 牛牛色av| 久热黄色| 99噜噜噜在线播放| 狠狠搞综合色| 色色网五月激情| 99看片| 中文字幕综合网| 亚洲综合五月| 无码成人AAAAA毛片AI换脸| 丁香五月天成人| 亚洲成人无码片| 久久婷婷国产| 开心激情色婷婷五月天| 五月精品免费XXX| 亚洲操操操| 中文字幕在线播放视频| 欧美激情综合| 婷婷丁香大香蕉| 91porn一起草| 激情五月图| 激情五月婷婷老师| 97碰碰在线观看视频| 26uuu精品一区二区| 日日躁夜夜躁狠狠久久AV| 婷婷丁香五月天操逼| 久操大| 亚洲综合网激情小说| 79色色色色| 狠狠爱综合| 91人在线观看| 丁香五月欧美色综合| 五五月丁香花激情综合网| 天天综合天综合| 在线中文字幕av| 熟妇人妻中文字幕无码老熟妇| 九97免费视频| 思思视频久久| 丁香六月色婷婷| 26uuu亚洲| 六月色 亚洲| 99亚色色色| 思思re99视频在线观看| 少妇综合网| 91N 一起草| 青青热视频| 亚洲天码视频www蛋播视频| 五月停亭六月,六月停亭的英语 | 99热综合网| 欧亚成人A片一区二区| 97日本在线| 综合激情综合啪啪| 4438激情网| 91紱請| 综合色播| 免费观看的av| 日韩黄在免| 99综合免费视频| 婷婷香五月天| 久久一级AV| 亚洲成人免费电影| 五月婷婷真爱激情网| 嫩草AV久久伊人妇女超级A| 国产脫衣舞一区二区三区| 激情五月婷在线精品| 婷婷五月激情图片| 色欲五月婷婷| 丁香六月婷婷综合啪啪| 国产69久久久欧美黑人A片 | 亚洲色婷婷婷婷人人爽| 淫视馆aV二区一区| 五月婷婷导航| 亚洲色情网站| 少妇人妻人伦A片| 思思热闹这里只有精品| 噜噜操操| 亚洲4区国产欧美| 好激情在线综合网| 少妇大叫太大太粗太爽了A片| 激情九月婷婷| 噜噜狠狠色综合久| 91在线看片| 另类综合国产| 成人做爰A片免费看网站找不到了 国产露脸150部国语对白 | 中文精品久久久久人妻不| 九九大香视频| caopeng97人人| 婷婷六月五月| 亚洲欧美综合7777色亭亭| 色色色视频| 色综合五月天| 久久99免费视屏| 丁香五月色色| 日本啪啪网| 区美毛片子| 狠狠五月激情丁香六月| 五月香婷婷| av线电影| 碰97久久| 久久久性爱视频| 午夜九九九九九九九九九九九九九| 婷婷久久图片| 日日操夜夜撸| www.yw色| 亚洲啪啪啪啪| 99精品在线| 亚洲精品午夜国产va久久成人| 91色在线/日韩| 99久热| 如何安全看伊人婷婷| 99色在线视频| 色婷婷丁香五月高清在线| 偷偷与邻居做爰完整视频| 天天爽夜夜爽夜夜爽精| 98国产精品综合一区二区三区| 桔色成人官方网站| 色五月丁香五| 色丁香影院| 久久99久久久| 亚洲愉拍99热成人精品| 色五月婷婷在线| 91久久婷婷| 婷婷五月花| 久久久99精品| 午夜av网| 久久婷综合| 人妻系列久久久久久久久久久| 日韩成人无码| 天天爽天天做| 怡春院久操| 亚洲日日日| 激情五月婷婷在线区| 色情激情五月婷婷| 欧美超级视频97| 丁香五月精品视频| 婷婷五月丁香综合网| 五月亭亭狠狠| 色 免费网站视频| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 天天狠天天叉| 蜜臀九九九九| 五月丁香九九| 五月婷婷色五月| 中文字幕色色色| 色www.con| www色色色com| 国产三级秋霞| AV中文在线| 九九在线热九九在线热99热| 能看的av网站| 女性自慰系列第五页| W色综合| 国产精品久久..4399| 精品99爱免费视频在线观看 | 久色网五月| 五月天婷婷綜合院| 中文字幕人妻熟女在线| 99精彩视频| 日本熟女三区| 激情丁香五月AV| 国产亚洲99久久精品| 婷婷五月天在线观看免费| 国产亚洲在线| 婷婷新网址| 婷婷激情五月| 亚洲成人五月| 天天综合图片| 色色五月丁香婷婷| 97人人妻人人艹| 久久九九99| 婷婷综合精品视频97| 五月天激情综合网俺也去| 最熟少妇乱码| 五月天丁香| 亚洲五月天婷婷| 五月婷婷插一插| 亚洲九区| 亚洲色色五月| 丁香五月开心七月| 99免费成人网| 99超碰人人| 日逼AV影音先锋男人资源站| 91日本在线观看| 成人丁香婷婷| 色丁香久综合在线久综合在线观看| 超碰在线免费9| 丁香五月激情啪啪啪啪| 狠狠干狠狠干| 99亚州综合精品成人网| 囯产精品久久欠久久久久久九大| 丁香成人综合| 99热99网| 日韩成人无码人妻| 色开心五月婷婷丁香HD| 成人无码精品1区2区3区免费看| 丁香五月婷婷啪啪啪| 五月丁香六月婷婷色日| 五月花婷婷丁香| 日本婷婷网| 99在线er热| 91精品久久久久久| 婷婷久久综| 永久免费一区二区三区| 中文字幕人妻AV| 婷婷香蕉精品| 丰满少妇乱A片无码| 色五月五月婷婷| 婷婷五月天av| 欧洲亚洲免费视频9| 婷婷五月天影院| 五月天亚洲色| 激情五月丁香六月综合AVXXXX| 99色看| sewuyuejiqingwang| 久久ER视频com| 久久婷婷六月天| 天天色月| 天天 青草 制服丝袜 在线| 任你草| 色噜噜狠狠色综| 欧美久热| 丁香婷婷六月激情文学| 丁香五月天导航| 九九黄色网| 丁香婷婷人妻| 欧美大奶熟女噜噜噜噜| 激情五月黄色小说| 亚洲第一色色色色| 婷婷久久五月天亚洲欧美国产日韩在线观看| 99热九九这里只有精品| 五月色视频| 99热这里只有在线播放| 日日爽日日操| 激情综合网激情五月欧美| 五月丁香色婷婷基地| 国产精品婷婷午夜在线观看| 婷婷情色激情| 五月婷婷激情五月| 婷婷激情视频| 大香蕉啪啪网| 日日爽夜夜爽| 91919191919久久成人视频| 五月天婷婷Av| 婷婷丁香五月激情密臀av| 欧美五月婷婷| 99久热在线精品| 日本无va视频| 开心五月深爱五月丁香五月激情五月| 婷婷大香焦| 9 1大香蕉| 欧美日本国产欧美日本韩国99 | 99视频久久免费视频| 少妇人妻凹凸视频| 月婷婷婷婷五月| 思思热久久艹| 精品人妻伦九区久久AAA片| 碰超亚洲| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 色九月婷婷综合| 五月婷婷在线视频免费观看| 开心日韩丁香婷婷五月| 五月丁香五月婷婷在线观看| 久操人妻| 色噜噜婷婷| 丁香五月婷婷六月丁香| 亚洲色99| 国产黄大片在线观看画质优化| 天天色中文字幕女优AV| 精品人妻在线| 五月天激情综合网站| 永久地址 色| 夜夜资源站| 国外亚洲成AV人片在线观看| 亚洲色区17| 色婷婷丁香五月| 欧美成人精品老美女噜噜噜| 婷婷射综合| 欧美色男人网站| 亚洲秘 无码一区二区三区妃光/1| 天天插天天玩天天干| 激情五月婷在线精品| 日本操碰碰| 狠狠ri| 五月丁香啪啪啪综合网| 情涩婷婷五月天| 九九五月天| 婷婷激情六月中文| 先锋五月婷婷丁香草草| 互月天综合| 色激情五月| 久久99免费视频| 亚洲激情无码久久| 六月婷婷视频| av一级棒av| 五月婷婷色情| 99re思思热久久| 五月天丁香网| 国产精品国产| 丁香五月天五码婷婷| 影音先锋四区| 色综合色综合色综合| 国产永久一二一起草| 超碰99热精品| 色色五月天 亚洲| 五月婷婷丁香深深爱| 狠狠色噜噜狠狠| 亚洲av另类在线观看| 亚洲精品色色| 色婷六月| 97婷婷久久丁香| 五月久久噜噜| 日本久久网| 婷婷五月天中文字幕| 婷婷丁香综合| 超碰v| 国产67194| 九月色婷婷综合亚洲| 中文人妻主播久久| 欧美日韩999| 91丨九色丨老农村| 欧美啄木乌丝袜人妻系列| 国产精品18久久久| 色五月婷婷婷婷婷婷婷婷婷婷| 天天操综合网| 亚洲啪啪自拍| 丁香五月丁香伊人| 狠狠干综合| 日木狠狠干| 91色五月| 91精品久久久久久久久 | 99爱视频在线| 狠狠婷婷日韩| 丁香涩涩五月天| 中字幕视频在线永久在线观看免费 | 深爱五月中文字幕| 久久伊人大香蕉| 综合激情伊人影视在线| 婷婷五月丁香久久| 色综合丁香婷婷| 六月丁香啪啪啪| 91 九色 入口| 五月丁香婷婷基地| 99玖玖精品| 日本五月天婷婷丁香| www99精品亚| 天天干com| 婷婷六久久| 激情五月天激情综合网| 午夜成人av在线| 97韩国久久电影院| 超碰免费人人肏| 狠狠五月天婷婷激情网。| 九八Av| 九九热这里只有国产精品| 伊人香大香蕉视频| 五月天狠狠干| 久久9热综合| 免费播放片大片|