91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么深度學習是非參數的?

新機器視覺 ? 來源:Thomas Viehmann ? 2023-05-25 15:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天與大家分享的是深度神經網絡的工作方式,以及深度神經與“傳統”機器學習模型的不同之處。

具體如下:

首先簡單地思考一下如何將問題設置成分類的形式;

接下來回顧偏差-方差分解,并在偏差-方差權衡的背景下,在VC-維數和非參數上進行探討;

研究一些關于插值神經網絡和雙下降的文獻;

在文末做一個非常簡單的實驗,用圖形直觀地講解為什么雙下降現象會發生。

01 正式設置一個機器學習問題

為了有些趣味,讓我們先設置一個問題。 首先從數據開始。假設我們標記了數據,即是滿足Px,y分布的輸入數據x(比如圖片)和標簽y。

如此一來我們得到:

分布Px,y固定且未知。對于i = 1……N來說,可獲得樣本093179d8-faca-11ed-90ce-dac502259ad0.png,093dd002-faca-11ed-90ce-dac502259ad0.png。 ?

數學分析通常假設樣本是獨立的。

通常來說,我們需要假設標簽y和輸入x間有y=09487e9e-faca-11ed-90ce-dac502259ad0.png?的函數關系,即是說,標簽是精確的、沒有歧義的,但并非總是如此。 ?

我們想要“訓練”的是某些函數f:x?y ,或者說是更普遍地估計條件分布P(y∣x)。我們的候選函數來自于參數集F={fθ∣θ∈Θ},在這里θ代表參數。

為了達成目標,我們設定了損失函數(或風險函數),從概念上講,我們希望將預期損失09512cc4-faca-11ed-90ce-dac502259ad0.png最小化。 ?

第一次嘗試通常是將經驗風險或者經驗損失0957d9c0-faca-11ed-90ce-dac502259ad0.png最小化。如果我們的損失函數是負對數似然,將095d7ad8-faca-11ed-90ce-dac502259ad0.png最最小化就意味著計算最大相似估計。 ?

對偏差-方差分解和偏差-方差平衡的簡單介紹

對于最小二乘損失L=(f(x)?y)2(最基本的回歸估計量)來說,把預期損失分解成幾個部分是很容易的。其訣竅在于,我們需要意識到我們的訓練數據本身是一個從n次乘積分布096ef04c-faca-11ed-90ce-dac502259ad0.png中采得的隨機變量,且我們訓練的模型?f依賴于D,記作09790104-faca-11ed-90ce-dac502259ad0.png。通過巧妙地添加09812924-faca-11ed-90ce-dac502259ad0.png并利用??(x,y)?和D的獨立性, ? 我們可以將預測的期望平方誤差分解為:

0986a318-faca-11ed-90ce-dac502259ad0.png ?

最后一項噪音并不依賴于我們的模型。

現在為了得到我們預測的良好的預期平方誤差,我們必須注意到模型輸出的偏差

(第一項)和方差(第二項)的和很小。注意這里所有的項都是非負的。

針對二元分類器的預期精度,其實存在著類似但更復雜的分解,但其他損失函數通常很難分解,盡管我們可以想象那樣的模型選擇的工作也是類似的。

因為讓偏差/方差等于0或非常接近0都相對容易,這樣分解會讓我們在偏差和方差間做出權衡:通過使用D中每個數據點的樣本均值作為估計,偏差可以非常小,且能巧妙地給出正則性論證來假設函數是Lipschitz函數或至少是一致連續。這就是極端的過擬合。通過預測不依賴于D的函數,比如098b8edc-faca-11ed-90ce-dac502259ad0.png,我們可以讓方差為0,這樣則是極端的欠擬合。

請注意,均方誤差的偏差-方差分解是一個根據數學定理(或至少一個引理)成立的方程,所以是普遍適用的,不需要任何條件。

02 從僵化中解脫出來 帶來自由的結構

從某種程度上說,從上述極端情況轉向更溫和的條件也表明了我們在實踐中可以做些什么。

增加候選函數的集合

一種方法是,以一組非常嚴格的函數作為候選函數,然后有意義地擴大候選函數的空間,以獲得(假設是嵌套的)序列F0?F1?…. 關鍵想法是,進一步研究可以讓模型更好地適應數據,而我們則須知道何時停止這種深入。

