精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Python 離群點檢測算法-OCSVM

開發(fā) 前端
OCSVM根據(jù)正常類的屬性建立模型,以檢測非正常類數(shù)據(jù)。它在高維空間中將數(shù)據(jù)點與原點分離,并最大化該超平面到原點的距離。換句話說,原點就是算法試圖從正常類中分離出來的類。

分類問題通常采用監(jiān)督學習算法解決,如隨機森林、支持向量機、邏輯回歸器等。監(jiān)督學習算法需要已知目標來建立模型,但通常只能觀察到正常的數(shù)據(jù)模式,而看不到罕見事件。由于罕見事件的目標數(shù)據(jù)要么不可用,要么數(shù)量不足以進行模型訓練,單類支持向量機(OCSVM)可以解決只有一類數(shù)據(jù)的問題,對正常類的屬性進行建模,能夠檢測到異常數(shù)據(jù)。本章將解釋支持向量機 (SVM) 的概念,并介紹如何將其發(fā)展為單類 SVM (OCSVM),以及它是如何定義離群值的。

支持向量機(SVM)

支持向量機(SVM)是一種監(jiān)督學習算法,可處理分類和回歸問題,由Vladimir Vapnik及其同事在1992-1995年在AT&T貝爾實驗室開發(fā)。現(xiàn)已廣泛應用于分類問題。

SVM 有一個非常巧妙的特性。它可以創(chuàng)建一個非線性決策邊界來分離兩個類別。它在高維空間中找到分離的方法非常優(yōu)雅。首先將無法用直線分離的數(shù)據(jù)點投影到高維空間,然后就會出現(xiàn)一個 "直線 "超平面,將一個類別的數(shù)據(jù)點與另一個類別的數(shù)據(jù)點分離開來。當超平面投影回原始空間時,它將是一條非線性曲線。這可以從圖 (B) 中看出。左圖顯示,藍點和紅點無法用任何直線分開。但如果將所有點投影到三維空間,結果就變成了線性分離。當數(shù)據(jù)投影回原始空間時,邊界則是一條非線性曲線。為什么在高維空間中成分分離會變得更容易?這要追溯到瓦普尼克-切沃能基斯(VC)理論。該理論認為,映射到更高維度的空間往往能提供更強的分類能力。

SVMSVM

SVM在高維空間中尋找支持向量,如上圖所示的虛線超平面。支持向量位于特征空間中每個類別的邊緣,通過最大化超平面的間隔來實現(xiàn)兩個類別的最大分離度。除了支持向量之間的區(qū)域外,SVM還允許一些點以避免過度擬合。

從 SVM 到單類 SVM

建立算法來區(qū)分一個類和另一個類的方法之一是使用單類 SVM。這種方法將所有數(shù)據(jù)點從高維空間的原點分離出來,并將該超平面到原點的距離最大化,以此來從正常類中分離出目標類。另一種方法是使用球面進行分離,而不是超平面。

OVSVMOVSVM

OCSVM 如何定義離群點得分?

OCSVM 離群點得分是數(shù)據(jù)點到超平面的距離,也稱為相似度。相似度的計算方法是使用核函數(shù)如徑向基函數(shù)、線性函數(shù)、多項式函數(shù)或西格瑪函數(shù)計算相應的 N 維相似度矩陣之和。徑向基函數(shù)簡單地計算輸入 x 與固定點 c 之間的距離。如。

OCSVM 對 RBF 和參數(shù)的選擇很敏感

OCSVM 對于內(nèi)核選擇和部分超參數(shù)非常敏感,這會導致不同選擇下性能有很大差異。根據(jù)文獻的記錄,一個名為nu的重要超參數(shù)決定了數(shù)據(jù)點成為訓練數(shù)據(jù)中離群點的概率。它的取值介于0和1之間。當nu為10%時,意味著10%的數(shù)據(jù)被支持邊界錯誤地分類為離群值,也意味著10%的數(shù)據(jù)位于邊界上。具體來說,nu需要在離群值和支持向量數(shù)量之間進行權衡。

