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

        ?

        基于MCMC的DBSCAN改進(jìn)算法

        2020-02-08 06:55:50李建伏巴建軍
        關(guān)鍵詞:集上復(fù)雜度準(zhǔn)確性

        李建伏,巴建軍

        (中國民航大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,天津 300300)

        0 引 言

        目前已有多種聚類算法,主要分為劃分聚類、層次聚類和基于密度的聚類算法[1]。其中,由于能發(fā)現(xiàn)任意形狀的簇,且能很有效地處理噪聲數(shù)據(jù),基于密度的聚類算法得到了廣泛應(yīng)用?;诿芏鹊木垲愑泻芏鄬?shí)現(xiàn)算法,其中DBSCAN[2,3]算法(density based clustering of application with noise)最為流行。然而,DBSCAN的一個缺點(diǎn)是其時間復(fù)雜度較高,文獻(xiàn)[4,5]證明了DBSCAN算法的時間復(fù)雜度為O(n2),其中n為待聚類對象個數(shù)。這限制了其處理大規(guī)模數(shù)據(jù)的能力,尤其是在大數(shù)據(jù)時代,算法的運(yùn)行時間變得尤為重要[6]。

        為了降低算法的運(yùn)行時間,人們已提出多種策略改進(jìn)DBSCAN。第一類改進(jìn)思路是通過借助一定的策略來加速對象的鄰域查詢操作,如文獻(xiàn)[7-9]。第二類加快DBSCAN算法的方法是采用并行化的策略,如文獻(xiàn)[10-12]。第三類改進(jìn)策略是選擇性地?cái)U(kuò)展部分核心對象。導(dǎo)致DBSCAN算法時間復(fù)雜度高的主要原因在于其需要對所有核心對象進(jìn)行逐一擴(kuò)展。而實(shí)際上,核心對象的鄰域之間存在著大量的重疊,沒有必要對所有核心對象進(jìn)行擴(kuò)展。因此,選擇性地?cái)U(kuò)展部分核心對象是提高DBSCAN效率的一個有效途徑。基于不同的核心對象選擇方法形成了不同的改進(jìn)算法。如文獻(xiàn)[13]選擇核心對象鄰域的邊界對象作為待擴(kuò)展對象;文獻(xiàn)[14]隨機(jī)選擇處于以當(dāng)前核心點(diǎn)為圓心,介于半徑為ε和2ε兩個圓之間的環(huán)狀區(qū)域內(nèi)的對象作為下一個擴(kuò)展對象;文獻(xiàn)[15]首先利用一個快速的聚類算法將原始數(shù)據(jù)劃分為多個簇,然后將這些簇的代表節(jié)點(diǎn)作為待擴(kuò)展節(jié)點(diǎn)。

        本文提出一種基于部分核心對象擴(kuò)展策略的DBSCAN改進(jìn)算法,稱為DBSCAN++。DBSCAN++的基本思想是優(yōu)先擴(kuò)展拓展能力較強(qiáng)的核心對象,其中核心對象的拓展能力通過從密度和與已經(jīng)擴(kuò)展過的對象的最短距離兩個角度來衡量,即密度越高且距離已擴(kuò)展過的對象越遠(yuǎn)的對象的拓展能力越強(qiáng)。實(shí)際上,按照以上兩個角度來確定當(dāng)前拓展能力最強(qiáng)的節(jié)點(diǎn)是一個雙目標(biāo)優(yōu)化問題,求解該雙目標(biāo)優(yōu)化問題非常耗時,且不一定能夠找到滿足條件的解。本文借助MCMC采樣策略來選擇當(dāng)前擴(kuò)展對象。

        1 基礎(chǔ)知識

        1.1 DBSCAN

        DBSCAN算法借助ε和MinPts兩個參數(shù)、利用簇的密度連通特性來發(fā)現(xiàn)簇,其中涉及的關(guān)鍵術(shù)語定義如下。

        鄰域:與對象p的距離不大于ε的對象集合,稱為p的鄰域,表示為Nε(p)={q|dis(p,q)≤ε}。

        密度:對象p的密度Dε(p)=|Nε(p)|。

        核心對象:如果對于對象p,有 |Nε(p)|≥MinPts,則p被稱為核心對象,反之稱為非核心對象。

        直接密度可達(dá):對于核心對象p,如果對象q∈Nε(p),則稱q相對于p是直接密度可達(dá)的或q是p的直接可達(dá)對象。

        密度可達(dá):對于對象p和q,如果存在一系列的對象p1=q,p2,…,pn=p,使得pi+1相對于pi是密度可達(dá)的,則稱p相對于q是密度可達(dá)的,p1,p2,…,pn都稱為p的密度可達(dá)對象。

        對象擴(kuò)展操作:對于核心對象p,對其進(jìn)行擴(kuò)展操作即為確定其鄰域Nε(p)。

        DBSCAN的基本思想是將所有密度可達(dá)對象作為一個簇,基本處理過程是從某一個核心對象p開始,首先對p進(jìn)行擴(kuò)展,接著對Nε(p) 中的每個核心對象進(jìn)行擴(kuò)展,不斷進(jìn)行以上對象擴(kuò)展操作直至p的所有密度可達(dá)節(jié)點(diǎn)都被遍歷一次,將p與所有這些密度可達(dá)節(jié)點(diǎn)標(biāo)記為同一簇;然后再從其它某一個沒被標(biāo)記的核心對象q開始,尋找q的所有密度可達(dá)節(jié)點(diǎn);按照以上步驟,直至所有核心節(jié)點(diǎn)都被標(biāo)記為某一類簇為止。其偽代碼如算法1所示。

        算法1: 基本DBSCAN算法

        輸入: 待聚類對象集S,參數(shù)ε、MinPts

        輸出: 每個對象的簇編號

        (1)For each pointpinSdo

        (2)label(p)←-1

        (3)c←0

        (4)for each pointpinSdo

        (5) if(label(p)≠-1) thencontinue

        (6)Nε(p)←Expand(S,p,ε)

        (7) if(|Nε(p)|

        (8)label(p)←noise

        (9)continue

        (10)c←c+1

        (11)label(p)←c

        (12)D←Nε(p)(〗p}

        (13) whileDis not empty

        (14) for eachqinDdo

        (15) if(lable(q)==noise) thenlable(q)←c

        (16) if(label(q)==-1)

        (17)Nε(q)←Expand(S,q,ε)

        (18)label(q)←c

        (19) if(|Nε(q)|≥MinPts) thenD←D∪Nε(q)

        (20)Output label(p) for everyp∈S.

        通過算法1可以看出DBSCAN算法耗時的原因在于無論采用什么樣的順序,都要對數(shù)據(jù)集中的每個核心對象進(jìn)行一次擴(kuò)展操作。對于節(jié)點(diǎn)p,擴(kuò)展節(jié)點(diǎn)意味著要計(jì)算其鄰域,計(jì)算鄰域需要的時間為O(nQ),其中n為數(shù)據(jù)集大小,Q為計(jì)算兩個對象之間距離的時間復(fù)雜度。如對于歐式距離,Q為O(nd),其中d為歐式空間的維數(shù),則整個DBSCAN算法的時間復(fù)雜度Q為O(dn2),即O(n2)。

        1.2 MCMC技術(shù)

        MCMC是一類采樣方法,主要用于對分布復(fù)雜的數(shù)據(jù)采樣,其中比較流行的是Metropolis-hastings采樣。

        Metropolis-hastings的基本思路是從樣本空間X中隨機(jī)選擇一個樣本作為初始狀態(tài)x0,然后按照以下迭代過程構(gòu)建馬爾可夫鏈:在第j次迭代過程中,隨機(jī)選擇一個樣本作為候選采樣點(diǎn)y,并按式(1)計(jì)算y的接受概率π

        π=min{1,p(y)/p(xj-1)}

        (1)

        其中,p(y)和p(xj-1)分別表示y和xj-1的出現(xiàn)概率。候選采樣點(diǎn)y會以π的概率被接受作為xj。

        當(dāng)設(shè)定馬爾可夫鏈長度為m時,按照以上過程迭代m次,得到的采樣點(diǎn)即為xj。

        在應(yīng)用Metropolis-hastings在求解實(shí)際問題時,往往根據(jù)需要來定義接受概率π。

        2 DBSCAN++

        2.1 算法思想

        DBSCAN++算法遵循了基本DBSCAN算法的框架,即從某個核心對象p開始,通過不斷地?cái)U(kuò)展核心對象直至p的所有密度可達(dá)對象都被找到;然后再從其它某一個沒被標(biāo)記的核心對象q開始,尋找q的密度可達(dá)節(jié)點(diǎn);按照以上步驟,直至所有核心節(jié)點(diǎn)都被標(biāo)記為某一簇為止。

        DBSCAN++與基本的DBSCAN算法最大的不同是DBSCAN需要把所有核心對象都擴(kuò)展一次,而DBSCAN++只需要擴(kuò)展部分核心對象。其基本思路是采用MCMC方法優(yōu)先擴(kuò)展拓展能力較強(qiáng)的核心對象直至當(dāng)前被擴(kuò)展對象的拓展能力低于非常低時,算法終止本類簇密度可達(dá)對象的尋找,從而開始從另一個核心對象q開始另一類簇的發(fā)現(xiàn)。

        2.2 基于MCMC的對象選擇方法

        按照DBSCAN++的基本思路,利用Metropolis-hastings采樣方法從當(dāng)前所有待擴(kuò)展對象中選擇拓展能力最強(qiáng)的核心對象作為下一個擴(kuò)展對象。如前所述,本文通過密度和與已經(jīng)擴(kuò)展過的對象的最短距離兩個角度來衡量對象拓展能力。由于計(jì)算對象的密度比較耗時(O(n)),為了盡量減少計(jì)算對象密度的次數(shù),本文在選擇節(jié)點(diǎn)時采用文獻(xiàn)[16]中的可達(dá)距離來近似對象的密度,只有當(dāng)某對象被選擇作為當(dāng)前擴(kuò)展對象時再計(jì)算其密度。

        根據(jù)文獻(xiàn)[16],結(jié)合本文的需要,對象x的可達(dá)距離rd(x),定義如式(2)所示

        rd(x)=max{d(p,x),cd(p)|x∈Nε(p)}

        (2)

        其中,x∈Nε(p),d(p,x) 為p和x之間的距離,cd(p) 為核心對象p的核心距離,定義如式(3)所示

        (3)

        通過式(2)和式(3)可以看出,對象x距離核心對象p的可達(dá)距離越小,x越接近于p。根據(jù)核心對象的定義,與核心對象距離越近的對象成為核心對象的可能性越高,即處于高密度區(qū)域的可能性越高,拓展能力越強(qiáng)。

        除此之外,對于兩個待擴(kuò)展對象p和q,如果d(p,A)

        綜合以上對可達(dá)距離和與已擴(kuò)展對象的距離的分析,具有更小的可達(dá)距離且與已擴(kuò)展對象距離越遠(yuǎn)的對象的拓展能力越強(qiáng)。

        按照Metropolis-hastings,當(dāng)選擇一個候選采樣點(diǎn)時,需要計(jì)算該采樣點(diǎn)的接受概率π。DBSCAN++中將候選采樣點(diǎn)的接受概率的定義如式(4)所示

        (4)

        其中,d(yj,A) 和d(xj-1,A) 分別為yj和xj-1到集合A中對象的最短距離。

        DBSCAN++算法利用MCMC技術(shù)選擇擴(kuò)展對象的偽代碼如算法2所示,其中,OPEN表用來存儲所有待擴(kuò)展對象,CLS表用來存儲所有已被擴(kuò)展核心對象。由于OPEN表中最多有n個對象(n為所有聚類對象個數(shù)),因此,當(dāng)采樣次數(shù)為m次時,MCMC(OPEN,m) 的時間復(fù)雜為O(mn)。

        算法2: MCMC(OPEN,m)

        輸入:OPEN,CLS,m

        輸出: 采樣點(diǎn)

        (1)x←OPEN.get(0)

        (2)If(OPEN.size()>=2)

        (3)d(x,CLS)←argminu∈CLSdis(x,u)

        (4) for(intj=1;j

        (5)s←rand[1,OPEN.size()-1]

        (6)y←OPEN.get(s)

        (7)d(y,CLS)←argminu∈CLSdis(y,u)

        (8)π←min{1,d(y,CLS)*rd(x)/(d(x,CLS)*rd(y))}

        (9)if(π>rand(0,1))

        (10)x←y

        (11)d(x,CLS)←d(y,CLS)

        (12)returnx.

        2.3 DBSCAN++提前終止策略

        DBSCAN++中,當(dāng)當(dāng)前被擴(kuò)展對象的拓展能力低于非常低時,DBSCAN++算法終止本類簇密度可達(dá)節(jié)點(diǎn)的尋找。

        如前所述,在擴(kuò)展節(jié)點(diǎn)之前通過可達(dá)距離和與已擴(kuò)展對象的距離兩方面來預(yù)判節(jié)點(diǎn)的拓展能力,當(dāng)節(jié)點(diǎn)p被擴(kuò)展之后,可以通過擴(kuò)展p新發(fā)現(xiàn)的對象數(shù)來衡量其拓展能力。

        DBSCAN++,核心節(jié)點(diǎn)p的拓展能力Expan(p)可以通過式(5)來計(jì)算

        Exp(p)=|{x|x∈Nε(p),label(x)=-1}|

        (5)

        在DBSCAN++中,當(dāng)Expan(p)為0時,p節(jié)點(diǎn)的拓展能力被認(rèn)為非常弱,算法停止本類簇密度可達(dá)節(jié)點(diǎn)的尋找。

        2.4 DBSCAN++算法描述

        整個DBSCAN++算法偽代碼如算法3所示。

        算法3: DBSCAN++算法

        輸入: 數(shù)據(jù)集S,參數(shù)ε、MinPts,m

        輸出: 每個對象的簇編號

        (1)For each pointpinSdo

        (2)label(p)←-1

        (3)c←0

        (4)for each pointpinSdo

        (5) if(label(p)≠-1) thencontinue

        (6)Nε(p)←Expand(S,p,ε)

        (7) if(Nε(p) is empty)

        (8)label(p)←noise

        (9)continue

        (10)c←c+1

        (11)label(p)←c

        (12)OPEN←OPEN+Nε(p)(〗p};CLS←CLS+{p}

        (13) whileOPENis not empty

        (14)q←MCMC(OPEN,m)

        (15)OPEN←OPEN-{q}

        (16) if(label(q)==noise) thenlabel(q)←c

        (17) if(label(q)==-1)

        (18)label(q)←c

        (19)Nε(q)←Expand(S,q,ε)

        (20) if(Exp(q)==0) break;

        (21)OPEN←OPEN+Nε(q)

        (22)CLS←CLS+{q}

        (23)Output label(p) for everyp∈S.

        從偽代碼可以看出,算法最耗時的部分在于第(13)步,即從當(dāng)前所有待擴(kuò)展對象中不斷選擇對象并擴(kuò)展直至當(dāng)前被擴(kuò)展節(jié)點(diǎn)的擴(kuò)展能力為0。其中最耗時的部分在于(14)步和(19)步。其中(14)步的時間復(fù)雜度為O(mn);(19)步的主要功能為擴(kuò)展當(dāng)前核心對象q,其偽代碼如算法4所示,時間復(fù)雜度為O(n)。

        算法4: Expand(S,p,ε,Minpts)

        輸入: 數(shù)據(jù)集S,參數(shù)ε和Minpts

        輸出:N

        (1)N←Φ,DIS←-1

        (2) for(i=0;i<|S|;i++)

        (3) if(d(p,S[i])<ε)

        (4)N←N+{S[i]}

        (5)DIS←DIS+{d(p,S[i])}

        (6)if(|N|

        (7) returnΦ

        (8)newDis←DIS中第Minpts小的距離

        (9)cd(p)←newDis

        (10)for(i=0;i<|N|;i++)

        (11)N[i].cd←min(cd(p),DIS[i]) //式(2)

        (12)returnN.

        所以,從理論上講,整個DBSCAN++算法的時間復(fù)雜度是O(n2),與DBSCAN算法相同。

        3 實(shí)驗(yàn)部分

        為了驗(yàn)證算法的有效性,本文通過實(shí)驗(yàn)將BSCAN++算法與DBSCAN和OPTICS兩種算法從運(yùn)行時間和聚類準(zhǔn)確性兩個角度進(jìn)行了對比。在實(shí)驗(yàn)中,DBSCAN++、DBSCAN和OPTICS都采用Java語言編程實(shí)現(xiàn),所有實(shí)驗(yàn)都在同樣的軟硬件環(huán)境下完成。

        測試數(shù)據(jù)為7個來自于UCI數(shù)據(jù)庫的數(shù)據(jù)集,每個數(shù)據(jù)集中對象個數(shù)、屬性個數(shù)和簇個數(shù)見表1,其中“簇個數(shù)”列給出了該數(shù)據(jù)集中包含簇的數(shù)量。

        表1 7個數(shù)據(jù)集

        實(shí)驗(yàn)中,DBSCAN++、DBSCAN和OPTICS3種算法在不同的數(shù)據(jù)集上的ε和MinPts的取值情況見表2。另外,DBSCAN++中的參數(shù)m的取值為5。

        3種算法在7個數(shù)據(jù)集上的運(yùn)行時間見表3,其中“百分比”列表示DBSCAN++相對于當(dāng)前算法運(yùn)行時間的提高百分比,即(當(dāng)前算法運(yùn)行時間-DBSCAN++運(yùn)行時間)/當(dāng)前算法運(yùn)行時間*100%。通過表3可以看出:

        表2 DBSCAN、OPTICS、DBSCAN++在不同

        (1)在7個數(shù)據(jù)集上,DBSCAN++最快,DBSCAN次之,OPTICS最慢;

        (2)在不同的數(shù)據(jù)集上,DBSCAN++相對于DBSCAN和OPTICS運(yùn)行時間提高百分比不同;且,在數(shù)據(jù)規(guī)模較大的數(shù)據(jù)集上,DBSCAN++的加速效果更加明顯。如在data5、data6和data7這3個數(shù)據(jù)集上,DBSCAN++相對于DBSCAN和OPTICS的提高百分比均在80%以上;

        表3 DBSCAN、OPTICS、DBSCAN++

        (3)在7個數(shù)據(jù)集上,DBSCAN++相對于DBSCAN的平均提高百分比為60.7,相對于OPTICS的平均提高百分比為70.2??梢?,從運(yùn)行時間看,DBSCAN++是高效的。

        為了評價聚類準(zhǔn)確性,本文采用了V-measure、ARI、NMI作為評價指標(biāo)。圖1~圖3分別給出了3種算法在每個數(shù)據(jù)集上的聚類準(zhǔn)確性對比直方圖。

        圖1 以V-measure為評價指標(biāo)下3種算法在7個數(shù)據(jù)集上的聚類準(zhǔn)確性

        圖2 以ARI為評價指標(biāo)下3種算法在7個數(shù)據(jù)集上的聚類準(zhǔn)確性

        圖3 以NMI為評價指標(biāo)下3種算法在7個數(shù)據(jù)集上的聚類準(zhǔn)確性

        通過圖1~圖3可以看出:

        (1)在V-measure、ARI、NMI的任何一種評價指標(biāo)下,沒有一種算法在所有數(shù)據(jù)集上都比其它算法好。如data1上,DBSCAN和OPTICS的準(zhǔn)確性略高于DBSCAN++;在data2,data3,data4,data6上,3種指標(biāo)中可以看出DBSCAN++均高于DBSCAN和OPTICS;而在data5上,OPTICS的準(zhǔn)確性明顯高于DBSCAN和OPTICS;

        (2)從V-measure評價指標(biāo)看,在data2,data3,data4和data6上,DBSCAN++的準(zhǔn)確性明顯高于DBSCAN和OPTICS;在data1上,DBSCAN++的準(zhǔn)確性略低于DBSCAN和OPTICS;在data5上,OPTICS最準(zhǔn)確,其次是DBSCAN++,DBSCAN的準(zhǔn)確性最差;

        (3)從ARI評價指標(biāo)看,在data2,data3,data4,data6和data7上,DBSCAN++的準(zhǔn)確性明顯高于DBSCAN和OPTICS;在data1上,DBSCAN++的準(zhǔn)確性略低于DBSCAN和OPTICS;在data5上,OPTICS最準(zhǔn)確,其次是DBSCAN++,DBSCAN的準(zhǔn)確性最差;

        (4)從NMI評價指標(biāo)看,在data2,data3,data4和data6上,DBSCAN++的準(zhǔn)確性明顯高于DBSCAN和OPTICS;在data1上,DBSCAN++的準(zhǔn)確性略低于DBSCAN和OPTICS;在data5和data7上,OPTICS最準(zhǔn)確,其次是DBSCAN++,DBSCAN的準(zhǔn)確性最差;

        (5)綜上所述,在data2,data3,data4和data6上,在任何一種評價指標(biāo)下,DBSCAN++的準(zhǔn)確性明顯高于DBSCAN和OPTICS;在data1上,DBSCAN++的準(zhǔn)確性略低于DBSCAN和OPTICS;在data5上,OPTICS最準(zhǔn)確,其次是DBSCAN++,DBSCAN的準(zhǔn)確性最差。對于data7,在不同的評價指標(biāo)下,3種算法的準(zhǔn)確性不一樣,從ARI看,DBSCAN++最準(zhǔn)確;從V-measure和NMI看,OPTICS最準(zhǔn)確,其次是DBSCAN++,DBSCAN最差。

        結(jié)合以上運(yùn)行時間和聚類有效性的分析,DBSCAN++算法不僅保證了聚類效果,而且運(yùn)行時間上DBSCAN++比DBSCAN平均降低了60.7%,比OPTICS平均降低了70.2%,這說明了本文算法DBSCAN++較DBSCAN、OPTICS有顯著的優(yōu)勢。

        4 結(jié)束語

        本文針對DBSCAN算法時間復(fù)雜度高的問題,提出了一種基于MCMC的DBSCAN改進(jìn)算法——DBSCAN++。本文創(chuàng)新之處在于引入密度和與已經(jīng)擴(kuò)展過的對象的最短距離兩個角度來衡量核心對象的拓展能力,并借助Metro-polis-hastings采樣方法實(shí)現(xiàn)具有較強(qiáng)的拓展能力的核心對象的選取。雖然從理論上看,DBSCAN++與DBSCAN具有相同的時間復(fù)雜度,但是實(shí)驗(yàn)結(jié)果表明,DBSCAN++的實(shí)際運(yùn)行時間明顯優(yōu)于DBSCAN和OPTICS,且算法的準(zhǔn)確性并沒有變差。因此,DBSCAN++算法是有效的。

        猜你喜歡
        集上復(fù)雜度準(zhǔn)確性
        淺談如何提高建筑安裝工程預(yù)算的準(zhǔn)確性
        Cookie-Cutter集上的Gibbs測度
        鏈完備偏序集上廣義向量均衡問題解映射的保序性
        一種低復(fù)雜度的慣性/GNSS矢量深組合方法
        復(fù)扇形指標(biāo)集上的分布混沌
        求圖上廣探樹的時間復(fù)雜度
        美劇翻譯中的“神翻譯”:準(zhǔn)確性和趣味性的平衡
        某雷達(dá)導(dǎo)51 頭中心控制軟件圈復(fù)雜度分析與改進(jìn)
        論股票價格準(zhǔn)確性的社會效益
        出口技術(shù)復(fù)雜度研究回顧與評述
        亚洲欧美日韩国产综合久| 欧洲美熟女乱av亚洲一区| 熟妇熟女乱妇乱女网站| 丰满人妻在公车被猛烈进入电影| 无码中文av有码中文av| 国产精品亚洲一区二区三区妖精| 国产日产久久高清ww| 肉体裸交137日本大胆摄影| 老熟女毛茸茸浓毛| 国产精品爽爽VA吃奶在线观看| 日韩激情视频一区在线观看| 人人爽久久久噜人人看| 国产成人综合亚洲精品| 亚洲公开免费在线视频| 黄片免费观看视频播放| 午夜三级a三级三点在线观看| 在线观看午夜亚洲一区| 亚洲va在线va天堂va四虎| 国产精品国产三级国产an不卡| 亚洲第一狼人天堂网亚洲av| 国产精品无套内射迪丽热巴| 国产丝袜精品丝袜一区二区| 全亚洲最大的私人影剧院在线看| 国产精品妇女一二三区| 人人妻人人澡人人爽精品欧美| 久久av一区二区三区下| 日本午夜理论片在线观看| 18禁黄久久久aaa片| 日本高清中文字幕一区二区三区| 自拍av免费在线观看| 大又大又粗又硬又爽少妇毛片| 欧美巨大xxxx做受l| 国产91AV免费播放| 精品人妻一区二区三区在线观看| 久久久久人妻精品一区蜜桃| 久久AV中文综合一区二区| 中国黄色偷拍视频二区| 高潮抽搐潮喷毛片在线播放| japanese无码中文字幕| 富婆叫鸭一区二区三区 | 人妻av中文字幕久久|