国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

獨家 | 用LLM實現(xiàn)客戶細分(上篇)

共 19161字,需瀏覽 39分鐘

 ·

2023-11-02 08:59

   
   
作者:Damian Gil
翻譯:陳之炎
校對:趙茹萱

本文約5000字,建議閱讀10分鐘

采用LLM解鎖高級的客戶細分技術(shù),并使用這些高端技術(shù)改進聚類模型。


內(nèi)容列表

  • 概述
  • 數(shù)據(jù)
  • 方法1:Kmeans
  • 方法2:K-Prototype(下篇)
  • 方法3:LLM + Kmeans(下篇)
  • 結(jié)論(下篇)

概述

實踐中可以采用多種方式處理客戶細分項目,在本文中,將教會您諸多高端技術(shù),不僅可以定義聚類,還可以分析結(jié)果。本文針對那些想要利用多種工具來解決聚類問題,以便更快成為高級數(shù)據(jù)科學家(DS)的讀者。

本文包含哪些內(nèi)容?

看一下處理客戶細分項目的3種方法:

  • Kmeans
  • K-Prototype
  • LLM + Kmeans

作為項目結(jié)果預覽,先展示用不同方法創(chuàng)建不同模型的2D表示(PCA)比較圖:

三種方法的對比圖(圖片由作者提供)

還將學到以下降維技術(shù):

  • PCA
  • t-SNE
  • MCA

其中一些結(jié)果如下:

三種降維方法的比較圖(圖片由作者提供)

可以在以下鏈接找到項目代碼,也可以看看我的github:https://github.com/damiangilgonzalez1995/Clustering-with-LLM


需要澄清的要點是,這不是一個端到端的項目,在這里,跳過了該類項目中最重要的部分:探索性數(shù)據(jù)分析(EDA)階段或變量選擇階段。

數(shù)據(jù)

本項目中使用到的原始數(shù)據(jù)來自公開的Kaggle:銀行數(shù)據(jù)集-市場營銷目標。此數(shù)據(jù)集中的每一行均包含有相關(guān)公司客戶的信息,其中某些數(shù)據(jù)域是數(shù)值,而另一些數(shù)據(jù)域為分類信息,對解決問題的方法做了有效的擴展。

僅選取數(shù)據(jù)的前8列,數(shù)據(jù)集如下圖所示:


對數(shù)據(jù)集的列作簡要描述:

  • 年齡(數(shù)值)
  • 工作(分類為:“管理人員”、“未知”、“失業(yè)”、“經(jīng)理”、“女傭”、“企業(yè)家”、“學生”、“藍領(lǐng)”、“個體經(jīng)營者”、“退休”、“技術(shù)人員”、“服務(wù)”)
  • 婚姻狀況(分類:“已婚”、“離婚”、“單身”。注:“離婚”是指離婚或喪偶)
  • 教育(分類:“未知”、“中學”、“小學”、“高等教育”)
  • 違約:是否有違約的信用?(二進制文件:“是”、“否”)
  • 余額:年平均余額,單位為歐元(數(shù)字)
  • 住房:是否有住房貸款?(二進制文件:“是”、“否”)
  • 貸款:是否有個人貸款?(二進制文件:“是”、“否”)

本項目中使用了Kaggle的訓練數(shù)據(jù)集。在項目存儲庫中,可以找到項目中用到數(shù)據(jù)集的壓縮文件的“data”文件夾。此外,還將在壓縮文件中找到兩個CSV文件,其中一個是由Kaggle(train.csv)提供的訓練數(shù)據(jù)集,另一個是執(zhí)行嵌入(embedding_train.csv)后的數(shù)據(jù)集,將在后面做進一步解釋。

為了進一步闡明項目的結(jié)構(gòu),將項目樹顯示為:


方法1:Kmeans

這是最常用的方法,您或許已經(jīng)對這一方法有所了解,這里將會再次研究它,一并展示先進的分析技術(shù),可以在Jupyter筆記本中找到完整的文件kmeans.ipynb

 預處理

對變量做如下預處理:

1. 將分類變量轉(zhuǎn)換為數(shù)值變量。

將Onehot編碼器應(yīng)用于名字變量,將OrdinalEncoder應(yīng)用于常規(guī)特征(教育)。

2. 確保數(shù)值變量具有高斯分布,并使用一個PowerTransformer。

看看它的代碼。

import pandas as pd # dataframe manipulationimport numpy as np # linear algebra# data visualizationimport matplotlib.pyplot as pltimport matplotlib.cm as cmimport plotly.express as pximport plotly.graph_objects as goimport seaborn as snsimport shap# sklearnfrom sklearn.cluster import KMeansfrom sklearn.preprocessing import PowerTransformer, OrdinalEncoderfrom sklearn.pipeline import Pipelinefrom sklearn.manifold import TSNEfrom sklearn.metrics import silhouette_score, silhouette_samples, accuracy_score, classification_reportfrom pyod.models.ecod import ECODfrom yellowbrick.cluster import KElbowVisualizerimport lightgbm as lgbimport prince# Read filedf = pd.read_csv("train.csv", sep = ";")df = df.iloc[:,0:8]# Preprocessing partcategorical_transformer_onehot = Pipeline(steps=[("encoder", OneHotEncoder(handle_unknown="ignore", drop="first", sparse=False))])categorical_transformer_ordinal = Pipeline(steps=[("encoder", OrdinalEncoder())])num = Pipeline(steps=[("encoder", PowerTransformer())])preprocessor = ColumnTransformer(transformers = [('cat_onehot', categorical_transformer_onehot, ["default", "housing", "loan", "job", "marital"]),('cat_ordinal', categorical_transformer_ordinal, ["education"]),('num', num, ["age", "balance"])])pipeline = Pipeline(steps=[("preprocessor", preprocessor)])pipe_fit = pipeline.fit(df)data = pd.DataFrame(pipe_fit.transform(df), columns = pipe_fit.get_feature_names_out().tolist())print(data.columns.tolist())# OUTPUT['cat_onehot__default_yes','cat_onehot__housing_yes','cat_onehot__loan_yes','cat_onehot__job_blue-collar','cat_onehot__job_entrepreneur','cat_onehot__job_housemaid','cat_onehot__job_management','cat_onehot__job_retired','cat_onehot__job_self-employed','cat_onehot__job_services','cat_onehot__job_student','cat_onehot__job_technician','cat_onehot__job_unemployed','cat_onehot__job_unknown','cat_onehot__marital_married','cat_onehot__marital_single','cat_ordinal__education','num__age','num__balance']

