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

我訓練了一個醫療多模態大模型幫家里老人看病 原創

發布于 2024-11-15 15:29
瀏覽
0收藏

前言

隨著多模態大模型的發展,其不僅限于文字處理,更能夠在圖像、視頻、音頻方面進行識別與理解。醫療領域中,醫生們往往需要對各種醫學圖像進行處理,以輔助診斷和治療。如果將多模態大模型與圖像診斷相結合,那么這會極大地提升診斷效率。

項目目標

訓練一個醫療多模態大模型,用于圖像診斷。

剛好家里老爺子近期略感頭疼,去醫院做了腦部CT,診斷患有垂體瘤,我將嘗試使用多模態大模型進行進一步診斷。

實現過程

1. 數據集準備

為了訓練模型,需要準備大量的醫學圖像數據。通過搜索我們找到以下訓練數據:

數據名稱:MedTrinity-25M

數據地址:https://github.com/UCSC-VLAA/MedTrinity-25M

數據簡介:MedTrinity-25M數據集是一個用于醫學圖像分析和計算機視覺研究的大型數據集。

數據來源:該數據集由加州大學圣克魯茲分校(UCSC)提供,旨在促進醫學圖像處理和分析的研究。

數據量:MedTrinity-25M包含約2500萬條醫學圖像數據,涵蓋多種醫學成像技術,如CT、MRI和超聲等。

數據內容:該數據集有兩份,分別是 ??25Mdemo??? 和 ??25Mfull?? 。

??25Mdemo?? (約162,000條)數據集內容如下:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

??25Mfull?? (約24,800,000條)數據集內容如下:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

2. 數據下載

2.1 安裝Hugging Face的Datasets庫

pip install datasets

2.2 下載數據集

from datasets import load_dataset

# 加載數據集
ds = load_dataset("UCSC-VLAA/MedTrinity-25M", "25M_demo", cache_dir="cache")

執行結果:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

說明:

  • 以上方法是使用HuggingFace的Datasets庫下載數據集,下載的路徑為當前腳本所在路徑下的cache文件夾。
  • 使用HuggingFace下載需要能夠訪問https://huggingface.co/ 并且在網站上申請數據集讀取權限才可以。
    如果沒有權限訪問HuggingFace,可以關注以下公眾號后,回復 “MedTrinity”獲取百度網盤下載地址。

2.3 預覽數據集

# 查看訓練集的前1個樣本
print(ds['train'][:1])

運行結果:

{
    'image': [<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=512x512 at 0x15DD6D06530>], 
    'id': ['8031efe0-1b5c-11ef-8929-000066532cad'], 
    'caption': ['The image is a non-contrasted computed tomography (CT) scan of the brain, showing the cerebral structures without any medical devices present. The region of interest, located centrally and in the middle of the image, exhibits an area of altered density, which is indicative of a brain hemorrhage. This area is distinct from the surrounding brain tissue, suggesting a possible hematoma or bleeding within the brain parenchyma. The location and characteristics of this abnormality may suggest a relationship with the surrounding brain tissue, potentially causing a mass effect or contributing to increased intracranial pressure.'
    ]
}

使用如下命令對數據集的圖片進行可視化查看:

# 可視化image內容
from PIL import Image
import matplotlib.pyplot as plt

image = ds['train'][0]['image']  # 獲取第一張圖像

plt.imshow(image)
plt.axis('off')  # 不顯示坐標軸
plt.show()

運行結果:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

3. 數據預處理

由于后續我們要通過LLama Factory進行多模態大模型微調,所以我們需要對上述的數據集進行預處理以符合LLama Factory的要求。

3.1 LLama Factory數據格式

查看LLama Factory的多模態數據格式要求如下:

[
  {
    "messages":[
        {
            "content":"<image>他們是誰?",
            "role":"user"
        },
        {
            "content":"他們是拜仁慕尼黑的凱恩和格雷茨卡。",
            "role":"assistant"
        },
        {
            "content":"他們在做什么?",
            "role":"user"
        },
        {
            "content":"他們在足球場上慶祝。",
            "role":"assistant"
        }
    ],
    "images":[
        "mllm_demo_data/1.jpg"
    ]
  }
]

