亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于梯度的優(yōu)化算法研究

        2019-07-25 08:03:16常永虎李虎陽(yáng)
        現(xiàn)代計(jì)算機(jī) 2019年17期
        關(guān)鍵詞:優(yōu)化方法模型

        常永虎,李虎陽(yáng)

        (遵義醫(yī)科大學(xué)醫(yī)學(xué)信息工程學(xué)院,遵義563000)

        0 引言

        以往建立一個(gè)機(jī)器學(xué)習(xí)模型需要清洗數(shù)據(jù)、找特征、構(gòu)建模型并訓(xùn)練和應(yīng)用模型四個(gè)階段。在這個(gè)過程當(dāng)中,時(shí)間成本最高的環(huán)節(jié)是找特征。深度學(xué)習(xí)由于能夠自動(dòng)找特征,從而降低模型建立的人工時(shí)間成本而變得流行,它使工程師只需經(jīng)歷清洗數(shù)據(jù)、構(gòu)建模型、訓(xùn)練和應(yīng)用模型三個(gè)階段就可以完成一個(gè)任務(wù)。但不管機(jī)器學(xué)習(xí)算法還是深度學(xué)習(xí)算法,都需經(jīng)歷訓(xùn)練模型階段。此階段是計(jì)算復(fù)雜度最高的階段,甚至用幾百臺(tái)機(jī)器投入幾天到幾個(gè)月來解決模型訓(xùn)練問題也是很常見的。一個(gè)好的模型訓(xùn)練算法通??梢越档湍P陀?xùn)練的計(jì)算復(fù)雜度,也可以提高模型的精確度,使模型達(dá)到最優(yōu)結(jié)果。在此過程中使用到的算法通常叫做優(yōu)化算法,梯度下降類算法作為最流行的優(yōu)化算法之一,目前是神經(jīng)網(wǎng)絡(luò)問題中最常用的優(yōu)化算法。

        機(jī)器學(xué)習(xí)類算法研究的熱潮不斷高漲,各類開源機(jī)器學(xué)習(xí)框架也層出不窮,其中包括Karas、Tensor-Flow、Caffe、MXNet、pandas、scipy 等。雖然這些框架中都已經(jīng)集成了常用的梯度下降類算法,但不同的梯度下降算法在不同的模型訓(xùn)練中會(huì)表現(xiàn)出不同的性能,也不是最先進(jìn)的梯度下降類算法在所有的模型中都表現(xiàn)最優(yōu)。因此,本文的目的是通過對(duì)比梯度下降類算法在不同模型中的表現(xiàn),為讀者直觀地呈現(xiàn)不同梯度下降類算法的效果,從而幫助讀者在實(shí)際模型訓(xùn)練過程中選擇更合適的梯度下降類算法

        1 梯度下降類算法

        在微積分中,對(duì)多元函數(shù)的參數(shù)求解偏導(dǎo)數(shù),然后以向量的形式將各個(gè)參數(shù)的偏導(dǎo)數(shù)寫出來就是梯度。如函數(shù)f(x,y),分別對(duì)x 和y 求偏導(dǎo)數(shù),求得的偏導(dǎo)數(shù)組成的向量是(?f/?x,?f/?y)就是梯度。梯度下降算法是求解無約束優(yōu)化問題的最簡(jiǎn)單、最經(jīng)典的方法之一。它的目的是找到目標(biāo)函數(shù)J(θ)取極小值點(diǎn)時(shí)的θ值,其中參數(shù)θ屬于Rn空間。它的基本思想是沿著J(θ)的梯度反方向不斷的更新θ,并設(shè)置一個(gè)學(xué)習(xí)率η決定其每次更新的步長(zhǎng)直到J(θ)的結(jié)果足夠小。以此來達(dá)到最小化目標(biāo)函數(shù)的目的。

        最原始的梯度下降法叫做批梯度下降法,此方法的基本思路是每次都在整個(gè)數(shù)據(jù)集上計(jì)算損失函數(shù)關(guān)于θ的梯度。然后不斷重復(fù)計(jì)算公式(1),直到梯度接近于0。

        此方法是最初的梯度下降算法,通過此方法,可以使計(jì)算機(jī)通過迭代計(jì)算,求解任意具有一階導(dǎo)數(shù)的極值。但也有三類主要問題[1]。第一類問題是計(jì)算效率問題,主要表現(xiàn)有兩點(diǎn):①這種方法每更新一次,就需要在整個(gè)數(shù)據(jù)集上計(jì)算一次梯度。當(dāng)數(shù)據(jù)量非常大的時(shí)候,整個(gè)算法的就會(huì)非常慢且特別吃內(nèi)存。②每次更新的步長(zhǎng)是一個(gè)超參數(shù)。當(dāng)更新步長(zhǎng)太大時(shí),算法效果出現(xiàn)抖動(dòng),通常無法收斂到最佳效果。當(dāng)更新步長(zhǎng)太小時(shí),算法收斂速度較慢且容易陷入局部最小值。第二類問題是梯度計(jì)算問題:主要表現(xiàn)在神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中。由于神經(jīng)網(wǎng)絡(luò)特征較多導(dǎo)致目標(biāo)函數(shù)有時(shí)是一個(gè)非凸的函數(shù),此時(shí)很難避免參數(shù)被困在極小值附近。這類情況常常導(dǎo)致梯度接近于零,所以普通梯度下降法很難從中逃脫。因此,無法收斂到全局最小值。第三類問題是:梯度下降法中的學(xué)習(xí)率η是一個(gè)固定值,常常很難確定η的取值。具體表現(xiàn)為:①如圖1 所示:過小的學(xué)習(xí)率導(dǎo)致目標(biāo)函數(shù)收斂緩慢,而過大的學(xué)習(xí)率會(huì)導(dǎo)致目標(biāo)函數(shù)在其極小值附近劇烈震蕩。②由于所有參數(shù)都使用相同的學(xué)習(xí)率,導(dǎo)致數(shù)據(jù)中出現(xiàn)頻率低的特征常常無法達(dá)到最優(yōu)效果。針對(duì)梯度下降算法這些問題,圖1 總結(jié)了相應(yīng)的三類改進(jìn)策略及相應(yīng)算法。

        圖1 不同學(xué)習(xí)率收斂震蕩對(duì)比圖

        1.1 改進(jìn)算法計(jì)算效率

        在樣本量極大的時(shí)候,對(duì)大量相似樣本計(jì)算其梯度是沒必要的。因此,這部分主要通過調(diào)整每次迭代計(jì)算的樣本量提高計(jì)算效率。

        (1)批梯度下降法

        此算法先將所有樣本隨機(jī)排序,然后將樣本分組,每次計(jì)算只對(duì)其中一組數(shù)據(jù)做優(yōu)化計(jì)算,當(dāng)所有樣本都計(jì)算一遍后再重新分組重新計(jì)算。若樣本被分成N組,則此方法在所有樣本都計(jì)算完一遍后就進(jìn)行了N次梯度優(yōu)化,而原始梯度下降法只能優(yōu)化一次。因此提高了算法效率[2]。

        (2)隨機(jī)梯度下降法

        隨機(jī)梯度下降法簡(jiǎn)稱SGD(Stochastic Gradient Descent)[3]。SGD 在批梯度下降法的思想上更進(jìn)一步,它將批梯度下降法的每批數(shù)據(jù)量降到1,即每次梯度更新只用一個(gè)樣本。如圖2 所示。這種方法加快了收斂速度但同時(shí)由于頻繁更新參數(shù)導(dǎo)致目標(biāo)函數(shù)在劇烈震蕩中逐步下降。

        圖2 SGC收斂波動(dòng)(來源:Wikipedia)

        綜上所述,批梯度下降法和隨機(jī)梯度下降算法具有相同的優(yōu)化思路,即都取訓(xùn)練樣本的一個(gè)子集。因此,算法的好壞主要取決于子集的大小。通常,根據(jù)不同的應(yīng)用場(chǎng)景,小批量的大小取50 到256 較為合適。

        1.2 優(yōu)化梯度計(jì)算方法

        由于本文主要討論深度學(xué)習(xí)中常用的優(yōu)化的梯度類算法,所以在此不再討論那些不適用于高維數(shù)據(jù)的方法,如類似于牛頓法的二階算法。

        (1)動(dòng)量法

        牛頓法[4]將目標(biāo)函數(shù)比作高低不平的地面或山坡,把優(yōu)化過程比作小球滾下坡的過程。這種方法主要應(yīng)對(duì)那些類似于峽谷形狀的函數(shù),可以避免其在峽谷兩邊震蕩而下降緩慢。動(dòng)量法是在更新向量(梯度向量)之前增加前一次的更新向量,從而在他們相同的方向上累加速度,在不同的方向上減小速度,以此減小震蕩,加快收斂速度。

        其中:vt表示第t 次的下降動(dòng)量,vt-1表示t-1 次的下降動(dòng)量。γ為下降動(dòng)量的衰減值,通常取0.9。θ 表示要更新的向量。?θJ(θt)表示第t 次更新時(shí)的梯度值,η 表示學(xué)習(xí)速率。

        這種方法能夠明顯加速SGD 的學(xué)習(xí)速率并且可以減小SGD 無謂的震蕩,但在下降到極值點(diǎn)附近的時(shí)候由于速度過快而無法及時(shí)停止。

        (2)NAG 法

        NAG[6]的全稱是Nesterov Accelerated Gradient。此方法主要為了解決動(dòng)量法無法及時(shí)停止的問題。NAG認(rèn)為在t 次更新中會(huì)用到動(dòng)量項(xiàng)γvt-1,所以θ-Vt-1就是參數(shù)向量下一個(gè)位置。所以,我們與其在當(dāng)前位置計(jì)算梯度還不如在當(dāng)前位置的下一個(gè)位置計(jì)算梯度。這樣既沒有增加計(jì)算量,又可以讓參數(shù)及時(shí)的根據(jù)梯度修正下降誤差。

        公式中各符號(hào)含義與上文相同。從公式可以看出,NAG 法與動(dòng)量法的區(qū)別只在于計(jì)算梯度的位置不同。動(dòng)量項(xiàng)γ的參考值也是在0.9 附近取值效果最好。

        圖3 SGD、動(dòng)量法和NAG下降對(duì)比

        圖3 展示了不同梯度下降法在sixhump 函數(shù)中的收斂過程。左圖為SGD 收斂路徑圖,中圖為動(dòng)量法收斂路徑圖,右圖為NAG 收斂路徑圖。圖中的每個(gè)藍(lán)點(diǎn)代表每次梯度計(jì)算后下降的位置。所以,點(diǎn)越稠密表示下降速度越慢;點(diǎn)越稀疏表示下降速度越快。通過對(duì)比可看出,SGD 算法每次下降的點(diǎn)與相鄰點(diǎn)距離是固定的且非常近,NAG 和動(dòng)量法都有一段加速區(qū)域和震蕩區(qū)域,但NAG 的震蕩明顯比動(dòng)量法弱。

        1.3 學(xué)習(xí)率調(diào)整優(yōu)化算法

        學(xué)習(xí)率對(duì)于梯度類優(yōu)化算法非常重要。尤其在稀疏性很強(qiáng)的數(shù)據(jù)集中,一個(gè)好的學(xué)習(xí)率調(diào)整算法不但能夠使目標(biāo)函數(shù)更快地找到極小值,而且可以優(yōu)化出更精確的目標(biāo)函數(shù)。

        (1)AdaGrad 方法

        AdaGrad[7]能夠根據(jù)參數(shù)的重要性調(diào)整學(xué)習(xí)率。它能夠根據(jù)參數(shù)更新的平凡程度自動(dòng)調(diào)整學(xué)習(xí)率。所以它非常適合稀疏性很強(qiáng)的數(shù)據(jù)集。Dean 等人[8]使用AdaGrad 實(shí)現(xiàn)了YouTube 中貓的識(shí)別算法。Pennington 等人[9]使用AdaGrad 算法對(duì)GloVe 詞嵌入網(wǎng)絡(luò)進(jìn)行訓(xùn)練并最終使不常出現(xiàn)的詞語得到了和經(jīng)常出現(xiàn)的詞語近似的學(xué)習(xí)率。這種方法在每次更新參數(shù)的同時(shí)更新學(xué)習(xí)率。更新方法如公式(6)。

        公式(6)主要增加Gt,Gt表示前t 次更名梯度的平方和。通過增加這一項(xiàng),參數(shù)隨著更新頻率和更新幅度的大小逐漸變小而不影響稀疏屬性的更新。除此之外,AdaGrad 的另外一個(gè)優(yōu)點(diǎn)是不需要手動(dòng)調(diào)整學(xué)習(xí)率,一般直接使用就可以。同時(shí),也注意到公式的分母部分只增不減,使整個(gè)學(xué)習(xí)率隨之越來越小直到無限小。

        (2)AdaDelta 方法

        AdaDelta[10]方法是AdaGrad 方法的改進(jìn),主要解決了AdaGrad 方法單調(diào)遞減學(xué)習(xí)率的問題。AdaDelta 方法采用指數(shù)衰減移動(dòng)平均的方式來取代AdaGrad 里面將以往全部梯度值都平等納入平方和的做法。它將上面Gt 的計(jì)算方法替換成如下方法:

        通過對(duì)比可以發(fā)現(xiàn),只要將公式中E[g2]t替換成Gt,AdaDelta 方法就會(huì)回退到AdaGrad 方法。這里的γ建議取0.9,而默認(rèn)的學(xué)習(xí)率為0.001。

        (3)Adam 方法

        Adam(Adaptive moment Estimation)[11]是另一種針對(duì)調(diào)整學(xué)習(xí)率的方法。這種方法不但像AdaDelta 一樣通過收集歷史梯度值逐步衰減學(xué)習(xí)率,還能像動(dòng)量法一樣記錄梯度本身的指數(shù)衰減值。

        其中,mt和vt分別是梯度的一階和二階矩估計(jì)。

        Adam 的更新規(guī)則是:

        Adam 作者提出β1、β2和ε 的取值分別是0.9、0.999 和10-8。它的實(shí)驗(yàn)結(jié)果表明Adam 的實(shí)際收斂效果更好且對(duì)學(xué)習(xí)率的調(diào)整表現(xiàn)更好。

        2 算法比較

        前一節(jié)提到了三類算法,這些算法在各自不同的角度表現(xiàn)出優(yōu)秀的效果。在模型訓(xùn)練過程中,影響其訓(xùn)練效果的主要是一些局部極值點(diǎn)。在高維模型中,這種局部極值點(diǎn)更多,各個(gè)特征值就可能會(huì)有更復(fù)雜的分布。一種最難處理的分布是所有維度都處于極值點(diǎn),但一些處于極大值,另一些處于極小值,這種點(diǎn)被稱作鞍點(diǎn)。那么在實(shí)際模型訓(xùn)練任務(wù)中,各個(gè)算法的在鞍點(diǎn)[12]附近的表現(xiàn)如何?

        圖4 梯度類下降算法在按點(diǎn)附近的表現(xiàn)

        從圖4 可以發(fā)現(xiàn)AdaDelta 首先擺脫鞍點(diǎn)并快速下降,Rmsprop 次之。而SGD 可緩慢擺脫鞍點(diǎn),動(dòng)量法處于RmsProp 和SGD 之間。究其原因,主要是AdaDelta方法不會(huì)出現(xiàn)擾動(dòng),能最先逃出鞍點(diǎn),SGD 方法在原始梯度下降法基礎(chǔ)上增加了隨機(jī)性,所以可以逃出鞍點(diǎn),動(dòng)量法由于保留了之前的優(yōu)化速率和方向,所以在最初出現(xiàn)震蕩區(qū)域而導(dǎo)致優(yōu)化速度比較慢,但逃離鞍點(diǎn)后優(yōu)化速度越來越快。

        如果輸入的數(shù)據(jù)有稀疏性,動(dòng)態(tài)調(diào)整學(xué)習(xí)率的算法會(huì)比較好,因?yàn)槭褂谜卟恍枰{(diào)整學(xué)習(xí)率,直接使用默認(rèn)學(xué)習(xí)率就可以達(dá)到較好效果。但也有一些研究成果僅僅使用原始梯度下降算法就可以找到極小值。如果使用者關(guān)心算法的收斂速度或者訓(xùn)練的是一個(gè)參數(shù)較多或隱層較深的網(wǎng)絡(luò),就需要選取一個(gè)動(dòng)態(tài)調(diào)整學(xué)習(xí)率的算法,因?yàn)樗麄冇锌赡軙?huì)卡在鞍點(diǎn)附近[13]。

        以上是對(duì)幾種梯度下降優(yōu)化算法的直觀展示與分析。為了驗(yàn)證其在深度學(xué)習(xí)算法中的表現(xiàn),本文將在minst 手寫數(shù)字識(shí)別數(shù)據(jù)集上構(gòu)建一個(gè)三層CNN 網(wǎng)絡(luò)[14]。網(wǎng)絡(luò)結(jié)構(gòu)如圖5 所示。第一個(gè)隱層有512 個(gè)神經(jīng)元,激活函數(shù)使用ReLU,Dropout 比例為0.2。第二個(gè)隱層有512 個(gè)神經(jīng)元,激活函數(shù)為ReLU,Dropout 比例為0.2。輸出層有10 個(gè)神經(jīng)元,激活函數(shù)使用Soft-Max,輸出結(jié)果使用onehot 方式表示。

        圖5 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

        分別使用SGD,動(dòng)量法、NAG、AdaGrad、AdaDelta、Adam 六種優(yōu)化方法訓(xùn)練網(wǎng)絡(luò),訓(xùn)練效果如圖6 所示。

        圖6 手寫數(shù)字識(shí)別準(zhǔn)確率折線圖

        從圖6 中可以看出:SGD、動(dòng)量法和NAG 的收斂折線基本重合,說明SGD、動(dòng)量法和NAG 三種方法的收斂速度基本相同;Adam、AdaGrad 和AdaDelta 的收斂折線基本重合,說明Adam、AdaGrad 和AdaDelta 三種方法的收斂速度基本相同。從收斂速度看,Adam 類方法的收斂速度更快;從最終的目標(biāo)函數(shù)準(zhǔn)確度看,Adam 類方法的收斂效果更好。

        圖7 CIRAR-10數(shù)據(jù)集誤判折線圖(來源:文獻(xiàn)[20])

        實(shí)驗(yàn)結(jié)果表明,調(diào)整學(xué)習(xí)率的Adam 類算法普遍比動(dòng)量法類的方法收斂速度快且收斂效果更好。究其原因,主要是因?yàn)樯疃葘W(xué)習(xí)類算法省略了特征提取步驟,將所有特征都作為參數(shù)進(jìn)行訓(xùn)練,這是深度學(xué)習(xí)提高精度的主要原因。但同時(shí),這也使深度學(xué)習(xí)訓(xùn)練數(shù)據(jù)變得稀疏。在學(xué)習(xí)過程中,SGD、動(dòng)量法和NAG 使用相同的學(xué)習(xí)率導(dǎo)致稀疏特征無法收斂。Adam 類方法在最初使用較大的學(xué)習(xí)率,這就使得稀疏特征能夠在有限的梯度計(jì)算過程中獲得更好的收斂效果。也正是由于Adam 類方法最初的大學(xué)習(xí)率,使得Adam 類方法能夠使目標(biāo)函數(shù)在訓(xùn)練之初就能獲得較高的準(zhǔn)確率。

        Adam 類方法與動(dòng)量類方法相比,即可以擺脫鞍點(diǎn)的束縛又具有較快的收斂速度,那么Adam 類方法是否適用于所有深度學(xué)習(xí)場(chǎng)景?顯然不是。SGD 雖然收斂慢且對(duì)稀疏數(shù)據(jù)的收斂效果沒有Adam 好,但SGD方法的泛化能力強(qiáng),如果使用得當(dāng),可以訓(xùn)練出更低錯(cuò)誤率的目標(biāo)函數(shù)。文獻(xiàn)[20]在CIRAR-10[21]數(shù)據(jù)集上比較了SGD 和Adam 方法兩種方法的訓(xùn)練效果,訓(xùn)練效果如圖7。圖7 的橫坐標(biāo)表示迭代次數(shù),縱坐標(biāo)表示目標(biāo)函數(shù)的誤判率。從圖7 可以看出,雖然Adam 類方法在訓(xùn)練之初的收斂速度較快,且準(zhǔn)確率率高于SGD方法,但在第150 次訓(xùn)練后,SGD 的誤判率低于Adam方法。這個(gè)實(shí)驗(yàn)說明,SGD 方法的泛化能力強(qiáng)于Adam方法。

        3 結(jié)語

        本文詳細(xì)介紹了不同類型的梯度下降算法,并比較了它們?cè)诓煌瑪?shù)據(jù)分布的情況下的收斂速度,同時(shí)也比較了它們?cè)谙∈钄?shù)據(jù)中的收斂速度和最終效果。通過比較,我們發(fā)現(xiàn):①對(duì)于稀疏數(shù)據(jù),自適應(yīng)學(xué)習(xí)率的算法表現(xiàn)基本相同且優(yōu)于其他算法,因此,盡量使用學(xué)習(xí)率可自適應(yīng)的優(yōu)化算法。②如果在意更快的收斂速度,并且訓(xùn)練的算法比較復(fù)雜的時(shí)候,自適應(yīng)學(xué)習(xí)率算法要優(yōu)于其他算法。③AdaDelta、RMSprop 和Adam是比較接近的算法,在收斂速度和收斂結(jié)果方面表現(xiàn)基本無差別。④原始無法跳出鞍點(diǎn),SGD 方法由于增加了隨機(jī)性而能夠逃出鞍點(diǎn)但收斂速度很慢。⑤SGD方法具有更好的泛化能力,通過優(yōu)化SGD 方法,并在訓(xùn)練過程中手動(dòng)調(diào)整不同的學(xué)習(xí)率,在一些非稀疏的數(shù)據(jù)集上能夠得到更好的收斂效果。

        除本文著重介紹的SDG 優(yōu)化策略及其一些變體外,還可以從被訓(xùn)練的數(shù)據(jù)以及選擇模型特點(diǎn)的角度考慮,進(jìn)一步提高SGD 的性能和目標(biāo)函數(shù)的準(zhǔn)確度。例如,一些研究者[22-23]為了使學(xué)習(xí)過程更加無偏,可以在在每次迭代過程中打亂數(shù)據(jù)或?qū)?shù)據(jù)做有意義的排序;還有一些研究者[24]為了保證學(xué)習(xí)率在每次迭代過程之前先對(duì)數(shù)據(jù)做0 均值1 方差的標(biāo)準(zhǔn)化等操作;又或者根據(jù)梯度類算法的特點(diǎn),采用相結(jié)合的策略或混合策略,對(duì)訓(xùn)練集按照訓(xùn)練難度進(jìn)行遞增排序,在不同的時(shí)期使用不同的優(yōu)化算法。

        猜你喜歡
        優(yōu)化方法模型
        一半模型
        超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
        民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
        關(guān)于優(yōu)化消防安全告知承諾的一些思考
        一道優(yōu)化題的幾何解法
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        可能是方法不對(duì)
        3D打印中的模型分割與打包
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        欧美在线 | 亚洲| 成人国产乱对白在线观看| 少妇熟女淫荡丰满| 久久99免费精品国产| 二区视频在线免费观看| 日韩精品综合一本久道在线视频| 又紧又大又爽精品一区二区| 国产在线观看www污污污| 国产尤物AV尤物在线看| 亚洲综合偷自成人网第页色| 国产精品日本一区二区三区| 亚洲综合中文字幕综合| 亚洲日韩精品无码专区网址| 欧美丰满熟妇aaaaa片| 国产一区曰韩二区欧美三区| 亚洲中文欧美日韩在线| 一区二区激情偷拍老牛视频av| 亚洲欧洲日产国码av系列天堂 | 国产成+人+综合+亚洲欧美丁香花| 亚洲av国产精品色午夜洪2| 亚洲熟妇少妇任你躁在线观看| 欧美精品一区二区精品久久| 亚洲国产一区二区三区视频在线 | 日本一区二区在线免费看| 无码日韩精品一区二区免费暖暖| 丰满少妇被粗大的猛烈进出视频| av天堂久久天堂av色综合| 久久熟女五十路| 视频国产自拍在线观看| 色综合天天综合网国产成人网 | 在线视频色系中文字幕| 久久99精品国产麻豆不卡| 亚洲av久久无码精品九九| 亚洲韩国在线| 国产伦精品一区二区三区在线| 国产av一区二区三区性入口| 国产亚洲精品bt天堂精选| 久久青草国产精品一区| 丝袜美腿在线观看视频| 亚洲熟妇av一区二区三区| 亚洲av无码不卡|