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

TabTransformer轉換器提升多層感知機性能深度解析

譯文 精選
人工智能 機器學習
本文將介紹機器學習中的一種新型的轉換器——TabTransformer,并通過具體的實例展示該轉換器的用法。

?如今,轉換器(Transformers)成為大多數先進的自然語言處理(NLP)和計算機視覺(CV)體系結構中的關鍵模塊。然而,表格式數據領域仍然主要以梯度提升決策樹(GBDT)算法為主導。于是,有人試圖彌合這一差距。其中,第一篇基于轉換器的表格數據建模論文是由Huang等人于2020年發表的論文《TabTransformer:使用上下文嵌入的表格數據建?!?。

本文旨在提供該論文內容的基本展示,同時將深入探討TabTransformer模型的實現細節,并向您展示如何針對我們自己的數據來具體使用TabTransformer。

一、論文概述

上述論文的主要思想是,如果使用轉換器將常規的分類嵌入轉換為上下文嵌入,那么,常規的多層感知器(MLP)的性能將會得到顯著提高。接下來,讓我們更為深入地理解這一描述。

1.分類嵌入(Categorical Embeddings)

在深度學習模型中,使用分類特征的經典方法是訓練其嵌入性。這意味著,每個類別值都有一個唯一的密集型向量表示,并且可以傳遞給下一層。例如,由下圖您可以看到,每個分類特征都使用一個四維數組表示。然后,這些嵌入與數字特征串聯,并用作MLP的輸入。

圖片

帶有分類嵌入的MLP

2.上下文嵌入(Contextual Embeddings)

論文作者認為,分類嵌入缺乏上下文含義,即它們并沒有對分類變量之間的任何交互和關系信息進行編碼。為了將嵌入內容更加具體化,有人建議使用NLP領域當前所使用的轉換器來實現這一目的。

圖片

TabTransformer轉換器中的上下文嵌入

為了以可視化方式形象地展示上述想法,我們不妨考慮下面這個訓練后得到的上下文嵌入圖像。其中,突出顯示了兩個分類特征:關系(黑色)和婚姻狀況(藍色)。這些特征是相關的;所以,“已婚(Married)”、“丈夫(Husband)”和“妻子(Wife)”的值應該在向量空間中彼此接近,即使它們來自不同的變量。

圖片

經訓練后的TabTransformer轉換器嵌入結果示例

通過上圖中經過訓練的上下文嵌入結果,我們可以看到,“已婚(Married)”的婚姻狀況更接近“丈夫(Husband)”和“妻子(Wife)”的關系水平,而“未結婚(non-married)”的分類值則來自右側的單獨數據簇。這種類型的上下文使這樣的嵌入更加有用,而使用簡單形式的類別嵌入技術是不可能實現這種效果的。

3.TabTransformer架構

為了達到上述目的,論文作者提出了以下架構:

圖片

TabTransformer轉換器架構示意圖

(摘取自Huang等人2020年發表的論文)

我們可以將此體系結構分解為5個步驟:

  • 標準化數字特征并向前傳遞
  • 嵌入分類特征
  • 嵌入經過N次轉換器塊處理,以便獲得上下文嵌入
  • 把上下文分類嵌入與數字特征進行串聯
  • 通過MLP進行串聯獲得所需的預測

雖然模型架構非常簡單,但論文作者表示,添加轉換器層可以顯著提高計算性能。當然,所有的“魔術”發生在這些轉換器塊內部;所以,接下來讓我們更加詳細地研究一下其中的實現過程。

4.轉換器

圖片

轉換器(Transformer)架構示意

(選自Vaswani等人于2017年發表的論文)

您可能以前見過轉換器架構,但為了快速介紹起見,請記住該轉換器是由編碼器和解碼器兩部分組成(見上圖)。對于TabTransformer,我們只關心將輸入的嵌入內容上下文化的編碼器部分(解碼器部分將這些嵌入內容轉換為最終輸出結果)。但它到底是如何做到的呢?答案是——多頭注意力機制。