3.2 實現數據格式轉換腳本

from datasets import load_dataset
import os
import json
from PIL importImage

defsave_images_and_json(ds, output_dir="mllm_data"):
"""
    將數據集中的圖像和對應的 JSON 信息保存到指定目錄。

    參數:
    ds: 數據集對象,包含圖像和標題。
    output_dir: 輸出目錄,默認為 "mllm_data"。
    """
# 創建輸出目錄
ifnot os.path.exists(output_dir):
        os.makedirs(output_dir)

# 創建一個列表來存儲所有的消息和圖像信息
    all_data =[]

# 遍歷數據集中的每個項目
for item in ds:
        img_path =f"{output_dir}/{item['id']}.jpg"# 圖像保存路徑
        image = item["image"]# 假設這里是一個 PIL 圖像對象

# 將圖像對象保存為文件
        image.save(img_path)# 使用 PIL 的 save 方法

# 添加消息和圖像信息到列表中
        all_data.append(
        {
            "messages":[
            {
                "content":"<image>圖片中的診斷結果是怎樣?",
                "role":"user",
            },
            {
                "content": item["caption"],# 從數據集中獲取的標題
                "role":"assistant",
            },
            ],
            "images":[img_path],# 圖像文件路徑
        }
)

# 創建 JSON 文件
    json_file_path =f"{output_dir}/mllm_data.json"
withopen(json_file_path,"w", encoding='utf-8')as f:
        json.dump(all_data, f, ensure_ascii=False)# 確保中文字符正常顯示

if __name__ =="__main__":
# 加載數據集
    ds = load_dataset("UCSC-VLAA/MedTrinity-25M","25M_demo", cache_dir="cache")

# 保存數據集中的圖像和 JSON 信息
    save_images_and_json(ds['train'])

運行結果:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

4. 模型下載

本次微調,我們使用阿里最新發布的多模態大模型:??Qwen2-VL-2B-Instruct?? 作為底座模型。

模型說明地址:https://modelscope.cn/models/Qwen/Qwen2-VL-2B-Instruct

使用如下命令下載模型

git lfs install
# 下載模型
git clone https://www.modelscope.cn/Qwen/Qwen2-VL-2B-Instruct.git

5. 環境準備

5.1 機器環境

硬件:

  • 顯卡:4080 Super
  • 顯存:16GB

軟件:

  • 系統:Ubuntu 20.04 LTS
  • python:3.10
  • pytorch:2.1.2 + cuda12.1

5.2 準備虛擬環境

# 創建python3.10版本虛擬環境
conda create --name train_env pythnotallow=3.10

# 激活環境
conda activate train_env

# 安裝依賴包
pip install streamlit torch torchvision

# 安裝Qwen2建議的transformers版本
pip install git+https://github.com/huggingface/transformers

6. 準備訓練框架

下載并安裝LLamaFactory框架的具體步驟,請見【課程總結】day24(上):大模型三階段訓練方法(LLaMa Factory)中 準備訓練框架 部分內容,本章不再贅述。

6.1 修改LLaMaFactory源碼以適配transformer

由于Qwen2-VL使用的??transformer???的版本為??4.47.0.dev0??,LLamaFactory還不支持,所以需要修改LLaMaFactory的代碼,具體方法如下:

第一步:在 ??llamafactory??? 源碼中,找到 ??check_dependencies()??? 函數,這個函數位于 ??src/llamafactory/extras/misc.py??? 文件的第 ??82?? 行。

第二步:修改 ??check_dependencies()?? 函數并保存

# 原始代碼
require_version("transformers>=4.41.2,<=4.45.2", "To fix: pip install transformers>=4.41.2,<=4.45.2")
# 修改后代碼
require_version("transformers>=4.41.2,<=4.47.0", "To fix: pip install transformers>=4.41.2,<=4.47.0")