輸出:

異常值

在數(shù)據(jù)中很少有異常值,因為Kmeans對此非常敏感。典型的方法是使用z分數(shù)來選取異常值,但在本博客中,將展示一個更加先進和更酷的方法。

究竟是哪種方法呢?嗯,即使用Python離群值檢測(PyOD)庫。這個庫專注于檢測不同情況下的異常值。更具體地說,是使用ECOD方法(“離群值檢測的經(jīng)驗累積分布函數(shù)”)。

該方法從獲得數(shù)據(jù)的分布中找出哪些值的概率密度較低(異常值),來看看Github中的代碼。

from pyod.models.ecod import ECODclf = ECOD()clf.fit(data)outliers = clf.predict(data)data["outliers"] = outliers# Data without outliersdata_no_outliers = data[data["outliers"] == 0]data_no_outliers = data_no_outliers.drop(["outliers"], axis = 1)# Data with Outliersdata_with_outliers = data.copy()data_with_outliers = data_with_outliers.drop(["outliers"], axis = 1)print(data_no_outliers.shape) -> (40690, 19)print(data_with_outliers.shape) -> (45211, 19)


建模

使用Kmeans算法的缺點之一是必須選取使用到的聚類數(shù)量,為了獲得該數(shù)據(jù),會用到Elbow 方法,該方法計算簇點與其質(zhì)心之間的失真。目標十分明確,即獲取最小的失真。此時,會用到以下代碼:

from yellowbrick.cluster import KElbowVisualizer# Instantiate the clustering model and visualizerkm = KMeans(init="k-means++", random_state=0, n_init="auto")visualizer = KElbowVisualizer(km, k=(2,10))visualizer.fit(data_no_outliers)# Fit the data to the visualizervisualizer.show()

輸出:

不同數(shù)量簇的Elbow得分(圖片由作者提供)

從k=5可以看出,失真沒有很大的變化,理想狀態(tài)下,自k=5始的行為幾乎是平坦的。雖然這種情況鮮有發(fā)生,但還是可以應(yīng)用其他方法來確定最優(yōu)的聚類數(shù)量。可以肯定的是,可以執(zhí)行 Silhoutte可視化,代碼如下:

from sklearn.metrics import davies_bouldin_score, silhouette_score, silhouette_samplesimport matplotlib.cm as cm
def make_Silhouette_plot(X, n_clusters):plt.xlim([-0.1, 1])plt.ylim([0, len(X) + (n_clusters + 1) * 10])clusterer = KMeans(n_clusters=n_clusters, max_iter = 1000, n_init = 10, init = 'k-means++', random_state=10)cluster_labels = clusterer.fit_predict(X)silhouette_avg = silhouette_score(X, cluster_labels)print("For n_clusters =", n_clusters,"The average silhouette_score is :", silhouette_avg,)# Compute the silhouette scores for each samplesample_silhouette_values = silhouette_samples(X, cluster_labels)y_lower = 10for i in range(n_clusters):ith_cluster_silhouette_values = sample_silhouette_values[cluster_labels == i]ith_cluster_silhouette_values.sort()size_cluster_i = ith_cluster_silhouette_values.shape[0]y_upper = y_lower + size_cluster_icolor = cm.nipy_spectral(float(i) / n_clusters)plt.fill_betweenx(np.arange(y_lower, y_upper),0,ith_cluster_silhouette_values,facecolor=color,edgecolor=color,alpha=0.7,)plt.text(-0.05, y_lower + 0.5 * size_cluster_i, str(i))y_lower = y_upper + 10plt.title(f"The Silhouette Plot for n_cluster = {n_clusters}", fontsize=26)plt.xlabel("The silhouette coefficient values", fontsize=24)plt.ylabel("Cluster label", fontsize=24)plt.axvline(x=silhouette_avg, color="red", linestyle="--")plt.yticks([]) plt.xticks([-0.1, 0, 0.2, 0.4, 0.6, 0.8, 1])
range_n_clusters = list(range(2,10))
for n_clusters in range_n_clusters:print(f"N cluster: {n_clusters}")make_Silhouette_plot(data_no_outliers, n_clusters) plt.savefig('Silhouette_plot_{}.png'.format(n_clusters))plt.close()

輸出:

"""N cluster: 2For n_clusters = 2 The average silhouette_score is : 0.18111287366156115N cluster: 3For n_clusters = 3 The average silhouette_score is : 0.16787543108034586N cluster: 4For n_clusters = 4 The average silhouette_score is : 0.1583411958880734N cluster: 5For n_clusters = 5 The average silhouette_score is : 0.1672987260052535N cluster: 6For n_clusters = 6 The average silhouette_score is : 0.15485098506258177N cluster: 7For n_clusters = 7 The average silhouette_score is : 0.1495307642182009N cluster: 8For n_clusters = 8 The average silhouette_score is : 0.15098396457075294N cluster: 9For n_clusters = 9 The average silhouette_score is : 0.14842917303536465"""

可以看出,使用n_cluster=9獲得了最高的Silhouette分值,但如果與其他分數(shù)進行比較之后,會發(fā)現(xiàn)分數(shù)的變化其實也不大。雖然之前的結(jié)果并沒有給出太多信息,但從另一方面來看,上述代碼創(chuàng)建了Silhouette可視化,它提供了更多的信息:

不同數(shù)量聚類的Silhouette方法圖形表示(圖片由作者提供)

如何理解這些表示并非本博的的最終目標,似乎也無法確定哪個k值是最好的,在查看了所有表示后,可以選取k=5或k=6。因為對于不同的簇聚類,它們的Silhouette得分高于平均值,并且沒有不平衡的聚類。此外,在某些情況下,市場營銷部門可能對擁有最小數(shù)量的聚類/類型的客戶感興趣(這種情況可能發(fā)生,也可能不發(fā)生)。

最后,選用k=5創(chuàng)建Kmeans模型。

km = KMeans(n_clusters=5,init='k-means++', n_init=10,max_iter=100, random_state=42)clusters_predict = km.fit_predict(data_no_outliers)"""clusters_predict -> array([4, 2, 0, ..., 3, 4, 3])np.unique(clusters_predict) -> array([0, 1, 2, 3, 4])"""