由于OCSVM對超參數(shù)非常敏感,解決方法是建立多個模型,然后平均預測結果以獲得更穩(wěn)定的結果。在接下來的章節(jié)中,將用一系列nu值建立模型,然后對預測結果進行匯總。

建模流程

步驟 1 - 建立模型

我們將使用數(shù)據(jù)生成過程 (DGP) 模擬 500 個觀測值和六個變量,其中異常值比例設定為 5%。目標變量為 Y,我們將只使用 X 數(shù)據(jù)來建立無監(jiān)督模型 OCSVM。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pyod.utils.data import generate_data
contamination = 0.05 # percentage of outliers
n_train = 500       # number of training points
n_test = 500        # number of testing points
n_features = 6      # number of features
X_train, X_test, y_train, y_test = generate_data(
    n_train=n_train, 
    n_test=n_test, 
    n_features= n_features, 
    cnotallow=contamination, 
    random_state=123)

X_train_pd = pd.DataFrame(X_train)
X_train_pd.head()

圖片圖片

下圖是前兩個變量的散點圖。黃色圓點為異常值,紫色圓點為正常數(shù)據(jù)點。

# Plot
plt.scatter(X_train_pd[0], X_train_pd[1], c=y_train, alpha=0.8)
plt.title('Scatter plot')
plt.xlabel('x0')
plt.ylabel('x1')
plt.show()

圖片

下面的代碼通過指定并擬合了模型 ocsvm,其中參數(shù) cnotallow=0.05 表示離群值的百分比為 5%。這一參數(shù)對離群值分數(shù)的計算并沒有影響。如果沒有指定,PyOD 的默認值為 10%。接下來,函數(shù) decision_function() 用于計算觀測值的離群值,而函數(shù) predict() 則根據(jù)contamination的賦值來決定輸出 "1" 或 "0"。最后,語法 .threshold_ 可以顯示指定contamination下的閾值。

from pyod.models.ocsvm import OCSVM
ocsvm = OCSVM(cnotallow=0.05)  
ocsvm.fit(X_train)

# Training data
y_train_scores = ocsvm.decision_function(X_train)
y_train_pred = ocsvm.predict(X_train)

# Test data
y_test_scores = ocsvm.decision_function(X_test)
y_test_pred = ocsvm.predict(X_test) # outlier labels (0 or 1)

def count_stat(vector):
    # Because it is '0' and '1', we can run a count statistic. 
    unique, counts = np.unique(vector, return_counts=True)
    return dict(zip(unique, counts))

print("The training data:", count_stat(y_train_pred))
print("The training data:", count_stat(y_test_pred))
# Threshold for the defined comtanimation rate
print("The threshold for the defined comtanimation rate:" , ocsvm.threshold_)
The training data: {0: 475, 1: 25}
The training data: {0: 475, 1: 25}
The threshold for the defined comtanimation rate: 
29.680071121036956

我們可以通過.get_params() 打印出超參數(shù)值:

ocsvm.get_params()
{'cache_size': 200,
 'coef0': 0.0,
 'contamination': 0.05,
 'degree': 3,
 'gamma': 'auto',
 'kernel': 'rbf',
 'max_iter': -1,
 'nu': 0.5,
 'shrinking': True,
 'tol': 0.001,
 'verbose': False}

OCSVM的主要參數(shù)與核函數(shù)密切相關,默認情況下使用rbf核函數(shù),nu值為0.5。此外,核函數(shù)中的獨立項coef0在poly和sigmoid中具有意義。對于多項式核函數(shù)(poly),degree決定了多項式函數(shù)的階數(shù)。模型優(yōu)化的最大迭代次數(shù)由max_iterint設置,默認為-1,表示在優(yōu)化達到收斂之前沒有限制。停止條件的容差可通過參數(shù)tol進行設置。catch_size決定了RAM的大小,從而影響了計算機RAM的使用率,默認值為200(MB)。在內(nèi)存足夠的情況下,可以選擇將其調(diào)整為更高的值,例如500(MB)或1000(MB)。通常情況下,無需過于擔心此參數(shù)。