5.多頭注意力機制(Multi-head-attention)

引用我最喜歡的關于注意力機制的文章的描述,是這樣的:

“自我關注(self attention)背后的關鍵概念是,這種機制允許神經網絡學習如何在輸入序列的各個片段之間以最好的路由方案進行信息調度?!?/p>

換句話說,自我關注(self-attention)有助于模型找出在表示某個單詞/類別時,輸入的哪些部分更重要,哪些部分相對不重要。為此,我強烈建議您閱讀一下上面引用的這篇文章,以便對自我關注為什么如此有效有一個更為直觀的理解。

圖片

多頭注意力機制

(選自Vaswani等人于2017年發表的論文)

注意力是通過3個學習過的矩陣來計算的——Q、K和V,它們代表查詢(Query)、鍵(Key)和值(Value)。首先,我們將矩陣Q和K相乘得到注意力矩陣。該矩陣被縮放并通過softmax層傳遞。然后,我們將其乘以V矩陣,得出最終值。為了更直觀地理解起見,請考慮下面的示意圖,它顯示了我們如何使用矩陣Q、K和V實現從輸入嵌入轉換到上下文嵌入。

圖片

自我關注流程可視化

通過重復該過程h次(使用不同的Q、K、V矩陣),我們就能夠得到多個上下文嵌入,它們形成我們最終的多頭注意力。

6.簡短回顧

讓我們總結一下上面所介紹的內容:

  • 簡單的分類嵌入不包含上下文信息
  • 通過轉換器編碼器傳遞分類嵌入,我們就能夠將嵌入上下文化
  • 轉換器部分能夠將嵌入上下文化,因為它使用了多頭注意力機制
  • 多頭注意力機制在編碼變量時使用矩陣Q、K和V來尋找有用的相互作用和相關性信息
  • 在TabTransformer中,被上下文化的嵌入與數字輸入相串聯,并通過一個簡單的MLP輸出預測

雖然TabTransformer背后的想法很簡單,但您可能需要一些時間才能掌握注意力機制。因此,我強烈建議您重新閱讀以上解釋。如果您感到有些迷茫,請認真閱讀本文中所有建議的鏈接相關內容。我保證,做到這些后,您就不難搞明白注意力機制的原理了。

7.試驗結果展示

圖片

結果數據(選自Huang等人2020年發表的論文)

根據報告的結果,TabTransformer轉換器優于所有其他深度學習表格模型,此外,它接近GBDT的性能水平,這非常令人鼓舞。該模型對缺失數據和噪聲數據也相對穩健,并且在半監督環境下優于其他模型。然而,這些數據集顯然不是詳盡無遺的,正如以后發表的一些相關論文所證實的那樣,仍有很大的改進空間。

二、構建我們自己的示例程序

現在,讓我們最終來確定一下如何將模型應用于我們自己的數據。接下來的示例數據取自著名的Tabular Playground Kaggle比賽。為了方便使用TabTransformer轉換器,我創建了一個tabtransformertf包。它可以使用如下pip命令進行安裝:

pip install tabtransformertf

并允許我們使用該模型,而無需進行大量預處理。

1.數據預處理

第一步是設置適當的數據類型,并將我們的訓練和驗證數據轉換為TF數據集。其中,前面安裝的軟件包中就提供了一個很好的實用程序可以做到這一點。

from tabtransformertf.utils.preprocessing import df_to_dataset, build_categorical_prep

# 設置數據類型
train_data[CATEGORICAL_FEATURES] = train_data[CATEGORICAL_FEATURES].astype(str)
val_data[CATEGORICAL_FEATURES] = val_data[CATEGORICAL_FEATURES].astype(str)

train_data[NUMERIC_FEATURES] = train_data[NUMERIC_FEATURES].astype(float)
val_data[NUMERIC_FEATURES] = val_data[NUMERIC_FEATURES].astype(float)

