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

借助LLM實現模型選擇和試驗自動化

譯文 精選
人工智能
代碼生成和評估最近已經成為許多商業產品提供的重要功能,以幫助開發人員處理代碼。LLM還可以進一步用于處理數據科學工作,尤其是模型選擇和試驗。本文將探討如何將自動化用于模型選擇和試驗。

譯者 | 布加迪

審校 | 重樓

大語言模型(LLM)已成為一種工具,從回答問題到生成任務列表,它們在許多方面簡化了我們的工作。如今個人和企業已經使用LLM來幫助完成工作。

代碼生成和評估最近已經成為許多商業產品提供的重要功能,以幫助開發人員處理代碼。LLM還可以進一步用于處理數據科學工作,尤其是模型選擇和試驗。

本文將探討如何將自動化用于模型選擇和試驗。

借助LLM實現模型選擇和試驗自動化

我們將設置用于模型訓練的數據集和用于自動化的代碼。在這個例子中,我們將使用來自Kaggle的信用汽車欺詐數據集。以下是我為預處理過程所做的準備。

import pandas as pd

df = pd.read_csv('fraud_data.csv')
df = df.drop(['trans_date_trans_time', 'merchant', 'dob', 'trans_num', 'merch_lat', 'merch_long'], axis =1)

df = df.dropna().reset_index(drop = True)
df.to_csv('fraud_data.csv', index = False)

我們將只使用一些數據集,丟棄所有缺失的數據。這不是最優的過程,但我們關注的是模型選擇和試驗。

接下來,我們將為我們的項目準備一個文件夾,將所有相關文件放在那里。首先,我們將為環境創建requirements.txt文件。你可以用下面的軟件包來填充它們。

openai
pandas
scikit-learn
pyyaml

接下來,我們將為所有相關的元數據使用YAML文件。這將包括OpenAI API密鑰、要測試的模型、評估度量指標和數據集的位置。

llm_api_key: "YOUR-OPENAI-API-KEY"
default_models:
  - LogisticRegression
  - DecisionTreeClassifier
  - RandomForestClassifier
metrics: ["accuracy", "precision", "recall", "f1_score"]
dataset_path: "fraud_data.csv"

然后,我們導入這個過程中使用的軟件包。我們將依靠Scikit-Learn用于建模過程,并使用OpenAI的GPT-4作為LLM。

import pandas as pd
import yaml
import ast
import re
import sklearn
from openai import OpenAI
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score

此外,我們將設置輔助(helper)函數和信息來幫助該過程。從數據集加載到數據預處理,配置加載器在如下的函數中。

model_mapping = {
    "LogisticRegression": LogisticRegression,
    "DecisionTreeClassifier": DecisionTreeClassifier,
    "RandomForestClassifier": RandomForestClassifier
}

def load_config(config_path='config.yaml'):
    with open(config_path, 'r') as file:
        config = yaml.safe_load(file)
    return config

def load_data(dataset_path):
    return pd.read_csv(dataset_path)

def preprocess_data(df):
    label_encoders = {}
    for column in df.select_dtypes(include=['object']).columns:
        le = LabelEncoder()
        df[column] = le.fit_transform(df[column])
        label_encoders[column] = le
    return df, label_encoders

在同一個文件中,我們將LLM設置為扮演機器學習角色的專家。我們將使用下面的代碼來啟動它。

def call_llm(prompt, api_key):
    client = OpenAI(api_key=api_key)
    response = client.chat.completions.create(
        model="gpt-4",
        messages=[
            {"role": "system", "content": "You are an expert in machine learning and able to evaluate the model well."},
            {"role": "user", "content": prompt}
        ]
    )
    return response.choices[0].message.content.strip()

你可以將LLM模型更改為所需的模型,比如來自Hugging Face的開源模型,但我們建議暫且堅持使用OpenAI。

我將在下面的代碼中準備一個函數來清理LLM結果。這確保了輸出可以用于模型選擇和試驗步驟的后續過程。

def clean_hyperparameter_suggestion(suggestion):
    pattern = r'\{.*?\}'
    match = re.search(pattern, suggestion, re.DOTALL)
    if match:
        cleaned_suggestion = match.group(0)
        return cleaned_suggestion
    else:
        print("Could not find a dictionary in the hyperparameter suggestion.")
        return None

def extract_model_name(llm_response, available_models):
    for model in available_models:
        pattern = r'\b' + re.escape(model) + r'\b'
        if re.search(pattern, llm_response, re.IGNORECASE):
            return model
    return None