步驟 2 - 確定合理的閾值

離群值得分衡量離群值和正常數(shù)據(jù)點的偏差,所以可以使用離群值得分的直方圖來了解分布情況。直方圖展示了離群值高的數(shù)據(jù)點所占的百分比,從而有助于確定合理的閾值。圖 (E.2) 建議將閾值設為 16.0,因為直方圖中存在一個自然切點,閾值決定了異常組的大小。

import matplotlib.pyplot as plt
plt.hist(y_train_scores, bins='auto')  # arguments are passed to np.histogram
plt.title("Histogram with 'auto' bins")
plt.xlabel('One-class SVM outlier score')
plt.show()

圖片圖片

第 3 步 - 顯示正常組和異常組的描述性統(tǒng)計結果

離群值得分衡量離群值和正常數(shù)據(jù)點的偏差,所以可以使用離群值得分的直方圖來了解分布情況。直方圖展示了離群值高的數(shù)據(jù)點所占的百分比,從而有助于確定合理的閾值。上圖建議將閾值設為 16.0,因為直方圖中存在一個自然切點,閾值決定了異常組的大小。

threshold = ocsvm.threshold_ # Or other value from the above histogram

def descriptive_stat_threshold(df,pred_score, threshold):
    # Let's see how many '0's and '1's.
    df = pd.DataFrame(df)
    df['Anomaly_Score'] = pred_score
    df['Group'] = np.where(df['Anomaly_Score']< threshold, 'Normal', 'Outlier')

    # Now let's show the summary statistics:
    cnt = df.groupby('Group')['Anomaly_Score'].count().reset_index().rename(columns={'Anomaly_Score':'Count'})
    cnt['Count %'] = (cnt['Count'] / cnt['Count'].sum()) * 100 # The count and count %
    stat = df.groupby('Group').mean().round(2).reset_index() # The avg.
    stat = cnt.merge(stat, left_notallow='Group',right_notallow='Group') # Put the count and the avg. together
    return (stat)

descriptive_stat_threshold(X_train,y_train_scores, threshold)

圖片圖片

模型評估中的關鍵指標包括計數(shù)百分比和特征均值。閾值的選擇將決定離群值的數(shù)量,較高的閾值將導致離群值減少。特征均值要與領域知識保持一致,如有偏離應重新檢查或刪除該特征。在進行特征標注時需要有效展示。離群組的平均異常得分應高于正常組。我們可以利用混淆矩陣來評估模型性能,該模型成功識別了全部25個離群值。

Actual_pred = pd.DataFrame({'Actual': y_test, 'Anomaly_Score': y_test_scores})
Actual_pred['Pred'] = np.where(Actual_pred['Anomaly_Score']< threshold,0,1)
pd.crosstab(Actual_pred['Actual'],Actual_pred['Pred'])

圖片圖片

通過聚合多個模型實現(xiàn)模型穩(wěn)定性

OCSVM是一種基于鄰近度的算法,對異常值敏感且容易過擬合,特別是在第(D)節(jié)中。為了建立穩(wěn)定的模型結果,應建立多個參數(shù)范圍各異的模型,然后匯總預測結果。

PyOD模塊提供了四種匯總結果的方法:平均值(Average)、最大值的最大值(MOM)、最大值的平均值(AOM)、平均值的最大值(MOA)。安裝這些函數(shù)使用 pip install combo。請注意,只需使用一種聚合方法。另外,輸入數(shù)據(jù)已經(jīng)被標準化處理,但許多函數(shù)會自動進行標準化處理。

由于nu參數(shù)最敏感,因此需要建立多個 nu 值范圍廣泛的模型,總共會有 11 個模型。我們準備 11 列的空數(shù)據(jù)幀來存儲這些模型的預測結果。

from pyod.models.combination import aom, moa, average, maximization
from pyod.utils.utility import standardizer
from pyod.models.ocsvm import OCSVM

# Standardize data
X_train_norm, X_test_norm = standardizer(X_train, X_test)