# 轉換成TF數據集
train_dataset = df_to_dataset(train_data[FEATURES + [LABEL]], LABEL, batch_size=1024)
val_dataset = df_to_dataset(val_data[FEATURES + [LABEL]], LABEL, shuffle=False, batch_size=1024)

下一步是為分類數據準備預處理層。該分類數據稍后將被傳遞給我們的主模型。

from tabtransformertf.utils.preprocessing import build_categorical_prep

category_prep_layers = build_categorical_prep(train_data, CATEGORICAL_FEATURES)

# 輸出結果是一個字典結構,其中鍵部分是特征名稱,值部分是StringLookup層
# category_prep_layers ->
# {'product_code': <keras.layers.preprocessing.string_lookup.StringLookup at 0x7f05d28ee4e0>,
# 'attribute_0': <keras.layers.preprocessing.string_lookup.StringLookup at 0x7f05ca4fb908>,
# 'attribute_1': <keras.layers.preprocessing.string_lookup.StringLookup at 0x7f05ca4da5f8>}

這就是預處理!現在,我們可以開始構建模型了。

2.構建TabTransformer模型

初始化模型很容易。其中,有幾個參數需要指定,但最重要的幾個參數是:embeding_dim、depth和heads。所有參數都是在超參數調整后選擇的。

from tabtransformertf.models.tabtransformer import TabTransformer

tabtransformer = TabTransformer(
numerical_features = NUMERIC_FEATURES, # 帶有數字特征名稱的列表
categorical_features = CATEGORICAL_FEATURES, # 帶有分類特征名稱的列表
categorical_lookup=category_prep_layers, # 帶StringLookup層的Dict
numerical_discretisers=None, # None代表我們只是簡單地傳遞數字特征
embedding_dim=32, # 嵌入維數
out_dim=1, # Dimensionality of output (binary task)
out_activatinotallow='sigmoid', # 輸出層激活
depth=4, # 轉換器塊層的個數
heads=8, # 轉換器塊中注意力頭的個數
attn_dropout=0.1, # 在轉換器塊中的丟棄率
ff_dropout=0.1, # 在最后MLP中的丟棄率
mlp_hidden_factors=[2, 4], # 我們為每一層劃分最終嵌入的因子
use_column_embedding=True, #如果我們想使用列嵌入,設置此項為真
)

# 模型運行中摘要輸出:
# 總參數個數: 1,778,884
# 可訓練的參數個數: 1,774,064
# 不可訓練的參數個數: 4,820

模型初始化后,我們可以像任何其他Keras模型一樣安裝它。訓練參數也可以調整,所以可以隨意調整學習速度和提前停止。

LEARNING_RATE = 0.0001
WEIGHT_DECAY = 0.0001
NUM_EPOCHS = 1000

optimizer = tfa.optimizers.AdamW(
learning_rate=LEARNING_RATE, weight_decay=WEIGHT_DECAY
)

tabtransformer.compile(
optimizer = optimizer,
loss = tf.keras.losses.BinaryCrossentropy(),
metrics= [tf.keras.metrics.AUC(name="PR AUC", curve='PR')],
)

out_file = './tabTransformerBasic'
checkpoint = ModelCheckpoint(
out_file, mnotallow="val_loss", verbose=1, save_best_notallow=True, mode="min"
)
early = EarlyStopping(mnotallow="val_loss", mode="min", patience=10, restore_best_weights=True)
callback_list = [checkpoint, early]

history = tabtransformer.fit(
train_dataset,
epochs=NUM_EPOCHS,
validation_data=val_dataset,
callbacks=callback_list
)

3.評價

競賽中最關鍵的指標是ROC AUC。因此,讓我們將其與PR AUC指標一起輸出來評估一下模型的性能。

val_preds = tabtransformer.predict(val_dataset)

print(f"PR AUC: {average_precision_score(val_data['isFraud'], val_preds.ravel())}")
print(f"ROC AUC: {roc_auc_score(val_data['isFraud'], val_preds.ravel())}")