def validate_hyperparameters(model_class, hyperparameters):
    valid_params = model_class().get_params()
    invalid_params = []
    for param, value in hyperparameters.items():
        if param not in valid_params:
            invalid_params.append(param)
        else:
            if param == 'max_features' and value == 'auto':
                print(f"Invalid value for parameter '{param}': '{value}'")
                invalid_params.append(param)
    if invalid_params:
        print(f"Invalid hyperparameters for {model_class.__name__}: {invalid_params}")
        return False
    return True

def correct_hyperparameters(hyperparameters, model_name):
    corrected = False
    if model_name == "RandomForestClassifier":
        if 'max_features' in hyperparameters and hyperparameters['max_features'] == 'auto':
            print("Correcting 'max_features' from 'auto' to 'sqrt' for RandomForestClassifier.")
            hyperparameters['max_features'] = 'sqrt'
            corrected = True
    return hyperparameters, corrected

然后,我們將需要該函數來啟動模型和評估訓練過程。下面的代碼將用于通過接受分割器數據集、我們要映射的模型名稱以及超參數來訓練模型。結果將是度量指標和模型對象。

def train_and_evaluate(X_train, X_test, y_train, y_test, model_name, hyperparameters=None):
    if model_name not in model_mapping:
        print(f"Valid model names are: {list(model_mapping.keys())}")
        return None, None

    model_class = model_mapping.get(model_name)
    try:
        if hyperparameters:
            hyperparameters, corrected = correct_hyperparameters(hyperparameters, model_name)
            if not validate_hyperparameters(model_class, hyperparameters):
                return None, None
            model = model_class(**hyperparameters)
        else:
            model = model_class()
    except Exception as e:
        print(f"Error instantiating model with hyperparameters: {e}")
        return None, None
    try:
        model.fit(X_train, y_train)
    except Exception as e:
        print(f"Error during model fitting: {e}")
        return None, None


    y_pred = model.predict(X_test)
    metrics = {
        "accuracy": accuracy_score(y_test, y_pred),
        "precision": precision_score(y_test, y_pred, average='weighted', zero_division=0),
        "recall": recall_score(y_test, y_pred, average='weighted', zero_division=0),
        "f1_score": f1_score(y_test, y_pred, average='weighted', zero_division=0)
    }
    return metrics, model

準備就緒后,我們就可以設置自動化過程了。有幾個步驟我們可以實現自動化,其中包括:

1.訓練和評估所有模型

2. LLM選擇最佳模型

3. 檢查最佳模型的超參數調優

4. 如果LLM建議,自動運行超參數調優

def run_llm_based_model_selection_experiment(df, config):
    #Model Training
    X = df.drop("is_fraud", axis=1)
    y = df["is_fraud"]
    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

    available_models = config['default_models']
    model_performance = {}

    for model_name in available_models:
        print(f"Training model: {model_name}")
        metrics, _ = train_and_evaluate(X_train, X_test, y_train, y_test, model_name)
        model_performance[model_name] = metrics
        print(f"Model: {model_name} | Metrics: {metrics}")

    #LLM selecting the best model
    sklearn_version = sklearn.__version__
    prompt = (
        f"I have trained the following models with these metrics: {model_performance}. "
        "Which model should I select based on the best performance?"
    )
    best_model_response = call_llm(prompt, config['llm_api_key'])
    print(f"LLM response for best model selection:\n{best_model_response}")

    best_model = extract_model_name(best_model_response, available_models)
    if not best_model:
        print("Error: Could not extract a valid model name from LLM response.")
        return
    print(f"LLM selected the best model: {best_model}")

    #Check for hyperparameter tuning
    prompt_tuning = (
        f"The selected model is {best_model}. Can you suggest hyperparameters for better performance? "
        "Please provide them in Python dictionary format, like {'max_depth': 5, 'min_samples_split': 4}. "
        f"Ensure that all suggested hyperparameters are valid for scikit-learn version {sklearn_version}, "
        "and avoid using deprecated or invalid values such as 'max_features': 'auto'. "
        "Don't provide any explanation or return in any other format."
    )
    tuning_suggestion = call_llm(prompt_tuning, config['llm_api_key'])
    print(f"Hyperparameter tuning suggestion received:\n{tuning_suggestion}")

    cleaned_suggestion = clean_hyperparameter_suggestion(tuning_suggestion)
    if cleaned_suggestion is None:
        suggested_params = None
    else:
        try:
            suggested_params = ast.literal_eval(cleaned_suggestion)
            if not isinstance(suggested_params, dict):
                print("Hyperparameter suggestion is not a valid dictionary.")
                suggested_params = None
        except (ValueError, SyntaxError) as e:
            print(f"Error parsing hyperparameter suggestion: {e}")
            suggested_params = None

    #Automatically run hyperparameter tuning if suggested
    if suggested_params:
        print(f"Running {best_model} with suggested hyperparameters: {suggested_params}")
        tuned_metrics, _ = train_and_evaluate(
            X_train, X_test, y_train, y_test, best_model, hyperparameters=suggested_params
        )
        print(f"Metrics after tuning: {tuned_metrics}")
    else:
        print("No valid hyperparameters were provided for tuning.")