Vapnik和Chervonenkis 的結構風險最小化原理就是這么做的,盡管該原理沒有使用偏差-方差分解,而是使用了預期損失(風險)與D上的觀察損失(經驗風險)的邊界,和一個依賴于訓練數據集大小N 和函數集099f8dba-faca-11ed-90ce-dac502259ad0.png的大小或其VC維的項。此處的典型情況是,一個人想要N≥VC-dim個樣本,卻可能有N≤20VC-dim個樣本。但請注意,這里參數的數量不是標準的一部分(但可能會影響VC維)。 ?

最后,傳統標準比如赤池信息量準則嘗試告訴你應該“投資”多少參數來達到低的負對數可能性。但是Bishop在其引言中發現,這些方法并不是很有效。

非參數估計:正則化

經典的非參數估計從另一個極端開始。如果我們取某個函數空間,如在09a89df6-faca-11ed-90ce-dac502259ad0.png里有弱導數的索伯列夫函數空間09b0cc4c-faca-11ed-90ce-dac502259ad0.png?(無論采用何種測度,是x的分布抑或是包含輸入的09b8a6b0-faca-11ed-90ce-dac502259ad0.png的勒貝格測度),我們可以匹配任意有限樣本D上每一點的樣本均值,從而可以獲得0點態偏差, 但是最小化經驗風險是病態的,有無限多的解。 ?

接下來要做的就是正則化。最著名的例子可能是增加一個規范項從而導致Tikhonov正則化,所以我們的損失看起來會是這樣: 09bdde82-faca-11ed-90ce-dac502259ad0.png ?

如果我們從偏差-方差的角度來看,我們能夠平衡偏差(當λ→0沒有偏差,但會導致病態)與方差(當λ→∞,我們處于09cf65e4-faca-11ed-90ce-dac502259ad0.png。我們并不想讓方差為0,因為我們的正則化項僅僅是一個半范數)。當然了,Grace Wahba有關正則化回歸的研究尤其與保持偏差-方差間的良好平衡相關,特別是與如何尋找到一個合適的λ值相關。 ?

通過觀察給定的λ,09d7065a-faca-11ed-90ce-dac502259ad0.png的極小值09dcc536-faca-11ed-90ce-dac502259ad0.png會有半范數值09e18b34-faca-11ed-90ce-dac502259ad0.png,該值必然能在09e5e1de-faca-11ed-90ce-dac502259ad0.png中將經驗最小二乘損失(第一項) 最小化,就可以將前一節中的ansatz函數與嵌套空間Fi聯系起來。因此來自遞增權重序列09fe9008-faca-11ed-90ce-dac502259ad0.png的遞減范數序列0a03dfb8-faca-11ed-90ce-dac502259ad0.png就給到了我們嵌套的Ansatz空間。 ? 許多流行的正則回歸方法(例如Lasso)適合這種類型的框架。 ?

贊美VC界

讓我們講回VC 界,正式一點以便增強直覺。關鍵的概率界限是為了準確性(或者說0-1的風險)。

0a098df0-faca-11ed-90ce-dac502259ad0.png ?

我們來分析一下。外面部分稱“概率大于等于1?η”(我們還得更精確一點),此處我們覺得概率η太小了,這意味著我們所有的只是一個概率界限,而不是一個“幾乎肯定”的保證。

內部的部分基本上是說,在全概率分布上的精度非常接近于在訓練集上的精度,也就是說在N變得非常大的時候,我們有一個差值趨于零的精確邊界。

從表面上看,這告訴了我們關于風險或準確性的信息,但是關于模型又說明了什么呢? 在我看來,關鍵的信息是,我們的模型是如此嚴格,以至于我們可以看到測試集上發生的一切(或者更精確地說,在完整的Px,y分布上發生的一切)已經在訓練集中發生了。

貝葉斯放一邊

在貝葉斯環境下,正則化可以被解釋為最大后驗(MAP)估計,或者——如果我們經歷了定義先驗的麻煩——我們也可以對所有f∈F的估計進行積分。

03 這告訴了我們 深度學習的什么?

當我們將model.parameters()(這里我用的是PyTorch)傳遞給優化器時,深度學習看起來好像是參數化的。但其實它不是! 看起來這種正則化方法正是深度學習運作的理論框架——有時人們對此知之甚少。我們的模型足夠大,從“道德上看來”足以成為非參數,盡管我們還沒有完全理解,但我們所做的大多數事情(比如augmentation, norm layers和 dropout)其實都是正則化。