# PR AUC: 0.26
# ROC AUC: 0.58

您也可以自己給測試集評分,然后將結果值提交給Kaggle官方。我現在選擇的這個解決方案使我躋身前35%,這并不壞,但也不太好。那么,為什么TabTransfromer在上述方案中表現不佳呢?可能有以下幾個原因:

  • 數據集太小,而深度學習模型以需要大量數據著稱
  • TabTransformer很容易在表格式數據示例領域出現過擬合
  • 沒有足夠的分類特征使模型有用

三、結論

本文探討了TabTransformer背后的主要思想,并展示了如何使用Tabtransformertf包來具體應用此轉換器。

歸納起來看,TabTransformer的確是一種有趣的體系結構,它在當時的表現明顯優于大多數深度表格模型。它的主要優點是將分類嵌入語境化,從而增強其表達能力。它使用在分類特征上的多頭注意力機制來實現這一點,而這是在表格數據領域使用轉換器的第一個應用實例。

TabTransformer體系結構的一個明顯缺點是,數字特征被簡單地傳遞到最終的MLP層。因此,它們沒有語境化,它們的價值也沒有在分類嵌入中得到解釋。在下一篇文章中,我將探討如何修復此缺陷并進一步提高性能。

譯者介紹

朱先忠,51CTO社區編輯,51CTO專家博客、講師,濰坊一所高校計算機教師,自由編程界老兵一枚。

原文鏈接:https://towardsdatascience.com/transformers-for-tabular-data-tabtransformer-deep-dive-5fb2438da820?source=collection_home---------4----------------------------

責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2010-02-04 10:05:28

Dalvik虛擬機

2020-10-14 10:25:20

深度學習機器學習神經網絡

2017-04-14 08:58:55

深度學習感知機深度網絡

2010-06-10 14:33:03

協議轉換器

2013-06-13 15:10:27

.NET代碼轉換

2010-06-10 14:44:33

協議轉換器

2010-06-10 15:03:13

協議轉換器

2020-09-08 13:02:00

Python神經網絡感知器

2009-12-28 13:38:35

WPF類型轉換器

2016-10-25 13:46:25

深度學習機器學習性能提升

2025-03-06 10:41:32

2021-09-04 17:26:31

SpringBoot轉換器參數

2025-09-24 08:03:22

2021-09-08 07:44:26

人工智能keras神經網絡

2009-09-11 12:41:41

C#類型轉換

2010-06-10 14:38:30

協議轉換器

2010-06-10 14:49:07

協議轉換器

2024-05-11 08:47:36

Python工具裝飾器

2012-04-26 10:45:24

敏捷開發

2014-01-13 09:47:35

虛擬機
點贊
收藏

51CTO技術棧公眾號