評估

評估kmeans比評估其他模型的方法更具開放性,可以用:

  • 指標
  • 可視化
  • 解釋(對公司來說非常重要)

可以使用以下代碼獲取與模型評估相關(guān)指標:

from sklearn.metrics import silhouette_scorefrom sklearn.metrics import calinski_harabasz_scorefrom sklearn.metrics import davies_bouldin_score
"""The Davies Bouldin index is defined as the average similarity measure of each cluster with its most similar cluster, where similarity is the ratio of within-cluster distances to between-cluster distances.
The minimum value of the DB Index is 0, whereas a smaller value (closer to 0) represents a better model that produces better clusters."""print(f"Davies bouldin score: {davies_bouldin_score(data_no_outliers,clusters_predict)}")
"""Calinski Harabaz Index -> Variance Ratio Criterion.
Calinski Harabaz Index is defined as the ratio of the sum of between-cluster dispersion and of within-cluster dispersion.
The higher the index the more separable the clusters."""print(f"Calinski Score: {calinski_harabasz_score(data_no_outliers,clusters_predict)}")

"""The silhouette score is a metric used to calculate the goodness of fit of a clustering algorithm, but can also be used as a method for determining an optimal value of k (see here for more).
Its value ranges from -1 to 1.A value of 0 indicates clusters are overlapping and eitherthe data or the value of k is incorrect.
1 is the ideal value and indicates that clusters are very dense and nicely separated."""print(f"Silhouette Score: {silhouette_score(data_no_outliers,clusters_predict)}")

輸出:

"""Davies bouldin score: 1.676769775662788Calinski Score: 6914.705500337112Silhouette Score: 0.16729335453305272"""

如上所示,并沒有得到一個非常好的模型Davies分值,這表明聚類之間的距離相當小。

這可能是由多個因素造成的,但務(wù)請記住,模型的能量是數(shù)據(jù);如果數(shù)據(jù)沒有足夠的預測能力,就無法獲得期望的結(jié)果。

關(guān)于可視化,可以使用PCA方法來降維,使用Prince庫實現(xiàn)探索性分析和降維,還可以使用Sklearn的PCA,它們都如出一轍。

首先,用三維的方法計算主成分,然后獲取表示,以下兩個函數(shù)執(zhí)行上述功能:

import princeimport plotly.express as px

def get_pca_2d(df, predict):
pca_2d_object = prince.PCA(n_components=2,n_iter=3,rescale_with_mean=True,rescale_with_std=True,copy=True,check_input=True,engine='sklearn',random_state=42)
pca_2d_object.fit(df)
df_pca_2d = pca_2d_object.transform(df)df_pca_2d.columns = ["comp1", "comp2"]df_pca_2d["cluster"] = predict
return pca_2d_object, df_pca_2d


def get_pca_3d(df, predict):
pca_3d_object = prince.PCA(n_components=3,n_iter=3,rescale_with_mean=True,rescale_with_std=True,copy=True,check_input=True,engine='sklearn',random_state=42)
pca_3d_object.fit(df)
df_pca_3d = pca_3d_object.transform(df)df_pca_3d.columns = ["comp1", "comp2", "comp3"]df_pca_3d["cluster"] = predict
return pca_3d_object, df_pca_3d