# Test a range of nu
k_list = [0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 0.99]
n_clf = len(k_list)
# Just prepare data frames so we can store the model results
train_scores = np.zeros([X_train.shape[0], n_clf])
test_scores = np.zeros([X_test.shape[0], n_clf])

# Modeling
for i in range(n_clf):
    k = k_list[i]
    ocsvm = OCSVM(nu=k,cnotallow=0.05)  
    ocsvm.fit(X_train_norm)
    # Store the results in each column:
    train_scores[:, i] = ocsvm.decision_function(X_train_norm) 
    test_scores[:, i] = ocsvm.decision_function(X_test_norm) 
# Decision scores have to be normalized before combination
train_scores_norm, test_scores_norm = standardizer(train_scores,test_scores)

預測模型的十個分數(shù)存儲在 "train_scores" 中,并對其進行了歸一化處理,以便對十個預測結果進行平均。PyOD 模塊提供了四種聚合方法,你只需選擇其中一種即可得出匯總結果。

# Combination by average
# The test_scores_norm is 500 x 10. The "average" function will take the average of the 10 columns. The result "y_by_average" is a single column: 
y_train_by_average = average(train_scores_norm)
y_test_by_average = average(test_scores_norm)
import matplotlib.pyplot as plt
plt.hist(y_train_by_average, bins='auto') # arguments are passed to np.histogram
plt.title("Combination by average")
plt.show()

訓練數(shù)據(jù)平均預測值直方圖訓練數(shù)據(jù)平均預測值直方圖

圖表顯示閾值為1.40,根據(jù)總分可得到描述性統(tǒng)計,發(fā)現(xiàn)有25個數(shù)據(jù)點為異常值。讀者可以對表(D.3)進行類似的解釋。

descriptive_stat_threshold(
      X_train,y_train_by_average, 1.4)

圖片圖片

OCSVMA 算法總結

OCSVM根據(jù)正常類的屬性建立模型,以檢測非正常類數(shù)據(jù)。它在高維空間中將數(shù)據(jù)點與原點分離,并最大化該超平面到原點的距離。換句話說,原點就是算法試圖從正常類中分離出來的類。

責任編輯:武曉燕 來源: 數(shù)據(jù)STUDIO
相關推薦

2024-05-30 12:50:54

2023-03-13 13:35:00

幾何算法矩形碰撞檢測

2017-09-20 16:25:00

深度學習視覺領域計算機

2020-11-02 13:44:35

算法數(shù)據(jù)科學Python

2018-01-23 16:16:03

開源技術 Facebook

2020-11-02 11:24:52

算法人臉識別技術

2018-09-17 15:30:05

機器學習密度異常值

2020-10-18 07:15:53

Python異常檢測算法開發(fā)

2024-04-26 10:00:03

自動駕駛模型

2009-07-15 10:40:06

碰撞檢測算法Java ME

2020-12-24 19:01:14

iForest大數(shù)據(jù)檢測算法

2023-11-13 22:17:54

YOLO-NAS目標檢測

2024-07-18 00:00:25

PyTorch神經(jīng)網(wǎng)絡

2024-06-05 09:26:50

2021-07-24 11:23:41

算法開源技術

2022-03-07 10:04:09

機器學習訓練模型

2020-11-10 15:22:46

算法PythonIoU

2024-09-09 14:57:31

2022-02-14 11:37:59

自動駕駛算法技術

2020-05-20 07:00:00

DevOps端點檢測網(wǎng)絡攻擊
點贊
收藏

51CTO技術棧公眾號