久久久久久久久久久影视| 91av在线看| 亚洲毛片aa| 国产在线一区二区三区四区| 中文字幕有码在线播放| 国产成人午夜性a一级毛片| 中文字幕一区二区三区在线播放| 亚洲自拍偷拍视频| 亚洲综合久久网| 亚洲激情中文| 亚洲片在线资源| 在线观看免费看片| 日产精品一区| 亚洲风情在线资源站| 天天综合色天天综合色hd| www.国产.com| 日本不卡的三区四区五区| 欧美大片在线看| 天堂在线中文视频| 久久aimee| 91精品久久久久久久91蜜桃| 妞干网在线免费视频| 日本高清在线观看视频| 久久免费国产精品| 国产精品三区www17con| 国产毛片一区二区三区va在线| 久久精品中文| 久久免费视频网| 乱h高h女3p含苞待放| 狠狠色丁香婷婷综合影院| 亚洲国产成人久久| 久久久久久国产精品日本| 丁香婷婷久久| 91国产成人在线| 人妻有码中文字幕| av在线网页| 一区二区日韩电影| 国产资源第一页| 国产三区视频在线观看| 日本一区二区综合亚洲| 久久资源亚洲| 青青青草原在线| 91亚洲永久精品| 国产一区二区免费在线观看| 亚洲av永久无码国产精品久久| 久久国产精品99精品国产 | 精品视频一区二区三区免费| 亚洲 高清 成人 动漫| 91超碰国产在线| 亚洲高清在线视频| 波多野结衣av一区二区全免费观看| 老司机av在线免费看| 综合网在线视频| 一区二区三区我不卡| 日本三级视频在线播放| 国产精品国产a级| 中文字幕欧美日韩一区二区三区| 日本中文字幕电影在线免费观看| 亚洲国产高清在线| 中文字幕色一区二区| 久久精品视频观看| 有坂深雪av一区二区精品| 国产内射老熟女aaaa| 久久香蕉av| 亚洲妇女屁股眼交7| 欧美日韩在线视频一区二区三区| 制服丝袜专区在线| 日本久久电影网| 男人添女人下面免费视频| 永久免费观看精品视频| 欧美大片一区二区| 亚洲久久久久久| 国产成人黄色| 久久九九免费视频| 国产精彩视频在线观看| 国产亚洲精品v| 国产精品国产三级国产aⅴ9色 | 久久久久成人精品无码| 91久久中文| 国产国语刺激对白av不卡| 中文字幕在线日亚洲9| 国产盗摄精品一区二区三区在线| 国产伦精品一区二区三区免费视频 | av成人影院在线| 一本久道久久综合中文字幕 | 欧美 日韩 精品| 日韩国产在线观看一区| 91在线免费视频| 亚洲 国产 欧美 日韩| 日本一区二区久久| 国产激情片在线观看| 亚洲精华液一区二区三区| 欧美日韩国产免费| 中文文字幕文字幕高清| 日韩免费高清| 隔壁老王国产在线精品| 亚洲天堂视频在线播放| 国产成人亚洲综合a∨婷婷图片| 久久国产精品精品国产色婷婷| 国产高清在线| 亚洲国产婷婷综合在线精品| xxxx一级片| 精品按摩偷拍| 久久视频中文字幕| 亚洲毛片一区二区三区| 国产精品一区二区不卡| 日韩成人av电影在线| 欧美aaaaaaa| 欧美午夜视频网站| 真人bbbbbbbbb毛片| 一二三区不卡| 国产999精品| 人妻妺妺窝人体色www聚色窝| 国产女主播视频一区二区| 韩日视频在线观看| 亚洲精品乱码日韩| 亚洲欧美综合区自拍另类| 日韩a级片在线观看| 日韩vs国产vs欧美| 久久久亚洲综合网站| 伊人影院在线视频| 欧美美女一区二区三区| 精品人妻无码一区二区三区换脸| 黑人一区二区| 3d动漫啪啪精品一区二区免费| 国产亚洲依依| 黑人巨大精品欧美一区二区一视频 | 亚洲国产免费av| 国产又粗又硬又长又爽| 日韩中文字幕麻豆| 欧美亚州在线观看| 美女视频在线免费| 亚洲精品国产综合久久| 精品少妇一二三区| 国产精品综合一区二区三区| 亚洲成人自拍视频| 少妇精品视频一区二区免费看| 亚洲精品电影在线观看| 日本午夜精品理论片a级app发布| 国产在线精品一区二区夜色| 亚洲精品在线免费| a∨色狠狠一区二区三区| 亚洲美女久久久| 好看的av在线| 久久综合久久综合久久综合| 免费无遮挡无码永久视频| 欧美绝顶高潮抽搐喷水合集| 亚州av一区二区| 亚洲精品久久久狠狠狠爱| 亚洲欧洲制服丝袜| 欧美激情第四页| 亚洲天堂免费| 97免费资源站| 黄视频在线免费看| 日韩av影视在线| 9i看片成人免费看片| 久久久久久久综合狠狠综合| 能看的毛片网站| 欧美一站二站| 91久久久久久久| 三级网站视频在在线播放| 日韩三级免费观看| 国产一级免费av| 91视视频在线观看入口直接观看www| 日韩精品―中文字幕| 一区二区三区日本久久久| 国产精品99久久久久久www| 97电影在线看视频| 日韩一区二区三区在线| 日产欧产va高清| 国产亚洲女人久久久久毛片| 亚洲一区日韩精品| 欧美精品二区| 免费成人av网站| 国产美女久久| 欧美日韩第一视频| 亚洲区小说区图片区| 91黄色免费观看| 国产午夜精品理论片| 国产99久久久精品| 无码精品国产一区二区三区免费| 经典一区二区| 成人综合网网址| av中文资源在线资源免费观看| 亚洲欧美日韩一区二区在线| 一级片免费观看视频| 亚洲成人资源在线| 亚洲ⅴ国产v天堂a无码二区| 国产在线精品一区二区不卡了| 日韩成人手机在线| 欧美日韩国产在线观看网站| 亚洲一区二区免费| 欧美韩国亚洲| 欧美黑人一级爽快片淫片高清| 经典三级在线| 日韩精品一区二区三区在线观看| 怡红院av久久久久久久| 亚洲乱码日产精品bd| 人妻少妇一区二区| 国产电影精品久久禁18| 天天干天天综合| 亚洲色诱最新| 男人天堂网站在线| 精品视频网站| 狠狠色狠狠色综合人人| 96sao精品免费视频观看| 青草青草久热精品视频在线观看| 黄色成人在线观看| 亚洲精品网址在线观看| www.久久成人| 欧美美女一区二区| 亚洲成人av网址| 欧美日韩国产精品一区二区不卡中文| 18啪啪污污免费网站| 91在线观看免费视频| 亚欧美一区二区三区| 免费一级欧美片在线观看| 欧美亚洲日本一区二区三区| 在线中文字幕亚洲| 亚洲精品在线免费看| 亚洲三级精品| 国产在线精品一区二区三区》| 国产剧情一区二区在线观看| 国产精品都在这里| xxxxx性欧美特大| 性色av香蕉一区二区| 高h视频在线播放| 欧美成年人在线观看| 午夜免费播放观看在线视频| 亚洲欧美综合另类中字| 青青青草网站免费视频在线观看| 亚洲福利视频专区| 国精产品一品二品国精品69xx| 欧美一区二区日韩| 国产乱码久久久久| 欧美高清精品3d| 亚洲网站在线免费观看| 欧美丝袜丝交足nylons图片| 少妇久久久久久久| 日本高清成人免费播放| 免费的毛片视频| 色综合天天在线| 欧美一级特黄视频| 欧美日韩亚洲精品一区二区三区| 日本中文字幕网| 精品露脸国产偷人在视频| 日操夜操天天操| 疯狂蹂躏欧美一区二区精品| 欧美日韩一二三四区| 福利视频第一区| 久久不卡免费视频| 一本色道久久综合亚洲aⅴ蜜桃| 在线观看免费av片| 欧美三级电影精品| 国产又粗又大又爽视频| 538prom精品视频线放| 国产成人精品毛片| 精品久久人人做人人爽| 天天操天天插天天射| 国产视频精品va久久久久久| 欧美在线观看在线观看| 一本久久综合亚洲鲁鲁| 精品麻豆一区二区三区| 欧美国产欧美亚洲国产日韩mv天天看完整| 天使と恶魔の榨精在线播放| 久久久久久久色| 中文在线аv在线| 国产精品一区久久久| 精品一区二区三区视频在线播放 | 57pao成人国产永久免费| www.成人爱| 国产精品夜间视频香蕉| 我要色综合中文字幕| 美媛馆国产精品一区二区| 日本不卡免费一区| 警花观音坐莲激情销魂小说| 亚洲免费大片| 高潮一区二区三区| 国v精品久久久网| 四虎国产精品成人免费入口| 国产精品成人一区二区三区夜夜夜 | 天堂一区在线观看| 国产高清亚洲一区| 97伦伦午夜电影理伦片| ●精品国产综合乱码久久久久| 久视频在线观看| 欧美艳星brazzers| 丰满肉嫩西川结衣av| 亚洲欧美日韩区| 日本动漫同人动漫在线观看| 国产精品444| 亚洲国产一区二区三区网站| 日本高清视频一区二区三区| 午夜天堂精品久久久久| 密臀av一区二区三区| 国产成人在线观看| 国产一区二区三区四区在线| 亚洲午夜电影在线观看| 成人黄色三级视频| 精品久久久久久久久久久院品网| 国产区视频在线| 日韩欧美中文一区二区| 天天色综合久久| 欧美不卡一区二区三区四区| 国产午夜精品一区理论片| 久久久久久久久久国产| 国产成人精品一区二区三区在线 | 成人77777| 国模精品系列视频| 亚洲综合资源| 特级西西444www大精品视频| 欧美另类亚洲| 超碰超碰在线观看| 久久中文娱乐网| 欧美日韩中文视频| 在线亚洲精品福利网址导航| 黑人操亚洲女人| 久久综合免费视频| 麻豆久久久久| 欧美在线日韩精品| 99精品欧美| 无码任你躁久久久久久老妇| 亚洲日本青草视频在线怡红院| 日韩久久久久久久久久| 亚洲美女av黄| 国产天堂在线播放视频| 国产精品自拍偷拍| 欧美日韩一区二区三区四区不卡| 国产一二三四五| 日韩黄色一级片| 亚洲精品激情视频| 亚洲午夜精品17c| 亚洲欧美另类日韩| 欧美日韩国产123| 视频二区欧美| 亚洲精品天堂成人片av在线播放| 精品一区二区三区在线观看国产| 黄色aaa视频| 色婷婷精品大视频在线蜜桃视频| 午夜福利一区二区三区| 久久免费精品日本久久中文字幕| 国内精品麻豆美女在线播放视频| 免费视频爱爱太爽了| 成人av电影在线| 日韩精品一区二区三区国语自制| 日韩免费观看高清完整版在线观看| 国产三级在线播放| 97久久天天综合色天天综合色hd| 欧美精品不卡| 免费无码一区二区三区| 狠狠躁天天躁日日躁欧美| 邻居大乳一区二区三区| 国产精品精品视频一区二区三区| 日本成人小视频| 精品国产乱码久久久久久1区二区| 亚洲视频图片小说| 中文字字幕在线中文乱码| xxxx性欧美| 亚洲天堂av资源在线观看| 777av视频| 久久久久久久久久久99999| 无码人妻久久一区二区三区| 色婷婷成人综合| 亚洲高清影院| 青青草国产精品视频| 久久人人爽人人爽| 一区二区三区在线免费观看视频| 欧美日本国产在线| 美女一区2区| 韩国中文字幕av| 国产精品国产三级国产普通话蜜臀 | 国产成人av一区二区| 久草网视频在线观看| 国产丝袜精品第一页| 色综合一区二区日本韩国亚洲| 四虎永久免费网站| 成人高清在线视频| 国产精品免费无遮挡无码永久视频| 日韩视频永久免费观看| 77成人影视| 欧美精品第三页| 亚洲男人的天堂在线观看| 亚洲欧美一区二区三| 91精品一区二区| 一区二区三区四区五区在线 | 久草在线网址| 91中文字幕一区| 免费一级欧美片在线播放| 欧美日韩午夜视频| 亚洲精品丝袜日韩| 一区二区三区在线免费看| 国产成人av影视| 一区二区三区四区视频精品免费| 欧美日韩伦理片| 97视频资源在线观看| 久久激情中文| 人妻人人澡人人添人人爽| 欧美精品一区二区在线观看| 成人在线观看免费视频| 日日摸日日碰夜夜爽av|