這也是M. Belkin等人所寫的《協調現代機器學習實踐和偏差-方差權衡》(Reconciling modern machine learning practice and the bias-variance trade-off)的主題和他們早期研究的主題,即泛化性能的關鍵是由某個特定函數空間范數衡量的函數的規律性或平滑性。

我們有必要仔細看看M. Belkin等人(我認為這是首次)對雙下降現象的描述:

0a15028e-faca-11ed-90ce-dac502259ad0.png ?

這里有幾點需要注意:

M. Belkin等人把條件中的“傳統(classical)”和“現代(modern)”等限定詞用引號括了起來。“現代”條件是一種十分之非參數的學習,具有一種我們還需要更加深入理解的正則化。

在多參數的條件下,偏差-方差思維似乎仍然是完全適用的,但非參數回歸可能是比“限制容量”的候選集更好的參考框架。

對于雙重下降現象的普遍理解似乎都是基于P. Nakkiran等人的文章:《雙重下降》(Deep Double Descent),這證明了這篇論文的優秀,也證明了OpenAI能夠將這些選題推介給更廣泛的受眾。

他們用更真實的網絡進行了系統的實驗(M. Belkin等人則引用了更淺層的網絡)。對我來說,一個重要的結論是,雙重下降現象在標簽損壞的兩種實驗條件中存在“凹凸”,他們的報告稱,在標簽干凈的實驗中,所得到的結果則要平緩得多,沒有那么“凹凸”。

他們給出了一張圖,這張圖顯示了對于固定次數的epoch,用損壞標簽將一個修改過的ResNet18訓練成CIFAR10這個過程中的測試錯誤。修改是指信道數量降到原數量的k分之一(k在64到1這個范圍)(意思是他們會從原ResNet18的64分之一開始做實驗,逐漸增加,最后達到原數量)。

標簽損壞發生在數據集中(在某一次epoch,而不是每個epoch中),15%的標簽被切換到一個隨機錯誤的類。這被解釋為一種概略的誤設。

0a1dd45e-faca-11ed-90ce-dac502259ad0.png

04 VC理論對于用噪聲標簽 擬合模型有什么啟示?

通過上面的討論,我們了解到當一個模型處于VC界有用的限定條件中(比如當小模型處于“傳統”條件中),如果訓練數據 D來自與原始數據相同的分布 Px,y,測試集的測試精度(很可能)接近訓練精度。

換句話說,這個條件意味著我們假設Px,y有相同的損壞程度(和損壞種類)。但這意味著如果模型學習了,且學會了不被損壞的訓練數據分散太多注意力,也就是說,在訓練數據上,正確標簽會擠出損壞標簽。

05 特征和學習

讓對深度學習的直覺化變得困難的原因之一是Ansatz領域的自適應特性。我這么說的意思是,我們沒有一個固定的特征提取器(由手動構造,并由核機中使用的核家族給出)將學習應用到特征上。

通常,我們將最后一層的輸入視為特征(通過word2vet式損失、原型網絡、基準無監督學習等方式學習的向量表示方法),或者我們可能在MLP分類器頭之前的卷積層末尾分割卷積網絡。

傳統的做法是將學習后的分類器放在固定的特征提取器上,E. Hoffer等人的想法卻相反,他們甚至建議對分類器進行固定,即只對特征提取器進行訓練。

因此,我們可能會試圖通過假裝提取特征來簡化我們的直覺。在P. Nakkiran等人的標題圖片實驗中,當使用t-SNE等降維機制將通過無噪聲數據學習到的特征可視化時,添加標簽噪聲相當于在每個類對應的點的blob上添加噪聲。

考慮到這一點,我們可以進行一個類似的實驗,這個實驗甚至比M. Belkin等人的人工數據實驗更簡單,那就是:理解深度學習。

06 對標簽噪聲、容量、 雙下降和實驗測試誤差的直覺

0a521188-faca-11ed-90ce-dac502259ad0.png

撇開統計數據不談:下文推測了一些可能發生的情況,通過想象我們可以在原型網絡中得到與P. Nakkiran等人圖中所描述的相同的現象,且容量由我們所能擁有的原型數量來表示:

在最左邊width(參數)值1到5附近,我們的原型比類少,模型擬合程度不高(欠擬合),因為模型不能代表所有的類。

在width5附近,我們有10個(或者適當地更多)原形,但是,在每一個原型的訓練中損壞標簽都被擠出了,所以這些損壞標簽沒有發揮作用。

在width5到10這個范圍,原型收集損壞的標簽。由于每個原型都有一個用在推斷階段的“影響范圍”,所以存在一個相當大的空間,在這個空間中損壞原型與測試是非常相關的。

在width10以外的范圍,我們增加了更多的原形。原型之間變得更近,在推斷階段中損壞的標簽原型也被“擠出”,因此它們的“影響范圍”就會變得更小(因為比起擁有3個損壞原形,同一個類擁有5個非損壞原型中的3個的概率更大)。

這對偏差-方差分解意味著什么?

回想一下,分解在空間上是逐點的,并像之前一樣要對各種訓練數據集進行方差和偏差處理。假設你只有兩個類,那么預測和標簽要么是0要么是1。

接下來原型收集已損壞的標簽,就會產生偏差(因為你將以某種概率預測錯誤的事情)和方差(因為糟糕預測的區域取決于哪些標簽已損壞,也就是取決于我們在哪個數據集D上繪制),并使錯誤預測的區域更小,從而減少方差和偏差。 在這種直覺中,早期停止的作用是檢測模型何時開始收集已損壞的標簽。

所以看起來現代神經網絡本質上是非參數的,其工作方式依賴于各種正則化。為了使用M. Belkin等人的公式,我們希望更加了解,我們對于各種技術如何對某些函數空間范數作用的理解到了什么程度。似乎很難得出“傳統”統計數據表明現代學習不起作用的結論。

Hastie等人的《高維無脊最小二乘插值中的驚喜》(Surprises in High-Dimensional Ridgeless Least Squares Interpolation)一文將最小二乘作為模型問題,提供了非常全面的分析,這也可能為深度學習現象提供直覺。

在插值條件中擠出錯誤標記的數據

我們可以做一個非常簡單的插值條件的模擬。我們來思考一個由2d標準單位法線提取并沿著水平軸移動±2的點的二分類問題,并從每個類別的分配中抽取25%的點。

為了得到一個插值條件,我們使用一個具有明顯峰值的核。為了有一個易分析處理的質量并將其標準化為1,我們使用核:

0a5853d6-faca-11ed-90ce-dac502259ad0.png ?

這個核有單位質量,在x=0時趨于無窮,且從原點衰減:

0a603358-faca-11ed-90ce-dac502259ad0.png ?

這意味著,如果我們將每一類的密度表示為樣本0a66bdb8-faca-11ed-90ce-dac502259ad0.png處核的均值,即:

0a6cd162-faca-11ed-90ce-dac502259ad0.png ?

假設不同類別的點不重合(幾乎肯定如此),我們可以根據0a8289ee-faca-11ed-90ce-dac502259ad0.png更大的點對每個點進行分類,或者說,如果我們想通過標準化每個點的概率密度來獲取概率:

0a885464-faca-11ed-90ce-dac502259ad0.png ?

這給了我們一個插值解——在每個訓練點,標簽類有無限密度,所以它被歸類為屬于這個類。

那么標簽錯誤發生了什么呢? 標簽錯誤會導致損壞的訓練點附近的某些區域被分配給錯誤的類。然而,附近正確類的點越多,錯誤分類的區域就越小。我們可以交互地嘗試。隨著點數的增加,測試誤差會減少。

0a8ec844-faca-11ed-90ce-dac502259ad0.png ?

這意味著什么呢? 這說明對于插值解,在測試時間內,良好的訓練點會擠出標記糟糕的點。

對抗示例

但是,隨著數據的增加,當壞分類的區域和被隨機抽樣的數據點擊中的概率減小時,隨機抽樣點到下一個壞樣本的距離也減小了。這意味著除了利用模型的不良連續性(即輸入的小變化會導致提取的特征發生大的變化),插值條件也能使對抗例子更容易產生,因為我們只需要特征的小變化。

特征噪聲類似于標簽噪聲