国内精品福利视频| 农村末发育av片一区二区| 日本中文在线观看| 国产在线视视频有精品| 久久久久久久久久久免费| 三级黄色片网站| 欧美三级电影网址| 亚洲国产日韩a在线播放| 日本不卡在线播放| 亚洲av综合色区无码一二三区| 亚洲伦伦在线| 深夜福利一区二区| 国产午夜在线一区二区三区| 在线国产成人影院| 亚洲一区中文日韩| 亚洲欧洲免费无码| 人成网站在线观看| 国产在线精品不卡| 人人澡人人澡人人看欧美| 精品国产欧美日韩不卡在线观看| 看全色黄大色大片免费久久久| 欧美另类一区二区三区| 六月丁香婷婷激情| 亚洲综合影视| 国产精品福利一区二区三区| 国产在线精品日韩| 精品人妻av一区二区三区| 日本成人在线视频网站| 51精品国产黑色丝袜高跟鞋| 成人观看免费视频| 日韩不卡一区| 亚洲欧洲在线播放| 噜噜噜在线视频| 高清日韩中文字幕| 日韩欧美综合在线| 九九热精品国产| 日韩经典一区| 色婷婷久久久久swag精品| 久草视频国产在线| 啪啪免费视频一区| 亚洲日本va在线观看| 色噜噜色狠狠狠狠狠综合色一| 午夜av免费观看| 粉嫩av一区二区三区| 亚洲一区亚洲二区| 国产成人麻豆精品午夜在线| 久久精品99国产精品| 国产成人精品视| 国产视频1区2区| 免费亚洲视频| 国产成人久久久精品一区| 中文字幕一区二区三区精品| 樱桃成人精品视频在线播放| 欧美国产激情18| 麻豆91精品91久久久| 欧美欧美天天天天操| 久久夜色精品国产| 激情视频在线播放| 欧美日本中文| 国产69精品99久久久久久宅男| 青青草手机视频在线观看| 欧美精品二区| 久久全球大尺度高清视频| 亚洲激情视频一区| 亚洲免费黄色| 热久久免费视频精品| 成人黄色免费网| 久久av资源网| 51国偷自产一区二区三区的来源| 精品黑人一区二区三区国语馆| 国产成人综合亚洲网站| 国产精品视频入口| 日本不卡免费播放| 中文在线免费一区三区高中清不卡| 性欧美精品一区二区三区在线播放 | 99免费精品| 美日韩精品免费视频| 国产亚洲第一页| 亚洲欧美日韩国产一区二区| 国产精品久久久久影院日本| 国产精品乱码一区二区| 国产福利一区在线| 久久九九视频| 欧美a免费在线| 亚洲一区视频在线| 久久9精品区-无套内射无码| 久久亚洲国产精品尤物| 精品日韩成人av| 国产交换配乱淫视频免费| 日韩精品二区| 国内精品伊人久久| 瑟瑟视频在线免费观看| 成人手机在线视频| 日韩av在线电影观看| 尤物yw193can在线观看| 一本高清dvd不卡在线观看| 九九精品久久久| 国产精品久久久网站| 永久免费精品影视网站| 免费麻豆国产一区二区三区四区| 久久精品123| 97伦理在线四区| porn亚洲| 欧美日韩一区二区免费在线观看| www.久久av.com| 亚洲第一福利专区| 精品自拍视频在线观看| 日韩精品一区不卡| 国产91精品在线观看| 天堂va久久久噜噜噜久久va| av电影免费在线看| 4438x成人网最大色成网站| 伊人网伊人影院| 亚洲国产午夜| 91国产在线播放| 91免费在线| 欧美日韩国产精品一区二区三区四区 | 极品魔鬼身材女神啪啪精品| 亚洲欧美日韩在线观看a三区| 91成人理论电影| 77导航福利在线| 日韩欧美在线第一页| 自拍视频第一页| 99视频精品全部免费在线视频| 欧美最猛性xxxxx免费| 亚洲免费成人在线| 亚洲黄色免费电影| 久久国产精品国产精品| 视频一区欧美| 国产69久久精品成人| 丁香六月天婷婷| 一区二区三区日本| 污免费在线观看| 性xxxx欧美老肥妇牲乱| 国产精品亚发布| h视频网站在线观看| 色妹子一区二区| 欧美特黄一区二区三区| 亚洲一区欧美激情| 精品一区二区不卡| caoporn-草棚在线视频最| 日韩精品一区二区三区在线播放| 国产老头老太做爰视频| 久久精品国产久精国产| 一级做a爰片久久| 日日夜夜亚洲| 日韩中文字幕视频在线观看| 欧美成人一区二区视频| 中文字幕精品一区二区三区精品| 日韩欧美在线免费观看视频| 国内成人精品| 国产精品久久久久久久美男 | av五月天在线| 日韩极品一区| 91最新在线免费观看| 成人av黄色| 日韩欧美国产综合在线一区二区三区| 夫妻性生活毛片| 国产成人精品亚洲777人妖| 日韩一级片一区二区| 99re8这里有精品热视频免费 | 欧洲一级精品| 这里只有视频精品| 国产精品一区二区av白丝下载| 亚洲婷婷国产精品电影人久久| 亚洲欧美日韩一二三区| 国产精品99一区二区| 国产精品国产亚洲精品看不卡15| 久久影院午夜精品| 国产一区二区三区日韩欧美| 伊人成人在线观看| 亚洲六月丁香色婷婷综合久久| 中文字幕亚洲日本| 免费视频一区| 中文字幕一区二区三区有限公司| 日韩av综合| 欧美孕妇与黑人孕交| 91看片在线观看| 日韩欧美一级特黄在线播放| www成人在线| 中文字幕精品—区二区四季| 国产裸体视频网站| 国产亚洲毛片在线| 一本色道久久综合亚洲二区三区| 视频一区在线| 国产成人精品亚洲精品| 二区在线播放| 精品视频在线播放色网色视频| 中文字幕视频一区二区| 一级日本不卡的影视| 三上悠亚影音先锋| 国产又黄又大久久| 色诱视频在线观看| 天天av综合| 免费精品视频一区二区三区| 伊人久久大香| 日韩免费观看视频| 中文字幕伦理免费在线视频| 亚洲区免费影片| 性中国xxx极品hd| 在线国产亚洲欧美| 国产午夜小视频| 国产精品激情偷乱一区二区∴| 天天躁日日躁狠狠躁av麻豆男男| 奇米888四色在线精品| 丰满少妇久久久| 国产精品国内免费一区二区三区| 久久久com| 久久国产精品美女| 国产精品久久视频| av免费不卡| 久久在线免费观看视频| 91在线不卡| 亚洲人午夜色婷婷| 日韩永久免费视频| 91精品国产综合久久精品麻豆| 精品国产乱子伦| 亚洲成a人v欧美综合天堂| 国产午夜精品理论片| 国产午夜精品一区二区三区嫩草| youjizz.com国产| 国产一区二区视频在线| a在线观看免费视频| 裸体一区二区| 日韩精品xxxx| 精品1区2区3区4区| 日韩人妻精品一区二区三区| 国产一区不卡| 欧美一级日本a级v片| 国产丝袜一区| 国产精选一区二区| 日韩免费成人| 69堂成人精品视频免费| 国产亚洲高清在线观看| 国产欧美一区二区白浆黑人| 一二区成人影院电影网| 国产成人精品综合| 欧美成人资源| 国产成人午夜视频网址| 都市激情综合| 欧美综合在线第二页| 蜜桃麻豆av在线| 欧美一级黄色网| 欧美1级2级| 国产精品女视频| 国产一区二区三区四区五区3d| 国产精品久久久av| 激情中国色综合| 91九色视频导航| 国产精品一区二区三区四区在线观看| 成人免费自拍视频| 国产麻豆一区二区三区| 91gao视频| 欧美久久香蕉| 欧美极品色图| 欧美美女视频| 一区二区三区四区欧美日韩| 91中文字幕精品永久在线| 一区二区视频在线播放| 国产高清欧美| 国产成人亚洲综合无码| 在线观看视频日韩| 欧美a在线视频| 日韩精品一卡二卡三卡四卡无卡| 中文字幕第88页| 国产精品一区在线观看你懂的| 国产人妖在线观看| 91亚洲精华国产精华精华液| 成人影视免费观看| 国产精品视频一二| 91麻豆精品成人一区二区| 亚洲高清免费在线| 中文字幕在线欧美| 欧美精品欧美精品系列| 性欧美8khd高清极品| 日韩国产一区三区| 在线观看h片| 九九九久久久久久| 一级毛片久久久| 成人欧美在线视频| 粉嫩av一区二区| 日产精品久久久一区二区| 91不卡在线观看| 毛片在线视频播放| 九九**精品视频免费播放| 任你躁av一区二区三区| 久久久国产午夜精品| 欧美成人aaa片一区国产精品| 精品福利在线观看| 国产伦精品一区二区三区免.费| 亚洲精品一区二区三区香蕉| 岛国在线大片| 国内精品久久久久久久| 欧美亚洲人成在线| 九色综合日本| 欧美一区高清| www.国产区| 成人免费视频一区二区| 日韩一区二区a片免费观看| 一区二区在线看| 欧美另类高清videos的特点| 精品国产凹凸成av人网站| 日韩伦理在线观看| 国产91精品久| 18国产精品| 伊人久久99| 久久欧美肥婆一二区| 在线看黄色的网站| 亚洲欧洲三级电影| 一级片免费在线播放| 精品日韩成人av| 麻豆视频在线观看免费| 国产成人精品一区二区在线| 美女一区2区| 真人做人试看60分钟免费| 日韩avvvv在线播放| 国产麻豆xxxvideo实拍| 亚洲乱码日产精品bd| 在线观看亚洲国产| 亚洲欧美日韩在线高清直播| 6699嫩草久久久精品影院| 亚洲已满18点击进入在线看片| 欧美中文一区二区| 日韩一级在线免费观看| 91网站在线播放| 日韩成人一区二区三区| 日韩午夜在线影院| 国产色在线观看| 国产欧美精品一区二区| 婷婷国产精品| 5月婷婷6月丁香| www..com久久爱| 在线观看 中文字幕| 欧美xxxxxxxxx| 羞羞视频在线观看免费| 3d动漫精品啪啪一区二区三区免费| 欧美呦呦网站| 污网站在线免费| 亚洲人亚洲人成电影网站色| 6—12呦国产精品| 中文字幕欧美日韩| jizzyou欧美16| 亚洲欧美日韩在线综合| 久久精品国产免费| 午夜爱爱毛片xxxx视频免费看| 制服丝袜在线91| 2021国产在线| 国产精品免费观看高清| 伊人久久亚洲热| 中文字幕丰满孑伦无码专区| 激情久久av一区av二区av三区| 三级在线观看网站| 欧美在线观看网站| 精品久久久久中文字幕小说| 50路60路老熟妇啪啪| 国产精品久久一级| 国产精品女人久久久| 欧美成人免费观看| 动漫视频在线一区| 免费成人在线视频网站| 久久九九久久九九| 中文字幕人妻一区二区三区视频| 久久天天躁狠狠躁老女人| 午夜精品在线| 欧美一区二区三区爽大粗免费| 久久久久久久久久久久久女国产乱 | sese在线视频| 91在线观看免费| 亚洲黄色精品| 久久精品—区二区三区舞蹈| 欧美日韩不卡在线| 美洲精品一卡2卡三卡4卡四卡| 精品乱码一区二区三区| 奇米一区二区三区av| 欧美国产精品一二三| 日韩国产激情在线| 久久久久毛片| 人体内射精一区二区三区| 国产日韩欧美麻豆| 精品国产亚洲AV| 国产国语刺激对白av不卡| 国产精品久久久久久久久久10秀| 99免费观看视频| 欧美丝袜丝nylons| 欧美理论电影| 婷婷久久青草热一区二区| 国产成a人亚洲精| 日韩黄色片网站| 欧美黄色小视频| 日韩精品久久| 捆绑凌虐一区二区三区| 欧美男男青年gay1069videost| 136福利第一导航国产在线| 午夜精品一区二区在线观看的 | 国产精品扒开腿做爽爽| 91精品蜜臀在线一区尤物| 中文字幕乱码在线播放| 国产一区一区三区| 国产夜色精品一区二区av| 亚洲精品喷潮一区二区三区|