def plot_pca_3d(df, title = "PCA Space", opacity=0.8, width_line = 0.1):
df = df.astype({"cluster": "object"})df = df.sort_values("cluster")
fig = px.scatter_3d(df, x='comp1', y='comp2', z='comp3',color='cluster',template="plotly",
# symbol = "cluster",
color_discrete_sequence=px.colors.qualitative.Vivid,title=title).update_traces(# mode = 'markers',marker={"size": 4,"opacity": opacity,# "symbol" : "diamond","line": {"width": width_line,"color": "black",}}).update_layout(width = 800, height = 800, autosize = True, showlegend = True,legend=dict(title_font_family="Times New Roman",font=dict(size= 20)),scene = dict(xaxis=dict(title = 'comp1', titlefont_color = 'black'),yaxis=dict(title = 'comp2', titlefont_color = 'black'),zaxis=dict(title = 'comp3', titlefont_color = 'black')),font = dict(family = "Gilroy", color = 'black', size = 15))

fig.show()

不要過于擔憂上述函數(shù),按照下述方法使用它們:

pca_3d_object, df_pca_3d = pca_plot_3d(data_no_outliers, clusters_predict)plot_pca_3d(df_pca_3d, title ="PCA Space", opacity=1, width_line = 0.1)print("The variability is :", pca_3d_object.eigenvalues_summary)

輸出:

模型創(chuàng)建的PCA空間和聚類(圖片由作者提供)

從圖中可以看出,聚類間沒有得到分離,也沒有明確的劃分,這與度量指標所提供的信息完全一致。

很少有人會記住主成分分析和特征向量的變化。

假定每個字段中均包含有一定數(shù)量的信息,這意味著增加了信息量。如果3個主要成分的累積總和加起來約為80%的離散度,便可以說這是可接受的,在表示中獲得的結(jié)果良好。如果該數(shù)值較低,就應(yīng)對可視化持保留態(tài)度,因為其他特征向量中缺失了大量信息。

執(zhí)行PCA的離散度是多少?

答案如下:


可以看出,前3個成分的離散度為27.98%,這不足以得出合理的結(jié)論。

當應(yīng)用主成分分析方法時,由于它是一個線性算法,無法捕捉到更復雜的關(guān)系。幸運的是,有一種稱為t-SNE的方法,它能夠捕獲復雜的多項式關(guān)系,這有助于可視化,使用先前的方法,沒有取得太多成功。

如果在電腦上嘗試使用t-SNE方法,切記它會有更高的計算成本。出于這個原因,對原始數(shù)據(jù)集進行了采樣,但它仍然花了大約5分鐘才得出結(jié)果。代碼如下:

from sklearn.manifold import TSNEsampling_data = data_no_outliers.sample(frac=0.5, replace=True, random_state=1)sampling_clusters = pd.DataFrame(clusters_predict).sample(frac=0.5, replace=True, random_state=1)[0].valuesdf_tsne_3d = TSNE(n_components=3, learning_rate=500, init='random', perplexity=200, n_iter =5000).fit_transform(sampling_data)df_tsne_3d = pd.DataFrame(df_tsne_3d, columns=["comp1", "comp2",'comp3'])df_tsne_3d["cluster"] = sampling_clustersplot_pca_3d(df_tsne_3d, title ="PCA Space", opacity=1, width_line = 0.1)

結(jié)果得到了下述圖片,它顯示出聚類之間有了更清晰的分離,但仍然沒有得到完美的結(jié)果。

由模型創(chuàng)建的t-SNE空間和聚類(圖片由作者提供)

通過在二維空間對PCA和t-SNE進行比較,可以看出,第二種方法的改進比較明顯。

不同模型的降維方法和聚類的結(jié)果對比(圖片由作者提供)

最后,來看看模型是如何工作的?其中哪些特征最為重要?聚類的主要特征又是什么?

為了了解每個變量的重要性,在這種情況下使用一個典型的“技巧”,創(chuàng)建一個分類模型,其中“X”是Kmeans模型的輸入,“y”是Kmeans模型預測的聚類。

所選的模型為 LGBMClassifier,該模型非常強大,帶有分類變量和數(shù)值變量。使用SHAP庫訓練新模型,可以獲得每個特征在預測中的重要程度。代碼如下:

import lightgbm as lgbimport shap# We create the LGBMClassifier model and train itclf_km = lgb.LGBMClassifier(colsample_by_tree=0.8)clf_km.fit(X=data_no_outliers, y=clusters_predict)#SHAP valuesexplainer_km = shap.TreeExplainer(clf_km)shap_values_km = explainer_km.shap_values(data_no_outliers)shap.summary_plot(shap_values_km, data_no_outliers, plot_type="bar", plot_size=(15, 10))

輸出:

模型中變量的重要程度(圖片由作者提供)

可以看出,特征“年齡”的預測能力最大,同時可以看出,3號聚類(綠色)主要由平衡變量來區(qū)分。

最后,必須分析聚類的特征,這部分是企業(yè)決策的決定性因素,為此,將獲取各個聚類數(shù)據(jù)集特征的平均值(對于數(shù)值變量)和最頻繁的值(分類變量):

?
df_no_outliers = df[df.outliers ==0]df_no_outliers["cluster"] = clusters_predictdf_no_outliers.groupby('cluster').agg({'job': lambda x: x.value_counts().index[0],'marital': lambda x: x.value_counts().index[0],'education': lambda x: x.value_counts().index[0],'housing': lambda x: x.value_counts().index[0],'loan': lambda x: x.value_counts().index[0],'contact': lambda x: x.value_counts().index[0],'age':'mean','balance': 'mean','default': lambda x: x.value_counts().index[0],}).reset_index()

輸出:


可以看出,工作=藍領(lǐng)的聚類,除了年齡特征外,它們的特征沒有很大的不同。這是不可取的,因為很難區(qū)分這一聚類中的客戶。在工作=經(jīng)理的案例中,獲得了更好的離散度。

在以不同的方式進行分析后,得出了一致的結(jié)論:“需要改進結(jié)果”。

以上為用LLM實現(xiàn)客戶細分的上篇內(nèi)容,在下篇中,我們將為您介紹另外兩種方法,敬請期待!

原文標題:Mastering Customer Segmentation with LLM

原文鏈接:https://towardsdatascience.com/mastering-customer-segmentation-with-llm-3d9008235f41


編輯:黃繼彥
校對:龔力




譯者簡介





陳之炎,北京交通大學通信與控制工程專業(yè)畢業(yè),獲得工學碩士學位,歷任長城計算機軟件與系統(tǒng)公司工程師,大唐微電子公司工程師,現(xiàn)任北京吾譯超群科技有限公司技術(shù)支持。目前從事智能化翻譯教學系統(tǒng)的運營和維護,在人工智能深度學習和自然語言處理(NLP)方面積累有一定的經(jīng)驗。業(yè)余時間喜愛翻譯創(chuàng)作,翻譯作品主要有:IEC-ISO 7816、伊拉克石油工程項目、新財稅主義宣言等等,其中中譯英作品“新財稅主義宣言”在GLOBAL TIMES正式發(fā)表。能夠利用業(yè)余時間加入到THU 數(shù)據(jù)派平臺的翻譯志愿者小組,希望能和大家一起交流分享,共同進步

翻譯組招募信息

工作內(nèi)容:需要一顆細致的心,將選取好的外文文章翻譯成流暢的中文。如果你是數(shù)據(jù)科學/統(tǒng)計學/計算機類的留學生,或在海外從事相關(guān)工作,或?qū)ψ约和庹Z水平有信心的朋友歡迎加入翻譯小組。

你能得到:定期的翻譯培訓提高志愿者的翻譯水平,提高對于數(shù)據(jù)科學前沿的認知,海外的朋友可以和國內(nèi)技術(shù)應(yīng)用發(fā)展保持聯(lián)系,THU數(shù)據(jù)派產(chǎn)學研的背景為志愿者帶來好的發(fā)展機遇。

其他福利:來自于名企的數(shù)據(jù)科學工作者,北大清華以及海外等名校學生他們都將成為你在翻譯小組的伙伴。


點擊文末“閱讀原文”加入數(shù)據(jù)派團隊~



轉(zhuǎn)載須知

如需轉(zhuǎn)載,請在開篇顯著位置注明作者和出處(轉(zhuǎn)自:數(shù)據(jù)派ID:DatapiTHU),并在文章結(jié)尾放置數(shù)據(jù)派醒目二維碼。有原創(chuàng)標識文章,請發(fā)送【文章名稱-待授權(quán)公眾號名稱及ID】至聯(lián)系郵箱,申請白名單授權(quán)并按要求編輯。

發(fā)布后請將鏈接反饋至聯(lián)系郵箱(見下方)。未經(jīng)許可的轉(zhuǎn)載以及改編者,我們將依法追究其法律責任。



點擊“閱讀原文”擁抱組織



瀏覽 1496
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報
評論
圖片
表情
推薦
點贊
評論
收藏
分享

手機掃一掃分享