第三步:重新啟動LLaMaFactory服務

llamafactory-cli webui

這個過程可能會提示 ImportError: accelerate>=0.34.0 is required for a normal functioning of this module, but found accelerate==0.32.0. 如遇到上述問題,可以重新安裝accelerate,如下:

# 卸載舊的 accelerate
pip uninstall accelerate

# 安裝新的 accelerate
pip install accelerate==0.34.0

7. 測試當前模型

第一步:啟動LLaMa Factory后,訪問http://0.0.0.0:7860

?第二步:在web頁面配置模型路徑為 ??4.步驟?? 下載的模型路徑,并點擊加載模型

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區


第三步:上傳一張CT圖片并輸入問題:“請使用中文描述下這個圖像并給出你的診斷結果”

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

由上圖可以看到,模型能夠識別到這是一個CT圖像,顯示了大概的位置以及相應的器官,但是并不能給出是否存在診斷結果。

8. 模型訓練

8.1 數據準備

第一步:將 ??3.2步驟?? 生成的mllm_data文件拷貝到LLaMaFactory的data目錄下

第二步:將 ??4.步驟?? 下載的底座模型Qwen2-VL 拷貝到LLaMaFactory的model目錄下

第三步:修改 LLaMaFactory data目錄下的dataset_info.json,增加自定義數據集:

"mllm_med":{
"file_name":"mllm_data/mllm_data.json",
"formatting":"sharegpt",
"columns":{
"messages":"messages",
"images":"images"
},
"tags":{
"role_tag":"role",
"content_tag":"content",
"user_tag":"user",
"assistant_tag":"assistant"
}
},

8.2 配置訓練參數

訪問LLaMaFactory的web頁面,配置微調的訓練參數:

  • Model name:??Qwen2-VL-2B-Instruct??
  • Model path:??models/Qwen2-VL-2B-Instruct??
  • Finetuning method:??lora??
  • Stage :??Supervised Fine-Tuning??
  • Dataset:??mllm_med??
  • Output dir:??saves/Qwen2-VL/lora/Qwen2-VL-sft-demo1??

配置參數中最好將 ??save_steps?? 設置大一點,否則訓練過程會生成非常多的訓練日志,導致硬盤空間不足而訓練終止。

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

點擊Preview Command預覽命令行無誤后,點擊Run按鈕開始訓練。 訓練參數

llamafactory-cli train \
--do_train True \
--model_name_or_path models/Qwen2-VL-2B-Instruct \
--preprocessing_num_workers 16 \
--finetuning_type lora \
--template qwen2_vl \
--flash_attn auto \
--dataset_dir data \
--dataset mllm_med \
--cutoff_len 1024 \
--learning_rate 5e-05 \
--num_train_epochs 3.0 \
--max_samples 100000 \
--per_device_train_batch_size 2 \
--gradient_accumulation_steps 8 \
--lr_scheduler_type cosine \
--max_grad_norm 1.0 \
--logging_steps 5 \
--save_steps 3000 \
--warmup_steps 0 \
--optim adamw_torch \
--packing False \
--report_to none \
--output_dir saves/Qwen2-VL-2B/full/Qwen2-VL-sft-demo1 \
--bf16 True \
--plot_loss True \
--ddp_timeout 180000000 \
--include_num_input_tokens_seen True \
--lora_rank 8 \
--lora_alpha 16 \
--lora_dropout 0 \
--lora_target all

訓練過程

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

訓練的過程中,可以通過 ??watch -n 1 nvidia-smi?? 實時查看GPU顯存的消耗情況。

經過35小時的訓練,模型訓練完成,損失函數如下:

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

損失函數一般降低至1.2左右,太低會導致模型過擬合。

8.3 合并導出模型

