• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Hadoop的K-Means算法的設(shè)計(jì)與實(shí)現(xiàn)

    2019-11-06 09:14:38王立友鄭海鵬
    綏化學(xué)院學(xué)報(bào) 2019年11期
    關(guān)鍵詞:中心點(diǎn)質(zhì)心聚類

    王立友 鄭海鵬

    (淮南聯(lián)合大學(xué)計(jì)算機(jī)系 安徽淮南 232001)

    在現(xiàn)實(shí)生活中,人們經(jīng)常會(huì)將類似的事物或事情劃分為同一類。即所謂的“物以類聚、人以群分”。在計(jì)算機(jī)程序設(shè)計(jì)過(guò)程中,分類算法是一種監(jiān)督學(xué)習(xí)方法。但是,在許多情況下,如果數(shù)據(jù)通過(guò)預(yù)處理滿足分類算法的要求,則無(wú)法滿足上述條件,特別是在處理大量數(shù)據(jù)時(shí),成本非常大,您可以考慮使用K-Means聚類算法。K-Means算法屬于無(wú)監(jiān)督學(xué)習(xí)方法[1],作為較為經(jīng)典的分類算法,在很多應(yīng)用領(lǐng)域中都有其自身的優(yōu)勢(shì),因?yàn)樗c分類進(jìn)行比較,所以聚類不依賴于預(yù)定義的類和類標(biāo)簽的訓(xùn)練實(shí)例。

    一、K-Means算法簡(jiǎn)介

    K-Means算法,也稱為K-Means方法或K均值法,具有良好的可擴(kuò)展性和快速收斂性[2],是最廣泛使用的聚類算法。K均值算法是不斷改變聚類中心點(diǎn)的過(guò)程(聚類過(guò)程如圖1所示)。計(jì)算所有成員到每個(gè)質(zhì)心的距離,然后重新劃分其內(nèi)部集群成員。將對(duì)應(yīng)成員劃分給到其距離最小的那個(gè)質(zhì)心。K值表示簇的質(zhì)心數(shù)(即聚類中心的數(shù)量);K-means可以自動(dòng)將對(duì)應(yīng)的成員分配給不同的類,但是不可能決定要分割哪些類。K必須是小于訓(xùn)練集中樣本數(shù)的正整數(shù)。

    假設(shè)輸入成員樣本集合為C=X1,X2,…,Xn-1,Xn(含有n個(gè)成員樣本),K-means算法具體的過(guò)程如下:

    1)選擇初始化過(guò)程中中心點(diǎn)的個(gè)數(shù)(K值):A1,A2,…,Ak;

    2)計(jì)算成員樣本X1,X2,…,Xn-1,Xn到A1,A2,…,Ak的各自的距離;選取各個(gè)成員樣本到各個(gè)中心點(diǎn)的最小距離,將樣本成員劃分到最小距離的中心點(diǎn)中(如式1);

    1<=j<=k

    3)重新為中心點(diǎn)Aj為隸屬該類別的所有樣本的均值;

    4)重復(fù)2、3以上兩個(gè)步驟,直到迭代終止(即上一次和本次聚類的中心點(diǎn)不再發(fā)生變化)。

    圖1 K-Means聚類示意圖

    二、Hadoop平臺(tái)簡(jiǎn)介

    Hadoop是Apache Foundation開(kāi)發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)[3]。其核心是MapReduce和HDFS(分布式文件系統(tǒng))。在現(xiàn)代社會(huì)中,只要和海量數(shù)據(jù)有關(guān)的應(yīng)用領(lǐng)域都會(huì)出現(xiàn)Hadoop 的身影[4]。隨著Hadoop 版本的不斷發(fā)展,其自身的功能正在變得越來(lái)越強(qiáng)大,并且已經(jīng)形成了相對(duì)完整的系統(tǒng)。如圖2所示。

    圖2 hadoop平臺(tái)架構(gòu)

    (一)HDFS 分布式文件存儲(chǔ)系統(tǒng)。HDFS 代表Hadoop分布式文件系統(tǒng),是一種具有高容錯(cuò)性,高吞吐量和高可擴(kuò)展性的分布式文件存儲(chǔ)系統(tǒng)。HDFS 在存儲(chǔ)數(shù)據(jù)時(shí)使用塊存儲(chǔ)。它將節(jié)點(diǎn)分為兩類:NameNode 和DataNode,其中NameNode是HDFS集群的主節(jié)點(diǎn)。DataNode是HDFS集群從節(jié)點(diǎn),用來(lái)存儲(chǔ)真正的數(shù)據(jù)。每個(gè)數(shù)據(jù)塊可以在多個(gè)DataNode上存儲(chǔ)多個(gè)副本,以提高數(shù)據(jù)安全性。

    (二)MapReduce 框架。MapReduce 是一個(gè)開(kāi)源并行計(jì)算框架,主要由兩個(gè)函數(shù)組成:Map()和Reduce()。它可以將大型任務(wù)分解為相對(duì)相反的多個(gè)子任務(wù),并且可以并行處理。Map()函數(shù)負(fù)責(zé)指定數(shù)據(jù)集上的相反元素,并生成一系列[key,value]作為中間結(jié)果[5]。而Reduce()函數(shù)則對(duì)中間結(jié)果中相同Key的所有“value”進(jìn)行規(guī)約,并得到最終結(jié)果。

    (三)HBase數(shù)據(jù)庫(kù)。HBase是一個(gè)針對(duì)結(jié)構(gòu)化數(shù)據(jù)的可伸縮、高性能的非關(guān)系型分布式動(dòng)態(tài)模式數(shù)據(jù)庫(kù),與傳統(tǒng)數(shù)據(jù)庫(kù)相比,HBase采用BigTable數(shù)據(jù)模型。在Hadoop平臺(tái)上運(yùn)行時(shí),HBase 中的表可用作MapReduce 任務(wù)的輸入和輸出,并可通過(guò)Java API檢索。

    (四)Hive數(shù)據(jù)倉(cāng)庫(kù)。Hive是數(shù)據(jù)倉(cāng)庫(kù)管理文件。它提供完整的SQL 查詢功能,可將數(shù)據(jù)文件映射到單個(gè)數(shù)據(jù)表中。將其轉(zhuǎn)化為MapReduce任務(wù)進(jìn)行運(yùn)行。

    三、基于Hadoop的K-means算法的實(shí)現(xiàn)

    (一)K-Means算法實(shí)現(xiàn)過(guò)程解析。

    1.使用全局變量在最后一次迭代后存儲(chǔ)質(zhì)心。

    2.使用Hadoop中的地圖框架(map)來(lái)計(jì)算每個(gè)質(zhì)心和樣本之間的距離,并獲得最接近樣本的質(zhì)心。

    3.在Hadoop 中使用reduce 框架,輸入鍵(Key)是質(zhì)心,值(Value)是其他樣本。

    4.將先前質(zhì)心和最新質(zhì)心作比較,若發(fā)生了變化,就需要程序繼續(xù)運(yùn)行,進(jìn)行下一次迭代,否則將停止迭代,終止當(dāng)前程序,輸出最終的聚類結(jié)果。

    (二)算法實(shí)現(xiàn)過(guò)程需要解決的問(wèn)題。本文的思路基本上是按照上面的步驟來(lái)做的,有以下幾個(gè)問(wèn)題急需解決:

    1.Hadoop沒(méi)有自定義全局變量,因此無(wú)法定義存儲(chǔ)質(zhì)心的全局變量,因此需要另一種想法,即質(zhì)心存儲(chǔ)在文件中。

    2.存儲(chǔ)質(zhì)心的文件讀取。我們選擇在主main函數(shù)中讀取質(zhì)心,然后將質(zhì)心設(shè)置保存到配置中。configuration 在map和reduce均可讀

    3.如何比較質(zhì)心的變化,你可以在主要的主函數(shù)中進(jìn)行比較,讀取質(zhì)心的文件和最新的質(zhì)心并進(jìn)行比較。這個(gè)方法是可以實(shí)現(xiàn)的,我們使用自定義計(jì)數(shù)器,計(jì)數(shù)器是一個(gè)全局變量,可在地圖中讀寫并減少,在上面的想法中,我們看到reduce具有最后一次迭代的質(zhì)心和計(jì)算的質(zhì)心,因此完全可以直接在reduce中進(jìn)行比較。如果發(fā)生變化,counter加1。

    (三)基于手肘法的K-Means 算法中最佳K 值的確定。本文選取手肘法用來(lái)確定最佳K值[6]。手肘法的核心指標(biāo)是平方誤差的總和:SSE(如式2所示),其中,Ci是第i個(gè)聚類中心,p是聚類中心的元素,mi是Ci的質(zhì)心(Ci中所有元素的平均值),SSE則可以表示聚類的質(zhì)量。

    SSE 方法的原理為:隨著聚類中心數(shù)量的增加,聚類將更加細(xì)化,每個(gè)聚類中心的聚合度將逐漸增加,因此誤差SSE將逐漸減小。當(dāng)K小于實(shí)際簇?cái)?shù)時(shí),隨著K值的增加,簇中心的聚集程度將大大加快。加速誤差的平方和SSE減小的幅度。SSE 的下降趨勢(shì)急劇減少,然后趨于平緩,即SSE和K之間的關(guān)系是肘形。而對(duì)應(yīng)肘部的K值為最佳。

    為測(cè)試數(shù)據(jù)選擇最佳簇編號(hào)K值,具體實(shí)施過(guò)程為K=1-6,針對(duì)對(duì)每一個(gè)K值記下對(duì)應(yīng)的SSE,制作K和SSE關(guān)系圖,并選擇與肘相對(duì)應(yīng)的K 值作為最佳簇?cái)?shù)。如3 所示:即K=4聚類結(jié)果最優(yōu)。

    圖3 K與SSE關(guān)系圖

    (四)Hadoop實(shí)現(xiàn)K-Means算法的主要代碼。

    1.定義Center類、初始化質(zhì)心.首先定義一個(gè)Center類,它主要存儲(chǔ)質(zhì)心數(shù)量K值,以及兩個(gè)從HDFS讀取質(zhì)心文件的方法。一個(gè)用于讀取初始質(zhì)心,一個(gè)用于在每次迭代后讀取質(zhì)心文件夾。這個(gè)是在文件夾中的,代碼如下:

    public class Center{

    protected static int k=4;//質(zhì)心的個(gè)數(shù)(由手肘法確定K=4為最佳)

    /**

    從初始質(zhì)心文件加載質(zhì)心并返回字符串,由質(zhì)心之間的制表符分隔

    */

    public String loadInitCenter(Path path) throws IOException {

    StringBuffer sb = new StringBuffer();

    Configuration conf = new Configuration();

    FileSystem hdfs = FileSystem.get(conf);

    FSDataInputStream dis = hdfs.open(path);

    LineReader in = new LineReader(dis,conf);

    Text line = new Text();

    while(in.readLine(line) >0) {

    sb.append(line.toString().trim());

    sb.append(" "); }

    return sb.toString().trim();}

    2.每次迭代從質(zhì)心文件中讀取質(zhì)心并返回字符串代碼

    public String loadCenter(Path path) throws IOException{

    StringBuffer sb = new StringBuffer();

    Configuration conf = new Configuration();

    FileSystem hdfs = FileSystem.get(conf);

    FileStatus[]files = hdfs.listStatus(path);

    for(int i = 0; i < files.length; i++) {

    Path filePath = files[i].getPath();

    if(!filePath.getName().contains("part")) continue;

    FSDataInputStream dis = hdfs.open(filePath);

    LineReader in = new LineReader(dis,conf);

    Text line = new Text();

    while(in.readLine(line) >0) {

    sb.append(line.toString().trim());

    sb.append(" ");}}

    return sb.toString().trim();}}

    public class KmeansMR {

    private static String FLAG = "KCLUSTER";

    public static class TokenizerMapper extends Mapper

    { double[][]centers = new double[Center.k][];

    String[]centerstrArray = null;

    @Override

    public void setup(Context context) {

    //將放在context中的聚類中心轉(zhuǎn)換為數(shù)組的形式,方便使用

    String kmeansS = context.getConfiguration().get(FLAG);

    centerstrArray = kmeansS.split(" ");

    for(int i = 0; i < centerstrArray.length; i++) {

    String[]segs = centerstrArray[i].split(",");

    centers[i]= new double[segs.length];

    for(int j = 0; j < segs.length; j++) {

    centers[i][j]= Double.parseDouble(segs[j]);}}}

    public void map(Object key,Text value,Context context) throws IOException,InterruptedException {

    String line = value.toString();

    String[]segs = line.split(",");

    double[]sample = new double[segs.length];

    for(int i = 0; i < segs.length; i++) {

    sample[i]= Float.parseFloat(segs[i]);}

    3.求得成員距離最近的質(zhì)心

    double min = Double.MAX_VALUE;

    int index = 0;

    for(int i = 0; i < centers.length; i++) {

    double dis = distance(centers[i],sample);

    if(dis < min) { min = dis;index = i; } }

    context.write(new Text(centerstrArray[index]),new Text(line));

    } }

    public static class IntSumReducer

    extends Reducer

    Counter counter = null;

    public void reduce(Text key,Iterable

    double[]sum = new double[Center.k]; int size = 0;

    //計(jì)算相應(yīng)維度上的值之和,存放在sum數(shù)組中

    for(Text text : values) {

    String[]segs = text.toString().split(",");

    for( int i = 0; i < segs.length; i++) {sum[i]+= Double.parseDouble(segs[i]);}

    size ++;}//求新的質(zhì)心

    StringBuffer sb = new StringBuffer();

    for(int i = 0; i < sum.length; i++) {

    sum[i]/= size; sb.append(sum[i]);

    sb.append(","); }

    4.判斷新的質(zhì)心跟前一次迭代的質(zhì)心是否一致

    job.setReducerClass(IntSumReducer.class);

    job.setOutputKeyClass(NullWritable.class);

    job.setOutputValueClass(Text.class);

    job.setMapOutputKeyClass(Text.class);

    job.setMapOutputValueClass(Text.class);

    FileInputFormat.addInputPath(job,samplePath);

    FileOutputFormat.setOutputPath(job,kMeansPath);

    job.waitForCompletion(true);

    /**獲取自定義計(jì)數(shù)器的大小,如果它等于質(zhì)心的大小,表示質(zhì)心沒(méi)有改變,程序停止迭代*/

    long counter = job.getCounters().getGroup("myCounter").findCounter("kmenasCounter").getValue();

    if(counter == Center.k) System.exit(0);

    boolean flag = true;

    String[]centerStrArray = key.toString().split(",");

    for(int i = 0; i < centerStrArray.length; i++) {

    if(Math.abs(Double.parseDouble(centerStrArray[i]) - sum[i]) >0.00000000001)

    { flag = false; break; }}//如質(zhì)心不一致,計(jì)數(shù)器加1

    if(flag) {counter = context.getCounter("myCounter","kmenasCounter");

    counter.increment(1l); }

    context.write(null,new Text(sb.toString()));}}

    public static void main(String[]args) throws Exception {

    Path kMeansPath = new Path("/mid-data/k-means/k-Means");//初始質(zhì)心文件

    Path samplePath = new Path("/mid-data/k-means/sample");//樣本文件

    Center center = new Center();//加載聚類中心文件

    String centerString = center.loadInitCenter(kMeansPath);

    Int index = 0;//初始化迭代次數(shù)

    while(index < 100) {

    Configuration conf = new Configuration();

    conf.set(FLAG,centerString);////將集群中心字符串放入配置中

    kMeansPath = new Path("mid-data/k-means/k-Means" +index);//此迭代的輸出路徑也是下一個(gè)質(zhì)心的讀取路徑

    /**確定輸出路徑是否存在*/

    FileSystem hdfs = FileSystem.get(conf);

    if(hdfs.exists(kMeansPath)) hdfs.delete(kMeansPath);

    Job job = new Job(conf,"kmeans" + index);

    job.setJarByClass(KmeansMR.class);

    job.setMapperClass(TokenizerMapper.class);

    5.重新加載質(zhì)心

    center = new Center();centerString = center.loadCenter(kMeansPath);

    index ++;}

    System.exit(0);}

    public static double distance(double[]a,double[]b) {

    if(a == null || b == null || a.length != b.length) return Double.MAX_VALUE;

    double dis = 0;

    for(int i = 0; i < a.length; i++) { dis += Math.pow(a[i]-b[i],2);}

    return Math.sqrt(dis);}}

    四、結(jié)語(yǔ)

    經(jīng)在Hadoop 框架上進(jìn)行測(cè)試,上述程序?qū)崿F(xiàn)了簡(jiǎn)單的K-Means 算法,并得出了較為理想的聚類效果。有關(guān)KMeans聚類算法在實(shí)際中的具體應(yīng)用,筆者將在后續(xù)的實(shí)踐中繼續(xù)進(jìn)行探究。

    猜你喜歡
    中心點(diǎn)質(zhì)心聚類
    重型半掛汽車質(zhì)量與質(zhì)心位置估計(jì)
    基于GNSS測(cè)量的天宮二號(hào)質(zhì)心確定
    Scratch 3.9更新了什么?
    如何設(shè)置造型中心點(diǎn)?
    電腦報(bào)(2019年4期)2019-09-10 07:22:44
    基于DBSACN聚類算法的XML文檔聚類
    漢字藝術(shù)結(jié)構(gòu)解析(二)中心點(diǎn)處筆畫應(yīng)緊奏
    基于改進(jìn)的遺傳算法的模糊聚類算法
    尋找視覺(jué)中心點(diǎn)
    大眾攝影(2015年9期)2015-09-06 17:05:41
    一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
    一種海洋測(cè)高衛(wèi)星質(zhì)心在軌估計(jì)算法
    航天器工程(2014年5期)2014-03-11 16:35:53
    亚洲七黄色美女视频| 久久久久国产精品人妻aⅴ院| 久久热精品热| 亚洲激情在线av| 国产黄色小视频在线观看| 日韩 亚洲 欧美在线| 国产又黄又爽又无遮挡在线| 欧美乱色亚洲激情| 此物有八面人人有两片| 麻豆国产97在线/欧美| 18禁裸乳无遮挡免费网站照片| 人妻久久中文字幕网| 99久久99久久久精品蜜桃| 91久久精品电影网| 欧美黑人欧美精品刺激| 国产成人影院久久av| 一卡2卡三卡四卡精品乱码亚洲| 韩国av一区二区三区四区| 亚洲中文字幕一区二区三区有码在线看| 草草在线视频免费看| av视频在线观看入口| 国产精品亚洲av一区麻豆| 亚洲中文日韩欧美视频| 久久久久久九九精品二区国产| 亚洲,欧美精品.| 日韩欧美精品免费久久 | 日韩欧美精品v在线| 亚洲狠狠婷婷综合久久图片| 能在线免费观看的黄片| 夜夜躁狠狠躁天天躁| 亚洲成人免费电影在线观看| 99久久精品热视频| 中亚洲国语对白在线视频| 特大巨黑吊av在线直播| 久久精品国产亚洲av涩爱 | 亚洲国产精品久久男人天堂| 欧美不卡视频在线免费观看| 国产不卡一卡二| 精品免费久久久久久久清纯| 女人被狂操c到高潮| 在线播放无遮挡| 国产精品久久久久久亚洲av鲁大| 亚洲无线在线观看| 亚洲人与动物交配视频| 看黄色毛片网站| 久久久久久九九精品二区国产| 亚洲内射少妇av| 亚洲欧美日韩高清专用| 国产精品一区二区免费欧美| 中文亚洲av片在线观看爽| 九九久久精品国产亚洲av麻豆| 夜夜爽天天搞| 别揉我奶头 嗯啊视频| 国产白丝娇喘喷水9色精品| eeuss影院久久| 欧美成人性av电影在线观看| 人妻久久中文字幕网| 国产毛片a区久久久久| 欧美bdsm另类| 色播亚洲综合网| 欧美极品一区二区三区四区| 内射极品少妇av片p| 亚洲成人精品中文字幕电影| 观看美女的网站| 特级一级黄色大片| 97人妻精品一区二区三区麻豆| 免费观看人在逋| 男人狂女人下面高潮的视频| 日韩国内少妇激情av| 亚洲国产精品sss在线观看| 亚洲人成网站在线播| 国产在线男女| 国产成+人综合+亚洲专区| 亚洲精品一区av在线观看| 欧美性猛交╳xxx乱大交人| 中文字幕精品亚洲无线码一区| 波多野结衣巨乳人妻| 国产精品久久久久久亚洲av鲁大| 99国产综合亚洲精品| 色视频www国产| 内射极品少妇av片p| eeuss影院久久| 夜夜爽天天搞| 老女人水多毛片| 亚洲电影在线观看av| 国产精品一区二区三区四区久久| 国产真实乱freesex| 麻豆一二三区av精品| 神马国产精品三级电影在线观看| 欧美性感艳星| 特大巨黑吊av在线直播| .国产精品久久| 国产精品,欧美在线| 国产精华一区二区三区| 亚洲三级黄色毛片| 91午夜精品亚洲一区二区三区 | 在线免费观看不下载黄p国产 | 自拍偷自拍亚洲精品老妇| 欧美日韩乱码在线| 免费黄网站久久成人精品 | bbb黄色大片| 亚洲午夜理论影院| 深夜a级毛片| 国产高清有码在线观看视频| 日本三级黄在线观看| 国产精品久久久久久久电影| 亚洲国产欧洲综合997久久,| 亚洲人与动物交配视频| 欧美+日韩+精品| 久久精品国产自在天天线| 一个人观看的视频www高清免费观看| www.熟女人妻精品国产| 成年女人看的毛片在线观看| 成年女人永久免费观看视频| 无人区码免费观看不卡| 熟妇人妻久久中文字幕3abv| 热99在线观看视频| 国产精华一区二区三区| 麻豆一二三区av精品| 亚洲乱码一区二区免费版| 狠狠狠狠99中文字幕| 久久伊人香网站| 亚洲 欧美 日韩 在线 免费| 久久精品综合一区二区三区| 首页视频小说图片口味搜索| 黄色日韩在线| 精品午夜福利在线看| 日韩 亚洲 欧美在线| 国产伦在线观看视频一区| 中文字幕人成人乱码亚洲影| a在线观看视频网站| 亚洲三级黄色毛片| 国产野战对白在线观看| 啪啪无遮挡十八禁网站| 久久久精品大字幕| 久久久久亚洲av毛片大全| 日本免费a在线| 日本在线视频免费播放| 每晚都被弄得嗷嗷叫到高潮| 俄罗斯特黄特色一大片| 欧美高清性xxxxhd video| 夜夜看夜夜爽夜夜摸| 久久久久久国产a免费观看| 久久久国产成人精品二区| 欧美不卡视频在线免费观看| 深夜精品福利| 免费在线观看成人毛片| 婷婷亚洲欧美| 国产私拍福利视频在线观看| 无人区码免费观看不卡| 欧美激情久久久久久爽电影| 88av欧美| 色视频www国产| .国产精品久久| 国产av不卡久久| 亚洲一区高清亚洲精品| 久久国产精品影院| 久久精品综合一区二区三区| 午夜福利成人在线免费观看| 国产午夜福利久久久久久| 久久久精品欧美日韩精品| 校园春色视频在线观看| 成人特级黄色片久久久久久久| 麻豆国产97在线/欧美| 男人狂女人下面高潮的视频| 成人特级黄色片久久久久久久| 九九热线精品视视频播放| 久久草成人影院| 日本黄色视频三级网站网址| 最近视频中文字幕2019在线8| 成熟少妇高潮喷水视频| 身体一侧抽搐| 观看美女的网站| 国产又黄又爽又无遮挡在线| 日本五十路高清| 性插视频无遮挡在线免费观看| 人妻丰满熟妇av一区二区三区| 欧美日本亚洲视频在线播放| 性色avwww在线观看| a级一级毛片免费在线观看| 美女大奶头视频| 日韩欧美精品免费久久 | 啪啪无遮挡十八禁网站| 国产欧美日韩精品一区二区| eeuss影院久久| 日韩亚洲欧美综合| 亚洲,欧美,日韩| 欧美午夜高清在线| 在线免费观看不下载黄p国产 | 久久婷婷人人爽人人干人人爱| 99在线视频只有这里精品首页| 久久久久久久久久成人| 亚洲精品色激情综合| 国产视频内射| 全区人妻精品视频| 听说在线观看完整版免费高清| 欧美高清性xxxxhd video| 欧美一区二区精品小视频在线| 嫩草影院新地址| 男女那种视频在线观看| 欧美日本亚洲视频在线播放| 国产亚洲av嫩草精品影院| 亚洲国产日韩欧美精品在线观看| 久久精品国产清高在天天线| 啦啦啦观看免费观看视频高清| 深夜a级毛片| 午夜精品在线福利| 少妇熟女aⅴ在线视频| 欧美黄色片欧美黄色片| 欧美中文日本在线观看视频| 久久精品91蜜桃| 欧美一区二区亚洲| av在线老鸭窝| 村上凉子中文字幕在线| 美女cb高潮喷水在线观看| 色5月婷婷丁香| 亚州av有码| 国产精品伦人一区二区| 色哟哟哟哟哟哟| а√天堂www在线а√下载| 精品久久久久久久久久免费视频| 日韩欧美精品v在线| 欧美成狂野欧美在线观看| 欧美乱色亚洲激情| 天堂√8在线中文| 欧美日韩亚洲国产一区二区在线观看| 91久久精品电影网| 中亚洲国语对白在线视频| 国产精品人妻久久久久久| 一进一出好大好爽视频| 97超级碰碰碰精品色视频在线观看| 一级黄色大片毛片| 美女xxoo啪啪120秒动态图 | 黄色视频,在线免费观看| 级片在线观看| 18禁黄网站禁片免费观看直播| 麻豆成人午夜福利视频| 一个人看的www免费观看视频| 九九热线精品视视频播放| 中文字幕人妻熟人妻熟丝袜美| 免费看a级黄色片| 青草久久国产| 国内精品一区二区在线观看| 国产精品日韩av在线免费观看| 直男gayav资源| 国产男靠女视频免费网站| 国产精华一区二区三区| 亚洲国产精品合色在线| 国产精品日韩av在线免费观看| 尤物成人国产欧美一区二区三区| 日韩欧美精品v在线| 亚洲国产色片| 在线a可以看的网站| 国产精品精品国产色婷婷| 又黄又爽又刺激的免费视频.| 深夜a级毛片| 能在线免费观看的黄片| 熟女电影av网| 亚洲av熟女| 小蜜桃在线观看免费完整版高清| 国产精品免费一区二区三区在线| 色av中文字幕| 免费看a级黄色片| 99在线视频只有这里精品首页| 一个人看的www免费观看视频| 国产精品自产拍在线观看55亚洲| 日韩大尺度精品在线看网址| 日韩欧美一区二区三区在线观看| 欧美丝袜亚洲另类 | 天堂√8在线中文| 色尼玛亚洲综合影院| 久久人人精品亚洲av| 99精品久久久久人妻精品| 变态另类成人亚洲欧美熟女| 欧美成人性av电影在线观看| 欧美日本视频| 少妇的逼好多水| 99久久成人亚洲精品观看| 国产真实伦视频高清在线观看 | 免费一级毛片在线播放高清视频| 香蕉av资源在线| 国产v大片淫在线免费观看| 大型黄色视频在线免费观看| 国产亚洲精品久久久com| 亚洲色图av天堂| 国产精品女同一区二区软件 | 成人国产一区最新在线观看| 亚洲最大成人手机在线| 网址你懂的国产日韩在线| 国产精品自产拍在线观看55亚洲| 成人欧美大片| 国产成年人精品一区二区| 别揉我奶头 嗯啊视频| 深夜a级毛片| 少妇人妻精品综合一区二区 | 色精品久久人妻99蜜桃| 老司机深夜福利视频在线观看| 女生性感内裤真人,穿戴方法视频| 国产大屁股一区二区在线视频| 国产不卡一卡二| 最新在线观看一区二区三区| 成人国产一区最新在线观看| 99精品久久久久人妻精品| 亚洲成人免费电影在线观看| 日本 欧美在线| 熟妇人妻久久中文字幕3abv| 露出奶头的视频| 99热精品在线国产| 他把我摸到了高潮在线观看| 亚洲av电影不卡..在线观看| 少妇人妻一区二区三区视频| 无人区码免费观看不卡| 午夜福利高清视频| av女优亚洲男人天堂| 麻豆成人av在线观看| 亚洲aⅴ乱码一区二区在线播放| 色5月婷婷丁香| a级毛片a级免费在线| 99热精品在线国产| 欧美精品国产亚洲| 天堂影院成人在线观看| 一a级毛片在线观看| 三级毛片av免费| 欧美三级亚洲精品| 桃红色精品国产亚洲av| av福利片在线观看| 欧美成人a在线观看| 757午夜福利合集在线观看| 国内毛片毛片毛片毛片毛片| 欧美高清成人免费视频www| АⅤ资源中文在线天堂| 国产精品一区二区免费欧美| 久久中文看片网| 内地一区二区视频在线| 色噜噜av男人的天堂激情| 麻豆av噜噜一区二区三区| 久久热精品热| 精品欧美国产一区二区三| 在线观看免费视频日本深夜| 中国美女看黄片| 老熟妇乱子伦视频在线观看| 色播亚洲综合网| 日韩精品中文字幕看吧| 我要搜黄色片| 亚洲无线观看免费| 极品教师在线免费播放| 久久久久免费精品人妻一区二区| 噜噜噜噜噜久久久久久91| 丁香六月欧美| 色综合站精品国产| 欧美最黄视频在线播放免费| 久久久久久久久久黄片| 男女那种视频在线观看| 亚洲18禁久久av| 老师上课跳d突然被开到最大视频 久久午夜综合久久蜜桃 | 久久久久国内视频| 亚洲人成网站在线播放欧美日韩| 老鸭窝网址在线观看| 99国产精品一区二区三区| 免费观看人在逋| 国产精品不卡视频一区二区 | 一个人看视频在线观看www免费| 国内毛片毛片毛片毛片毛片| 亚洲一区二区三区不卡视频| 极品教师在线免费播放| 色5月婷婷丁香| 欧美一区二区亚洲| 国产熟女xx| a级毛片免费高清观看在线播放| 亚洲欧美日韩高清在线视频| 亚洲美女视频黄频| 亚洲美女搞黄在线观看 | 中文亚洲av片在线观看爽| 日本黄大片高清| 禁无遮挡网站| 国产一级毛片七仙女欲春2| 禁无遮挡网站| 不卡一级毛片| 精品久久久久久久末码| 麻豆成人av在线观看| 午夜老司机福利剧场| 欧美激情久久久久久爽电影| 亚洲aⅴ乱码一区二区在线播放| 亚洲最大成人中文| 欧美在线一区亚洲| 麻豆成人av在线观看| 18禁裸乳无遮挡免费网站照片| 亚洲成人免费电影在线观看| 给我免费播放毛片高清在线观看| 色哟哟哟哟哟哟| 亚洲欧美日韩高清专用| 大型黄色视频在线免费观看| 午夜激情福利司机影院| 日本五十路高清| 国产美女午夜福利| 嫩草影视91久久| aaaaa片日本免费| 精品人妻1区二区| 国产精品亚洲av一区麻豆| 少妇人妻一区二区三区视频| 亚洲久久久久久中文字幕| 久久亚洲精品不卡| 老师上课跳d突然被开到最大视频 久久午夜综合久久蜜桃 | 欧美丝袜亚洲另类 | av在线天堂中文字幕| 午夜免费男女啪啪视频观看 | 在线免费观看的www视频| 国产 一区 欧美 日韩| 久久精品国产亚洲av香蕉五月| 精品久久久久久成人av| 亚洲综合色惰| 午夜精品一区二区三区免费看| 有码 亚洲区| 午夜精品一区二区三区免费看| 亚洲自偷自拍三级| a级一级毛片免费在线观看| 国产一区二区三区在线臀色熟女| 内射极品少妇av片p| 免费人成视频x8x8入口观看| 一个人看的www免费观看视频| 色精品久久人妻99蜜桃| 永久网站在线| 中文字幕精品亚洲无线码一区| 色在线成人网| 99热这里只有精品一区| 宅男免费午夜| 看片在线看免费视频| 亚洲av电影在线进入| 内射极品少妇av片p| 色播亚洲综合网| 久久香蕉精品热| 国产淫片久久久久久久久 | 青草久久国产| 亚洲精品亚洲一区二区| 久久精品国产99精品国产亚洲性色| 少妇被粗大猛烈的视频| 又黄又爽又刺激的免费视频.| 精品久久久久久久久av| 欧美+日韩+精品| 毛片一级片免费看久久久久 | 日韩欧美国产一区二区入口| 91麻豆av在线| 日韩欧美三级三区| 亚洲中文日韩欧美视频| 亚洲欧美日韩卡通动漫| 精品国产亚洲在线| x7x7x7水蜜桃| 亚洲成人中文字幕在线播放| 乱码一卡2卡4卡精品| 九色成人免费人妻av| 午夜免费男女啪啪视频观看 | 国产一区二区三区在线臀色熟女| 亚洲国产精品合色在线| 国产亚洲精品久久久com| 亚洲自偷自拍三级| 国产av麻豆久久久久久久| 深爱激情五月婷婷| 99久久99久久久精品蜜桃| 麻豆国产97在线/欧美| 日本一本二区三区精品| 香蕉av资源在线| 看片在线看免费视频| www.999成人在线观看| 波多野结衣巨乳人妻| 最近中文字幕高清免费大全6 | 每晚都被弄得嗷嗷叫到高潮| 国产69精品久久久久777片| 男女下面进入的视频免费午夜| 观看免费一级毛片| 亚洲最大成人av| 久久久久国产精品人妻aⅴ院| 高清毛片免费观看视频网站| 91字幕亚洲| 国产精品伦人一区二区| 美女黄网站色视频| 亚洲成av人片在线播放无| 亚洲欧美日韩卡通动漫| 亚洲中文字幕一区二区三区有码在线看| 午夜激情福利司机影院| 热99在线观看视频| 国产av麻豆久久久久久久| 亚洲av一区综合| 欧美日韩国产亚洲二区| 嫩草影院精品99| 级片在线观看| 中文字幕人妻熟人妻熟丝袜美| 一a级毛片在线观看| 国产成人av教育| 亚洲精品在线美女| 丝袜美腿在线中文| 成人永久免费在线观看视频| 我要看日韩黄色一级片| 中文字幕av在线有码专区| 波多野结衣高清作品| 午夜日韩欧美国产| 午夜福利在线观看吧| 在线观看av片永久免费下载| 亚洲欧美精品综合久久99| 亚洲精品色激情综合| 国产亚洲精品av在线| 日本 欧美在线| 日韩免费av在线播放| 老司机福利观看| 亚洲av美国av| 欧美激情国产日韩精品一区| 青草久久国产| 少妇人妻一区二区三区视频| 国产成人a区在线观看| 中文字幕熟女人妻在线| 日本成人三级电影网站| 美女 人体艺术 gogo| 久久这里只有精品中国| 国产在线男女| 中亚洲国语对白在线视频| 国产爱豆传媒在线观看| 校园春色视频在线观看| 国产一区二区在线av高清观看| 在线十欧美十亚洲十日本专区| 男人的好看免费观看在线视频| 国产男靠女视频免费网站| 精品人妻一区二区三区麻豆 | 九九在线视频观看精品| 非洲黑人性xxxx精品又粗又长| 亚洲美女视频黄频| 中文字幕av在线有码专区| 性插视频无遮挡在线免费观看| 精品人妻偷拍中文字幕| 中文字幕免费在线视频6| 国产一区二区在线av高清观看| 又黄又爽又免费观看的视频| 一级作爱视频免费观看| 国产不卡一卡二| 国产av麻豆久久久久久久| 色播亚洲综合网| 日韩人妻高清精品专区| 亚洲第一电影网av| 露出奶头的视频| 欧美日韩综合久久久久久 | 在线播放国产精品三级| 九九热线精品视视频播放| av天堂中文字幕网| 欧美色欧美亚洲另类二区| 一进一出好大好爽视频| 一本综合久久免费| 久久久色成人| 男人舔女人下体高潮全视频| 午夜视频国产福利| 午夜老司机福利剧场| 久久人人精品亚洲av| 日本一本二区三区精品| а√天堂www在线а√下载| 12—13女人毛片做爰片一| 中文字幕免费在线视频6| 国产三级黄色录像| 一级黄色大片毛片| 国产69精品久久久久777片| 男女床上黄色一级片免费看| 黄色配什么色好看| 51国产日韩欧美| 色综合亚洲欧美另类图片| 91九色精品人成在线观看| 国产亚洲精品久久久com| 五月伊人婷婷丁香| 真人做人爱边吃奶动态| 国产精品久久视频播放| 亚洲精品一区av在线观看| 亚洲人成网站高清观看| 精品免费久久久久久久清纯| 国内少妇人妻偷人精品xxx网站| 色尼玛亚洲综合影院| 欧美性猛交╳xxx乱大交人| 久久精品91蜜桃| 色av中文字幕| 一个人免费在线观看的高清视频| 成人特级黄色片久久久久久久| 久久草成人影院| 亚洲av免费高清在线观看| 国产不卡一卡二| 在线国产一区二区在线| 国产成人影院久久av| 成人三级黄色视频| 精品国内亚洲2022精品成人| 色精品久久人妻99蜜桃| 国产午夜精品久久久久久一区二区三区 | 午夜a级毛片| 看黄色毛片网站| 国产精华一区二区三区| 国产不卡一卡二| 可以在线观看毛片的网站| 亚洲国产精品成人综合色| 欧美+亚洲+日韩+国产| 最近最新中文字幕大全电影3| 狠狠狠狠99中文字幕| 嫩草影视91久久| 又黄又爽又刺激的免费视频.| 99国产精品一区二区蜜桃av| 国产精品影院久久| 日本一本二区三区精品| 欧美在线一区亚洲| 亚洲精品一区av在线观看| 看免费av毛片| 嫩草影院入口| 少妇人妻一区二区三区视频| 亚洲av中文字字幕乱码综合| 俺也久久电影网| 色噜噜av男人的天堂激情| 国产亚洲精品av在线| 麻豆国产av国片精品| 国产蜜桃级精品一区二区三区| 亚洲,欧美,日韩| bbb黄色大片| 男女床上黄色一级片免费看| 一个人看的www免费观看视频| 女人被狂操c到高潮| 欧美一区二区国产精品久久精品|