99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

多模態(tài)情感分析實(shí)戰(zhàn):PyTorch實(shí)現(xiàn)文本語(yǔ)音視頻三模態(tài)融合

多模態(tài)情感分析實(shí)戰(zhàn):PyTorch實(shí)現(xiàn)文本語(yǔ)音視頻三模態(tài)融合 簡(jiǎn)介基于PyTorch框架的多模態(tài)情感分析系統(tǒng)源碼包面向希望掌握情感計(jì)算、多模態(tài)特征融合與PyTorch工程實(shí)踐的計(jì)算機(jī)方向開發(fā)者。系統(tǒng)針對(duì)文本-圖像配對(duì)數(shù)據(jù)設(shè)計(jì)完成積極、中性、消極三分類任務(wù)文本模塊基于預(yù)訓(xùn)練BERT提取語(yǔ)義向量圖像模塊使用輕量神經(jīng)網(wǎng)絡(luò)抽取視覺特征并將兩類特征融合后送入分類器工程內(nèi)還包含數(shù)據(jù)預(yù)處理、劃分訓(xùn)練/驗(yàn)證/測(cè)試集、訓(xùn)練循環(huán)、驗(yàn)證評(píng)估與預(yù)測(cè)結(jié)果保存等完整環(huán)節(jié)。壓縮包共22個(gè)文件以7個(gè)Python源碼文件為核心配套JSON格式的標(biāo)注數(shù)據(jù)、JPG圖像樣本、TXT數(shù)據(jù)列表、依賴清單、模型目錄及說明文檔整體僅325KB便于快速下載部署。項(xiàng)目結(jié)構(gòu)清晰集中管理參數(shù)并支持命令行靈活調(diào)整訓(xùn)練與測(cè)試設(shè)置。目前已有86人學(xué)習(xí)下載適合入門多模態(tài)情感分析并搭建可運(yùn)行基線后續(xù)可在源碼基礎(chǔ)上替換骨干模型、增加數(shù)據(jù)增強(qiáng)或擴(kuò)展多任務(wù)。1. 多模態(tài)情感分析系統(tǒng)是什么為什么 PyTorch 成了這套工程的地基多模態(tài)情感分析系統(tǒng)要把同一段話里的文本、語(yǔ)音、視頻幀一起消費(fèi)輸出積極、消極、中性這類標(biāo)簽。PyTorch 是這個(gè)方向最常見的落地框架動(dòng)態(tài)計(jì)算圖讓三個(gè)分支各自 forward 后再合并的處理接近直覺torchaudio、transformers、torchvision 三個(gè)生態(tài)庫(kù)正好覆蓋音頻、語(yǔ)言和圖像三路數(shù)據(jù)。系統(tǒng)要解決的是純文本模型在諷刺、矛盾表達(dá)上翻車的問題——嘴上說“挺好的”但語(yǔ)氣低落、畫面灰暗時(shí)單模態(tài)模型很容易判錯(cuò)多模態(tài)系統(tǒng)靠融合信息拿準(zhǔn)。它適合做輿情監(jiān)測(cè)、客服質(zhì)檢、視頻人物情感分析這類任務(wù)。如果你手里已有多模態(tài)標(biāo)注數(shù)據(jù)這套源碼整理出來的工程方案可以直接作為第二版基線上線。2. 多模態(tài)特征提取與 PyTorch 數(shù)據(jù)管線的三個(gè)分支怎么選2.1 文本分支BERT 還是詞向量中文場(chǎng)景怎么選文本是所有模態(tài)里最容易出信號(hào)的一路工程上建議直接用預(yù)訓(xùn)練編碼器而不是從零訓(xùn)練詞向量。常見做法是加載bert-base-chinese輸入用AutoTokenizer做截?cái)嗪?padding輸出取[CLS]向量作為整句話的語(yǔ)義表示。詞向量加 BiLSTM 的方案只有在推理機(jī)器非常老舊、不能帶 transformer 時(shí)才值得考慮否則它在遇到一個(gè)詞被同音字寫錯(cuò)時(shí)會(huì)直接帶偏整句話的情感極性。參數(shù)選擇上有一套默認(rèn)值max_text_len64對(duì)短評(píng)、客服對(duì)話足夠新聞長(zhǎng)文本提到 128paddingmax_length盡量做右側(cè) padding因?yàn)橹形那楦信袛喑R蕾嚲渥游膊緽ERT 是雙向編碼左側(cè) padding 會(huì)干擾序列的語(yǔ)義落點(diǎn)凍結(jié)策略在上線初期很關(guān)鍵剛跑通時(shí)只放開第 11 層和 pooler顯存能省接近一半等數(shù)據(jù)量上來了再打開全部層微調(diào)。這里提醒一句AutoTokenizer的詞典對(duì)繁體字支持不好中文語(yǔ)料先做繁轉(zhuǎn)簡(jiǎn)再進(jìn) tokenizer否則會(huì)在錯(cuò)別字和異體字上浪費(fèi)訓(xùn)練時(shí)間。多模態(tài)數(shù)據(jù)集的文本字段也往往帶特殊表情符號(hào)清洗階段先統(tǒng)一去掉或替換成占位符否則 tokenizer 會(huì)產(chǎn)生一堆無(wú)用片段。2.2 音頻分支log-mel 頻譜比原始波形更穩(wěn)音頻分支常見有兩種輸入。一是直接把波形點(diǎn)送進(jìn)一維卷積理論上是信息無(wú)損的但實(shí)際對(duì)采樣率和噪聲很敏感情感短句往往只有一兩秒卷積下采樣后特征不夠穩(wěn)定。二是先算 log-mel 頻譜把波形壓成 64 路梅爾濾波器再送一維卷積這個(gè)路徑在語(yǔ)音情感數(shù)據(jù)集上表現(xiàn)更穩(wěn)也是多數(shù)視頻人物情感分析工程的主流選擇。mel_spec torchaudio.transforms.MelSpectrogram( sample_rate16000, n_fft400, hop_length160, n_mels64) log_mel torch.log(mel_spec(wav) 1e-6)這里的參數(shù)不要隨手改大n_fft400對(duì)應(yīng) 25ms 窗長(zhǎng)hop_length160對(duì)應(yīng) 10ms 幀移這套配置在語(yǔ)音識(shí)別和情感識(shí)別里都是通用配合n_mels64是性價(jià)比比較高的值提到 128 會(huì)讓 mel 行數(shù)翻倍準(zhǔn)確率通常只漲不到 0.5 個(gè)點(diǎn)。1e-6是給 log 運(yùn)算墊底的小量不能省否則靜音段會(huì)算出負(fù)無(wú)窮。音頻的文件格式盡量統(tǒng)一成 wavmp3 在 torchaudio 加載時(shí)容易因編碼器缺失報(bào)錯(cuò)統(tǒng)一轉(zhuǎn)碼是最穩(wěn)的做法。音頻長(zhǎng)度問題在第 4 章會(huì)重點(diǎn)講這里先記住一個(gè)原則音頻尾部往往是情緒落點(diǎn)pad 時(shí)寧可截頭部也不要截尾部反過來對(duì)視頻抽幀情緒高峰多在中后段所以要均勻抽幀而不是只取開頭。2.3 視頻分支直接用預(yù)提取特征別在訓(xùn)練時(shí)跑整份視頻視頻分支最常見的翻車點(diǎn)是直接把 ResNet 甚至 3D CNN 放進(jìn)模型去抽幀16G 顯存在 batch_size 8 下就會(huì)告急。工程上更常見的是離線階段先抽幀用預(yù)訓(xùn)練模型把每段視頻轉(zhuǎn)成固定維度的向量緩存成.npy或.pt文件訓(xùn)練階段只加載這些向量特征。我一般用 ResNet18 或 CLIP 的 image encoder 做特征抽取每個(gè)視頻均勻抽 8 幀取平均。CLIP 的好處是它的圖像編碼空間和文本語(yǔ)義空間天然對(duì)齊后續(xù)和 BERT 特征融合時(shí)線性投影的負(fù)擔(dān)更小。具體操作注意三件事視頻按均勻時(shí)間間隔抽幀不要只抽第一幀人物表情變化集中在中間段。每段視頻輸出一個(gè)[D]向量D 常見為 512來自 ResNet18 倒數(shù)第二層或 CLIP ViT-B/32 的 CLS 輸出。特征文件命名必須和音頻、文本樣本一一對(duì)應(yīng)同一個(gè)樣本 id 貫穿三個(gè)模態(tài)否則對(duì)齊會(huì)亂成一團(tuán)。復(fù)雜場(chǎng)景下多模態(tài)情感預(yù)測(cè)的數(shù)學(xué)建模和算法設(shè)計(jì)最后能不能落地很大程度取決于這三路特征在時(shí)間軸上是否對(duì)齊。視頻和音頻必須先按原視頻時(shí)間戳對(duì)齊后再切樣本不能音頻一段是 0 到 3 秒、視頻抽幀是 5 到 8 秒那種數(shù)據(jù)喂給模型只會(huì)得到一堆隨機(jī)噪聲。2.4 融合層級(jí)怎么選直接拼接、加權(quán)求和還是跨模態(tài)注意力融合層的設(shè)計(jì)直接決定這套系統(tǒng)值不值得做。最樸素的是 early fusion把文本[CLS]、音頻特征、視頻特征拼在一起送全連接。實(shí)現(xiàn)最短但三個(gè)模態(tài)特征分布差異大拼接后讓全連接自己學(xué)內(nèi)部關(guān)系小數(shù)據(jù)集上容易過擬合。更穩(wěn)的是 late fusion每個(gè)模態(tài)先各自過一個(gè)分類頭得到 logits最后對(duì) logits 加權(quán)求和。梯度更新穩(wěn)定但模態(tài)之間沒有交互遇到“文本說開心、音頻卻很低沉”這類矛盾表達(dá)學(xué)不到聯(lián)合判斷。多模態(tài)融合論文里出現(xiàn)頻率最高、落地也最實(shí)用的還是跨模態(tài)注意力。常見做法以文本[CLS]作為 query視頻特征作為 key/value 進(jìn)入nn.MultiheadAttention讓文本去挑選和它語(yǔ)義相關(guān)的視頻信息再把注意力輸出和音頻特征拼接起來。這個(gè)結(jié)構(gòu)多不了多少顯存但能額外產(chǎn)出一個(gè)注意力權(quán)重后面做樣本級(jí)排查時(shí)非常好用。融合方式參數(shù)量梯度穩(wěn)定性可解釋性適合場(chǎng)景直接拼接early fusion低一般差數(shù)據(jù)量大、特征維度一致logits 加權(quán)l(xiāng)ate fusion最低最好中數(shù)據(jù)少、快速出基線跨模態(tài)注意力中較好好數(shù)據(jù)量中等以上需要分析樣本三種方式在驗(yàn)證集上差距通常不超過兩三個(gè)點(diǎn)但有注意力權(quán)重的那一版會(huì)讓你在線上定位“為什么把這條差評(píng)判錯(cuò)”時(shí)多一條路。我建議先出 late fusion 基線再上跨模態(tài)注意力作為正式方案。3. 用 PyTorch 把多模態(tài)情感分析模型跑通Dataset、模型與損失權(quán)重3.1 數(shù)據(jù)集封裝文本、音頻、視頻在同一個(gè) Dataset 里對(duì)齊源碼包里最核心的是 Dataset。它要完成三件事讀出元數(shù)據(jù)里的文本和標(biāo)簽、把音頻轉(zhuǎn)成固定長(zhǎng)度的 log-mel 頻譜、把離線抽好的視頻特征加載進(jìn)來。以下是我常用的一套結(jié)構(gòu)import json import numpy as np import torch import torchaudio from torch.utils.data import Dataset from transformers import AutoTokenizer class MultimodalSentimentDataset(Dataset): def __init__(self, meta_json, max_text_len64, max_mel_frames96): with open(meta_json, encodingutf-8) as f: self.meta json.load(f) # 每一項(xiàng)含 text / wav_path / video_npy / label self.tokenizer AutoTokenizer.from_pretrained(bert-base-chinese) self.max_text_len max_text_len self.max_mel_frames max_mel_frames self.mel_spec torchaudio.transforms.MelSpectrogram( sample_rate16000, n_fft400, hop_length160, n_mels64) def __len__(self): return len(self.meta) def __getitem__(self, idx): item self.meta[idx] # 1) 文本BERT tokenizer 截?cái)? padding text_ids self.tokenizer( item[text], truncationTrue, max_lengthself.max_text_len, paddingmax_length, return_tensorspt) # 2) 音頻resample - log-mel - 固定幀數(shù) wav, sr torchaudio.load(item[wav_path]) if sr ! 16000: wav torchaudio.functional.resample(wav, sr, 16000) mel torch.log(self.mel_spec(wav) 1e-6).squeeze(0) # [64, T] if mel.shape[1] self.max_mel_frames: mel mel[:, :self.max_mel_frames] # 截尾部會(huì)丟情緒落點(diǎn)慎用 else: mel torch.nn.functional.pad(mel, (0, self.max_mel_frames - mel.shape[1])) # 3) 視頻讀取離線預(yù)提取特征向量已經(jīng)是固定維度 video_feat torch.tensor(np.load(item[video_npy]), dtypetorch.float32) return { text_ids: text_ids[input_ids].squeeze(0), text_mask: text_ids[attention_mask].squeeze(0), mel: mel, video: video_feat, label: torch.tensor(item[label], dtypetorch.long), }這段代碼的關(guān)鍵是三個(gè)返回張量的形狀。text_ids和text_mask是[max_text_len]mel是[64, max_mel_frames]video是[D]。三者并不強(qiáng)制同長(zhǎng)到模型里才在特征維度上相遇所以 Dataset 階段不要強(qiáng)行把它們 pad 成同一種長(zhǎng)度那樣只會(huì)浪費(fèi)讀寫時(shí)間。max_mel_frames怎么定按hop_length160算1 秒音頻產(chǎn)生 100 幀頻譜3 秒就是 300 幀。先統(tǒng)計(jì)訓(xùn)練集音頻長(zhǎng)度分布取 95 分位作為這個(gè)參數(shù)比拍腦袋定 96 更穩(wěn)。另一個(gè)常見選擇是離線把所有音頻統(tǒng)一轉(zhuǎn)成固定幀數(shù)的 npy訓(xùn)練時(shí)直接讀矩陣而不現(xiàn)算 mel。這樣能縮短每個(gè) epoch 的時(shí)間但每次改n_mels或hop_length就要重新生成一遍緩存。我一般在小數(shù)據(jù)集上現(xiàn)算數(shù)據(jù)量過萬(wàn)段再做離線緩存。3.2 模型結(jié)構(gòu)三個(gè)編碼分支加一個(gè)融合分類頭模型側(cè)的關(guān)鍵不是把 BERT、CNN、線性投影簡(jiǎn)單堆起來而是給每個(gè)分支都留一個(gè)分類頭讓單模態(tài)也能輸出 logits。這樣訓(xùn)練時(shí)可以同時(shí)監(jiān)督模態(tài)分支避免某個(gè)分支變成看不見的黑匣子。import torch.nn as nn from transformers import BertModel class MultimodalSentimentNet(nn.Module): def __init__(self, num_classes3, video_dim512, text_dim768, audio_dim128): super().__init__() # 文本分支BERT 中文預(yù)訓(xùn)練 self.bert BertModel.from_pretrained(bert-base-chinese) for name, p in self.bert.named_parameters(): # 初期只放開最后兩層和 pooler省顯存 if encoder.layer.11 not in name and pooler not in name: p.requires_grad False # 音頻分支一維卷積 全局池化輸入 [B,64,T] self.audio_conv nn.Sequential( nn.Conv1d(64, 128, kernel_size3, padding1), nn.ReLU(), nn.Conv1d(128, 128, kernel_size3, padding1), nn.ReLU(), nn.AdaptiveAvgPool1d(1), ) self.audio_proj nn.Linear(128, audio_dim) # 視頻分支離線特征已是向量線性投影到文本維度 self.video_proj nn.Linear(video_dim, text_dim) # 跨模態(tài)注意力文本為 query視頻為 key/value self.cross_attn nn.MultiheadAttention(text_dim, num_heads4, batch_firstTrue) # 四個(gè)分類頭 self.text_head nn.Linear(text_dim, num_classes) self.audio_head nn.Linear(audio_dim, num_classes) self.video_head nn.Linear(text_dim, num_classes) self.fusion_head nn.Sequential( nn.Linear(text_dim audio_dim text_dim, 256), nn.ReLU(), nn.Dropout(0.3), nn.Linear(256, num_classes), ) def forward(self, text_ids, text_mask, mel, video): bert_out self.bert(text_ids, attention_masktext_mask).last_hidden_state text_cls bert_out[:, 0] text_logits self.text_head(text_cls) audio_feat self.audio_conv(mel).squeeze(-1) # [B,128] audio_feat self.audio_proj(audio_feat) audio_logits self.audio_head(audio_feat) video_feat self.video_proj(video) # [B,768] video_logits self.video_head(video_feat) attn_out, attn_weight self.cross_attn( text_cls.unsqueeze(1), video_feat.unsqueeze(1), video_feat.unsqueeze(1)) fusion_in torch.cat([text_cls, audio_feat, attn_out.squeeze(1)], dim-1) fusion_logits self.fusion_head(fusion_in) return { fusion_logits: fusion_logits, text_logits: text_logits, audio_logits: audio_logits, video_logits: video_logits, attn_weight: attn_weight, }音頻分支的AdaptiveAvgPool1d(1)會(huì)把任意長(zhǎng)度 mel 壓成[B,128,1]訓(xùn)練和推理時(shí)允許音頻長(zhǎng)短不一進(jìn)入模型這是對(duì)付音頻長(zhǎng)度抖動(dòng)的一個(gè)很實(shí)用的手段比大段 pad 邏輯省事得多。視頻分支只有一個(gè)Linear因?yàn)轭A(yù)處理階段已經(jīng)把整段視頻濃縮成了單一向量如果你選擇每段抽 8 幀、輸出[8,512]的特征就需要在進(jìn)入融合前先做幀間聚合。直接 mean pooling 已經(jīng)能打好基線我沒有在初版里加幀級(jí)時(shí)序建模。凍結(jié)參數(shù)的邏輯要看清named_parameters()里的encoder.layer.11會(huì)同時(shí)命中第 11 層的子參數(shù)pooler是 BERT 的池化層習(xí)慣上和第 11 層一起放開。初期這樣為了省顯存跑通后建議逐步解凍全部層重新訓(xùn)練。提示正式訓(xùn)練前先跑一個(gè) batch 的前向確認(rèn)返回 dict 里每個(gè) key 的 shape 都符合預(yù)期再進(jìn)循環(huán)。多模態(tài)模型的報(bào)錯(cuò)信息經(jīng)常在多層嵌套里被吞掉前向驗(yàn)證能省半天時(shí)間。3.3 訓(xùn)練循環(huán)融合主損失加三個(gè)分支輔助損失訓(xùn)練時(shí)不能只算融合 logits 的交叉熵三個(gè)分支的 loss 也要帶進(jìn)來這就是多模態(tài)項(xiàng)目里常說的 loss weighting。完整代碼from torch.utils.data import DataLoader from torch.optim import AdamW device torch.device(cuda if torch.cuda.is_available() else cpu) model MultimodalSentimentNet(num_classes3).to(device) train_loader DataLoader(dataset, batch_size16, shuffleTrue, num_workers2) optimizer AdamW([p for p in model.parameters() if p.requires_grad], lr2e-5) criterion nn.CrossEntropyLoss() aux_weight 0.3 # 分支輔助損失權(quán)重正式實(shí)驗(yàn)前先跑一組 0 做對(duì)比 for epoch in range(15): model.train() epoch_loss 0.0 for batch in train_loader: text_ids batch[text_ids].to(device) text_mask batch[text_mask].to(device) mel batch[mel].to(device) video batch[video].to(device) label batch[label].to(device) out model(text_ids, text_mask, mel, video) loss criterion(out[fusion_logits], label) loss loss aux_weight * criterion(out[text_logits], label) loss loss aux_weight * criterion(out[audio_logits], label) loss loss aux_weight * criterion(out[video_logits], label) optimizer.zero_grad() loss.backward() torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm1.0) optimizer.step() epoch_loss loss.item() print(fepoch{epoch:02d} train_loss{epoch_loss / len(train_loader):.4f})aux_weight0.3的含義是讓融合頭為主導(dǎo)三個(gè)分支保持“能單獨(dú)判斷但不帶偏主路”的狀態(tài)。如果某個(gè)模態(tài)數(shù)據(jù)噪聲特別大例如音頻里大量靜音或環(huán)境音把對(duì)應(yīng)分支的權(quán)重降到 0.1如果某個(gè)分支 loss 明顯不降說明該分支特征質(zhì)量太差先修數(shù)據(jù)不要硬調(diào) lr。clip_grad_norm_(max_norm1.0)在融合模型里幾乎必加。BERT 和隨機(jī)初始化的 CNN 分支梯度尺度能差一到兩個(gè)數(shù)量級(jí)不加裁剪前幾個(gè) step 一次大梯度就可能毀掉整個(gè)融合頭。AdamW 的lr2e-5是 BERT 微調(diào)常用值但要看到新初始化的層學(xué)得慢常見做法是給音頻 CNN 和視頻投影單獨(dú)開lr5e-4BERT 保持2e-5。想快速出第一個(gè)有效模型先把 BERT 全部?jī)鼋Y(jié)只訓(xùn)分支和融合頭穩(wěn)定后再解凍微調(diào)。3.4 保存、加載與驗(yàn)證拆分保存時(shí)統(tǒng)一存state_dict不要存整個(gè)模型對(duì)象。加載前先創(chuàng)建同結(jié)構(gòu)的模型實(shí)例再load_state_dict。驗(yàn)證拆分最好提前固定一個(gè)val_loader每個(gè) epoch 結(jié)束用驗(yàn)證集算一次準(zhǔn)確率然后做最樸素的早停連續(xù) 3 個(gè) epoch 驗(yàn)證指標(biāo)不漲就回退到之前最好的 checkpoint。best_val_acc 0.0 patience 0 for epoch in range(15): # 訓(xùn)練循環(huán)略... val_acc evaluate(model, val_loader, device) if val_acc best_val_acc: best_val_acc val_acc torch.save(model.state_dict(), best_model.pt) patience 0 else: patience 1 if patience 3: breakmap_location在加載時(shí)寫清楚torch.load(best_model.pt, map_locationdevice)否則在 CPU 機(jī)器上訓(xùn)練、GPU 上推理時(shí)會(huì)因?yàn)槿鄙?CUDA 報(bào)錯(cuò)。checkpoint 文件名帶 epoch 號(hào)每次保留前一個(gè)版本晚點(diǎn)你就知道這有多重要。4. 多模態(tài)情感分析避坑記錄五個(gè)常見報(bào)錯(cuò)與排查順序4.1 現(xiàn)象DataLoader 在 batch 階段報(bào) shape 不一致的 RuntimeError常見于換了一批數(shù)據(jù)后某條樣本音頻較長(zhǎng)mel 計(jì)算出來超過max_mel_frames但__getitem__里沒有走截?cái)噙壿嫽蛘咭曨l特征文件輸出的是[8,512]而不是預(yù)期的[512]batch 內(nèi)維度對(duì)不上。原因Dataset 返回張量形狀必須一致默認(rèn)collate_fn用torch.stack堆疊任何一維不一致都直接崩。而且 DataLoader 的 worker 進(jìn)程會(huì)吞掉原始 traceback只在終端打一行 RuntimeError。解決在__getitem__里對(duì)音頻和視頻各做一次 shape 防御先打印當(dāng)前樣本 id 和實(shí)際 shape再在__init__里預(yù)掃描所有wav_path和video_npy把形狀異常的樣本直接過濾掉。這比在訓(xùn)練循環(huán)里 try/except 高效得多。4.2 現(xiàn)象訓(xùn)練正常每次跑驗(yàn)證的 epoch 結(jié)束就 CUDA OOM訓(xùn)練 loss 在下降一到驗(yàn)證就CUDA out of memory。原因驗(yàn)證代碼沒有包在torch.no_grad()里。model.eval()只改了 dropout 和 BN 行為沒有關(guān)梯度驗(yàn)證一樣保留計(jì)算圖。另外驗(yàn)證集 DataLoader 仍shuffleTruebatch_size 又和訓(xùn)練一致峰值顯存自然更高。解決驗(yàn)證循環(huán)統(tǒng)一寫成model.eval() with torch.no_grad(): # 推理循環(huán)驗(yàn)證 DataLoader 設(shè)shuffleFalsebatch_size 降為訓(xùn)練的一半。還 OOM 就把訓(xùn)練 batch_size 從 16 降到 8再看max_mel_frames。判斷順序先降 batch_size再降音頻幀數(shù)因?yàn)?BERT 激活值占的顯存往往比音頻更大。4.3 現(xiàn)象多模態(tài)融合后的驗(yàn)證指標(biāo)不如單獨(dú)的文本分支這是最打擊人的一種加了音頻和視頻F1 反而比只跑 BERT 還低。原因三個(gè)分支收斂速度不匹配。BERT 是大容量預(yù)訓(xùn)練模型第一輪就能學(xué)到文本信息音頻 CNN 和視頻線性層隨機(jī)初始化早期輸出接近噪聲而融合頭被這些噪聲帶著跑偏。另一個(gè)常見原因是輔助 loss 權(quán)重配比失調(diào)某支噪聲大的分支把融合頭拖住了。解決前兩輪先用aux_weight0只看融合 loss等文本分支穩(wěn)定后再加回輔助權(quán)重。損失權(quán)重建議從w_text0.3, w_audio0.2, w_video0.1起步融合主 loss 權(quán)重保持 1。多模態(tài)模型最忌諱一上來三個(gè)分支完全平等數(shù)據(jù)質(zhì)量不均衡時(shí)平等訓(xùn)練等于讓短板帶節(jié)奏。4.4 現(xiàn)象import torch后cuda.is_available()為 False加載時(shí)報(bào) CUDA 相關(guān)錯(cuò)誤這個(gè)坑多數(shù)出現(xiàn)在 Anaconda 環(huán)境里。常見流程是先pip install torch裝了 CPU 版后面又用 conda 混裝同一環(huán)境出現(xiàn)多個(gè) torch。原因PyTorch 的 CUDA 支持是通過預(yù)編譯 wheel 綁定的pip 默認(rèn)裝 CPU 版本conda 如果 torch 和 cudatoolkit 版本不匹配也會(huì)識(shí)別不到卡。解決不要在原環(huán)境里修直接建一個(gè)干凈環(huán)境conda create -n mmsa python3.9 conda activate mmsa conda install pytorch torchvision torchaudio cudatoolkit11.8 -c pytorch -c conda-forge python -c import torch; print(torch.__version__, torch.cuda.is_available())裝完立刻打印驗(yàn)證。Apple 芯片機(jī)器不要裝帶 cu 的 wheel直接用 pip 安裝 macOS 版 PyTorch。CUDA 驅(qū)動(dòng)太舊時(shí)裝新 wheel 也會(huì)在第一步驗(yàn)證處失敗先用nvidia-smi看驅(qū)動(dòng)支持的 CUDA 版本再選對(duì)應(yīng)包。4.5 現(xiàn)象load_state_dict報(bào) missing key 或 unexpected key報(bào)錯(cuò)內(nèi)容常見是Missing key(s): bert.embeddings.word_embeddings.weight或者Unexpected key(s): module.classifier.0.weight。原因訓(xùn)練時(shí)用了nn.DataParallel或 DDP 包裝過模型保存的權(quán)重帶module.前綴加載的模型是裸模型鍵名對(duì)不上。另一類是保存時(shí)不小心存了整個(gè) model 對(duì)象而不是state_dict()。解決統(tǒng)一按state_dict保存加載時(shí)做一次鍵名清理ckpt torch.load(best_model.pt, map_locationcpu) if module. in list(ckpt.keys())[0]: ckpt {k.replace(module., ): v for k, v in ckpt.items()} model.load_state_dict(ckpt)同時(shí)把best_epoch、損失權(quán)重、凍結(jié)層配置單獨(dú)寫一份 json 存起來。多個(gè)實(shí)驗(yàn)之間靠文件名猜配置是后期最耗時(shí)間的事。5. 模型驗(yàn)證與上線前的最后一課用注意力權(quán)重給預(yù)測(cè)上“后悔藥”5.1 先看分類報(bào)告別只看準(zhǔn)確率多模態(tài)情感數(shù)據(jù)大多數(shù)不平衡中文評(píng)論尤其明顯中性樣本可能占五成正負(fù)樣本各兩成。驗(yàn)證階段直接打印分類報(bào)告不要只盯準(zhǔn)確率from sklearn.metrics import classification_report preds, all_labels [], [] model.eval() with torch.no_grad(): for batch in test_loader: out model(batch[text_ids].to(device), batch[text_mask].to(device), batch[mel].to(device), batch[video].to(device)) preds.extend(out[fusion_logits].argmax(-1).cpu().tolist()) all_labels.extend(batch[label].tolist()) print(classification_report(all_labels, preds, digits4))如果某一個(gè)類別 recall 明顯低不要急著調(diào)閾值先看這一類樣本是否集中在長(zhǎng)句、音頻帶噪或視頻抽幀不均這幾類原因上。5.2 用注意力權(quán)重做樣本級(jí)降級(jí)判斷模型結(jié)構(gòu)里除了 logits 還返回attn_weight它是[B,1,1]的權(quán)重表示文本從視頻里挑出的信息量大小??梢宰鲆粚咏导?jí)保險(xiǎn)融合預(yù)測(cè)置信度低、文本分支置信度高時(shí)信任文本分支fusion_prob torch.softmax(fusion_logits, dim-1).max(dim-1).values text_prob torch.softmax(text_logits, dim-1).max(dim-1).values final_pred fusion_logits.argmax(dim-1) fallback (fusion_prob 0.6) (text_prob 0.8) final_pred[fallback] text_logits[fallback].argmax(dim-1)在驗(yàn)證集上跑一版統(tǒng)計(jì)有多少樣本走了 fallback。如果命中率只有 2% 到 3%說明視頻或音頻特征確實(shí)在個(gè)別樣本上拖后腿值得繼續(xù)優(yōu)化如果超過 10%說明融合頭本身沒訓(xùn)好要回去重調(diào)損失權(quán)重而不是依賴這條兜底邏輯。5.3 上線前的部署檢查固定輸入長(zhǎng)度再導(dǎo) ONNX本地驗(yàn)證通過后如果目標(biāo)是 CPU 服務(wù)推薦把模型導(dǎo)出成 ONNX 再用 ONNX Runtime 推理。導(dǎo)出前有三個(gè)準(zhǔn)備工作模型置 eval、輸入張量全部固定形狀、文本分支換掉。BERT 是推理耗時(shí)的大頭把bert-base-chinese換成 DistilBERT 中文版本整個(gè)模型推理時(shí)間能壓到原來的三分之一。ONNX 導(dǎo)出要求輸入動(dòng)態(tài)軸盡量少否則引擎會(huì)頻繁使用動(dòng)態(tài) shape速度反而更差。最后說一個(gè)我踩過好幾輪的教訓(xùn)。多模態(tài)模型的變量實(shí)在太多三個(gè)分支要不要分開設(shè)學(xué)習(xí)率、損失權(quán)重怎么配、checkpoint 存的是哪個(gè) epoch、凍結(jié)了哪幾層。不寫配置文件的實(shí)驗(yàn)就是黑匣子。我現(xiàn)在訓(xùn)練腳本第一行就讀一個(gè) config.json把所有參數(shù)連同隨機(jī)種子一起記檔每次實(shí)驗(yàn)復(fù)制一份帶時(shí)間戳的配置備份。遇到指標(biāo)退步時(shí)能快速回滾到上一個(gè)能用的權(quán)重而不是靠記憶猜。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
可以直接看的av网站| 99热最新精品| 狠狠爱五月婷婷| 九色自拍| 色99婷婷五月天| 久久五月网| 第2色五月婷| 伊人99久久| av色婷婷| 99热国产免费| 深情五月天| 久久婷婷国产| 日韩精品一区二区刘| 99在线视频播放| 六月色伊人婷婷| www.婷婷| 五月花免费视频| 国产精品久久7777777精品无码| 五月丁香在线| 大地资源色婷婷视频在线| 欧美日韩成人在线网站| 久777| 美国十月色婷婷在线观看| 开心五月六月婷婷| 91操片| 可以看的av| 天天做天天爱天天要| 婷婷五月丁香综合| 玖玖精品婷婷| WWW,五月| 中文字幕97超级碰| 久久综合首页| 91狠狠色丁香| 9999三级片| 久久六月婷婷| 成人久碰| 五月婷婷综合在线视频| 婷婷在线五月综合| 婷婷伊人欧美| av一区二区电影免费在线观看| 欧美韩国日本| 婷婷精品性性性性性性性| WWW.99热| 99视频在线| Www.狠狠| 亚洲自拍天堂| 久久婷婷的综合色丁香五月| 亚洲精品444久久久久久| 精品人人操| 婷婷久久草| 婷婷丁香五月天欧美| 91九色国产在线| .comwww在线观看免费操| 深爱五月天| 五月丁香激情综合| 另类小说五月天| 国产97色在线| 婷婷狠狠操| 99热最新网址| 精品无码久久久久久久久| 丁香婷婷色五月激情综合| 五月丁香六月婷婷亚洲| 色人久久| 久9热视频在线| 中文字幕日本最新乱码视频| 琪琪狠狠干| 99热99艹在线观看| 色99婷婷五月天| 婷婷丁香大香蕉| 爱iii做iiii日日| 久久久91精品| 婷婷激情四射五月天| 婷婷九月丁香中文| 120分钟婬片免费看| 狠狠干综合网| 色色色色色级无码| 79色色色色| 久久人妻www| 欧美激情综合色综合啪啪五月| 婷婷丁香五月色| 色五月色五天免费视频| 婷婷五月天亚洲| 亚洲第一综合| www.99操| 五月丁香亚洲校园欧美| 欧美VA在线观看| 九九九九综合| 狠狠色狠狠色综合日日91| 婷婷五月天深爱| 米奇影视资源777狠狠色婷婷五月天激情网| 99热精品在线观看| 五月天色视频| 五月天婷婷色色网| 欧美色五月| 国产偷人爽久久久久久老妇APP| 亚洲国产精品成人午夜| 中文字幕不卡网站| 色99在线视频| 深爱激情69热| 天天做天天爱| 婷婷七月丁香色色| 久99久热只有精品国产99| 日韩五月丁香| 色婷婷亚洲婷婷| 不卡的AV网站| 天天插天天插| 日韩另类在线观看| 婷婷丁香五月天在线| 五月丁香综合中文| 99热草草| 亚洲第一色色色| 天天操比比| 久久激情五月| 大香蕉啪啪啪啪啪啪| 亚洲成片在线观看| 色青五月天| 91九色中文| 婷婷五月在线观看| 色欲九区| 激情五月天综合网| 丁香五月桃花在线激情综合| 五月丁香va| 五月婷婷无码专区| 最近中文字幕大全免费版在线| 五月婷视频在线观看| 色婷婷婷婷| 婷婷色丁香五月| 一起草Av| 五月婷啪| 色婷五月天| 五月综合色播播丁香婷婷| 亚洲AV网站在线观看| 国产精产国品一二三在观看 | 五月天婷婷激情在线色图| 超碰在线成人| www.yw尤物| 综合激情九月婷婷,激情综合婷婷中文字| 97人妻碰碰碰久| 五月六月婷| 中文字幕无码人妻少妇免费视频 | 欧洲不卡视频| 色欲av伊人久久大香线蕉影院| 日本综合色图| 五月丁香激情婷婷综合字幕| 中文字幕无码人妻少妇免费视频 | 免费成人网在线观看| 天天爽人人爽| 婷婷五月天99综合网站| 99.色| 婷婷伊人五月天| 影音先锋91| 亚洲人妻Av| 日日爽天天| 屁股翘好撅高迎合跪趴| 婷婷五月天在婷| 成人无码髙潮喷水A片| 97色碰| 久久婷婷五月天激情四射| 97碰碰人人视频| 韩国情人在线电视剧免费观看高清版全集| 玖玖热视频| 五月天色综合服务平台| 99re在线观看| 日日婷婷不卡| 亚洲五月婷婷| 五月天开心激情综合网| 99热永久在线观看| 大学生高潮无套内谢视频| 婷婷五月激情网站| 国产精品成人AV在线观看春天| 婷婷激情伍月网| 五月天色综合| 天天久久人人| 亚洲成人无码专区| 丁香五月最新网址| 91精品综合久久久久久五月丁香| 亚洲成人色五月婷婷综合| 五月亭亭六月天| 日本精品99网站| 碰碰女| 天堂久久婷婷| 五月丁香综合激情| 日日夜夜天天爽| 日本色超碰| 天天澡天天狠天天天做| 九九精品在线视频观看| av在线播放网站| 狠狠色噜噜| 狠干综合| 性爱久久| ji'qi'luan'ren'lun| 丁香婷婷综合色五月激情国产基地| 亚洲欧美一区二区三区爱爱动图 | 丁香五月婷婷少妇| 欧美25p| 激情5月婷婷狠狠干| 久久精品国产精品| 99超级碰碰| 色五月婷婷 成人| 日韩精品二三区| WWW.久久久久久久久久久久久| 色婷婷综合久久久久| 亚洲婷婷在线播放十月| 色偷偷AV亚洲男人的天堂| 综合婷婷五月丁香在线观看| 色丁香五月天射婷婷爱婷婷| 丁香五月婷婷色偷偷| 在线日韩视频| 亚洲婷婷欧美婷婷| 综合性视频99| 国产韩日亚洲美州欧亚综合在线| 亚州婷婷五月激情综合| 国产精产国品一二三在观看| 亚洲欧洲国产精品| 999影院成人在线影院| 91综合在线视频| 国产在线aaa片一区二区99| 激情伊人五月天| 国在线激情网| 色综合中文色综合网| 久久精品一区二区三区四区| 色啪影院| 67194中文字幕| 色五月激情五月丁香五月婷婷啪啪综合 | 婷婷丁香五月在线播放| 99色播| 大香蕉人在线65| 国产肥白大熟妇BBBB视频| 色综合久久88色综合天天99| 九色视频九色九色91jiuseshipin| 五月丁香花激情综合网| 婷婷五月丁香高清无码| 99热九九这里只有精品| 色欲婷婷五月天丁香| 一本道在线电影| 亚洲AV综合在线观看| 五月综合激情综合久| www.99精品视频| 天天色综网| 婷婷金品综合视频| 久久超级碰碰| 狠狠色综合久久| \\五月天婷婷激情| 六月婷婷俺也去| 久久久婷婷五月亚洲97号色| 激情久久网 | 逼逼AV| 色综合夜夜| 91凹凸在线| 丁香六月婷婷社区| 另类图片五月天婷婷| 99久久九九视频| 亚洲男女激情| 婷婷色网| 成 人片 黄 色 大 片| 亚洲另类婷婷五月丁香在线播放| 日韩免费乱轮网站| 爱性综合网| -91九色大屁股| 久久九精品| 香港九九六区八区99| 免费视频无码| 第四色在线观看| 国内外色色色色色成人视频| 久久久国产精品黄毛片| 91精选国| 久久婷婷丁香五月宗合| 99色婷婷| 激情五月婷婷伊人| 开心激情网五月| 天天爽天天草| 五月丁香啪啪啪| 99热这里只有精品9| 婷婷五月天免费视频| 夜夜躁爽日| 99久久6| 五月婷婷在线观看| 狠狠色噜噜狠狠狠888| 五月婷婷六月丁香色| 久久丁香久久| 久久亚洲婷婷| 99热色在线精品| 日本熟女一区二区| 十一月婷婷激情四射| h亚洲| 久久久999精品| 婷婷六月色| 激情综合网五月激情| 激情久久久| 91色婷婷综合久久中文字幕二区| 97luluse| 五月婷亚洲精品AV天堂| 日 日干 日日做| 五月婷婷激情综合在线| 婷婷五月丁香久久| 99激情网| 91av传媒高清在线视频网| j五月香在线| 99情色五月天| 天天日天天做天天舔| 五月婷婷成人网首页| 夜夜夜叫天天天做| 五月 激情视频| 99久久99久久综合| 亚洲影院婷婷色| 99热热这里只精品996小说| 婷婷黄色| 丁香五月色欲| 久色| 五月久久婷婷天堂视频| 五月天色婷婷小说| 成人AV免费观看| 五月天激情网站| 丁香97综合| 97精品综合| 五月中旬婷婷丁香六| 91久久九久久九久久九久久九久久| 五月天综合视频| www。五月,com| 狠狠久久婷五月| 色五月婷婷激情五月| 色爱99| 99亚洲精品视频| 1024成人免费看| 狠狠色婷婷7777久| 婷婷六月色开 | 天堂色婷婷| 婷婷六月天精品| 色色无码| 9热久久| 色婷婷内射| 热99这就是精品视频| 久久色情| 色色婷婷丁香| 在线中文亚洲| 亚洲一级AV在线免费播放| 欧美天天五月丁香免费观看| 99日本精品视频热| 亚洲一区国产传媒| 啪色综合| 9视频1在线| 色婷婷a三区麻| 天天天天干| 午夜九九九九九九九九九九九九九| 五月天激情Av| 亚洲中文字幕在线观看| 狠狠干天天内射| 久久久久久97| 欧美视频五区| 亚洲AV网址| 婷婷九月丁香中文| 日本操逼九九九九58日本操逼| 99操逼| 中文字幕婷婷| 婷婷五月婷婷| 天天日综合网射| 日韩成人中文字幕| 天天综合网~91综合网| 97九色视频| 精品一区二区三区三区| 色婷婷六月丁香综合欲精品| 伊人青涩网| 五月天激情社区| 99re6在线视频精品免费| 久热91| 丝袜人妻| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 操日本99| 婷婷六月啪啪| 久碰婷婷视频| 九九这里都是精品| 精品成人在线观看| 99热官网精品在线| 青青草a在线| 67194国产| 五月天激情综合网俺也去| 91九色网| 伊人五月人妻精品| 丁香五月激情啪啪啪啪| 激情九九六月激情免费视频| 99ri国产在线| 丰满人妻一区二区三区| 婷婷五月天综合蜜桃| 嫩草AV久久伊人妇女超级A| 五月婷婷亚洲天堂激情在线| 68热超碰在线| 五月丁香亭亭| 欧洲永久精品| 日本在线观看99| 成人婷婷深爱综合网| 日韩青青| 五月天婷婷色色网| 激情综合网络插| 五月丁香婷婷成人网| 色小说五月婷婷| 操b视频在线观看一区二区| 丁香五月婷婷视频| 狠狠色五月激情| 五月婷婷六月丁香| 欧美国产一区二区三区| 婷婷色播色五月五色五月天色妇| 国产午夜精品一区二区三区四区| 婷婷性爱五月天| 久久网日本| 成人国产欧美大片一区| 日本婷婷五月天| 入口五月婷婷六月香| 丰满老熟妇BBBBB搡BBB | 丁香五月AV综合| 七月丁香婷婷 色色| 九色激情| 狠狠色丁香久久婷婷综合五月| 色色色色色色色色色色色色色97| 99,色| 大香蕉色婷婷伊人在线| 国产午夜精品一区二区| 婷婷五月天激情偷拍| www.婷婷五月.com| 夜夜穞天天穞狠狠穞AV美女按摩| 天天操综合网| 密乳视频| www.天天色综合| 久草婷| 婷婷久久网| 夜夜爽天操| 91大屁股| 天天干夜夜b| 九九久久9 9在线观看| 女人天堂AV| 色婷婷成人影片| 99热久97| 影音先锋秋秋五月婷婷| 人人摸人人摸| 思思精品热在线| 激情综合区| 内射 无码 伊人| 九九99在线免费在线观看视频| 艹| 丁香激情久久| 午夜丁香六月婷| A片女女女女女女BBBB| 丁香五月色五月| 欧美综合在线五月天色婷婷| 丁香五月在线视频| 玖玖综合色| 性色综合网| 亚洲狠狠色丁香婷婷综合久久| 久久伦乱| 婷婷五月天电影网| 免费观看欧美成人AA片爱我多深| 激情五月婷婷在线区| 久久女人天堂| 黄色激情久久| 超级黄色片| 九九精品9| 五月综合激情| AA丁香综合激情| 婷婷日在线观看| 色九月综合网| 牛牛色av| 婷婷丁香视频| 久久免费丁香| 亚洲成人av中文| 欧美日本日韩| 国产午夜成人AV在线播放| 久久香蕉网| 99热99久久| 婷婷五月天伊人| A久网| 人人舔人人色人人高潮| 色。 日日日| 狠色狠色狠狠色综合网| 亚洲va综合va国产va中文| 日韩999| 人妻久热| av大香蕉| 嫩BBB槡BBBB搡BBBB| 五月丁香在线| 大战熟女丰满人妻AV| 久久综合九九| 免费无码毛片一区二区A片| 婷婷五月天成人网| 婷婷六月天国产综合| 无码日本精品XXXXXXXXX | 色五月激情五月| 欧美三级巜人妻互换| 性色做爰片在线观看WW| 九九精品9| 91热在线观看视频| 69久久99精品久久久久婷婷| 国产精品大香蕉| 开心五月六月婷婷| 国产一级婬片毛片| 婷婷 色 丁香 夜| 66成人网| 天天日天天舔| 天天干天天射色综合| 丁香五月婷婷俺也要去| 日日狠夜夜狠| 天天搞天天色综合| 97福利视频| 国产又粗又大又爽又黄| 国产第99页| 激情伊人| 天天综合永久| 色播婷婷五月天| 思思热在线观看| 极品人妻VIDEOSSS人妻| 91日日日| 内射激情在线| 久久综合五月天| 亚洲精品无码久久| 五月婷婷色色爱| 人人看人人97| 婷婷成人综合免费视频| 丁香五月在线| 狠狠操狠狠| 色色97丁香婷婷五月天| 欧美色五月| 五月丁香激情婷婷综合| WWW久久久| CHINESE熟女老女人HD视频| 丁香五月婷婷操逼| 99欧美| 天天天天做夜夜夜夜做| 色婷婷五月天天天天天| 深爱激情丁香五月| 婷婷九月色| 另类图片五月激情| 99热99思午夜精品| 91精品综合久久婷婷九色| 五月婷婷激情综合| www.久久久久久久| 六月丁AV| 成人免费黄色短视频| av无码电影| 热99视频| 色五月丁香五月| 狠狠色九月| 五月情四婷婷| 六月丁香激情网| 性爱五月婷| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 久草婷婷视频| 婷婷五月天亚洲激情戏精品| 人妻人人操| 五月天久久激情| se99在线| 欧美日朝成人| 99九九在线视频| 久久五月婷天天干| 天堂成人A片永久免费网站| 97婷婷狠狠| 婷婷五月情| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 久久HD| 久久99精品日本| 这里只有精品69| 色播五月丁香| 亚洲色婷婷色| 可以免费看av网站| 99视频内射三四| 五月婷婷六月综合| 天天舔天天爽| 五月婷免费视频| 欧美色色色色色色色| 国产肥白大熟妇BBBB视频| 91性高潮久久久久久久久| 欧美狠狠色| 婷婷狠狠爱| 九九综合久久| 熟妇天天综合| 玖玖资源在线视频| 婷婷九月丁香天堂丁香天堂| 狠狠操狠狠| 综合网网欲色| 热思思| 五月婷综合| 综合色五月| 天天久久九九| 51国精产品自偷自偷综合 | xxx日本东京热| 在线看的免费网站| 激情www.98com| 国产熟妇乱子伦hd| 99视频只有这里精品| 久99久视频精品| 五月久久丁香| 五月婷婷玖玖综合玖玖爱| 久久深爱激情网| 国产毛片操B| 婷婷五月天美女视频| 色婷婷yy久| 五月婷婷,六月丁香| 操逼综合网| 97色色色| 天天射影| 狠狠噪| 99精品视频免费观看,| 蜜乳久AV| 天天干天天干天天干| 9操在线| 五月丁香婷草| 六月婷婷无码观看| 亚洲视频码| 激情综合网五月激情| 青996青| 色五月大香蕉| 思思re视频在线| 免费成人中文字幕| 思思久久99| 激情五月五月五月婷婷| 97人妻碰碰碰久久久久-最近国语高清| 开心激情站| 五月丁香婷婷无码中文| 欧美性猛交99久久久久99按摩| 中文国产五月天| 超碰网站在线观看| 婷婷久久综合久| 99爱无码| 欧美婷婷| 超碰丁香五月| 天天综合色| 99热在线精品观看| 五月婷婷激情四季| 午夜伊人大香蕉| 亚洲无码成人| 婷婷四色成人综合色视| 激情综合婷婷| 97丁香视频| 91碰碰视频| 99在线视频在线观看| 五月婷婷综合社区| 九九99九九精品免费 | 9精品国产在热久久| 日本五月婷婷| 五月婷婷久久开心网| 99人人精品| 欧美三级巜人妻互换| 99视频自拍| 欧美韩国日本| 色婷婷9| AV天堂淫乩| 任你搞网站| 狠狠色综合图片| 天天综合色| 激情五月天视频| 丁香六月爱综合| 在线五月婷婷小电影| 色婷婷综合在线| 国外亚洲成AV人片在线观看| 久久久久婷| 9999色色色色| 人人舔人人色人人高潮| 五月婷婷无码| 激情婷婷丁香五月天| 91成人看| 九九综合九色欧美狠狠| 日韩精品AV一区二区三区| 啪啪激情网| 九九热这里只有精品6| 五月婷婷之激情五月| 色情五月天小说| 538任你爽视频不一样的| 天天综合天综合久久网| 亚洲国产精品二二三三区| 五月天精品视频| h亚洲| 亚洲五月天婷婷| 激情五月综合网最新 | 怕怕av| 激情色色| 99色这里| 婷婷欧美偷拍综合| 五月天六月丁香| 伊人春天av| 五月婷婷深深的爱| 性生活视频98791| 啪精品| 色婷在线视频| 97精品自拍视频| 色九综合| 欧美三日本三级少妇三99| 九月激情综合婷婷| 久久精品五月天| 五月丁香激情四射| 五月天色图| 亚洲激情在线| 乱岳熟女50岁| 午夜成人片400| 少妇高潮呻吟A片免费看软件| 一点色成人网| 婷婷大香焦| 日日操夜夜操不卡| 中文字幕天天干| 激情亭亭五月| 91美女被操| 5月婷婷视频网站综合| 久热这里这里有精品| 高清无码一区二区三区四区| 26uuu91| 99热这里只有精品33| ss99热| 色丁香久久| 丁香桃色网| 婷婷五月综合激情| 五月天社区婷婷| 九九无毛| 伊人久久大香线蕉av一区| 色欲av伊人久久大香线蕉影院 | 婷婷五月婷婷| 亚洲色婷婷| 色综合五月天| 97AV人人插人人操| 激情五月综合| 久久成人天| 色色无码| 大学生高潮无套内谢视频| 91色综合网站在线| 国产日韩av片| 五月丁香大香蕉| 国产探花AV在线| 久久久精品人妻| 五月丁香天堂网| 九九9久九9国产视频| 五月丁香婷婷综合网色欲| 欧美人人超级碰| WWW,色五月| 久热A| 亚洲熟女色| 色婷婷基地 | 色婷婷激情五月天| 五月婷婷六月激情在线| 丁香五月色| 婷婷色婷婷| 成人AV综合在线| 婷婷激情丁香五月婷婷激情丁香五月婷婷 | 99九九在线观看免费| 月婷婷亚洲| www.色九月| 91打屁股免费看| 五月丁香六月婷婷成人| 天天射影视综合网| 亚洲99热| 婷婷久久在线| 激情综合婷婷| 色五月婷婷久久| 四季日韩AV无码综合| 亚洲免费观看高清完整版AV线| 人人操Av| 综合色情网| 国内在线99视频| 夜夜www| 亚洲综合色婷婷| 九月大香蕉| 亚洲激情电影五月天色婷婷丁香一起草 | 玖玖伦理电影| 无码区婷婷五月花开| 天堂成人A片永久免费网站| 婷婷五月丁香欧洲| 丁香婷婷婷五月| 99狠狠操一| 超碰免费电影| 第四色婷婷五月| 日韩性视频| 午夜激情久久| 九月丁香| 亚洲性爱电影| www色婷婷com| 亚洲网站观看视频| 五月婷在线影院| 婷婷婷婷婷开心无码播放| 色色色综合网| 热九九精品| 色三级色三级| 九九热10| 天天色丁香| www.久久婷婷| 婷婷五月激情五月激情| 九热网站| 五月丁香六月婷婷a v| 婷婷五月色| 思思99热这里只有精品| 91色在线/日韩| 色色五月婷婷久久| 婷婷久久五月天丁香| 久久亚洲天堂| 婷婷五月色情| 大香蕉伊人爱在线| 免费AV在线| 激情久久丁香| 九九99精品视频| 99热综合色图| AV在线中文| 日本啪啪天堂| 色情五月婷婷| 五月婷婷新网站| 天天操综合网| 色婷婷六月激情| 99ER热精品视频| 韩国婷婷丁香五月| 免费日本aⅴ中文字幕 | 丁香五月婷婷操逼| 五月天激情电影| 丁香桃色网| 日本一级大片| www.久久久久久久| 丁香六月婷婷久久综合| 色色操| 欧美综合丁香网| 九九精品丁香花| 色激情五月天| 色婷婷久久| 天天综合精品| 激情五月婷婷中文字幕| 免费观看日韩成人av| 色五月女| 91爱操| 777精品久无码人妻蜜桃| 久久99热精品a片在线观看| 色情激情五月婷婷| 五月婷婷中文字幕| 91精品熟女| 五月天激情小说| 亚洲 六月 综合| 九九精品亚洲| 91久久久久久久| 开心五月深爱五月丁香五月激情五月 | 狠狠色丁香99| 久久网址99热| 日本婷婷在线| 欧美精品久久久久久视频观看| 第九色区AV在线| 99re在线视频| 久久五月天黄色五月天色网址| 色婷婷精品视频在线播放| 亚洲成人AV在线观看| 五月天伊人av| 亚洲久艹| 色人久久| 99色在线视频| 人妻久久久久| 九月色婷婷婷| 婷婷五月天网| 五月婷婷真爱激情网| 丁香六月啪啪| 夜夜AVV| 国产亚洲99久久精品| 天天日夜夜曹| 97中文在线| 亚洲色区17| 婷婷色在线| 色色无码| 国色天香伊人狠狠色| 99久久综合网| 国产91在线视频| 99热免费| 久99久热| 五月天伊人综合| 91九色精品熟女内射| 草榴视频黄色网| 丁香六月婷婷开心| 啪啪亚洲综合| 日本a片网址| 色色色婷婷| 久久久久久欧美精品se一二三四| 色无码| 丁香五月婷婷狠狠色| 久久日韩婷婷五月| 人妻激情久久| 99无码| 人人爱操| 99热99极品观看| 天天摸天天日天天舔| 久热2025无码| 欧美操人| 另类专区在线| 91久久五月天| 婷婷丁香五月综合免费视频百花| 久久婷婷五月综合色丁香| 能看的av片| 天天操天天操| 热热久久久久久久久| 丁香五月98| 婷婷色五月久久| 狠狠干在线视频| 襙逼网| 日本在线噜噜| 九九爱激情| 成人网丁香五月| 日日干日日色| 六月婷婷之青青草| 亚洲日韩国产黑丝黑丝AVAV一区二区三区 | 99九九99九九九视频精品| 97色干在线观看| 五月综合激情婷婷六月色窝| 五月丁香六月婷婷网| 婷婷五月天综合网| 欧美日比视频| 激情综合网五月| 五月丁香欧美综合| 一区视频网站| 久久99久久99精品免观看粉嫩| 激情五月婷婷色播网| 国产熟女日日骚五月丁香爱| 久久久婷丁香五月| 婷婷激情五月天色| 99热骚货| 婷婷五月深爱五月| 丁香五月综合AV在线| 丁香婷婷深情五月亚洲| 99热手机在线精品| 大陆肏屄视频| 夜夜谢天天干| 激情深爱五月天| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 狠狠久综合| www,99热| 99性爱| 国产成人综合在线| 五月丁香黄色视频| 婷婷色综合| 天天爱天天天射AV| 久久精品天| 亚洲黄色精品| 这里有精品99| tingtingzonghewang| 深爱激情网五月天| 亭亭五月丁香五月天激情| 婷婷午夜精品久久久| 91欧美| 日日操日日射| 影音先锋777xfplay色资源网站| 色五月中文网| 任你爽视频| 激情又色又爽又黄的A片| 亚洲mm免费| 色色色色色五月| 成人电影一区| 五月天婷婷色在线视频免费观看| ,99视频久久| 色五XX| 婷婷综合色| 五月天久久婷婷| 亚洲av| 91av视频在线观看最新网址| 色综合久久888| 天天色凹凸| 久热无码| 9精品国产在热久久| 久久精品视频99| 丁香五月天在线观看视频| 99ri精品| 亚洲中文AV网站| 欧美97色| 天天爽夜夜爽夜爽精品| 国产脫衣舞一区二区三区| 九九AV在线| 干婷婷五月天| 狠狠爱五月婷婷| 天天操天天插| 99久久精品亚洲综合| 2020夜夜操天天爽| 久久婷婷精品| 中文字幕在线不卡视频| 丁香五月婷婷成人综合| 九九99免费理论| 丁香九色不卡aaa| 天天舔天天摸天天射| AV五月丁香| 久久182| 国产成人va在线| 五月婷婷激情网| 久久精品五月天| 亚洲视色| 精品九九九久| 丁香婷婷人妻综合网| 99热免| 成人版视频在线观看| 99热99干| 色哟呦av| 欧美天天干五月丁香| 亚洲综合五月| 9色视频在线| 婷婷五月天网址| 激情久久网| 激情深爱综合网| 久久人人添人人爽添人人片αV | 激情五月影院| 婷婷黄色网| 色五月天网| 在线理论片| 九九视频这里是精品五月| 五月天婷婷在线观看| 色噜噜狠狠色综合成人99| 婷婷五月电影| 九九热婷婷| 色日本综合| 99视频只有精品| 婷婷综合九月| 殴美综合激情五月天免费视频| 婷婷基地成人五月天| 丁香婷婷色| 色久一| 久狠狠狠| 久婷婷色| 狼友视频在线观看18| 伊人婷婷大香蕉| 九热...av| 黄网在线免费观看| www婷婷| 久热这里只有精品在线观看| 青青青在线视频国产| 婷婷舔| 777精品久无码人妻蜜桃| 色五月丁香激情视频| 久操欧美在线观看97| 91人妻视频| 丁香五月天日韩无码| 人人射人人高潮| 久久精品系列| 丁香五月播播| 五月婷婷播| 大香蕉久久视频久久视频| 激情五月狠狠| 97热在线精品| 久久机热/这里只有精品| 色五月婷婷少妇人妻| 蜜桃婷婷丁香综合久久开心亚洲| 五月天激情无码专区| 激情婷婷九月| 色婷婷www| 夜夜www| 激情婷婷五月综合| 99热亚洲| WWW、日本色丁香co m| 五月丁香本色在线观看| 五月天婷婷综合免费| 婷综合| 极品人妻VIDEOSSS人妻| 婷婷五月天伊人网| 色婷婷影视| 蜜乳av一级av| 99啪啪网| 日韩黄黄| 色五月天丁香婷婷色| 成人av免费观看| 六月丁香五月激情网| 99热欧美精品| 丁香五月电影| 狠狠草狠狠草| 婷婷五月综合激情| 热99玖玖99玖玖99九九| 五月婷婷激情网| 亚色网站小视频| 肏日网在线看| 精品人妻一区| 色五月女| www.天天干.com| a片在线免费观看一区| 色情成人五月天| 拳交大逼| 欧美大奶熟女噜噜噜噜| 狠狠 久久| 色久综合| 日本美女五月天| 伊人六月丁香婷婷| 99婷婷国产最新视频| 1024操逼| www99热| 五月情婷婷| 热热久久精品视频| 9999热在线免费观看| 五月天电影网| 成人午夜无码视频| 婷婷基地爱| 狠狠色综合777| 熟女网站久久| 97婷婷五月| 高清无码网址| 婷婷涩五月| 色播激情五月天| 婷婷五月天,影院| 91人人爽狠狠狠| WWW.久久99| 久久婷婷青青草| 婷婷久久五月| 欧美日韩123| 久久久久久人妻久久久久久久久久人妻久久久| 婷婷激情伍月网| 国产激情在线| 亚洲天堂制| 欧美槡BBBB槡BBB少妇| 九九av| 91免费看片| 夜夜夜夜撸夜夜操| 婷婷亚洲在线| 开心四月婷婷在线色播播| 日韩成人综合网| 啪啪夜久久| 色吊丝99| 超碰熟女农村在线69| 国产肥白大熟妇BBBB视频| 开心五月网| 9|无码久久久久久| 99色色| 99在线免费视频| 免费观看2018www黄色操逼网站| 成人美女网| 久久怡红院| 狠狠色色| 欧美激情五月天| 亚洲另类在线观看| 99热e| 丁香色成人| 五月天社区婷婷丁香社区| 妻久久人久久| 九九在线这里只有精品视频 | 中文字幕成人| 婷婷久久网| 91干| 综合网色| 激情五月天婷婷直播| 久久综合99综合| 色色色色五月天| 99热热九九| 欧美天天五月丁香免费观看| 久久久人妻人伦| 欧亚洲在线高清视频| 九月色婷婷| 伊人影音无码一区二区三区| 亚洲色综合| 色五月婷色彩免播放器| 色99色| 99碰碰中文| 日本精品人妻无码77777| 专区无日本视频高清8| 99在线精品免费视频| 成人亚洲精品久久久久| 性生生活大片又黄又| 国产99久| 99在线视频喷水| 色播五月综合网| 51成人| 精品无码av丁香五月激情| 欧美激情xxxXX| 婷婷五月天亚洲图片| 啪啪激情综合| 婷婷五月精品中文| 91色碰| 午夜爱爱网站| 亚洲色色色色色色色色色| 久久婷婷激情五月天一区二区| 六月丁香视频网站| 99色热视频| 欧美丁香婷婷五月| 久久久无码精品成人A片小说| 九九99九九99偷拍视频免费看| 26uuu精品国产| 蜜桃成语时李时珍 免费| 91碰碰视频在线观看| 亚洲无aV在线中文字幕| 日本久久婷| 综合狠狠五月婷婷| 逼里香不卡| 91色色色| 天堂成人A片永久免费网站| 亚洲国产成人AV在线| 日韩人妻无码精品| 婷婷五月天视频| 少妇2做爰HD韩国电影| 91欧美日韩| 久久网日本| 草婷婷在线| 国内精品免费一区二区2009| 色七色九九| 激情99热| 亚洲VA口| 激情五月婷| 涩 五月 婷婷 狠狠| 思思热天天看| 色综合色综合网| 九月婷婷久久| 99干免费视频| www.超碰在线| 激情综合网亚洲色图| 五月停停999| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 狠狠综合区| 五月丁香婷婷五月色| 色无码| 国产精产国品一二三在观看| 99WWW免费视频| 91婷婷五月天综合视频| WWW99热| 超碰操日| 色婷婷综合久色AV五色最新| 色五月丁香五月天| 国产毛片精品一区二区色欲黄A片| 91九色在线观看免费| 美女五月天婷婷| 亚洲碰碰碰| 偷拍丁香九月激情| 无码se| 国产毛片精品一区二区色欲黄A片| 精品一二三区久久AAA片 | 91人碰| 天天狠狠色| 久久综合激情| ′久久99一| 五月综合色播播丁香婷婷| 色99视频| 九九色欲网| 五月花免费视频| 国产麻豆视频| 天天搞夜夜叫| 婷婷丁香97| 美腿丝袜AV天堂网| 日日日影院| 欧亚成人A片一区二区| 五月丁香婷婷色色| 五月婷婷色播| 伦乱人妻| 国色天香伊人狠狠色| 久久思思热| 五月激情丁香五月| 亚洲99综合| 丁香五月激情综合婷综| 欧美激情综合色丁香婷婷五月天| 夜夜穞天天穞狠狠穞AV美女按摩| 精品激情| 久久久.COM| 成人色图情色成人网 www.5b5b5bcom 五月天 | 青青日韩| 激情综合激情五月一起草| 国产精品第一国产精品| 亚洲综合激| 99视频这里有精品| 色香蕉影院| 玖玖综合色| 亚洲操精品| 五月丁香激情婷婷| 天天肏高清在线| 色婷婷丁香五月| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 亚洲色啪| 五月伊人综合| 综合色99| 99热在线里有精品| 亚洲精品久久久久久久久久吃药 | 狠狠久久婷五月| 亚洲性爱电影| 精典久久| 91成人视频| 97AV在线视频| 操91| 婷婷五月天成人五月天| 在线综合网| ss五月天激情| 久久久天堂国产精品女人| 色亚洲中文| 亚洲成人AV电影在线| 思思热再线视频| 情色五月天 网站| 亚洲天堂aaaa| 夜夜大香蕉婷婷丁香|