接下來,我們將 ??Lora補丁??? 與 ??原始模型?? 合并導出:

  1. 切換到??Expert?? 標簽下
  2. Model path: 選擇Qwen2-VL的基座模型,即:??models/Qwen2-VL-2B-Instruct??
  3. Checkpoint path: 選擇lora微調的輸出路徑,即??saves/Qwen2-VL/lora/Qwen2-VL-sft-demo1??
  4. Export path:設置一個新的路徑,例如:??Qwen2-VL-sft-final??
  5. 點擊??開始導出?? 按鈕

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

導出完畢后,會在LLaMaFactory的根目錄下生成一個 ??Qwen2-VL-sft-final?? 的文件夾。

9. 模型驗證

9.1 模型效果對比

第一步:在LLaMa Factory中卸載之前的模型

第二步:在LLaMa Factory中加載導出的模型,并配置模型路徑為 ??Qwen2-VL-sft-final??

第三步:加載模型并上傳之前的CT圖片提問同樣的問題

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

可以看到,經過微調后的模型,可以給出具體區域存在的可能異常問題。

9.2 實際診斷

接下來,我將使用微調后的模型,為家里老爺子的CT片做診斷,看看模型給出的診斷與大夫的異同點。

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

我訓練了一個醫療多模態大模型幫家里老人看病-AI.x社區

我總計測試了CT片上的52張局部結果,其中具有代表性的為上述三張,可以看到模型還是比較準確地診斷出:腦部有垂體瘤,可能會影響到眼部。這與大夫給出的診斷和后續檢查方案一致。

不足之處

訓練集:

  • 多模態:本次訓練只是采用了MedTrinity-25Mdemo數據集,如果使用MedTrinity-25Mfull數據集,效果應該會更好。
  • 中英文:本次訓練集中使用的MedTrinity-25Mdemo數據集,只包含了英文數據,如果將英文標注翻譯為中文,提供中英文雙文數據集,相信效果會更好。
  • 對話數據集:本次訓練只是使用了多模態數據集,如果增加中文對話(如:中文醫療對話數據-Chinese-medical-dialogue),相信效果會更好。

前端頁面:

  • 前端頁面:本次實踐曾使用streamlit構建前端頁面,以便圖片上傳和問題提出,但是在加載微調后的模型時,會出現:??ValueError: No chat template is set for this processor?? 問題,所以轉而使用LLaMaFactory的web頁面進行展示。
  • 多個圖片推理:在Qwen2-VL的官方指導文檔中,提供了??Multi image inference?? 方法,本次未進行嘗試,相信將多個圖片交給大模型進行推理,效果會更好。

內容小結

  • Qwen2-VL-2B作為多模態大模型,具備有非常強的多模態處理能力,除了能夠識別圖片內容,還可以進行相關的推理。
  • 我們可以通過??LLaMaFactory?? 對模型進行微調,使得其具備醫療方面的處理能力。
  • 微調數據集采用開源的MedTrinity-25M數據集,該數據集有兩個版本:25Mdemo和25Mfull。
  • 訓練前需要對數據集進行預處理,使得其適配LLaMaFactory的微調格式。
  • 經過微調后的多模態大模型,不但可以詳細地描述圖片中的內容,還可以給出可能的診斷結果。

?

本文轉載自公眾號一起AI技術 作者:Dongming

原文鏈接:??https://mp.weixin.qq.com/s/_NFvbMlbH7N5YSdo2OoiIQ??