但是,雙重下降不是也發生在沒有損壞標簽的情況下嗎? 我們“僅僅”需要格外小心地處理我們的訓練數據嗎? 好吧,沒這么簡單。高維特征在本質上可能比低維特征噪聲更多:想象一下在高維空間(比如d)中有一個兩類線性分類。我們有了有向量0a99fe94-faca-11ed-90ce-dac502259ad0.png和偏差0aa0d2d2-faca-11ed-90ce-dac502259ad0.png的分類器。給定輸入0ab20494-faca-11ed-90ce-dac502259ad0.png,當x?v+b≥0時,類為1;否則,類為0。 ?

如果我們預先知道輸入是有界的,我們可以找到類原型0ab70778-faca-11ed-90ce-dac502259ad0.png,并使用距離0abdabaa-faca-11ed-90ce-dac502259ad0.png進行分類。但隨后的線性分類器的d?1維零空間(null-space)中的向量,比如我們可以添加到輸入中而不改變結果的向量空間0ac4ead2-faca-11ed-90ce-dac502259ad0.png,可能對這個距離有很大幫助,從而使得0ad18dbe-faca-11ed-90ce-dac502259ad0.png成為對更相關的投影距離0ae2c318-faca-11ed-90ce-dac502259ad0.png的一個噪聲估計。 ? ?

如果我們想保持在二維空間,我們可以放大噪聲維度。這就將我們引入第二個實驗。我們來繪制獨立的隨機二維點,其在“特征維度”中的標準偏差為0.5,在“噪聲維度”中的標準偏差為5。這兩個類用±1分開。

我們使用EM算法來將每個維度的標準偏差為1的K高斯函數的混合值擬合到每個類中。通過比較兩個擬合密度進行分類。我們使用5000個訓練點和1000個測試點

0aebda34-faca-11ed-90ce-dac502259ad0.png ?

如果我們以不同的K值運行200次,并記錄其準確性,我們可以看到雙重下降中的凹凸:

0af3267c-faca-11ed-90ce-dac502259ad0.png ?

關于這些實驗的一個問題是:誤差分布是傾斜的:我們得到的很多測試誤差在2-3左右出現,可誤差在10左右還出現了一個尾巴。這條差擬合的曲線尾部的質量隨分量K的數量而變化,似乎是造成中間K的平均誤差出現凹凸的主要原因。

07結論

綜上,我們學到了什么呢?

在我看來,噪音需要在推斷階段而不是在訓練階段擠出特征,由此我們看出深度學習模型的本質是非參數的。這與KDE實驗非常接近。

即使我們有很好的標簽,深度學習中的高特征維度會導致特征中的噪音,而這些噪音的行為與標簽中的噪音類似。





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 神經網絡
    +關注

    關注

    42

    文章

    4814

    瀏覽量

    103715
  • 機器學習
    +關注

    關注

    66

    文章

    8505

    瀏覽量

    134677

