免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

基于貝葉斯優(yōu)化的PatchTST綜合能源負(fù)荷多變量預(yù)測實(shí)現(xiàn)

基于貝葉斯優(yōu)化的PatchTST綜合能源負(fù)荷多變量預(yù)測實(shí)現(xiàn) 做綜合能源系統(tǒng)的負(fù)荷預(yù)測最讓人頭疼的往往不是單條曲線怎么擬合而是幾條不同能源品種的曲線放在一起時(shí)它們之間的耦合關(guān)系、量綱差異、突變規(guī)律怎么處理。我手頭這個(gè)項(xiàng)目就是這么來的一個(gè)園區(qū)級(jí)的綜合能源系統(tǒng)需要同時(shí)預(yù)測電負(fù)荷、熱負(fù)荷和冷負(fù)荷外部還要疊加上溫度、濕度、光照、風(fēng)速這些氣象因素以及工作日/節(jié)假日標(biāo)記。如果用傳統(tǒng)的LSTM一路堆到底效果很容易到瓶頸換標(biāo)準(zhǔn)Transformer又會(huì)遇到長序列計(jì)算量大、局部模式提取弱的問題。后來我把模型切換成PatchTST調(diào)參再用貝葉斯優(yōu)化去搜整體思路就是標(biāo)題里寫的基于貝葉斯優(yōu)化的PatchTST綜合能源負(fù)荷多變量時(shí)間序列預(yù)測Python代碼完整實(shí)現(xiàn)。這篇內(nèi)容適合兩類人看一類是做電力、能源、園區(qū)微網(wǎng)相關(guān)的算法工程師另一類是正在研究時(shí)間序列預(yù)測、想把PatchTST這類新模型落地到自己數(shù)據(jù)集上的同學(xué)。我會(huì)把模型機(jī)制、調(diào)參思路、數(shù)據(jù)構(gòu)造以及實(shí)際訓(xùn)練中踩過的坑都串起來講代碼部分也會(huì)給出可以直接套用的骨架。1. 項(xiàng)目拆解為什么把寶押在PatchTST和貝葉斯優(yōu)化上先說說整個(gè)項(xiàng)目的技術(shù)路線是怎么定下來的。綜合能源負(fù)荷預(yù)測本質(zhì)上是多變量時(shí)間序列預(yù)測問題輸入是一段歷史窗口的多維張量輸出是未來一段時(shí)間的多條負(fù)荷曲線。和普通單序列預(yù)測比難點(diǎn)主要在三個(gè)地方。第一個(gè)難點(diǎn)是通道數(shù)多且量綱差異大。電負(fù)荷可能是幾千千瓦熱負(fù)荷可能是吉焦每小時(shí)冷負(fù)荷又不一樣這幾個(gè)變量如果直接拼成一個(gè)矩陣丟給模型訓(xùn)練時(shí)梯度很容易被量綱大的通道主導(dǎo)。所以需要做精細(xì)的歸一化并且模型本身要具備一定的通道獨(dú)立性。第二個(gè)難點(diǎn)是局部模式很重要。綜合能源負(fù)荷曲線不像股票那樣充滿隨機(jī)游走它有明顯日內(nèi)周期性、氣溫敏感性和節(jié)假日突變性。這些模式往往體現(xiàn)在幾十個(gè)時(shí)間步的局部片段里比如早上電負(fù)荷爬坡這一段往往持續(xù)三五個(gè)采樣點(diǎn)就有明顯趨勢特征。標(biāo)準(zhǔn)Transformer用的是逐點(diǎn)注意力每個(gè)時(shí)間步單獨(dú)做embedding對(duì)局部片段的建模效率不高而PatchTST的核心就是把時(shí)間步先切成patch把一個(gè)patch當(dāng)成一個(gè)token這樣自注意力直接作用在語義更完整的patch上局部趨勢一下就清楚了很多。第三個(gè)難點(diǎn)是調(diào)參空間大人工試錯(cuò)成本太高。PatchTST涉及的參數(shù)很多輸入窗口長度、patch長度、stride步長、Transformer層數(shù)、頭數(shù)、d_model、dropout、學(xué)習(xí)率再加上優(yōu)化器和調(diào)度策略如果靠網(wǎng)格搜索或者手動(dòng)試一組跑下來半個(gè)多小時(shí)根本試不完。貝葉斯優(yōu)化正好解決這個(gè)問題它能根據(jù)歷史試驗(yàn)結(jié)果選擇下一組最有潛力的參數(shù)用更少的嘗試次數(shù)找到更好的配置。所以整個(gè)項(xiàng)目的架構(gòu)就很清晰了數(shù)據(jù)側(cè)做好多變量窗口構(gòu)造和歸一化模型側(cè)用PatchTST提取patch級(jí)語義特征優(yōu)化側(cè)用貝葉斯替代模型去搜超參數(shù)最終目標(biāo)是讓驗(yàn)證集上的多步預(yù)測誤差盡量小。這個(gè)組合在實(shí)際跑下來之后效果確實(shí)比原來的LSTM基線好了不少尤其是熱負(fù)荷這種帶明顯延遲慣性的曲線預(yù)測精度提升很直觀。2. PatchTST核心機(jī)制從內(nèi)到外講透每個(gè)設(shè)計(jì)選擇想用好一個(gè)模型不能只調(diào)庫得把它的設(shè)計(jì)邏輯搞清楚。PatchTST的關(guān)鍵創(chuàng)新可以概括為三個(gè)詞Patch、Channel Independence、Transformer Encoder。下面逐個(gè)拆開講。2.1 時(shí)序分割與Patch化處理標(biāo)準(zhǔn)Transformer處理時(shí)間序列時(shí)通常是把每個(gè)時(shí)間步映射成一個(gè)token。假設(shè)輸入序列長度是96那就有96個(gè)token每個(gè)token只代表一個(gè)采樣點(diǎn)的值自注意力在這96個(gè)點(diǎn)之間做交互。這里的問題很明顯單點(diǎn)信息密度低而且注意力矩陣是96x96計(jì)算和內(nèi)存開銷都不小。PatchTST的做法是把時(shí)間維切成小段每個(gè)小段叫一個(gè)patch把patch整體映射成一個(gè)token。假設(shè)patch長度是16stride是8序列長度96就能切出約11個(gè)patch注意力矩陣從96x96縮到11x11計(jì)算量少了將近一個(gè)數(shù)量級(jí)同時(shí)每個(gè)token包含16步的局部上下文語義信息豐富得多。這個(gè)設(shè)計(jì)背后的邏輯很像看圖時(shí)的滑窗識(shí)別人眼看一幅圖不會(huì)逐像素掃描而是先看一個(gè)個(gè)局部區(qū)域再把這些區(qū)域組合起來理解全局。PatchTST的patch化也是這個(gè)道理它讓模型天然聚焦在局部形態(tài)上而局部形態(tài)恰恰是負(fù)荷曲線的核心特征。實(shí)際實(shí)現(xiàn)時(shí)patch化有兩種常見做法。一種是用一維卷積配合合適的卷積核大小和步長來實(shí)現(xiàn)另一種是先unfold再線性映射。效果上兩者差別不大但用unfold加Linear的方式更直觀方便之后調(diào)整patch長度。有一點(diǎn)要特別注意patch數(shù)量不能太少否則序列全局信息會(huì)丟得太多。如果序列長度是96patch長度和stride都設(shè)16patch數(shù)量能到6個(gè)左右再往下減信息損失就會(huì)明顯了。2.2 通道獨(dú)立與多變量協(xié)作通道獨(dú)立這個(gè)設(shè)計(jì)我剛開始覺得有點(diǎn)反直覺。多變量預(yù)測難道不應(yīng)該讓不同變量之間充分交互嗎怎么還搞獨(dú)立PatchTST的Channel Independence策略指的是每個(gè)變量的patch序列在embedding和編碼階段各自獨(dú)立處理共用同一套映射和Transformer參數(shù)最后再通過預(yù)測頭輸出各自的結(jié)果。這樣做的好處是不同通道的量綱差異不會(huì)在embedding層就被混在一起模型可以把更多容量花在通道內(nèi)部的時(shí)序模式上。但獨(dú)立并不等于完全不合作。在多變量場景里我們可以做兩件事來引入通道間交互。第一在輸入側(cè)把外生變量氣象、日歷等作為額外通道一起喂進(jìn)去讓模型在通道維度上間接學(xué)到它們的聯(lián)合分布第二在輸出側(cè)用多任務(wù)預(yù)測頭把電、熱、冷三個(gè)負(fù)荷同時(shí)輸出共享損失和梯度更新通過共用底層特征實(shí)現(xiàn)隱性的跨通道協(xié)同。我在項(xiàng)目里實(shí)際采用的是“通道獨(dú)立編碼多任務(wù)輸出”的組合。實(shí)測下來這種方式比完全把多通道concat成一個(gè)矩陣讓模型自由混合效果更穩(wěn)尤其是冷負(fù)荷和熱負(fù)荷這種相關(guān)性弱的通道不會(huì)被強(qiáng)通道的信息淹沒。2.3 Encoder與預(yù)測頭PatchTST的編碼器用的就是標(biāo)準(zhǔn)的Transformer Encoder由多頭自注意力、前饋網(wǎng)絡(luò)、殘差連接和層歸一化組成。注意這里的自注意力作用在patch序列上也就是說注意力對(duì)象是若干個(gè)patch之間的關(guān)系而不是時(shí)間點(diǎn)之間的關(guān)系。這樣做的好處是注意力可以更高效地捕捉跨時(shí)間的依賴比如今天下午3點(diǎn)的負(fù)荷模式與昨天下午3點(diǎn)的負(fù)荷模式之間的相似性。預(yù)測頭部分PatchTST用的是直接多步預(yù)測一次性輸出未來所有時(shí)間點(diǎn)的值而不是像有些方法那樣逐步遞歸生成。直接多步預(yù)測的好處非常明顯避免了遞歸多步預(yù)測里的誤差累積訓(xùn)練時(shí)也用不著teacher forcing。實(shí)現(xiàn)上Encoder輸出的特征向量會(huì)被展平通過一個(gè)線性層直接映射到 pred_len 長度的輸出。對(duì)于多變量版本預(yù)測頭可以設(shè)計(jì)成輸出形狀為 (batch, num_channels, pred_len) 的張量。每一路用獨(dú)立的線性映射但也共享底層的Encoder特征。這樣電、熱、冷三條曲線既各自有獨(dú)立的輸出投影又能共享同一套時(shí)序特征提取網(wǎng)絡(luò)效果比較均衡。3. 貝葉斯優(yōu)化如何介入深度學(xué)習(xí)調(diào)參模型選好之后下一個(gè)問題是參數(shù)怎么定。說實(shí)話PatchTST這個(gè)模型對(duì)超參數(shù)還算敏感尤其是patch長度和stride直接決定token序列的信息粒度手動(dòng)試錯(cuò)非常痛苦。我一開始用的是傳統(tǒng)網(wǎng)格搜索一組參數(shù)跑一次完整訓(xùn)練結(jié)果發(fā)現(xiàn)完全行不通。后來切到貝葉斯優(yōu)化整個(gè)流程才順利起來。3.1 為什么不用網(wǎng)格搜索網(wǎng)格搜索的本質(zhì)是把參數(shù)空間切成均勻網(wǎng)格然后逐個(gè)組合嘗試。它最大的問題是維度災(zāi)難參數(shù)一旦多起來組合數(shù)爆炸式增長。假設(shè)我們只搜6個(gè)參數(shù)每個(gè)參數(shù)取5個(gè)候選值組合數(shù)就是5的6次方一萬五千多種組合一次訓(xùn)練要幾分鐘全跑完需要幾個(gè)月根本不現(xiàn)實(shí)。隨機(jī)搜索稍微好一些它可以指定嘗試次數(shù)但因?yàn)槭请S機(jī)采樣不會(huì)利用已經(jīng)跑過的結(jié)果前面的經(jīng)驗(yàn)對(duì)后面的搜索沒有幫助。貝葉斯優(yōu)化的思路完全不同。它把超參數(shù)搜索當(dāng)成一個(gè)黑盒優(yōu)化問題目標(biāo)函數(shù)是一次完整的訓(xùn)練流程輸入是一組超參數(shù)輸出是驗(yàn)證集誤差。貝葉斯優(yōu)化會(huì)在每次試驗(yàn)后更新一個(gè)概率代理模型來描述“哪些參數(shù)組合更可能讓誤差小”下一次試驗(yàn)就選擇代理模型認(rèn)為最有潛力的參數(shù)組合去跑。這就像找餐廳網(wǎng)格搜索是把整條街每家店都吃一遍隨機(jī)搜索是閉著眼挑幾家貝葉斯優(yōu)化則是吃完幾家后總結(jié)出“這條街上的高分店都集中在某個(gè)區(qū)域”然后重點(diǎn)去那片區(qū)域繼續(xù)找。3.2 搜索空間設(shè)計(jì)與采集函數(shù)機(jī)制貝葉斯優(yōu)化里有兩個(gè)關(guān)鍵組件一個(gè)是參數(shù)搜索空間一個(gè)是采集函數(shù)。搜索空間決定了我們允許模型在哪些范圍里找參數(shù)。我設(shè)計(jì)PatchTST的搜索空間時(shí)大概分成三類。第一類是模型結(jié)構(gòu)參數(shù)包括d_model、n_heads、e_layers、d_ff。這些參數(shù)決定模型容量。注意n_heads必須能整除d_model否則多注意力頭沒法均分維度。我一般把d_model設(shè)在64到128之間n_heads從4和8里面選e_layers控制在2到4d_ff按d_model的2到4倍去搜。第二類是patch化參數(shù)包括patch_len和stride。這是PatchTST特有的影響最大。patch_len太小局部語義不足太大patch數(shù)量太少序列信息壓縮過狠。我通常把patch_len放在8到24之間stride放在4到12之間。第三類是訓(xùn)練參數(shù)包括學(xué)習(xí)率、dropout、batch_size、weight_decay。學(xué)習(xí)率我習(xí)慣用對(duì)數(shù)均勻分布采樣范圍1e-4到1e-2dropout在0.05到0.3之間batch_size在32到128之間weight_decay在1e-6到1e-3之間。采集函數(shù)的作用是從代理模型推薦下一組參數(shù)。常用的有期望改進(jìn)EI和置信上界UCB。EI會(huì)權(quán)衡“這個(gè)區(qū)域可能達(dá)到多好”和“這個(gè)區(qū)域的不確定性有多大”既不會(huì)只盯著已知最優(yōu)區(qū)域?qū)е戮植渴諗恳膊粫?huì)完全到處亂試。我用的優(yōu)化庫是Optuna它默認(rèn)的TPE采樣器使用的就是類似的思想把歷史試驗(yàn)分成表現(xiàn)好和表現(xiàn)差的兩組通過概率密度比值來指導(dǎo)下一步采樣。3.3 基于Optuna的實(shí)現(xiàn)思路Optuna是目前最順手的貝葉斯優(yōu)化框架和PyTorch集成很方便。整個(gè)流程分三步定義objective函數(shù)、創(chuàng)建study、運(yùn)行優(yōu)化。objective函數(shù)內(nèi)部就是一次完整的模型訓(xùn)練和評(píng)估流程最終返回驗(yàn)證集上的MAE或者RMSE作為需要最小化的目標(biāo)值。import optuna from optuna.pruners import MedianPruner from optuna.samplers import TPESampler def objective(trial): params { d_model: trial.suggest_categorical(d_model, [64, 96, 128]), n_heads: trial.suggest_categorical(n_heads, [4, 8]), e_layers: trial.suggest_int(e_layers, 2, 4), patch_len: trial.suggest_int(patch_len, 8, 24, step4), stride: trial.suggest_int(stride, 4, 12, step4), dropout: trial.suggest_float(dropout, 0.05, 0.3), lr: trial.suggest_float(lr, 1e-4, 1e-2, logTrue), batch_size: trial.suggest_categorical(batch_size, [32, 64, 128]), weight_decay: trial.suggest_float(weight_decay, 1e-6, 1e-3, logTrue), } # 數(shù)據(jù)加載、模型構(gòu)建、訓(xùn)練循環(huán)在這里完成 # val_loss train_and_evaluate(params) # 這個(gè)函數(shù)內(nèi)部包含完整的訓(xùn)練和驗(yàn)證邏輯 return val_loss sampler TPESampler(seed42, n_startup_trials10) pruner MedianPruner(n_startup_trials5, n_warmup_steps10) study optuna.create_study(directionminimize, samplersampler, prunerpruner) study.optimize(objective, n_trials60, timeout7200)這里有兩個(gè)細(xì)節(jié)值得說。第一n_startup_trials是指在真正用TPE決策之前先做多少次完全隨機(jī)采樣目的是給代理模型提供初始數(shù)據(jù)。設(shè)太小比如設(shè)成3代理模型容易在剛開始就鎖死到錯(cuò)誤的區(qū)域。我實(shí)際用下來設(shè)10到15比較穩(wěn)。第二pruner的MedianPruner指的是如果某個(gè)trial在訓(xùn)練中途的中間結(jié)果比歷史同期中位數(shù)差就直接終止它把計(jì)算資源讓給更有潛力的試驗(yàn)。這類剪枝機(jī)制在調(diào)參任務(wù)里非常省時(shí)間尤其是在搜索空間很大的時(shí)候。4. 數(shù)據(jù)處理綜合能源負(fù)荷預(yù)測的建?;A(chǔ)模型和調(diào)參框架都定了數(shù)據(jù)這邊反而是最容易出問題但最容易被忽視的部分。綜合能源系統(tǒng)的原始數(shù)據(jù)通常來自SCADA系統(tǒng)、氣象站和日歷表數(shù)據(jù)結(jié)構(gòu)五花八門采樣間隔可能不齊異常值和缺失值也很多。處理不好后面模型再先進(jìn)也是白搭。4.1 多變量特征集合與來源我梳理這個(gè)項(xiàng)目的數(shù)據(jù)時(shí)把特征分成了三類。第一類是預(yù)測目標(biāo)也就是電負(fù)荷、熱負(fù)荷、冷負(fù)荷這三條主曲線采樣間隔是15分鐘一個(gè)點(diǎn)一天96個(gè)點(diǎn)。第二類是外部氣象特征包括干球溫度、相對(duì)濕度、水平面總輻射、風(fēng)速等這些特征對(duì)空調(diào)負(fù)荷和供熱負(fù)荷影響很大尤其是溫度和輻射與冷負(fù)荷的相關(guān)系數(shù)相當(dāng)高。第三類是日歷特征比如是否工作日、是否節(jié)假日、一天中的第幾個(gè)采樣點(diǎn)。日歷特征看起來簡單但對(duì)模型幫助很大。綜合能源負(fù)荷在工作日和周末的形態(tài)差異非常明顯如果模型不確定“今天是星期幾”它很難區(qū)分同一時(shí)刻兩種不同的合理模式。還有一類容易被忽略的特征是滯后變量。綜合能源系統(tǒng)里的熱負(fù)荷有很強(qiáng)的熱慣性今天的負(fù)荷不僅取決于今天的氣象還和過去幾個(gè)小時(shí)的熱量積累有關(guān)。所以我把目標(biāo)變量的前24個(gè)點(diǎn)也作為額外特征窗口輸入讓模型有機(jī)會(huì)捕捉這種慣性。不過要注意加了滯后變量后輸入通道數(shù)會(huì)明顯增加特征之間的多重共線性也會(huì)變強(qiáng)需要靠模型的正則化去吸收。4.2 歸一化方案的取舍歸一化這個(gè)環(huán)節(jié)我一開始吃過虧。直接用StandardScaler對(duì)整個(gè)特征矩陣做標(biāo)準(zhǔn)化表面上看沒錯(cuò)但會(huì)把不同負(fù)荷通道的量綱差異壓縮到同一范圍反而丟掉了不同能源品種之間的相對(duì)規(guī)模信息。后來我改成每個(gè)通道單獨(dú)做歸一化也就是對(duì)電負(fù)荷、熱負(fù)荷、冷負(fù)荷、溫度、濕度這些列分別fit一個(gè)scaler。這樣做的另一個(gè)重要原因是預(yù)測結(jié)果需要反變換回原始量綱才能計(jì)算誤差指標(biāo)。如果多個(gè)通道混合縮放反變換的時(shí)候矩陣操作容易出錯(cuò)分開處理后會(huì)清晰很多。預(yù)測目標(biāo)通道建議使用MinMaxScaler讓它嚴(yán)格落在0到1之間這樣和模型輸出層的激活范圍匹配更好訓(xùn)練初期收斂更穩(wěn)定。外部氣象特征用StandardScaler就行不需要強(qiáng)制限定到某個(gè)區(qū)間。反變換的公式很簡單但要注意在測試集上必須用訓(xùn)練集fit好的scaler不能在測試集上重新fit否則會(huì)造成信息泄漏評(píng)估結(jié)果虛高。4.3 滑動(dòng)窗口與多步預(yù)測構(gòu)造滑動(dòng)窗口是時(shí)間序列預(yù)測里最基礎(chǔ)的操作但細(xì)節(jié)里藏著不少坑。假設(shè)我們用前96個(gè)點(diǎn)預(yù)測后24個(gè)點(diǎn)那訓(xùn)練樣本就是在一個(gè)完整的時(shí)間序列上以一定step滑動(dòng)截取。比如step設(shè)24每天可以截出約4組樣本0到95預(yù)測96到11924到119預(yù)測120到143依此類推。這里有一個(gè)很關(guān)鍵的選擇輸入窗口和預(yù)測窗口之間是否要有g(shù)ap。有些場景里我們可以在輸入末尾和預(yù)測開始之間留一段間隔比如輸入96個(gè)點(diǎn)跳過6個(gè)點(diǎn)再預(yù)測未來24個(gè)點(diǎn)。這個(gè)gap的存在讓模型不能只依賴最近幾個(gè)點(diǎn)的慣性外推必須真正學(xué)到模式泛化能力更好些。但如果gap太大模型會(huì)丟掉近期的有效信息誤差反而不降。我在實(shí)測里用gap等于1到2個(gè)采樣點(diǎn)作為折中效果比完全無縫預(yù)測略好。窗口構(gòu)造完成后數(shù)據(jù)要整理成模型需要的形狀。PatchTST的多變量輸入通常是 (batch, seq_len, num_channels) 這樣的三維張量。注意通道維放在最后和圖像任務(wù)的 (batch, channels, height, width) 不一樣剛開始容易搞混。如果使用PyTorch建議在DataSet里直接返回這個(gè)形狀的tensor避免在訓(xùn)練循環(huán)里頻繁做permute。5. Python代碼實(shí)現(xiàn)與核心邏輯解讀這一節(jié)我把項(xiàng)目代碼的主干邏輯拆出來講。不貼全部源碼但關(guān)鍵部分都會(huì)給到并且解釋每一段在做什么、為什么要這么做。5.1 數(shù)據(jù)加載與窗口生成數(shù)據(jù)加載部分我習(xí)慣自己寫DataSet類而不是直接用現(xiàn)成的TSDataset庫因?yàn)榫C合能源數(shù)據(jù)通常要融合好幾個(gè)csv自定義更靈活。class EnergyDataset(torch.utils.data.Dataset): def __init__(self, df, target_cols, feature_cols, input_len96, pred_len24, step24): self.df df.reset_index(dropTrue) self.target_cols target_cols self.feature_cols feature_cols self.input_len input_len self.pred_len pred_len self.step step self.inputs, self.targets self._build_samples() def _build_samples(self): data self.df[self.target_cols self.feature_cols].values.astype(float32) total len(data) max_start total - self.input_len - self.pred_len samples_in [] samples_out [] for start in range(0, max_start, self.step): end_in start self.input_len end_out end_in self.pred_len x data[start:end_in] y data[end_in:end_out, :len(self.target_cols)] samples_in.append(x) samples_out.append(y) return ( torch.from_numpy(np.stack(samples_in)), torch.from_numpy(np.stack(samples_out)) ) def __len__(self): return len(self.inputs) def __getitem__(self, idx): return self.inputs[idx], self.targets[idx]這里有幾個(gè)設(shè)計(jì)點(diǎn)。第一切窗口時(shí)只保留完整覆蓋輸入和預(yù)測長度的樣本末尾不足的部分直接丟掉避免padding帶來的邊界噪聲。第二step控制窗口滑動(dòng)步長數(shù)據(jù)量不夠的時(shí)候step小一點(diǎn)可以增加樣本數(shù)但要注意相鄰樣本高度重疊會(huì)導(dǎo)致訓(xùn)練集和驗(yàn)證集之間的數(shù)據(jù)泄漏風(fēng)險(xiǎn)我的做法是把時(shí)間靠前的80%作為訓(xùn)練集時(shí)間靠后的20%作為驗(yàn)證集不做隨機(jī)劃分。時(shí)間序列數(shù)據(jù)不能用隨機(jī)劃分這一點(diǎn)非常重要隨機(jī)劃分會(huì)讓驗(yàn)證集提前看到訓(xùn)練集未來的信息。5.2 PatchTST模型實(shí)現(xiàn)模型主體我基于官方思路重新實(shí)現(xiàn)便于修改和加自己的預(yù)測頭。核心分兩塊patch嵌入和Transformer編碼器。import torch import torch.nn as nn class PatchEmbedding(nn.Module): def __init__(self, patch_len, stride, d_model, dropout): super().__init__() self.patch_len patch_len self.stride stride self.padding stride if patch_len stride else 0 self.linear nn.Linear(patch_len, d_model) self.pos_embed nn.Parameter(torch.randn(1, 100, d_model) * 0.02) self.dropout nn.Dropout(dropout) def forward(self, x): # x: (batch, seq_len, num_channels) batch, seq_len, num_channels x.shape x x.permute(0, 2, 1) # (batch, num_channels, seq_len) x nn.functional.unfold( x.unsqueeze(-1), kernel_size(self.patch_len, 1), dilation1, padding(self.padding, 0), stride(self.stride, 1) ) # 整理形狀 x x.permute(0, 2, 1).reshape(batch * num_channels, -1, self.patch_len) x self.linear(x) # (batch*num_channels, num_patches, d_model) x x self.pos_embed[:, :x.size(1), :] x self.dropout(x) x x.reshape(batch, num_channels, -1, self.linear.out_features) return x這段代碼里最容易出問題的是unfold的padding設(shè)置。設(shè)置padding為stride有一個(gè)作用保證序列末尾也能形成一個(gè)patch讓尾部的信息不會(huì)直接被丟棄。雖然末位patch是部分填充的但線性層在訓(xùn)練過程中可以學(xué)到忽略無效位置這比直接截?cái)嘁谩ransformer編碼器部分直接用PyTorch的TransformerEncoderLayer堆疊即可。注意這里要讓num_channels個(gè)通道的token進(jìn)入同一個(gè)Transformer因此把通道維展開到序列維。也就是說注意力可以跨通道和跨patch同時(shí)發(fā)生這也是為什么模型在多變量場景下依然能捕捉到通道間交互。預(yù)測頭部分我需要把Transformer輸出的特征重新整理成每個(gè)通道獨(dú)立的多步輸出。因?yàn)檩敵鍪侵苯佣嗖筋A(yù)測所以這里就是一個(gè)Linear層把特征映射到pred_len維度。我在實(shí)際實(shí)現(xiàn)時(shí)每個(gè)通道的輸出投影是獨(dú)立的Linear層使用nn.ModuleList包裹避免所有通道共享同一套投影權(quán)重。5.3 貝葉斯優(yōu)化主流程集成貝葉斯優(yōu)化的objective函數(shù)內(nèi)部最關(guān)鍵的是要讓每次試驗(yàn)在相同條件下公平競爭。我在試驗(yàn)里固定了隨機(jī)種子包括PyTorch、NumPy和Python內(nèi)置random否則有的試驗(yàn)跑得好純粹是運(yùn)氣好貝葉斯優(yōu)化會(huì)被假信號(hào)帶偏。另一個(gè)要注意的是驗(yàn)證集的選擇。我建議固定一個(gè)時(shí)間窗口作為驗(yàn)證集比如最近20%的時(shí)間段。不要在每次試驗(yàn)里重新劃分驗(yàn)證集否則不同試驗(yàn)之間的比較基準(zhǔn)不一致。如果數(shù)據(jù)量夠大也可以抽一個(gè)固定的時(shí)間長段做驗(yàn)證但同樣不能隨機(jī)抽取。objective函數(shù)的執(zhí)行流程通常是用傳入的超參構(gòu)建模型初始化數(shù)據(jù)加載器進(jìn)入訓(xùn)練循環(huán)每個(gè)epoch結(jié)束后在固定驗(yàn)證集上計(jì)算MAE或RMSE記錄歷史最優(yōu)模型返回驗(yàn)證集最優(yōu)誤差。整個(gè)過程相當(dāng)于一次小型訓(xùn)練任務(wù)。為了降低單次試驗(yàn)耗時(shí)可以限制epoch數(shù)到50左右配合早停策略。早停的patience建議設(shè)5到10個(gè)epoch太小容易在曲線還沒收斂時(shí)就提前停止太大又浪費(fèi)時(shí)間。5.4 訓(xùn)練與評(píng)估閉環(huán)訓(xùn)練循環(huán)本身沒有太多特別之處但有幾個(gè)細(xì)節(jié)會(huì)影響最終效果。首先是優(yōu)化器的選擇我用的是AdamW而不是普通Adam。AdamW把權(quán)重衰減從梯度更新里去耦對(duì)Transformer這類大模型的正則化效果更可控不容易出現(xiàn)普通Adam里weight_decay和自適應(yīng)學(xué)習(xí)率相互干擾的問題。學(xué)習(xí)率調(diào)度方面我推薦先用one cycle或余弦退火。PatchTST訓(xùn)練早期學(xué)習(xí)率太大會(huì)導(dǎo)致loss爆炸太小會(huì)導(dǎo)致收斂太慢one cycle策略在前幾個(gè)epoch快速提升學(xué)習(xí)率探索然后平滑下降收斂實(shí)測比固定學(xué)習(xí)率效果穩(wěn)定。損失函數(shù)用的是MSE因?yàn)镸SE對(duì)大誤差的懲罰更強(qiáng)烈會(huì)讓模型更關(guān)注尖峰負(fù)荷的擬合。如果后續(xù)覺得預(yù)測結(jié)果太平均、尖峰不夠尖可以換成MAE或者Huber損失做對(duì)比甚至組合起來用。評(píng)估指標(biāo)方面除了RMSE我同時(shí)會(huì)算MAE、MAPE和R2因?yàn)镽MSE對(duì)異常值敏感單看它容易被個(gè)別點(diǎn)的極端誤差誤導(dǎo)。MAPE對(duì)接近零的負(fù)荷值會(huì)失真所以計(jì)算時(shí)需要對(duì)真實(shí)值設(shè)置一個(gè)下限閾值避免除以接近0的數(shù)。6. 訓(xùn)練過程中踩過的坑與排查心得這個(gè)項(xiàng)目前前后后跑了很久踩的坑不少專門整理一節(jié)出來按問題類型分類寫清楚。6.1 loss不降或突然變成NaNloss不降是最常見的問題。我的排查順序是先看數(shù)據(jù)里有沒有NaN或inf這一步可以通過一行代碼檢查然后看歸一化是否完成如果原始值在幾百上千的量綱直接送進(jìn)模型Transformer的注意力softmax很容易溢出再看學(xué)習(xí)率PatchTST對(duì)學(xué)習(xí)率比LSTM更敏感如果初始學(xué)習(xí)率超過1e-2訓(xùn)練大概率直接飛掉建議先固定到1e-3跑一遍基線再讓貝葉斯優(yōu)化去搜索。loss突然變成NaN大概率有兩個(gè)原因。一個(gè)是梯度爆炸解決辦法是給模型加梯度裁剪max_norm設(shè)1.0比較穩(wěn)妥。另一個(gè)原因是學(xué)習(xí)率調(diào)度策略里出現(xiàn)了過大的尖峰比如one cycle策略的峰值學(xué)習(xí)率設(shè)太高可以在實(shí)現(xiàn)時(shí)限制峰值不超過最大學(xué)習(xí)率的10倍。還有一個(gè)容易被忽略的原因輸入數(shù)據(jù)里某條通道的標(biāo)準(zhǔn)差為0。比如某個(gè)傳感器故障連續(xù)幾天的值恒等于一個(gè)常數(shù)標(biāo)準(zhǔn)化之后變成NaN模型訓(xùn)練自然就崩了。6.2 Patch尺寸與序列長度約束Patch化和序列長度之間的約束關(guān)系我在調(diào)整參數(shù)時(shí)經(jīng)常被繞進(jìn)去。給定序列長度Lpatch長度Pstride Spatch數(shù)量N可以估算為 (L - P) / S 1如果加上末尾填充大約是 (L - P) / S 2。這個(gè)N不能太小否則輸入到Transformer的token數(shù)量太少注意力機(jī)制的優(yōu)勢發(fā)揮不出來。經(jīng)驗(yàn)上N至少應(yīng)該在5到8個(gè)以上。如果序列長度是96我一般建議patch_len從8到16之間選stride從4到8之間選。patch數(shù)量大約在11到23個(gè)之間這個(gè)量級(jí)對(duì)Transformer來說很舒適。如果序列長度更長比如168或336可以把patch_len適當(dāng)調(diào)大到12到24。還有一個(gè)需要注意的地方是patch_len必須能被輸入序列長度大致整除否則末尾padding過多有效信息比例下降。如果發(fā)現(xiàn)未填充patch數(shù)量太少優(yōu)先調(diào)大stride而不是調(diào)大patch_len這樣能在保持patch粒度的情況下盡量維持語義完整度。6.3 貝葉斯優(yōu)化的收斂與過擬合問題貝葉斯優(yōu)化跑著跑著會(huì)出現(xiàn)兩種讓人困惑的現(xiàn)象。第一種是搜索后期目標(biāo)值不再下降反而在某個(gè)區(qū)間震蕩。這通常是搜索空間里某些參數(shù)組合方差太大導(dǎo)致的比如batch_size從32跳到128模型表現(xiàn)波動(dòng)明顯代理模型很難找到穩(wěn)定的優(yōu)化方向。解決辦法是把參數(shù)限制到更窄的合理范圍或者把離散參數(shù)的候選值減少到2到3個(gè)。第二種現(xiàn)象是貝葉斯優(yōu)化找到的參數(shù)在訓(xùn)練集上效果很好但驗(yàn)證集效果變差典型的過擬合。這里要區(qū)分是模型過擬合還是調(diào)參過擬合。模型過擬合表現(xiàn)為訓(xùn)練loss遠(yuǎn)低于驗(yàn)證loss需要加大dropout或weight_decay或者減小d_model。調(diào)參過擬合則是試驗(yàn)次數(shù)過多代理模型在驗(yàn)證集上反復(fù)測試間接把驗(yàn)證集信息泄露給了搜索過程。解決辦法是盡量保證驗(yàn)證集只有一個(gè)固定窗口不要頻繁更換同時(shí)trials數(shù)控制在50到80次以內(nèi)超過之后增益會(huì)明顯遞減。我還發(fā)現(xiàn)一個(gè)隱藏的坑早停的patience在貝葉斯優(yōu)化里會(huì)影響公平性。某個(gè)trial訓(xùn)練特別久模型有機(jī)會(huì)充分收斂另一個(gè)trial因?yàn)閜atience設(shè)置不同提前結(jié)束了。這時(shí)候比較兩者的最終loss就不公平。我的做法是每次試驗(yàn)固定使用相同的早停配置并且統(tǒng)一epoch上限。7. 跑通之后的效率觀察與擴(kuò)展思路模型跑通之后我對(duì)整體性能和擴(kuò)展方向做了整理這里一并說說。7.1 整體效果與時(shí)間開銷最終固定下來的配置大致是d_model128n_heads8e_layers3patch_len16stride8dropout0.1學(xué)習(xí)率約2e-3batch_size64。在這個(gè)配置下電負(fù)荷、熱負(fù)荷、冷負(fù)荷三通道24步預(yù)測的RMSE對(duì)比原始LSTM基線大約下降了15%到20%。其中熱負(fù)荷提升最明顯因?yàn)闊釕T性帶來的長程依賴恰好是PatchTST注意力機(jī)制的強(qiáng)項(xiàng)。冷負(fù)荷提升相對(duì)小因?yàn)槔湄?fù)荷受瞬時(shí)輻射影響較大而氣象預(yù)報(bào)本身的誤差會(huì)限制預(yù)測上限。訓(xùn)練時(shí)間方面序列長度96、patch數(shù)量13左右、三通道展開后總共39個(gè)token一個(gè)epoch在中等規(guī)模數(shù)據(jù)集上只需要幾秒50個(gè)epoch加早停大概在3到5分鐘完成一次試驗(yàn)。60次貝葉斯優(yōu)化試驗(yàn)算上剪枝節(jié)省的時(shí)間總耗時(shí)在2到3個(gè)小時(shí)左右。這個(gè)成本對(duì)應(yīng)用來說可以接受比起手動(dòng)調(diào)參一遍遍試要高效得多。7.2 還可以怎么往下走如果想把這套方案繼續(xù)深化有幾個(gè)方向我個(gè)人覺得很有價(jià)值。第一個(gè)是把模型輸出從確定性預(yù)測改成概率預(yù)測具體做法是在預(yù)測頭加一個(gè)分布層輸出均值和方差損失函數(shù)換成負(fù)對(duì)數(shù)似然。這樣得到的預(yù)測不僅有數(shù)值還有置信區(qū)間對(duì)調(diào)度決策來說參考意義更大。第二個(gè)方向是引入更細(xì)的外生變量比如電價(jià)、設(shè)備啟停狀態(tài)、天氣預(yù)報(bào)的不確定性。綜合能源系統(tǒng)調(diào)度往往和現(xiàn)貨市場電價(jià)強(qiáng)相關(guān)把電價(jià)作為輸入通道加入模型可以進(jìn)一步挖掘負(fù)荷對(duì)價(jià)格信號(hào)的響應(yīng)。第三是做多任務(wù)學(xué)習(xí)的變體不只預(yù)測負(fù)荷還同時(shí)預(yù)測光伏出力和儲(chǔ)能狀態(tài)。因?yàn)檫@些變量的變化規(guī)律和負(fù)荷有耦合聯(lián)合建??赡軒眍~外的泛化提升。最后還想提一個(gè)工程上的小技巧模型訓(xùn)練完保存 checkpoint 時(shí)記得把scaler也一起保存。部署上線時(shí)新數(shù)據(jù)的歸一化必須用訓(xùn)練時(shí)保存的scaler否則線上輸入分布和訓(xùn)練分布不一致預(yù)測效果會(huì)莫名其妙地變差。我在項(xiàng)目里因?yàn)檫@個(gè)問題上線后翻過一次車排查了半天才發(fā)現(xiàn)是新寫的預(yù)處理腳本沒有復(fù)用原有scaler造成的。踩過那次坑之后我把scaler納入模型artifacts統(tǒng)一管理之后的迭代就再?zèng)]出過類似的問題。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本精品。999| 天天日人人| 久热这里只有精品6| 丁香六月 婷婷六月| 免费超碰在线观看| 97在线碰| 91精品久久久久、久五月天| 99re久热只有精品6在线直播| 五月停视频天堂| 五月天停婷基地| 99热这里只有精品268| 91丨九色丨国产| 六月丁AV| 麻豆123区| 久久一品区| 色婷婷香蕉| 开心婷婷五月| 俺去也五月天婷婷| 天天成人综合视频| 六月综和久久| 国产亚洲色婷婷99精品| 九九色影视| 这里只有精品96| 丁香五月婷婷色| 99爱视频免费看| 五月婷丁香花| 九九九这里只有精品| 欧美三级韩国三级日本三斤| 五月婷婷视频| 97在线观视频免费观看| 粉嫩AV久久一区二区三区| 婷婷色五月激情强奸四射| 色五月激情五月丁香五月婷婷啪啪综合 | 99精品视频播放| 99热99久久| 精品一区二区三区四区五区六区介绍 | www.激情五月天.com| 亚洲婷婷五月天| 国产午夜精品一区二区| 六月撸婷婷| 五月激情五月婷婷五月天在线| 六月色日韩| 啪啪 综合网| 超级碰 久久9| 任你干嘛免费视频播放| 99er热精品视频| 久久91久久精品久久| 福利视频在线播放| 激情内射人妻1区2区3区| 丁香婷婷基地| 六月婷婷五月丁香| 中字幕视频在线永久在线观看免费| 婷婷五月天视频| 五月天久久综合婷婷丁香| tingtingzonghewang| 天天肏屄夜夜爽| 丁香五月,开心五月,成人婷婷| 久久久久网站| 色色色色五月天| 国产午夜精品一区二区| 996er热| 欧美日韩成人在线观看| 丁香五月婷婷色情综合| 色五月综合网| 二人电影免费版在线观看| 热99精品视频| 婷婷天堂站| 91色在线/日韩| 成人av在线网站| 2017人人操| 哇嘎成人久久| 久久综合99| 精品激情| 热久久视频99| 夜夜操夜夜操| 色婷婷丁香五月| 色婷婷导航| 婷婷久久久| 久久激情综合| 无语停婷丁香网| 99丝袜精品视频网站| 十区av| 婷婷人妻激情| 激情五月天婷婷图| 人人干天天操五月丁香| 日韩AV大全| 五月丁香六月婷婷综合伊人| 26uuu精品国产| 激情五月天网站| 色99在线视频| 婷婷香蕉精品| 9精品视频在线观看| 日本系列_4页_777FP| 日本三级日本三级三级人妇四虎| 色综合爱综合| 六月婷婷综合| 色婷婷五月天| 久久婷综合网| 麻豆科斗777| 777丁香六月青青草婷婷综合久月| www.狠狠狠.com| 99色一| 婷婷五月伦理网站| 色婷婷视频在线| 激情av| 又大又粗九一在线| 五月婷婷丁香| 黄色AAAAA| 欧美乱码国产一级A片| www色色com| 亚洲日韩一页精品发布| 天堂综合久| 婷婷成人网五月天| 婷婷va| 五月婷婷婷婷| 色色综合院| 久久久五月天| 婷婷激情视频欧美视频自拍视频欧美剧| 久久婷婷综| 天堂无码人妻精品AV一区| 久久99网| 日日爽日日操| 欧美精品999| 大地9中文在线观看免费高清 | 久久精彩综合视频| 五月六月婷婷| 无人区码一码二码三码医生系列| 亚洲在线综合| 久久伊人五月天| 99成人| 久热天堂| 丁香五月天五码婷婷| 色哟哟www| 精品二区| 婷婷在线五月天观看| 婷婷六月综合激情| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 五月天丁香色色| 中文字幕,综合,91| 天天 日综合| 中文AV在线观看| 国产美女无遮挡裸体毛片A片| 玖玖99精品视频| 五月婷婷就去色| 9久热在线视频精品| 日本美女97在线视频| 五月丁香综合| 五月丁香六月婷| 日韩中文字幕| 婷婷午夜精品久久久| 俺去也在线www色官网| 日韩操人| 综合视频久久| 丁香 久久| 猫咪伊人AV| 精品五月丁香| 婷婷色六月| 97碰碰在线观看视频| 狠狠狠狠狠草| 色婷婷91激情小说| 这里只有精彩视| 狠狠操狠狠| 99ri精品| 99热这里只有精品5| 亚洲五月激情| 婷婷六月色开| 综合www色| 久久九九大香蕉电院| www.超碰在线| 丁香五月天人体| 色婷婷色99国产综合精品| 亚洲AV成人无码电影| 五月开心深深爱激情综合| 日产精品久久久久久久蜜臀| 久久狠色噜噜狠狠狠狠97| 日本三级日本三级99| 人人插9| 性日本精品| 国产毛片精品一区二区色欲黄A片| 丁香五月婷婷久久综合激情网 | 天天综合社区| 狠狠狠狠青草| 色无码| 亚洲第一影院高清无码网站| 久久婷婷五月综合| 五月 成人 婷婷| 伊人激情影院| 日本啪啪天堂| 久草五月| site:publishdd.com| 色婷婷成人做爰A片免费看网站 | 六月丁香婷婷综合在线| 亚洲午夜电影| 色欲一区二区三区精品A片| 九九色99| 日本人妻伦在线中文字幕 | 黄色av高清| 五月婷婷开心六月激情小说| 丁香婷婷色色| 日本精品在线噜噜噜| 五月香婷婷| 天天操天天爱天天日| 色色色色色色色色综合网| 色婷婷丁香五月| 久热九九| 激情五月天www| 97色一二三| 99视频这里有精品免费观看| 久久99精品日本| 玖玖五月丁香| 玖玖@三月天天丁香婷婷| 五月婷婷花| 91趴趴| 97热在线精品| 久久这里在精品视频| 免费看欧美成人A片无码| 婷婷丁香水多多视频| 大香焦啪啪啪| 99狠狠色| 欧美成人网婷婷综合在线| 亚洲九九99精品视频在线播放| 日日操夜夜骑| 色狠狠五月天| 91熟妇大香蕉| 囯产精品久久欠久久久久久九大| 五月色天情| 青青草轻轻操| ztEJj| 五月天婷婷AV| 五月天伊人日日噜影片AV| Caoub青青超碰 | 五月婷婷激情四月| 久久久五月天| 久久婷婷网| 亚洲婷婷丁香五月在线| 色色色五月| 激情九月婷婷| 无码 色| AA久久| 中字幕视频在线永久在线观看免费| 精品亚洲VA网站| 天堂色婷婷| 成人中文网| 五月丁香六月情| 俺来也综合网精品一区| 狠狠色婷婷7777久综合| 丰满少妇乱A片无码| 色爱99| 婷婷五月免费观看| 99热e| 爱99干99| 五月婷婷六月丁香| 色婷婷综合亚洲| 五月激情丁香五月宗合| 九月丁香亭亭| 五月丁香六月婷婷久久| 这里只有精品无码| 丁香五月天精品| 久久久久98| www.9操| 久久丁香五月天| 欧洲婷婷五月天| 五月天之色情综合网| 色色色五月婷婷| 亚洲综合五月天婷婷| 狠狠操天天操| 97色婷| 天堂在线婷婷| 日本玖玖在线| 五月激情综合网婷婷| 色九月婷婷| 99无吗| 国内婷婷丁香社区在线播放| 亚洲色婷婷| 九九激情视频| 91综合网| 99热午夜精品| 五月婷婷在线视频观看| 99re这里只有精品视频了| 色播五月丁香婷婷| 五月婷婷成人网首页| 色欲婷婷五月天| 91se在线观看| 成人av观看| 任你干线上免费视频有3吗| 免费视频WWW在线观看网站| 综合网五月| 4399在线日本A片| 99视频在线观看网址| 五月天色婷婷基地| 婷婷色狠狠| 五月丁香欧美综合免费视频| 九九九九九九九热| 丁香五月婷婷激情中文| 九九热在线视频观看| 婷婷五月天激情综合网| 精品,99| 丁香五月天激情综合网| 婷婷日本色| 五月婷婷香蕉| 欧美日韩成人h| 欧美日本韩国亚洲| 色婷婷狠狠久久综合五月| 超碰人妻公开在线| 五月做爱| 色色色色色五月| 亚洲国产网站| 五月丁香六月婷婷啪啪| 2015好吊操| 久久五月天色婷婷| av在线超清中文| 人人摸人人操人人爽| 九九综合色综合| 国产成人综合在线| 五月婷婷丁香啪啪| 啄木鸟黑丝一区二区| 思思热在线视频观看精品| 思思热久久阴99| 五月天丁香啪啪综合| 青青.com| 婷婷五月天亚洲精品| 美国不卡视频| 丁香婷婷六月天| 久9热在线视频| 九九综合伊人| 狠狠狠狠狠狠草| 好好干av| 久久色五月天| 久久综合五月天| 欧美搡BBBBB摔BBBBB| 97亚洲视频在线| 五月停视频天堂| 俺去婷婷 丁香| 99色| 99热香港| 五月激情小说网| 婷丁香五月天| 五月婷婷激情| 久久精品五月| 五月伊人综合| 五月天婷婷爱| 亚洲国产精品成人va在线观看| 婷婷五月伦理| 狠狠爱综合| 色五月婷婷五月天| 97碰碰电影| 成人精品在线| 五月草影视| 久久丝袜婷婷| 大香蕉220| 五月婷婷色色网址| 亚洲av电影在线| 日本婷久久| 欧美激情xxxXX| 五月天开心激情综合网| 久/久精品99看9| 国产av天天插天天操天天爽| 九九99免费理论| 91啪级电影| 久久人妻精品| 秋霞av吧| 色九月| 婷婷五月天资源| 色狠狠综合网| 久久38视频| 欧美午夜乱妇午夜福利| 亚洲旡码| 日夜夜久久| www.丁香五月| 人妻五月天激情开心网| 天天噪夜夜爽| av人人干| 天天日夜夜欢| 亚洲色模骚货| 成人精品视频99在线观看免费| 六月色激情| 思思热性操| 色婷婷婷婷| 婷婷激情六月中文| 狠狠色噜噜| 日韩一级片| 日本强伦片中文字幕免费看| 久久机热这里只有精品| 五月天婷婷Av| 久热人妻| 99久久九九| 丁XX 成人| 色婷婷影视| 色九月综合| 激情综合无码| 激情五月天影院| 五月开心网| 色色欧美色色色| 99九色视频在线观看| 色五月综合激情| 狠狠穞A片一區二區三區| 久草五月天| 这里只有精品视频在线看| 五月天狠狠| 99九九中文字幕视频| 婷婷丁香五月亚洲综合网在线视频观看| 中文字幕在线免费观看视频| 99精品一二三四视频| 女力报到正好爱上你| 婷婷九月| 玖玖资源站国产| 区美毛片子| 我想看国产大学生口爆吞精的视频| 综合逼五月激情婷婷| 五月六月丁香婷婷在线观看| 日日夜夜天天| 九九视频网| 久热9| 天堂爱啪啪| 开心激情播播五月天| 疯狂做受XXXX高潮A片| 亚洲人妻av| 色色综合激情| 日韩黄色电影| 激情丁香九九五月综合网| 一本狠婷婷综合| 狠狠干青青草| 国产亚洲99久久精品熟| 色久五月天| 欧美日韩成人h| 成人婷婷色五月天| 九九婷婷激情综合网| 伊人五月天在线| eeuss人妻| 色婷婷亚洲综合网站| a网站免费观看| 婷婷成人基地| 日本AAAAAAAAAAAAAA片| 98热精品| 99在线视频播放| 99爱爱| 五月综合亚洲色| 丁香五月婷婷在线| 亚洲婷婷五月草久| 丁香五月花影院| 激情综合色婷婷啪啪六月天| 97久操| 99热国产免费| 草草操操| 在线观看免费视频| 丁香五月婷婷色| 成人国产网站| 在线不卡视频| 狠狠干2007| 五月丁香婷婷欧美| 欧美五月丁香| 噜噜久| 丁香六月av| 五月婷婷欧美| 久久新地址| 影音先锋秋秋五月婷婷| 国产精品99久久久久久久女警| 丁香五月色| 婷婷丁香综合色AV| 丁香五月综合| 婷婷色色综合激情| 亚洲视频另类| 欧美黑人巨大猛烈cuckold| 99国产精品久久久久久久久久久| 亚洲激情97五月天| 成人婷99最新| 久久一级AV| 天天摸天天做天天爱天天爽| 狠狠综合| 欧美一级毛卡片无码| 五月天淫乱视频| 99热精品在线| 婷婷五月激情小说| 狠狠综合网| 99爱在线| 五月大香蕉| 欧美毛片www| 久久日韩婷婷五月| www色色com| 婷婷五亚洲| 久久女人天堂| 亞洲自怕| 26UUU精品一区二区| 99热精品一区| 武则天精品久久| 久在线88综合| 97碰啪啪| 色导航色婷婷五月天在线观看| 大战熟女丰满人妻AV| 天天天综合网| 五月天开心色情网| 99久久99九九99九九九| 日韩成人电泉AV| 五月天激情影院| 热久视频| 婷婷美女精品视频| 久草性爱| 久久ri精品视频| 色五月丁香婷婷| 天天做天天爱天天综合| 久一这里有精品国产| 一操久久| 9l视频自拍九色9l黑人| 97色伦另类图片小说视频| 丁香婷婷大香蕉| 婷婷五月激情四月综合| 午夜精品777| 日本五月天一页| 爽极品色| 99精品偷自拍| 大天天伊人| 欧亚洲在线高清视频| 日日日,com| 热99这里只有精品视频| 婷婷成人五月天| 青青草激情网| 色五狠狠| 丁香六月成人网| 天天综合天综合久久网| wwwss在线观看| 激情婷婷久久| 色色色色网站| 亚洲狠狠干| 天天日天天做天天舔| 99久久.www| 亚洲深喉AV| 六月婷婷色综合| 97操碰在线视频| 丁香六月久| 天天综合亚洲综合| 欧美韩日AAA网站| AV伊人青草丁香六月| 九月婷婷色色| 波多野结衣AV无码Porn| 啪啪五月综合| 91日综合欧美| 久热99久热| 九九无毛| 色色热日| 激情文学 综合 九月| avh片在线观看| 久九男女天堂| 久婷狼色诱惑在线| 91无码高清| 九九色热| 色激情五月| 人人色婷婷| 99国产在线| 日日噜狠狠色| 婷婷婷婷婷开心无码播放| 亚洲欧美另类在线23p| 色婷婷五月天小说网| 热久久视频99| 看久久性爱视频| 亚洲五月情| 99热网址| 日日噜狠狠| 色狠狠色| 青草性爱视频| 久热中文字幕在线线观看 | 成人亚洲精品| 狠狠色综合网站久久久久| 草草操操| 五月天激情婷婷| 99九九久久| 国产精品久久久久久久久久 | 综合色激情| 五月丁香黄色视频| 国产精品爽爽久久久久久| 9有码中文| 日韩成人综合网| 天天爽天天日| 婷婷综合性爱网| 可以免费观看的av| 激情伊人| 天堂无码人妻精品AV一区| 亚洲精品久久久无码| 狠狠ri| 久久天堂女人| 91ncom.色| 丁香综合伊人| 久热播这里只有精品| 婷婷六月激情| 精品久久艹| 性做爰1一7伦| 国产免费一区二区三州老师F1F1……| 成人在线不卡| 另类图片 五月激情| 狠狠激情五月天| 玖玖99免费视频| 欧美一线视频| 丁香五月六月综合激情| 91九色视频| 亚州色色色| 久婷婷五月丁香在线观看| 色五月综合网| www.五月丁香| 饮料下药迷倒漂亮女同事强干| 国产AV国片偷人妻麻豆| 草榴视频网| 伊人五月婷婷| 五月天成人在线视频网站| 九九99精品视频在线观看| 夜夜嗨一区二区三区直播内容| 久热大香蕉| 色五月婷婷777| 伊人狠狠色婷婷综合丁香一区| 青草网在线观看| 五月激情网综合| 97色久| 202丰满熟女妇大| 色九九中文字幕| 五月天婷婷免费| www,婷婷五月天777me,com| 久人操| 丁香激情网| 97超级碰碰碰| 6080av| 超碰女人天堂| 在线综合啪| 五月丁香美女| 91肏| 婷婷五月天最新网址| 97精品综合| 日本婷婷色日| 色www久视频| 久久婷五月婷| 丁香五月婷婷在线| 5月丁香美女影院| 久操大香蕉| 五月婷婷丁香婷婷| 99re欧美精品| 夜夜涩涩涩| 99热综合网| 五月色情婷婷| 国产熟女日日骚五月丁香爱| 九九色99| 五月天激情网站| 婷婷久久精品| 五月丁香操亭亭网| 热91久| 激情网站五月| 97资源碰碰| 丁香六月婷婷开心婷婷网| 天天cha成人综合网| 九九热最新| 久久婷丁香五月| 丁香五月综合在线播放 | 日韩色五月| 免费观看日韩成人av| 婷婷丁香一月| 色婷婷成人做爰A片免费看网站 | 99综合熟女| 久8色色| 国产精品久久久久久久久久| 爽tv | 久久五月天综合视频网站| 97色热| 日韩无码91| 华人在线免费| 超碰免费电影| 天天摸色吧天天摸色吧| 久久五月丁香综合| 五月丁香激情婷婷综合| 黄色中文字目| 五月天激情无码高清| 四川BBB搡BBB爽爽视频| 五月天婷婷久色| 97色色色色色| 热久久这里只有三级视频| 五月天中文网| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 丁香网站| 就爱操www com| 九九热99热| 色狠狠色噜噜AV天堂五区| 久久五月天精品视频| 99热九九热| 五月丁香六月久久| 欧美婷婷| 激情黄色小说五月天| 久草婷婷在线| 特级西西4444www无码| 亚洲AV成人无码电影| 九九热视频这里只有精品| 色婷九九九| 色色色婷婷五月| 日韩成人电影AV| 亚洲色综合| 色青青视频| 亚州第一黄网| 偷偷操99| 91Chinese在线| 婷婷色综合| 五月激情站| 婷婷婷婷婷婷婷婷| www.maotanji.com| 综合久久99| 久久XX| EEUSS鲁片一区二区三区| 六月丁香啪啪| 九九这里只这里只有精品| 91|疯狂丨高潮丨对白| 婷婷五月天偷拍| 亚洲婷婷五月| 婷色五月| 天天久综合网永久入口17v| 99热在线精品观看| 99热九九在线| 黑人熟妇一区二区三区| 亚洲热综合| 久久机只有这里精品| 黄色五月婷| 五月婷婷综合激情网| 丁香五月六月婷婷自拍| 蜜桃婷婷狠狠久久综合| 天天色视频| 五月婷婷丁香av| 91人人操| JAPANRCEP老熟妇乱子伦视频| 99热在线观看亚洲区| 亚洲小电影在线观看黄999| 99在线观看| 色色色9| 亚洲色五月| 婷婷五月天天天日日夜夜| 丁香六月天AV| 婷婷五月天综合久久| 日本色道视频网站| 欧美色激情四射| 欧美性爱一区| 狠狠色情婷婷| 久久99精品久久久久久噜噜| 少妇人妻偷人精品无码视频新浪| 91AV视频| 六月丁香中文字幕| 九月丁香婷婷| 99综合色| 欧美天天综合网站上去吧| 婷婷综合日本| 熟惀91九色在线| 丁香五月激情综合在线观看| 婷婷九月在线| 1024操逼| 99爱在线视频| 激情网五月天| 五月天四色房丁香| 99九九精品| 婷婷色一二三区波多野结衣| 免费看欧美成人A片无码| 碰97久久| 狠狠色综合网站久久久久| 丁香五月天激情婷婷丁香六月| 丁香五月www| 疯狂做受XXXX高潮A片| 激情亚洲婷婷| 丁香五月激情在线| 五月社区婷婷激情| 天天久久66xxx| 91精品又长又大又粗又爽又猛| 久久综合26p| 日韩av干| 激情综合网五月激情| www.天天干| www99久久| 六月色播| 91精品国产综合久久久不卡电影| 午夜丁香| 久99综合婷婷| 99视频在线观看视频| 97婷婷丁香五月| 色婷婷狠狠18禁| 少妇高潮一区二区三区99欧美| 婷婷五月欧美综合| 专区无日本视频高清8| 极品人妻VideOssS人妻| 色婷五月天| 日本一毛片| 丁香婷婷性爱| 五月 激情视频| 色五月婷婷五月天激情综合| 亚洲婷婷综合视频| 特黄三级又爽又粗又大| 性爱激情久久| 色婷婷精| 日韩AV在线免费| 亚洲九九99精品视频在线播放| 国产亚洲精品久久久久久郑州 | 四色五月婷婷| 九色综合网| 爱久久小说下载网| 亚洲乱码日产精品BD| 五月天电影网| 国产精品美女久久久久AV超清| 国产精品一区在线观看你懂的| 99热这里都是精品| 色吧综合网| 91九色在线| 五月天色婷婷视频| 91日本在线观看| 97五月天婷婷午夜| 色偷偷AV亚洲男人的天堂| 男人天堂亚洲综合| 亚洲妇女熟BBW| 伊人超碰| 成人国产网| 天天爽天天爽视频| 99久久精品国产色欲| 激情综合网五月| 丁香五月开心亚洲| 激情久久综合网| 色色五月婷婷久久| 超碰免费在线| 色国产五月| 色狠狠色噜噜噜a天堂一区| 丁香六月婷婷激情| 久9久成人精品视频| 婷婷九月丁香| 欧洲色| 亚洲妇女熟BBW| 久久九精品| 午夜天堂啪啪| 久久曰曰| 五月天婷婷色播综合在线| 久久丁香婷| 免费播放片大片| 亚洲va欧美| 777精品成人a v久久| 99re最新地址| 婷婷丁香九月| 99激情| 69天堂99| 超碰成人av| 婷婷色色狠狠| 丁香五月开心婷婷| 熟女激情网| 禁欲电影完整版在线播放| 97色精品视频| 日本色天堂| 天天粽合合合合| 激情五月色播五月| 99精品久久| 大地资源色婷婷视频在线| 五月丁香 狠狠爱| 色一情一乱一乱一区91Av| 天天橾日日橾夜夜橾17| 五月丁香久人妻中文| 狠狠操狠狠| 久久婷婷婷婷伊人| 婷婷五月天激情电影| 国产精品一区在线观看你懂的| 99精品偷自拍| 九九九九大香蕉| 99久久99热| 婷婷丁香十月| 午夜大香蕉| 亚洲免费在线观看岛国| 激情婷婷狠狠干综合| 97碰碰视频| 管管補管管紱| 久久久久久97| 色婷婷伊人激情在线观看| 婷婷少妇激情| 337午夜福利| 五月婷丁香| 碰超在线九色| 欧美日韩大黄| 五月综合激情| 亚洲免费成人电影AV| 五月激情丁香五月| 播五月,色五月,开心五月播放器| 99视频内射三四| 亚洲婷婷婷| 五月婷婷婷婷婷婷艺术| 久99久精品| 狠狠狠狠狠狠草| 狠狠色婷婷在线| 国产精品色色| 免费视频1区| 久久视这里只有精品| 国产综合A片| 婷婷大香蕉| 成人AV中文字幕| 丁香五月婷综合网| 综合五月激情| 26uuu欧美亚洲日韩| 欧亚色色| 91日韩在线| 99re在线视频| 4399欧美另类视频| 天堂二区| 婷婷五月五月丁香| 日本丁香五月| 色爱综合五月| 婷婷丁香激情五月天色色| 超碰99在线观看| 午夜九九九九九九九九九九九九九| 在线五月色播| 激情五月天 婷婷| 欧美在线视频免费播放| 91综合国免费久入| 色无码| 色九月综合| ji'qing'luan'ren'lun| 激情五月天社区| 色噜噜夜夜夜综合网| 天天色综网| 久777| 97色伦另类图片小说视频 | 婷婷的色色五月天| 九九精品系列| 情婷婷五月天| www,婷婷,com| hd五月婷婷在线| AV九九| 色五月婷婷激情综合网| 久久综合九九| 久久精典| 9久久久久久久久久久| 婷婷五月综合色中文字幕| 丁香五月天天高清在线| 97色精品视频| 久热只有这里精品| 伊人婷婷99热精品| 天天操天爱综合| 99热66| 玖玖婷婷视频| 婷婷五月天视频亚洲| 婷婷天堂伊人| 九九综合久久| 婷婷久久欧美| 99热在线观看精品| 久久久婷婷色五月资源网| 久久99性爱视频| 国产三级在线播放| 国产成人99久久亚洲综合精品| 啪啪视频99| 99热这里只| 影音先锋男人资源站一区二区| 99热只有| 激情床戏| 色综合色色色| 五月丁香婷婷激情在线视频| 亚洲精品国产A久久久久久| 丁香婷婷五月天校园春色| 五月激情婷婷开心| 亚洲色色五月| 五月丁香操婷逼| 五月婷婷干干干| 无码人妻丰满熟妇奶水区码| 深爱激情网噜噜色| 婷婷干六月综合旧址| 色五月婷婷五月天| 五月丁香婷婷综合网| 91丨九色丨国产打屁股| 丁香五月天欧美在线| 91VIP在线观看| 色婷婷激情四射视频| 高清不卡一区| 国产精品99久久久久久久女警| 久久人妻系列| 亚洲视频无| 中文字幕视频在线播放| 丁香六月婷婷开心| 五月伊人91| 五月花婷婷| 噜噜噜噜噜久| 五月天婷a在线| 五月婷婷色| www.maotanji.com| 日韩在线aaa| 9有码中文| 久久久久人妻| 国产精品色婷婷AV综合色色| 丝袜激情网| 色五月激情网| 这里只有精品视频99| 中文字幕AV在线播放| 色欲一区二区三区精品A片| 色播五月婷婷五月| 综合婷婷| 日本成人内射| 狠狠久久婷五月| 婷婷丁香成人在线视频| 97操男人的天堂| 成人看片网站| 九九热视频免费的| 碰人人97| 九九这里都是精品| 亚洲综合成人网站| 99无码视频| 五月丁香色| 婷婷丁香五月天综合AV| 十二区无码| 99视频精品在线| 国产午夜精品久久久观看| www久久99| 综合网精品99| 久久伊人五月天| 26uuu精品国产| 五月婷六月综合在线观看| 99丝袜精品视频网站| 五月综合视频| 六月婷婷五月丁香| 99热这里只有精品96| 9l视频自拍9l九色9l成人| 麻豆观看夏晴子| 日韩啪啪视频| 播四月婷婷六月丁香| wwW天天干| 九九无码| 久久您您综合网| 午夜美女人啪最红院| 色五月丁香五月| 婷婷五月AV| 色综合五月天| 久久久久久久久久久44| 色婷婷五月天视频在线| 激情五月四色| 亚洲婷婷激情888精品久| 人人摸人人| 丁香婷婷人妻| 丁香五月婷婷六月| 亚洲综合在线视频| 欧美色婷婷| 五月天婷婷基地| 久月婷婷| 新97人人上人人| 欧美精品999| 97人人操在线| 另类在线| 日本色噜| 少妇人妻偷人精品无码视频新浪| 日韩无码一区二区三区四区| 五月婷婷影院| 色婷婷婷综合五月天| 九艹在线| 五月婷丁香久久久| AV色五月婷婷| 亚洲成人av在线| 热996精品在线观看| 97啪在线观看视频| 欧洲第一无人区观看| 97精品综合| 天天综合网91| 天天日 天天草| 亚洲熟女色| 啪啪色区| 色色婷婷色色| 9|在线观看视频| 95精品区一区二| 日日夜夜干| 色五月琪琪| 婷婷丁香宗合888| 色色色综合网| 久草热在线视频| 五月婷亚洲精品| 99热这里只有是亚洲国产| 99这里只有精品在线观看| 激情小说五月天中文字幕| 亚洲激情99| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 99亚洲欧洲| 亚洲五月天综合| 丁香五月第九色| 午夜丁香六月婷| 日韩AAA| 日韩成人精品一区久久久久| 千人斩操逼| 色婷婷成人在线| 婷丁香久综合| 婷婷五月天黄色| 91九色国产| 五月婷婷无码| 色综合色综合婷婷热| 综合五月草| 九九热这里有精品23| 五月色丁香婷婷综合| 色五月亚洲| 色色色99韩| 色久99| 久久草大香蕉| 丁香五月激情视频在线| 欧美月久久| 91狠狠综合久久| 亚洲成人婷婷| site:jszngf.com| 日本毛片内射| 麻豆AV一区二区三区| 色五月丁香91| 五月婷婷性爱视频| 丁香久久五月婷综合| 激情久久五月天| 色五月激情问网站| 先锋男人99资源| 五月天狠狠草| 99爱视频| 五月婷婷婷| 精品夜夜澡人妻无码AV| 九九操屄| 操操熟女| 丁香六月狠狠干| sesesesezonghe| 青草视频在线蜜臀| 亚洲亚洲永久无码777777| 人。妻久久| 999热在线视频| 亚洲精品视频在线| 九九热狼人| 91欧美| 久久久天堂国产精品女人| 五月天婷婷色综合| 色久影院| 日操| 天天做天天要天天爽| 99性爱精品| 久9免费视频| 天天爽夜夜操| 99欧美三级视频| 狠狠干狠狠色| 丁香五月23111| 91丨九色丨熟女丰满| 欧美成人精品A片免费一区99| 中文AⅤ大全| 人人九色| 性爱网久久| 色久综合天天做视频| 亭亭色网| 日韩丰满少妇无码内射| 丁香五月婷婷激情完整版| 丁香五月婷婷亚洲人| 五月成人网天天| 欧洲亚洲午夜| 中国丰满熟女A片免费观| 9999综合99综合人| WWW,激情五月天,COM| 激情五月婷婷丁香综合网| 激情九月婷婷| 99久久超级| www久| 色噜噜婷婷| 五月天婷婷综合网| 视频1区2区| 丁香五月天激情综合网| 久99热| 久热精品在看| 激情激情激情网| 天天射影院| 亚欧州精品视频| 日本五月婷| 欧美顶级少妇做爰HD| 久久综合婷婷| 成人免费高清在线播放| 91麻豆国产三级精品福利在线观看| 九月婷婷综合| 五月婷婷成人| 激情第四色| 婷婷五月激情欧美大胆视频| 久久婷五月天| 色色色色热| 综合色在线| 成人色五月天婷婷| 色五月成人| 99热最新国内| 久久这里面只有精品视频| 91ncm视频| 九九中文色色| 5月婷婷6月丁香aV| 色色色国产| 97综合视频在线| 五月丁香综合精品欧美| 精品99这里有| 99久热在线精品| 日本情色一区二区| 激情都市五月天| 大香蕉久久| 五月天啪啪视频| www天天色天天射| seuuu婷婷| 狠狠va| 开心五月激情网| 伊人久久大香线蕉av一区| 婷婷五月天com| 狠狠干天天日| 玖玖在线| 五月天激情婷婷| 五月天色欧美| 人人操人人爱丁香五月| 成人免费120分钟啪啪| 国产亚洲精品人人| 久久婷婷五月综合| 伊人网碰碰| 人人摸人人澡人人| 婷婷五月丁香99| wwccc久久久| 欧美韩国日本| 亚洲综合激| 婷婷激情综合| 婷婷色激情网| 日日夜夜婷婷| 激情av| 色婷婷欧美| 99在线资源| 超碰猛烈的性猛交| 亚洲色婷婷五月天| 久久人妻www| 高清av在线国产| 91超级碰在线视频| 五月天堂六月丁香亚州中文字幕久久| 欧美性爱一区| AV在线大香蕉| 久久婷婷伊人| 五月丁香啪啪| 欧美综合激情五月丁香| 国产露脸150部国语对白| 影音先锋 婷婷| 天啪天啪天啪天啪| 婷婷五月天六月丁香| 中文字幕综合| 亚洲热视频| 丁香五月成人论坛| 久久视9精| 婷婷综合网| 日本久热| 99热这里只有在线| 第1影院之五月婷婷| 综合性爱网| 丁香婷婷激情综合五月激情| 五月丁香啪啪啪| 天天五月情| 六月婷婷香蕉| 99久久这里只有精品| 天天狠狠色噜噜| 亚洲无码激情| 丁香五月香蕉| 99热这里只是精品| 色色五月综合| 79精品视频在线观看,| 久久久婷丁香五月| 六月丁香天堂| 五月在线| anquye五月| 国内久久亭亭| 久久这里有精品| 婷婷五月天性| 五月婷婷九| 99久久婷婷国产综合| 日本欧美国产| 97在线刺激| 中文字幕按摩做爰| 五月丁香性| 欧洲永久精品| tingtingseav| 97干97色| 99视频这里只有久久精品| 婷婷色吧| 粉嫩AV久久一区二区三区| 青草五月天| 69堂午夜视频最新地址| 91久久人人操| 丁香五月五月婷婷| 日日舔夜夜操| 丁香五月婷婷六月婷婷| 97人人操人人拍| 97色色色| 天天色视频|