在上面的代碼中,我指定了LLM如何根據試驗評估我們的每個模型。我們使用以下提示根據模型的性能來選擇要使用的模型。

prompt = (
        f"I have trained the following models with these metrics: {model_performance}. "
        "Which model should I select based on the best performance?")

你始終可以更改提示,以實現模型選擇的不同規則。

一旦選擇了最佳模型,我將使用以下提示來建議應該使用哪些超參數用于后續過程。我還指定了Scikit-Learn版本,因為超參數因版本的不同而有變化。

prompt_tuning = (
        f"The selected model is {best_model}. Can you suggest hyperparameters for better performance? "
        "Please provide them in Python dictionary format, like {'max_depth': 5, 'min_samples_split': 4}. "
        f"Ensure that all suggested hyperparameters are valid for scikit-learn version {sklearn_version}, "
        "and avoid using deprecated or invalid values such as 'max_features': 'auto'. "
        "Don't provide any explanation or return in any other format.")

你可以以任何想要的方式更改提示,比如通過更大膽地嘗試調優超參數,或添加另一種技術。

我把上面的所有代碼放在一個名為automated_model_llm.py的文件中。最后,添加以下代碼以運行整個過程。

def main():
    config = load_config()
    df = load_data(config['dataset_path'])
    df, _ = preprocess_data(df)
    run_llm_based_model_selection_experiment(df, config)


if __name__ == "__main__":
    main()

一旦一切準備就緒,你就可以運行以下代碼來執行代碼。

python automated_model_llm.py

輸出:

LLM selected the best model: RandomForestClassifier
Hyperparameter tuning suggestion received:
{
'n_estimators': 100,
'max_depth': None,
'min_samples_split': 2,
'min_samples_leaf': 1,
'max_features': 'sqrt',
'bootstrap': True
}
Running RandomForestClassifier with suggested hyperparameters: {'n_estimators': 100, 'max_depth': None, 'min_samples_split': 2, 'min_samples_leaf': 1, 'max_features': 'sqrt', 'bootstrap': True}
Metrics after tuning: {'accuracy': 0.9730041532071989, 'precision': 0.9722907483489197, 'recall': 0.9730041532071989, 'f1_score': 0.9724045530119824}

這是我試驗得到的示例輸出。它可能和你的不一樣。你可以設置提示和生成參數,以獲得更加多變或嚴格的LLM輸出。然而,如果你正確構建了代碼的結構,可以將LLM運用于模型選擇和試驗自動化。

結論

LLM已經應用于許多使用場景,包括代碼生成。通過運用LLM(比如OpenAI GPT模型),我們就很容易委派LLM處理模型選擇和試驗這項任務,只要我們正確地構建輸出的結構。在本例中,我們使用樣本數據集對模型進行試驗,讓LLM選擇和試驗以改進模型。

原文標題:Model Selection and Experimentation Automation with LLMs作者:Cornellius Yudha Wijaya

責任編輯:姜華 來源: 51CTO內容精選
相關推薦

2024-06-11 10:41:14

2021-11-29 18:11:33

自動化現代化網絡優化

2015-10-21 15:08:25

電纜自動化

2022-07-05 08:26:10

Python報表自動化郵箱

2020-05-29 09:03:36

SD-WAN自動化網絡

2021-10-14 09:55:28

AnsibleanacronLinux

2020-01-16 09:00:00

AI人工智能ML

2017-12-17 21:58:18

2021-09-17 15:56:14

數據平臺自動化

2018-01-30 10:24:41

2024-11-27 08:14:43

2009-12-23 16:27:49