原文標題:技術干貨 | 為什么深度學習是非參數的?

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    深度學習與數據挖掘的關系

    ;而深度學習使用獨立的層、連接,還有數據傳播方向,比如最近大火的卷積神經網絡是第一個真正多層結構學習算法,它利用空間相對關系減少參數數目以提高訓練性能,讓機器認知過程逐層進行,逐步抽象
    發表于 07-04 16:07

    什么是深度學習?使用FPGA進行深度學習的好處?

    頻率低于 CPU 和 GPU,除非設計實現,否則性能往往較差。與 CPU 和 GPU 相比實施成本高,FPGA 上支持深度學習的軟件較少很多DNN參數量大,很難在FPGA上簡單實現需要高數據精度
    發表于 02-17 16:56

    參數優化是深度學習中的重要組成部分

    參數優化是深度學習中的重要組成部分。其原因在于,神經網絡是公認的難以配置,而又有很多參數需要設置。最重要的是,個別模型的訓練非常緩慢。 在這篇文章中,你會了解到如何使用scikit-
    發表于 09-30 16:22 ?2次下載

    機器學習深度學習的區別和使用情況以及用例的對比

    如今,人工智能的應用越來越廣泛。機器學習深度學習這兩個術語也隨之出現,而機器學習深度學習并不
    的頭像 發表于 01-18 16:23 ?6160次閱讀

    深度學習是什么?了解深度學習難嗎?讓你快速了解深度學習的視頻講解

    深度學習是什么?了解深度學習難嗎?讓你快速了解深度學習的視頻講解本文檔視頻讓你4分鐘快速了解
    發表于 08-23 14:36 ?16次下載

    深度學習的基礎理論,深度學習為何work又為何不work?

    深度學習的泛化能力為什么那么好?大家知道深度學習理論的第一個謎團就是一個大的網絡動輒百萬參數, 而能夠泛化的如此之好, 這
    的頭像 發表于 02-15 16:47 ?6200次閱讀

    深度學習領域的人工智能或將是非法的

    現在,每一個人不是在學習深度學習,就是在準備開始學習深度學習的路上。這個人工智能領域快速火了起來
    的頭像 發表于 03-03 09:10 ?3062次閱讀

    深度學習和普通機器學習的區別

    本質上,深度學習提供了一套技術和算法,這些技術和算法可以幫助我們對深層神經網絡結構進行參數化——人工神經網絡中有很多隱含層數和參數深度
    的頭像 發表于 06-08 14:44 ?4734次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學習</b>和普通機器<b class='flag-5'>學習</b>的區別

    如何使用FPGA加速深度學習計算?

    當今的深度學習應用如此廣泛,它們能夠為醫療保健、金融、交通、軍事等各行各業提供支持,但是大規模的深度學習計算對于傳統的中央處理器(CPU)和圖形處理器(GPU)來說
    的頭像 發表于 03-09 09:35 ?3129次閱讀

    什么是深度學習算法?深度學習算法的應用

    什么是深度學習算法?深度學習算法的應用 深度學習算法被認為是人工智能的核心,它是一種模仿人類大腦
    的頭像 發表于 08-17 16:03 ?2660次閱讀

    深度學習框架pytorch入門與實踐

    深度學習框架pytorch入門與實踐 深度學習是機器學習中的一個分支,它使用多層神經網絡對大量數據進行
    的頭像 發表于 08-17 16:03 ?1955次閱讀

    深度學習框架是什么?深度學習框架有哪些?

    深度學習框架是什么?深度學習框架有哪些?? 深度學習框架是一種軟件工具,它可以幫助開發者輕松快速
    的頭像 發表于 08-17 16:03 ?3491次閱讀

    深度學習算法的選擇建議

    深度學習算法的選擇建議 隨著深度學習技術的普及,越來越多的開發者將它應用于各種領域,包括圖像識別、自然語言處理、聲音識別等等。對于剛開始學習
    的頭像 發表于 08-17 16:11 ?1034次閱讀

    深度學習cntk框架介紹

    ,CNTK框架是非常重要的一部分。本篇文章將介紹CNTK框架的概覽、起源、結構以及應用等內容,更深入了解CNTK框架。 一、CNTK框架的概述 CNTK(Microsoft Cognitive Toolkit)框架是微軟公司開發的一個深度
    的頭像 發表于 08-17 16:11 ?1851次閱讀

    深度學習框架和深度學習算法教程

    深度學習框架和深度學習算法教程 深度學習是機器學習
    的頭像 發表于 08-17 16:11 ?1476次閱讀
    主站蜘蛛池模板: 99午夜高清在线视频在观看 | 国产吧在线视频 | 美女张开大腿让男人捅 | 欧美.亚洲.日本一区二区三区 | 欧美人与zoxxxx另类 | 久久久久无码国产精品一区 | 色婷婷色99国产综合精品 | 欧美呜巴又大粗又长 | 在线亚洲精品中文字幕美乳 | 欧美一级二级三级视频 | 色极影院 | 国产一级真人毛爱做毛片 | 视频一区 日韩 | 激情综合激情 | 玖玖在线 | 狠狠色依依成人婷婷九月 | 国产亚洲高清在线精品不卡 | 日日干狠狠干 | 停停五月天| 免费一区二区三区 | 久久这里只精品热在线8 | 医生好大好硬好爽好紧 | 亚洲欧洲一区二区三区在线观看 | 日本成本人三级在线观看2018 | 亚洲深爱 | 久久免费精品国产72精品剧情 | 性色在线视频精品 | 亚洲 欧美 精品 | 中国免费黄色片 | 37pao强力打造免费高速高清 | 亚洲阿v天堂2018在线观看 | 日韩高清成人毛片不卡 | 国产性夜夜春夜夜爽 | 久久精品re | 韩日一级毛片 | 天堂网ww | a看片| 日本黄色片免费看 | 四虎影院观看视频 | 久久精品国产免费看久久精品 | 九九九色 |