分享
舉報

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 人人舔视频| 51国产视频| www.天天射视频| 欧美三级| 国产一卡二卡三卡| 亚洲AV无码成人| 日韩区在线| 亚洲精品高清视频| 在线免费观看国产视频| 久久中文字幕电影| 91成人在线观看国产| 91狠狠综合久久久| 国产激情福利| 丁香五月五月婷婷| 久操99| 高清无码在线免费视频| 日韩最新无码发布| 久久久人妻无码精品蜜桃| 国产一卡二卡| 影音先锋一区二区三区| 婷婷99狠狠躁天天躁| 99视频在线看| 影音先锋色av| 久操免费观看| 亚洲第一中文字幕| 国产精品视频色| 婷婷中文| 欧美aⅤ| 亚洲影院中文字幕| 色欲影视插综合一区二区三区| 日韩人妻一区二区| 免费视频| 自拍偷拍视频网站| 99在线视频精品| 91狠狠综| 91精品在线免费观看| 人妻少妇精品无码| 亚洲人成人无码.www粉色| 最新亚洲无码在线观看| 日本成人黄色| 国产一级AA大片毛片| 免费aa片| 韩日A片| 91大神在线免费看| 懂色av一区蜜桃| 一区二区av| 国产在线激情视频| 国产又爽又黄免费网站校园里| 尻屄网| 亚洲国产三级片| 日韩欧美精品一区二区| 久久国际精品| 五月天亚洲色图| 国产精品秘久久久久久一两个一起| 黄色片无码| 国产精品成人在线视频| 欧美亚洲精品在线| 精品1区2区| av无码不卡| A∨无码| 大鸡巴操B视频| 91久久性奴调教| 日韩视频三区| 日韩中文字幕一区二区三区| 人妻性爱| 97色色得| 五月丁香激情六月| 444444免费高清在线观看电视剧的注意| 日本一节片在线播放| 褒姒AV无玛| 影音先锋资源| 91人妻人人澡人人爽人人精品| 国产精品999| 69av在线| 国产海角视频| 日韩精品一区二区三区四区蜜桃视频 | 青青操成人在线视频| 亚洲AV成人无码一区二区三区 | 九九九网站| 亚洲精品成人网站| 99久久精品国产成人一区二区| 在线观看日本黄| 午夜丁香婷婷| 国产真实乱婬A片久久久老牛| 日本一区二区在线视频| 在桌下含她的花蒂和舌头H视频| 好男人一区二区三区在线观看| 十八禁网站在线播放| 综合合一品道| 刘玥一级婬片A片AAA| 亚洲黄色在线观看视频| www.AV在线| 成人毛片18| 美日韩精品| 污视频网站在线观看| 欧美三级一级| 国产美女一级真毛片酒店| 中文子幕免费毛片| 久久蝌蚪窝| 欧美日一区二区三区| 97精品人人妻人人| 国产成人AV在线播放| 国产黄色在线免费观看| 人善交精品一区二区三区| 久久波多野结衣| 日韩第一页| 亚洲资源站| 天天色播| 日逼片A| 日韩一级一级一级| 黄片免费无码| 日本一区二区三区四区在线观看 | V在线| 午夜福利久久| 超碰在线大香蕉| 一本色道久久综合熟妇| 99热18| 第一页在线| 日韩无码专区| 人人草人人搞| 中字幕视频在线永久在线观看免费 | 成人视频在线播放| 日韩视频一区| 亚洲国产精品久久久久婷婷老年 | 国产欧美成人在线| ThePorn-成人网站入口| 91成人无码看片在线观看网址 | 99天堂网| 亚洲欧洲天堂| 久久永久免费视频| 亚洲色综合久久五月| 久久一级视频| 首页-91n| 欧美日韩三级片| 一级a片激情啪啪免费观| 精品国产乱子伦一区二区三区,小小扐| 国产在线内射| 永久中文字幕| 亚洲AV无码成人精品区在线欢看| 美女操逼图| 18久久| 国产欧美性爱| 女人的天堂AV| 激情麻豆论坛| 一级片电影网站| 羞羞av| 麻豆91精品91久久久| 亚洲精品久久久久avwww潮水| 69视频国产| 久久中文视频| 99re国产| 麻豆艾秋MD0056在线| 日本天堂网站| 欧美日韩中文字幕视频| www.97超碰| 成人亚洲视频| 午夜国产码网站码| 久久肥妞操| 苍井空中文字幕在线观看| 欧美一区在线视频| 色小说在线| 国产成人精品av| 一级a一级a爱片免费视频| 激情黄色五月天| 北条麻妃在线观看香蕉| 三级片网页| 26uuu国产| 最近中文字幕在线中文字幕7| 成人毛片| 蜜桃av秘无码一区三区四| 影音先锋中文字幕资源| 亚洲日韩在线视频播放| 婷婷伊人中文字幕| 日本视频一区二区三区| 伊人久久大香| 欧美黄色激情视频网站| jizz免费观看| 亚洲A片电影| 欧美日一区二区三区| 97久久久| 亚洲第一区欧美日韩| 婚闹不堪入目A片| 午夜成人网站在线观看| 超碰97在线免费| www.色五月| 黄片免费视频| 中国老少配BBwBBwBBW| 亚洲AV一二三区| 精品一区二区久久久久久久网站| 欧美日韩国产一区二区三区| 无码东京热国产| 午夜亚洲视频| 久久狼人| 91av在线免费观看| 午夜操一操| 欧洲精品在线视频| 91碰| 欧美丰满老熟妇XXXXX性| 91精品国产综合久久久蜜臀酒店| 亚洲国产黄片| 大肉大捧视频免费观看| 大香蕉啪啪视频| 国产精品无码专区| 大香蕉现在视频中心一| 国产成人三级在线播放| 欧美3p视频| 黄色A片在线观看| 国产精品成人电影| 国产福利美女网站| 三级黄色免费网站| 亚洲网站视频| 久久这里有精品| 乱人伦欲国语对白| 欧美成人大片| 久久午夜无码鲁丝片| 中文字幕高清AⅤ| 少妇搡BBBB搡BBB搡18禁| 伊人网视频在线| 国产精品国产自产拍高清AV| 西西888WWW大胆视频| 一级日逼视频| 伊人激情五月天| 99电影网手机在线观看| 操B国产| 婷婷99狠狠躁天天| 国产熟女乱伦视频| 91成人免费电影片| 豆花视频无码| 亚洲图片一区| 脓肿是什么原因引起的,该怎么治疗 | 日日夜夜精品| 午夜亚洲AⅤ无码高潮片苍井空| 色婷婷国产精品| 波多野结衣AV在线播放| 91视频青青草| 另类性爱视频| 色婷婷视频在线播放| 激情五月天婷婷| 欧美中文字| 一区二区无码免费| 中文字幕乱码亚洲无线码在线日噜噜| 人操人人人操| 黄色草逼视频| 天天操天天拍| 亚洲av无码精品| 五月天久久久久| 国产精品片| 久久91人妻无码精品蜜桃HD| 欧美草逼网| 九九热免费视频| 午夜免费性爱视频| A片啪啪| 在线观看视频91| 成人视频123| 日本黄色视频大全| 亚洲AV毛片| 日韩精品一区二区三| BBw日本熟妇BBwHD| 国产色无码网站www色视频| 丁香五月激情中文字幕| 五月丁香婷婷基地| 岛国无码在线观看| 国产成人在线精品| 久久99国产精品| 天堂中文字幕在线观看| 日韩无码中文字| 成人AV十八亚洲二区| 亚洲免费无码视频| 在线视频福利| 久久久久久久精| 中文字幕激情精品| 99精品视频网站| 西西4444www大胆无| 国产一级精品视频| 亚洲AV成人网| 夜夜骚av一区二区三区| 手机看片1024久久| 黄色毛片一级| 欧美怡春院| 日韩永久免费| 国产调教视频| 精品人妻系列| 韩国三级HD久久精品HD| av在线天堂| 久久综合大香蕉| 亚洲无码精品久久| 另类老妇性bbwbbwbbw| 亚洲欧美日韩另类| 国产精品一二三区| 先锋成人电影| a黄色片| 精品欧美片在线观看步骤| 成人理伦A级A片在线论坛| 九九九精彩视频| 免费观看的av| 99视频在线看| 婷婷激情丁香五月天| 夜夜操夜夜| 日本不卡二区| 国产亚洲无码激情前后夹击 | 亚洲视频免费观看| 欧美日韩久久久| 国产操逼逼| 二区三区在线观看| 牛牛影视av老牛影视av| 欧美国产成人在线| 高清无码日本| 91免费在线视频| 亚洲A∨无码无在线观看| 欧美三P囗交做爰XXXⅩ| 婷婷黄色网| 日韩免费一级| 亚洲国产视频在线观看| 久久一| 成人片天天看片欧美一级| 欧美888| 欧美黄片在线免费观看| 99高清国产| 18禁亚洲| 久久国产日韩| 亚洲成人视频免费观看| 亚洲成人第一网站| 日韩在线成人| 亚洲日韩欧美国产| 天天干天天舔| 俩小伙3p老熟女露脸| 韩国精品在线观看| 国产精品欧美综合在线| 性生活无码| 欧美激情伊人久久五月天| 天天操夜夜爱| 欧美性爱视频网站| 黄片大全在线免费观看| 波多野结衣无码高清| 人妻精品免费| 秋霞福利视频| jizz免费在线观看| www在线| 蜜桃人妻无码AV天堂三区| 一级女婬片A片AAAA片| 国产美女在线观看| 亚洲天堂2017| 成人天堂一区二区三区| 久久91视频| 久久久久亚洲精品| 第一色影院| 亚洲成人影音先锋| 国产一级特黄A片| 免费在线观看内射| 一级黄色电影网站| 丁香花五月天| 成人在线观看网站| 久色99| 亚洲高清无码免费| 久久人人超碰| 国产午夜男女性爱| 亚洲视频网站在线观看| 人妻性爱| 一级内射视频| 人人澡人人妻人人爽| 国产成人视频免费观看| 成人无码99| 曰韩毛片| 久久免费看| 亚洲视频在线看| 人妻黑人一区二区三区| 中文字幕无码人妻| 爱爱免费看片| www.大吊视频| 亚洲日韩中文在线| 德国肥妇熟妇BBwBBw| 97人妻在线视频| 91麻豆成人精品国产| 欧美色色色色色色| AV在线资源观看| 亚洲69| 夜夜嗨Av禁果Av粉嫩AV懂色Av| 91在线看| 九九午夜| 自拍无码视频| 91成人电影在线| 九九美女视频| 三级小说| 日韩三级在线播放| 国产视频久久| 俺来也在线视频| 久久久久久麻豆| 天堂在线无码| 中文字幕在线观看网| 91狠狠综合久久久| 欧美成人一级片| eeuss| 精品无码三级在线观看视频| 乌克兰xxxx| 在线成年人视频| 午夜精品视频在线观看| 日韩视频一区| 久久久人妻熟妇精品无码蜜桃| 国产精品一区二区AV日韩在线 | 一级黄色片免费| 狠狠操一区| 日日干天天射| 伊人久久AV| 中文字幕无码人妻| 超碰免费91| 西西444大胆无码视频| 色婷婷一级A片AAA毛片| 亚洲午夜久久久| 六月色婷婷| 精品无码人妻一区二区媚黑| 波多野结衣无码流出| 性爱视频无码| 精品国产精品三级精品AV网址| 夜夜骚av一区二区三区| 97AV视频| 成人精品A片免费网站| 国产精品久久精品| 操逼超碰| 国产操逼网站| 丰满人妻一区二区三区四区54| 国产精品久久久久久久免牛肉蒲| 午夜无码人妻AV大片| 蜜臂AV| 欧美爱爱网| 国产精品啪啪视频| 国产aaaaaaaaaaaaa| 强奷伦奷片91| 熟妇一区二区| 亚洲高清视屏| 高清无码免费观看视频| 91香蕉视频在线| 精品国产精品三级精品AV网址| 91蝌蚪丨人妻丨丝袜| 国产精品国产三级国产专区53| 欧美久久一区二区三区四区视频| eeuss一区| 九九久久免费视频| 无码啪啪| 果冻传媒一区二区三区| 欧美在线视频网| 日韩黄色电影在线免费观看 | 日韩性生活网| 好吊一区二区| 你懂的在线播放| 久操视频免费看| 四川少妇搡bbbb搡bbbb| 老熟女露脸25分钟91秒| 国产综合区| 亚洲精品无码永久| 99er热精品视频| 91人妻人人澡人人爽精品| 日韩AV一区二区在线观看| 日韩高清无码中文字幕| 玖玖爱免费视频| 亚洲二区无码| 51精品日本| 无码视频在线播放| 欧美在线免费观看| 国产一卡二卡| 影音先锋AV在线资源| 999福利视频| 亚洲视频在线免费观看| 国产一级a毛一级a做免费图片| 亚洲黄色在线观看视频| 啪啪成人网| 亚洲成人av在线观看| 91精品成人电影| 亚洲AV无码一区二区三区少妇| 国产精品99久久久久的广告情况| 国产午夜成人免费看片无遮挡| 五月丁香婷婷开心| 日韩国产AV| 国产在线视频一区二区三区| 国产精品一区av| 影音先锋人妻限定| 欧美午夜福利电影| 婷久久久| www.777熟女人妻| 丁香六月激情| 伊人久久国产| 精品无码一区二区三区在线| 久久成人A片| 边摸边做| 99Re66精品免费视频| 久久精品婷婷| 国产日韩性爱视频| 午夜操逼视频| 欧美拍拍| 久久久久无码国产精品一区| 色高清无码免费视频| 亚洲欧美在线播放| 天码人妻一区二区三区在线看| 中文字幕在线播放av| 人人摸人人干| 天天添天天操| 中文字幕成人无码| 麻豆午夜福利视频| 久久久久久97电影院电影院无码 | 大香蕉草久| 人妻三级| 操逼欧美| 北条麻妃在线观看| 日韩精品一区在线| 日本黄色视频。| 奇米成人片| 久久凹凸视频| 久久久久久久成人| 成人免费操| 亚洲精品无码在线播放| 国产精品91视频| 色老板在线免费观看| 99在线观看免费| 人妻精品一区二区在线| 91人人| 热久久精品| 亚洲AV无码专区在线播放中文 | 亚洲成人影音| 午夜无码鲁丝片午夜精品| 黄片在线免费观看视频| 三级网址在线| 黄页网站视频| 99在线观看精品视频| 色婷婷久综合久久一本国产AV | 熟女啪啪| 黄色免费网站| 西西人体444rt高清大胆模特| 日韩三级在线播放| 艹逼视频免费观看| 九鼎联盟骗子| 日韩一区二区三区视频| 91青青草视频| 天堂a在线| 国产精品一区二区免费| 嫖中国站街老熟女HD| www久久| 豆花AV| 午夜福利黄| 国产操逼大片| 日本久久久久| 国产精选在线| 日本精品一区二区| 2021无码| 免费观看黄色电影| a√天堂中文在线8| 欧美AAA大片| 欧美V视频| 4444操| 中文字幕在线观看av| 欧美第一区| 插逼视频网站| 操逼视频网站免费| 国产福利在线导航| 无码成人在线观看| 精品乱子伦一区二区三区,亚洲国产成 | 看A片在线| 亚洲国产成人精品综合99| 亚洲AV电影在线观看| 婷婷久久综合久色综| 超碰在线天天干| 91精品国产乱码香蕉黄瓜草莓| 人人综合网| 熟女人妻人妻の视频| 久久久久久麻豆| 黄色国产视频| 欧美日韩黄| 欧美老熟妇乱大交XXXXX| 91乱子伦国产乱| 超碰人妻97| 影音先锋AV资源在线| 日韩天天干| 翔田AV无码秘三区| 免费观看操逼| 粉嫩av一区二区白浆| 午夜精品一区二区三区在线视频| 玩弄人妻少妇500系列视频| 国产精品日韩无码| 老熟妇搡BBBB搡BBBB| 亚洲专区区免费| 国产丰满大乳无码免费播放| 午夜成人一区二区| 影音先锋无码AV| 人妻人玩| 日日撸| jizz在线观看视频| 青青草免费在线| 91在线无码精品秘国产| 天天摸天天看| www.91AV| 天天操天天日天天射| 久久久久亚洲精品| 亚洲天堂久久久| 三级片网站国产| 色逼五月| 国产日逼视频| 人人看人人摸人人操| 无码福利| 亚洲少妇一区| 午夜a片| 免费黄色视频网址| 日韩精品在线观看免费| 夜夜爱视频| 国产精品九九九九九九| 成人H视频| 二区三区在线观看| 国产成人毛片18女人18精品| 国产精品国内自产拍| 狠狠爱一区| 另类av| a在线| 日日天天| 东北毛片| 久草视频免费| 日本不卡中文字幕| 天天干中文字幕| 狠狠无码| 18禁激韩| 国产三级小视频| 欧美激情视频一区二区| 国产成人AV免费无码| 亚洲乱码一区二区三区| 男人的天堂网页| 成人自拍视频在线| 国产乱子伦真实精品!| 亚洲Av无码午夜国产精品色软件 | 四虎网站| 大香蕉人妻| 夜夜骚av一区二区三区| av中文在线观看| 色婷婷导航| 亚洲日韩中文字幕在线| 成人H动漫精品一区二区三区蘑菇 高清无码视频在线免费观看 | 小h片| 嫩BX区二区三区的区别| 校园春色亚洲无码| 午夜探花在线观看| 亚洲欧美国产高清vA在线播放| 中文字幕乱码无码人妻系列蜜桃 | 国产乱伦AV网站| 丁香婷婷在线| 日本A一级片| 精品无码不卡| 日本有码中文字幕| 无码人妻中文| 日韩乱伦网站| av天堂中文| 日韩高潮| 精品三级在线观看| 亚洲免费观看高清完| 久久久精品中文字幕麻豆发布| 337p粉嫩噜噜噜| 无码秘蜜桃一区二区三区| 特黄色A级片视频| 亚洲一二三四区| 国产欧美日韩综合在线视频 | 操逼欧美| AV黄色| 日韩99| 亚洲视频免费在线观看| 中文字幕在线观看辣文| 操逼逼一区二区三区| 亚洲综合免费观看高清完整版在线 | 亚洲免费一级| 欧美精品成人在线| 毛片一级片| 久久免费黄色| 中文字幕视频在线播放| 特级毛片片A片AAAAAA| 日韩视频无码| 亚洲免费专区| 无码aa| 久久免费黄色视频| 欧美一级A片高清免费播放| 无码秘蜜桃一区二区| www.色999| 黄色福利网址| 色婷婷亚洲色| 老鸭窝久久久| 中文字幕五月天| 亚洲精品无码更新| 人人摸人人看人人草| 国产一级二级三级片| 亚洲天堂在线看| 狠狠干婷婷| 激情无码一区二区| 一区二区三区电影| 91久久久久久久| 成人免费网站| 欧美不卡| 伊人免费| 久久久国产探花视频| 在线观看国产区| 久久婷婷影院| 大陆搡BBBBB搡BBBBBB| 人人射人人干| 91精品久久久久久久久久久久| 日本久久综合网| 蜜臀久久99精品久久久久酒店更新时间 | 手机AV网站| 中文字幕免费中文| 999成人网| 99热日韩| 国产精品无码中文在线| 欧美一级视频在线观看| 99综合视频| 天天日天天射天天干| 一级A片免费观看| 一级无码毛片| 日本欧美操| 爱搞在线观看wwww| 国产精品色哟哟| 高清无码在线免费视频| 欧美日韩亚洲一区二区| 青草超碰| 波多野结衣在线网站| 99er视频| 天堂资源网| 国产精品秘久久久久久网站| 天天爽夜夜爽AA片免费| 黄色一级片在线看| 天天日日日干| 国产乱伦免费视频| 高h网站| 俺也去网| 夜夜操天天干| 久久婷婷五月天| 大香焦草久| 国产女人水真多18毛片18精品| 尤物网站在线观看| 强开小嫩苞一区二区三区网站| 日本高清无码在线观看| 九九九成人网| 91无码精品| 色欲影视插综合一区二区三区| 国际精品久久久| 99天天视频| 在线视频你懂| 免费在线观看黄色片| 亚洲AV无码成人精品区| 少妇搡BBBB搡BBB搡澳门| 亚洲中文字幕av| 日本成人A| 一区二区三区四区无码在线| 婷婷婷色| 在线无码不卡| h片在线观看免费| 亚洲V| 免费看一级高潮毛片| 欧美一级特黄A片免费观看| 中文字幕码精品视频网站| 99久久国产视频| 久久久久久久9999| 无码中文AV| 麻豆内射| 夜夜骑夜夜操| 亚洲一区欧美二区gay| 亲子乱AV一区二区| 在线观看无码高清视频| 国产黄色视屏| 色欲亚洲| 操B在线| 免费的黄色录像| www天天日| 97人妻人人澡人人爽人人| 久久精品www人人爽人人| 蜜芽av在线| 91视频网站| 一级黄色影院| av乱伦小说| 中文在线字幕免费观看| 久久99老妇伦国产熟女| 亚洲三级在线| 欧美日韩h| 欧美成人手机在线看片| 国产一级A| 在线看黄片| 日韩经典视频在线播放| 久久天堂av| 免费黄色视频网站在线观看| 成人首页| 国产av影视| 九热大香蕉| 在线观看中文字幕无码| 大香蕉a片| 亚洲色欲色欲www在线成人网| 日韩Av无码一区二区三区不卡| 国产精品无码久久久久成人app| 欧美级黑寡妇毛片app| 豆花天天吃最新视频| 欧美强开小嫩苞| 午夜毛片| 中文字幕一级片| 国产成人自拍视频在线观看| 国产伊人久久| 国产欧美一区二区精品性色超碰| 成人视频高清无码| 91久久午夜无码鲁丝片久久人妻 | 91豆花视频| 韩国三级中文字幕HD久久精品| 国产精品香蕉国产| 在线欧美亚洲| 日韩人妻一区| 综合色国产精品欧美在线观看| 91在线欧美| 日韩精品在线免费| 五月婷婷中文| 国产日韩欧美综合精品在线观看| 欧美va亚洲va| 欧美三级推荐| 五月丁香伊人| 波多野结衣无码流出| 玖玖色视频| 做爰视频毛片下载蜜桃视频。| 丰满欧美熟妇免费视频| 丁香五月天在线播放| 激情小说在线观看| 在线亚洲欧美| 91嫖妓站街按摩店老熟女| 爱爱视频日韩| 羽月希奶水饱胀在线播放| 国产色五月| 强开小嫩苞一区二区三区视频| 欧美国产日韩视频| 色欲五月天| 天天色av| 国产操逼免费看| 天天日少妇| 亚洲高清无码在线视频| 国产在线一区二区| 亚洲中文无码在线观看| 99久久夜色精品国产亚洲| 97人人爽| 午夜亚洲AV永久无码精品蜜芽| 黄色一级大片在线免费看产| 高清AV在线| 黄色在线网站| 亚洲日韩在线视频播放| 草草国产| 日日碰狠狠添| 尤物视频网站在线观看| 免费69视频看片| 久久精品视频免费观看| 玖玖爱资源站| 欧美黄片一区二区| 北条麻妃99| 亚洲无码高清视频| 欧美精品成人网站| 日批网站视频| 五月婷婷在线观看| 国产熟妇搡BBBB搡BBBB搡| 91精品国产乱码香蕉黄瓜草莓| 日本色色| 黑人中文字幕| 又黄又爽的视频| 久久草草热国产精品| 日韩无码精品AV| 国产综合区| 91绿帽人妻-ThePorn| 五月丁香六月久久| 国产成人无码一区二区在线观看| 亚洲无码制服| 女孩自慰在线观看| 五月丁香六月激情综合| 国产精品人妻AⅤ在线看| 中韩AV在线免费观看| 日韩一| 激情五月天影院| 国产欧美在线不卡| 亚洲秘无码一区二区三区| 护士小雪的yin荡高日记H视频| 浮力影院久久| 国产中文字幕av| 国产青青| 午夜AV免费| 青青草日逼视频| 精品视频在线免费观看| 久久性爱免费视频| 黄色操逼| 亚洲群交| 国产黄片在线视频| 国产高清无码一区二区三区| 麻豆成人片| 三级无码在线观看| 91免费看| 久久狠狠干| 亚洲综合成人网| 亚洲日韩精品秘在线观看| 日本免费在线黄色视频| 欧美a√| 777免费观看成人电影视频| 日韩免费精品视频| 久久无码一区二区三区| 免费福利在线视频| 成人网站免费视频| 日本Sm/调教/捆绑/紧缚| 激情色图| 天堂在线中文| 人人操干| 天天天天天天天天操| 精品偷拍| 色婷婷狠狠操|