WPF UI自動化模型

2023-09-01 09:21:03

Python自動化測試

2021-07-14 13:11:02

papermillJupyterPython

2013-09-11 09:04:48

2023-08-17 10:14:58

物聯網家庭自動化

2020-03-31 10:58:35

網絡自動化SD-WAN軟件定義網絡

2022-01-14 11:51:00

測試工具自動化

2022-11-15 17:07:40

開發自動化前端

2018-08-31 09:55:38

Ansible網絡自動化
點贊
收藏

51CTO技術棧公眾號

欧美精品九九99久久| 国产蜜臀av在线一区二区三区| 欧美高清在线观看| 日本一区二区在线免费观看| 国产精品高清乱码在线观看 | 久久久久久国产免费a片| 欧洲精品久久久久毛片完整版| 樱花影视一区二区| 欧美日韩中文国产一区发布| 国产片在线播放| 国产美女精品| 美日韩精品视频免费看| 亚欧洲乱码视频| 亚洲一区二区免费在线观看| 在线观看精品一区| 欧美又粗又长又爽做受| a天堂中文在线88| 波多野结衣在线一区| 成人午夜两性视频| 亚洲va在线观看| 欧美三级乱码| 日韩性生活视频| 亚洲av成人无码一二三在线观看| 国产精品久久久久久av公交车| 精品久久久久久中文字幕大豆网| 丰满女人性猛交| 牛牛热在线视频| 国产成人精品午夜视频免费| 国产精品视频色| 日韩久久中文字幕| 伊人成人在线视频| 欧美老女人xx| 男人晚上看的视频| 精品无人区麻豆乱码久久久| 精品视频在线播放色网色视频| wwwxxxx在线观看| 亚洲日本免费电影| 欧美日韩一卡二卡三卡| 免费av网址在线| 毛片电影在线| 亚洲va中文字幕| 人妻少妇精品无码专区二区| 2024最新电影在线免费观看| 亚洲欧美在线aaa| 一区二区在线不卡| 日韩在线免费电影| 国产精品激情偷乱一区二区∴| 欧美中文娱乐网| 男女污污视频在线观看| 91丨porny丨中文| 久久精品综合一区| 天堂资源中文在线| 91色porny在线视频| 久久久久久久久四区三区| 视频二区在线观看| 2021久久国产精品不只是精品| 精品蜜桃一区二区三区| 头脑特工队2在线播放| 91一区二区三区在线观看| 91丨porny丨首页| 一区二区视频| 最近日韩中文字幕| 一区二区av| 正在播放精油久久| 亚洲图片欧洲图片日韩av| 中文字幕 亚洲视频| 日本在线不卡视频| 欧美日韩在线一区二区| 欧美一区二区三区男人的天堂| 日本一本草久p| 成年人黄视频在线观看| 亚洲女与黑人做爰| 亚洲欧美国产三级| 亚洲午夜极品| 日韩欧美中文字幕一区| 在线视频日韩欧美| 澳门成人av| 亚洲国产精品国自产拍av秋霞| v天堂中文在线| 蜜桃一区二区三区| 成人在线免费| 91资源在线视频| 精品日本12videosex| 国产一区二区三区在线播放免费观看 | 色综合久久av| 日韩午夜在线播放| 精品国产一区二区亚洲人成毛片| 男人揉女人奶房视频60分| 中文字幕在线视频网站| 在线视频你懂得一区二区三区| jizz欧美性11| 国产精品tv| 日韩大胆成人| 日本高清视频在线观看| 国产麻豆一精品一av一免费| a级国产乱理论片在线观看99| 手机看片一区二区三区| 国产精品对白交换视频 | 五月婷婷综合激情| 五月婷婷综合色| 伊人影院在线视频| 在线免费精品视频| 性感美女一区二区三区| 欧美日韩在线播放视频| 久久久久久久国产精品| 中文字幕码精品视频网站| 成人av在线播放网站| 亚洲精品一区二区三区av| 国产经典三级在线| 欧美日韩电影在线播放| 玖玖爱在线观看| 国产一区日韩欧美| 国产精品爽黄69天堂a| 天天干视频在线| 亚洲美女视频一区| 最新中文字幕免费视频| 欧美影院天天5g天天爽| 欧美激情亚洲自拍| 国产免费高清av| 国产女主播一区| 欧美 日韩 国产在线观看| 日本精品一区二区三区在线观看视频| 亚洲性av在线| 亚洲s码欧洲m码国产av| 91在线丨porny丨国产| 91免费版看片| 亚洲成人毛片| 综合欧美国产视频二区| 国产视频1区2区| 97精品国产露脸对白| 国产亚洲精品久久久久久久| 四虎永久精品在线| 中文字幕日韩综合av| 人人爽人人爽人人片av| 91香蕉视频黄| av天堂永久资源网| 色橹橹欧美在线观看视频高清| 欧美激情欧美激情在线五月| 精品人妻无码一区二区三区蜜桃一| 中文字幕一区二区在线观看| 国产aaaaa毛片| 欧洲福利电影| 国产精品wwww| 久草在现在线| 91传媒视频在线播放| 大又大又粗又硬又爽少妇毛片| 亚洲欧美日韩在线观看a三区| 精品欧美日韩在线| 两个人看的在线视频www| 亚洲国产成人精品电影| 日本在线观看中文字幕| av高清久久久| 人妻少妇被粗大爽9797pw| 网友自拍区视频精品| 欧美最猛性xxxxx亚洲精品| 色综合888| 91国偷自产一区二区开放时间| 人妻精品久久久久中文| 日韩成人午夜电影| 亚洲人一区二区| 伊人久久精品| 欧美激情视频在线观看| 天天干天天插天天操| 日韩欧美在线一区| 丁香花五月婷婷| 国产一区二区女| 美脚丝袜脚交一区二区| 偷拍自拍一区| 国产精品成人一区二区三区吃奶| 日本三级在线播放完整版| 欧美大胆人体bbbb| 麻豆久久久久久久久久| 日本一区二区成人在线| 波多野结衣网页| 欧美fxxxxxx另类| 久久国产精品一区二区三区| 性欧美freehd18| 欧美成人免费一级人片100| 人妻丰满熟妇av无码区hd| 色哟哟一区二区| 午夜剧场免费在线观看| 成人的网站免费观看| 日日碰狠狠丁香久燥| 亚洲成av人片一区二区密柚| 国产精品初高中精品久久| 乡村艳史在线观看| 日韩视频免费大全中文字幕| 午夜精品在线播放| 色婷婷精品久久二区二区蜜臂av | 女人天堂在线| 欧美一区二区三区免费观看视频| 日韩精品久久久久久久| 中文字幕乱码亚洲精品一区| 少妇熟女视频一区二区三区| 日韩电影一二三区| 日本xxxxxxxxxx75| 色综合天天爱| 美女亚洲精品| 在线综合色站| 国产精品丝袜高跟| 在线观看福利电影| 欧美久久久精品| 91激情在线| 日韩精品www| 精品国产无码一区二区| 欧美亚洲综合色| 欧美一级视频免费观看| 亚洲男同性恋视频| 1024手机在线观看你懂的| 成人一级片在线观看| 免费一区二区三区在线观看| 亚洲一区图片| 波多野结衣av一区二区全免费观看| 第一会所sis001亚洲| 久久大片网站| 91成人短视频| 2022国产精品| 成人激情久久| 国产欧美精品在线| 欧美日韩不卡| 日本成熟性欧美| 97人人爽人人澡人人精品| 久久亚洲国产成人| 日本中文字幕在线看| 亚洲人成在线电影| 午夜视频福利在线| 亚洲精品xxx| 少妇喷水在线观看| 亚洲成人av片| 亚洲经典一区二区| 91精品国产高清一区二区三区| 中文字幕第99页| 欧美三级资源在线| 国产偷人爽久久久久久老妇app | 色综合综合色| 久久99精品久久久久久青青日本 | 男的插女的下面视频| 欧美a级片网站| 无码人妻精品一区二区三区99v| 国产成人三级| 日韩一区不卡| 成人久久综合| 正在播放一区| 伊人久久大香线| 欧美性受黑人性爽| 欧美高清不卡| 成年丰满熟妇午夜免费视频| 欧美激情麻豆| 青青草精品视频在线| 99精品国产福利在线观看免费| 久久av综合网| 国产欧美一区二区色老头 | 久久丁香综合五月国产三级网站| 欧美伦理片在线看| 美腿丝袜亚洲一区| 欧美视频亚洲图片| 国产jizzjizz一区二区| www.com日本| 91亚洲精品久久久蜜桃网站| 中日韩精品一区二区三区| 国产日产欧产精品推荐色 | 91精品天堂福利在线观看| 潘金莲一级淫片aaaaa免费看| 欧美成人首页| 亚洲欧洲日产国码无码久久99| 自拍偷拍一区| 国产一区二区电影| 在线免费视频一区二区| 国产jk精品白丝av在线观看| 国产亚洲视频系列| 少妇视频一区二区| 一区二区三区在线不卡| 日本一级一片免费视频| 一本大道久久精品懂色aⅴ| 最新在线中文字幕| 日韩一区二区三区四区五区六区| 蜜桃久久一区二区三区| 亚洲女人初尝黑人巨大| 日本精品在线| 午夜精品蜜臀一区二区三区免费| 老司机2019福利精品视频导航| 国产精品免费观看在线| 欧美黄视频在线观看| 久久久久一区二区| 天天操夜夜操国产精品| av免费观看大全| 久久电影网站中文字幕| av在线播放网址| 中文字幕av在线一区二区三区| 欧美成人精品一区二区免费看片| 欧美特级www| 999久久久久| 日韩精品中文字幕有码专区| 日本成人在线播放| 91精品国产色综合| 日韩色性视频| 久久久久免费网| 欧美久久九九| 一级黄色特级片| 99re8在线精品视频免费播放| www.5588.com毛片| 一本一道久久a久久精品| 99热这里只有精品5| 亚洲天堂av综合网| www在线观看黄色| 91天堂在线视频| 欧美三级情趣内衣| 久在线观看视频| 国产精品综合av一区二区国产馆| 妺妺窝人体色WWW精品| 亚洲a一区二区| 99在线精品视频免费观看20| 在线播放国产一区中文字幕剧情欧美 | 99久久精品国产精品久久| 国产67194| 精品视频在线免费| 欧美成人片在线| 91精品国产91久久久久久吃药| 日韩中文字幕| 艳母动漫在线免费观看| 免费观看一级特黄欧美大片| 成年人在线观看av| 精品久久久国产精品999| www.激情五月.com| 久久综合88中文色鬼| 久久天天久久| 日韩欧美一区二区视频在线播放| 国产免费成人| 久久中文字幕人妻| 天天影视涩香欲综合网 | 在线视频日本亚洲性| 在线日韩影院| 久草一区二区| 亚洲女人av| 无码熟妇人妻av| 日韩欧美精品中文字幕| 天天爱天天干天天操| 久久久久日韩精品久久久男男| 一区二区三区亚洲变态调教大结局| 中国一级大黄大黄大色毛片| 精品一区二区成人精品| 女人裸体性做爰全过| 欧美日韩在线播放三区| 亚洲成a人v欧美综合天堂麻豆| 国产精品久久久久久搜索 | 中文字幕乱码人妻二区三区| 亚洲天堂第二页| 99精品国自产在线| 一区二区不卡在线观看| 国产一区二区导航在线播放| 久久r这里只有精品| 欧美一级xxx| 不卡一本毛片| 久久久7777| 免费成人美女在线观看.| 性爱在线免费视频| 这里只有精品电影| 18网站在线观看| 精品国产乱码久久久久久108| 99视频一区| 无码人妻丰满熟妇啪啪欧美| 欧美无人高清视频在线观看| 麻豆av在线导航| 国产精品v欧美精品∨日韩| 一本久道久久综合狠狠爱| av黄色免费网站| 欧美无砖专区一中文字| 在线中文字幕-区二区三区四区| 成人自拍爱视频| 久热re这里精品视频在线6| 粉嫩精品久久99综合一区| 91精品国产一区二区人妖| 国产在线xxx| 青青草成人网| 国产精品亚洲成人| 九九热在线免费观看| 中文字幕亚洲欧美日韩高清| 日本精品在线播放| 国模杨依粉嫩蝴蝶150p| 中文字幕一区二区三区色视频| 欧美熟妇乱码在线一区| 国产精品久久久久一区二区| 欧美99在线视频观看| 熟女少妇一区二区三区| 91精品国产色综合久久不卡电影| 成人免费观看在线观看| 一区二区精品在线观看| 成人一道本在线| 中文字幕免费播放| 亚州国产精品久久久| 欧美r级电影| 精品中文字幕在线播放| 欧美日韩国产免费| √天堂8资源中文在线| 亚洲一区二区不卡视频| 99riav一区二区三区| 国产一区二区在线播放视频| 性欧美xxxx交| 亚洲国产精品日韩专区av有中文| 亚洲精品成人无码熟妇在线|