?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
收藏
回復
舉報
回復
相關推薦
欧美诱惑福利视频| 日韩一区二区三区视频| 亚洲国产成人不卡| 国产精品视频久久久久久| 欧美日韩成人| 亚洲精品色婷婷福利天堂| 一区二区三区免费播放| av免费网站在线| wwwwww.欧美系列| 国产精品丝袜视频| 国产精品成人免费一区二区视频| 国产一区二区三区天码| 欧美一级精品在线| 毛片一区二区三区四区| 18+激情视频在线| 国产亚洲一区字幕| 国产精品美女xx| 中文字幕视频一区二区| 亚洲夜间福利| 日韩中文字幕欧美| a视频免费观看| 国产亚洲久久| 色八戒一区二区三区| 男人添女荫道口女人有什么感觉| 超碰在线影院| 91一区一区三区| 91视频免费进入| 在线播放一级片| 亚洲在线观看| 国内精品小视频在线观看| 美女网站视频色| 中文字幕亚洲影视| 精品久久久久久久久久久院品网| 天堂av在线网站| 午夜精品久久久久久久久久蜜桃| 亚洲一区在线视频观看| 精品久久免费观看| av在线天堂播放| 久久久久99精品一区| 国产精品毛片va一区二区三区| 97人妻精品一区二区三区视频| 青青草成人在线观看| 人人澡人人澡人人看欧美| 国产网站在线看| 欧美在线高清| 久久久精品久久| 成人欧美一区二区三区黑人一| 精品国产aⅴ| 亚洲欧美在线免费| 搡老熟女老女人一区二区| 77成人影视| 日韩欧美另类在线| 操人视频免费看| 99国内精品久久久久| 欧美性xxxxxxxx| 中文字幕在线观看第三页| 91久久国产综合久久91猫猫| 黄网站色欧美视频| 国产精品沙发午睡系列| 日本不卡免费高清视频在线| 午夜国产精品影院在线观看| 国产九色porny| 2020国产在线| 欧美日韩精品在线视频| 黄色一级片播放| 无码小电影在线观看网站免费| 精品久久久香蕉免费精品视频| 精品一区日韩成人| 国产一区二区三区视频免费| 久久综合久久综合久久综合| www.日韩av| 在线视频你懂得一区| 日本一区二区三区四区五区六区| 超碰在线观看免费版| 亚洲欧美偷拍卡通变态| 精品无码av无码免费专区| 手机av免费看| 国产成人精品一区二区三区在线| 欧美视频精品在线| 亚洲黄色片免费| **爰片久久毛片| 亚洲美女av在线播放| 国产精品久久免费观看| 婷婷综合网站| 久久久人成影片一区二区三区| 日本亚洲色大成网站www久久| 国产欧美日韩亚洲一区二区三区| 国产成人精品a视频一区www| 夜夜嗨aⅴ一区二区三区| 国产高清一区日本| 欧美日韩精品中文字幕一区二区| 97视频精彩视频在线观看| 亚洲精品免费看| 亚洲熟女乱色一区二区三区| 欧美一级网址| 亚洲国产另类 国产精品国产免费| 中文字幕人妻一区二区| 在线电影一区二区| 欧美亚洲激情在线| 国产精品伦一区二区三区| av一区二区三区| 亚洲在线播放电影| 成av人片在线观看www| 欧美视频一区在线观看| 亚洲av无码一区东京热久久| 欧美丝袜激情| 国外视频精品毛片| 国产又粗又猛视频| 久久亚洲影视婷婷| av动漫在线播放| 国产另类xxxxhd高清| 欧美成人精精品一区二区频| 女人十八毛片嫩草av| 亚洲精品系列| 91色在线视频| 国产三级在线看| 亚洲444eee在线观看| 欧美特黄aaa| 久久av中文| 久久久最新网址| 国产精品爽爽久久久久久| 91免费看视频| 亚洲激情自拍图| av高清久久久| 婷婷精品在线观看| 成人在线免费看片| 日韩国产成人精品| 高清国语自产拍免费一区二区三区| 五月激情婷婷网| 亚洲精品国产品国语在线app| 成年人免费大片| 精品素人av| 欧美裸身视频免费观看| 亚洲综合网av| 中文字幕不卡三区| 男人天堂网视频| 国产精品巨作av| 欧美大片欧美激情性色a∨久久| 夜夜躁日日躁狠狠久久av| 91在线观看视频| www.日本在线播放| av综合网页| 久久99国产精品久久久久久久久| 亚洲视频久久久| 国产欧美日韩视频一区二区| 日韩av资源在线| 日韩精品免费一区二区夜夜嗨| 欧美贵妇videos办公室| 国产高清视频免费| 一区二区三区中文字幕电影| 亚洲国产综合av| 欧美精品入口| 亚洲已满18点击进入在线看片| 激情影院在线观看| 欧美老年两性高潮| 精品在线观看一区| 国产一区二区福利视频| www.黄色网址.com| 免费观看性欧美大片无片| 欧美精品在线第一页| 国产同性人妖ts口直男| 亚洲精品欧美激情| 潘金莲一级淫片aaaaaaa| 欧美日韩网站| 国产一区二区三区高清视频| 日韩影院在线| 亚洲欧洲自拍偷拍| 一区二区自拍偷拍| 中文字幕一区二区日韩精品绯色| av在线免费看片| 午夜视频一区| 国内一区二区在线视频观看| 樱花草涩涩www在线播放| 亚洲欧美日韩中文视频| 中文天堂在线资源| 亚洲天堂福利av| 香蕉视频免费网站| 亚洲尤物影院| 亚洲精品一区二区三区av| 国产精品视频一区二区三区综合| 久久久精品国产亚洲| 丰满少妇一级片| 富二代精品短视频| 五月婷婷婷婷婷| 国产精品一区三区| 国产主播自拍av| 欧美日韩激情在线一区二区三区| 国产一区在线播放| japanese色国产在线看视频| 亚洲人成自拍网站| 国产精品爽爽久久久久久| 午夜不卡在线视频| 欧美aaa级片| 成人动漫一区二区在线| 一本久道中文无码字幕av| 亚洲a在线视频| 久久久久se| 久久天堂久久| 日韩美女写真福利在线观看| 九七久久人人| 精品五月天久久| 国产乱淫a∨片免费观看| 精品成人乱色一区二区| 亚洲欧美精品久久| 99这里只有久久精品视频| 亚洲综合婷婷久久| 99在线|亚洲一区二区| 在线免费观看一区二区三区| 日韩激情啪啪| 91福利视频导航| 777午夜精品电影免费看| 久久久久久国产精品久久| www.亚洲免费| 精品视频—区二区三区免费| 国产高清第一页| 欧美午夜精品一区二区三区| 日本三级2019| 亚洲乱码国产乱码精品精98午夜| 一级片视频免费看| 成人av电影在线播放| 911av视频| 免费的国产精品| 97在线播放视频| 亚洲国产日本| 欧洲精品视频在线| 99久久精品国产亚洲精品| 久久久影院一区二区三区| 99精品国产一区二区三区2021| 国产久一一精品| 91成人在线免费视频| 四虎成人在线观看| 色帝国亚洲欧美在线| 欧美亚洲国产bt| 久草国产精品视频| 一区二区在线观看视频| 91动漫免费网站| 久久精品在线免费观看| 国产中文字幕一区二区| 懂色av中文一区二区三区 | 国产福利电影在线| 日韩国产高清视频在线| 三级网站免费观看| 亚洲成人久久久| 黄频在线免费观看| 精品国产髙清在线看国产毛片| 国内精品久久久久久久久久| 欧美电影一区二区三区| 国产又粗又黄又爽视频| 欧美一区二区三区四区视频| 国产又大又黄又爽| 91精品国产麻豆国产自产在线 | 日本不卡免费在线视频| 黑鬼大战白妞高潮喷白浆| 亚洲欧美日韩国产一区二区| 青青视频在线播放| 久久这里有精品15一区二区三区| 男女av免费观看| 日韩精品久久理论片| 一级特黄性色生活片| 日本视频一区二区三区| 国产精品久久久毛片| 毛片av中文字幕一区二区| 天堂av2020| 国产一区二区在线观看视频| 91视频免费入口| 高清不卡在线观看| 182在线视频| 91久色porny| 精品人妻一区二区三区四区| 国产精品白丝在线| 欧美久久久久久久久久久久| 五月婷婷综合网| 毛片基地在线观看| 欧美视频在线观看一区| 国产成人久久精品77777综合 | 九九热视频在线观看| 在线精品播放av| 91福利国产在线观看菠萝蜜| 97激碰免费视频| 五月激情久久| 成人18视频| 久久不见久久见国语| 国产精品无码乱伦| 亚洲精品护士| 激情视频免费网站| 高清成人免费视频| x88av在线| 夜夜精品视频一区二区| 无码任你躁久久久久久久| 91精品国产色综合久久不卡蜜臀| 黄色av一区二区三区| 亚洲免费人成在线视频观看| 黄网站app在线观看| 午夜精品久久久久久99热软件| 人人鲁人人莫人人爱精品| 亚洲www永久成人夜色| 欧美丝袜足交| 国产精品亚洲天堂| 一本色道久久综合亚洲精品不卡| 男女视频在线看| www.欧美色图| 国产稀缺精品盗摄盗拍| 一本一道久久a久久精品| 国产精品一区二区av白丝下载| 日韩av一区在线观看| 日本不卡三区| 欧洲成人免费aa| 亚洲精品一区二区三区在线| 视频在线观看成人| 亚洲看片一区| 欧美高清精品一区二区| 国产色综合一区| 韩国av免费观看| 6080yy午夜一二三区久久| 免费成人av电影| 欧美激情中文字幕在线| 亚洲电影二区| 欧美三日本三级少妇三99| 欧美三级乱码| 福利视频999| 国产日韩欧美综合一区| www欧美在线| 精品国产欧美一区二区| 3d玉蒲团在线观看| 国产精品综合不卡av| 狠狠综合久久av一区二区蜜桃| 欧美一级视频在线播放| 国产寡妇亲子伦一区二区| 成人欧美一区二区三区黑人一| 色伊人久久综合中文字幕| 熟妇高潮一区二区高潮| 欧美激情一区二区三区成人| 国产精品一区二区三区www| 亚洲黄色一区二区三区| 久久先锋影音| 国产又爽又黄无码无遮挡在线观看| 亚洲国产精品久久人人爱| 国产aⅴ一区二区三区| 久久精品中文字幕一区| 欧美高清影院| 一区精品在线| 久久精品国产免费| 天堂av免费在线| 欧美日韩小视频| 18免费在线视频| 国产精品亚洲精品| 成人影视亚洲图片在线| 亚洲色图久久久| 国产精品入口麻豆原神| 中文字幕人成人乱码亚洲电影| 亚洲欧洲中文天堂| 黄色精品视频| 亚洲在线不卡| 国产一区二区三区免费观看| 天天看片中文字幕| 日韩欧美国产三级电影视频| 色www永久免费视频首页在线| 国产成人看片| 国产日韩精品视频一区二区三区| 人妻无码一区二区三区| 色婷婷国产精品| www.久久热.com| 亚洲a在线观看| 国内视频精品| 老鸭窝一区二区| 在线观看一区二区精品视频| 永久免费在线观看视频| 91久久嫩草影院一区二区| 午夜精品电影| 国产精品边吃奶边做爽| 色婷婷综合久久久久中文一区二区| porn亚洲| 亚洲字幕一区二区| 亚洲精一区二区三区| 国产成人福利在线| 91.com视频| 波多野结衣精品| 青娱乐国产91| 韩国av一区二区三区在线观看| 久久综合激情网| 亚洲欧美变态国产另类| 日本中文字幕视频一区| 蜜臀精品一区二区| 久久午夜羞羞影院免费观看| 一级特黄特色的免费大片视频| 欧美成人三级视频网站| 欧美人妖在线| 在线a免费观看| 色哟哟精品一区| 污污的网站在线免费观看| 裸模一区二区三区免费| 国产综合久久久久久鬼色 | 亚洲熟女一区二区| 91精品1区2区| 天堂av中文在线| 午夜精品一区二区在线观看 | 欧美色图天堂网| 国产欧洲在线| 日本成人性视频| 久久久精品影视|