日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人工智能 > pytorch >内容正文

pytorch

学习分享——基于深度学习的NILM负荷分解(一)对DL的看法准备工作

發(fā)布時(shí)間:2023/12/14 pytorch 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学习分享——基于深度学习的NILM负荷分解(一)对DL的看法准备工作 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

好啦,我來(lái)填坑啦哈哈

經(jīng)過(guò)了幾個(gè)月的對(duì)深度學(xué)習(xí)的學(xué)習(xí)、了解和實(shí)踐,

對(duì)于用深度學(xué)習(xí)來(lái)做NILM的經(jīng)驗(yàn)也是積累了不少。

在此,做以小結(jié)。

在此,感謝~柳柳,小張,小田,小劉的支持和鼓勵(lì)。

話不多說(shuō),下面開(kāi)始!~

一,心里上的準(zhǔn)備

本文開(kāi)始的一系列文字,是基于深度學(xué)習(xí)的方法,來(lái)做負(fù)荷有用功分解預(yù)測(cè)以及電器識(shí)別的。

如果是要用傳統(tǒng)的概率模型,可以參照我之前的幾篇,傳送門(mén):https://blog.csdn.net/wwb1990/category_9655726.html

說(shuō)到深度學(xué)習(xí),行業(yè)內(nèi)俗稱(chēng) “煉丹”,用什么煉(各種架構(gòu)),煉多久(各種參數(shù)),怎么煉(網(wǎng)絡(luò)結(jié)構(gòu)),煉出來(lái)的好不好(標(biāo)準(zhǔn)),,,以上基本沒(méi)有個(gè)統(tǒng)一的說(shuō)法,充滿著不確定性(刺激)

而且很多時(shí)候,是不能用人的理解方式,去評(píng)判訓(xùn)煉出的模型結(jié)果的對(duì)錯(cuò)的。只能說(shuō)是網(wǎng)絡(luò)學(xué)到了我們想讓他學(xué)到的邏輯,或者是學(xué)的不是我們期待他學(xué)的。

我認(rèn)為這是個(gè)心態(tài)問(wèn)題,即結(jié)果的正確率很低,那這時(shí)候要思考的,首先應(yīng)該是,

1,我給網(wǎng)絡(luò)學(xué)習(xí)的材料(輸入),是不是包含我希望他學(xué)的知識(shí)。

舉個(gè)栗子,輸入的數(shù)據(jù)包含了太多的繁雜的信息,那么少量數(shù)據(jù)的學(xué)習(xí),不一定就學(xué)到關(guān)鍵信息。

再來(lái)個(gè)貼切的例子,給網(wǎng)絡(luò)訓(xùn)練時(shí)候,訓(xùn)練紅衣服,藍(lán)褲子,讓它分類(lèi)。它可以分出來(lái)了,但是有可能你再給他一個(gè)藍(lán)衣服的時(shí)候,它認(rèn)成了褲子。

這里面又涉及了兩個(gè)問(wèn)題,
一個(gè)是訓(xùn)練的數(shù)據(jù)集少,如果訓(xùn)的數(shù)據(jù)集包括藍(lán)衣服,那就能將藍(lán)衣服分到衣服里面。這個(gè)是數(shù)據(jù)集的涵蓋范圍,即,如果你也不清楚用什么特征可以區(qū)分分類(lèi)的話,那就盡可能多的給出各種數(shù)據(jù)參數(shù)來(lái)學(xué)習(xí),以及盡可能多數(shù)量和多樣的數(shù)據(jù)。
第二個(gè)是關(guān)鍵屬性的提取,也就是數(shù)據(jù)的預(yù)處理。以上面的例子來(lái)說(shuō),我們?nèi)艘呀?jīng)知道了,通過(guò)顏色是肯定不能區(qū)分衣服還是褲子,那為了避免網(wǎng)絡(luò)學(xué)到這個(gè)(出現(xiàn)上面藍(lán)衣服問(wèn)題),在輸入數(shù)據(jù)的時(shí)候,可以預(yù)處理數(shù)據(jù),歸納到只輸入衣服和褲子的形狀等。

2,它學(xué)習(xí)的方式(網(wǎng)絡(luò)結(jié)構(gòu)和類(lèi)型),能不能總結(jié)或提煉出我希望他學(xué)的知識(shí)。

這個(gè)就很好說(shuō)多了,
循環(huán)網(wǎng)絡(luò)就是提煉一個(gè)序列中變化的規(guī)律,
卷積網(wǎng)絡(luò)就是提取圖中的細(xì)節(jié)中找規(guī)律
全連接網(wǎng)絡(luò)就是從一堆數(shù)據(jù)中找到規(guī)律,
卷積+循環(huán)就是從序列的圖中的細(xì)節(jié)中找到變化規(guī)律
卷積+全連接就是從圖中的細(xì)節(jié)提取的數(shù)據(jù)中找規(guī)律
。。。。
我上面說(shuō)的都是幫助理解的舉例哈,
實(shí)際上與輸入,網(wǎng)絡(luò)層間關(guān)系,以及輸出都有關(guān)。也就是說(shuō)用,舉例:全連接也可以學(xué)習(xí)圖的規(guī)律,也可以找序列變化規(guī)律,但是網(wǎng)絡(luò)結(jié)構(gòu),輸入輸出要做出相應(yīng)調(diào)整。

意思就是,你的網(wǎng)絡(luò)設(shè)計(jì)要能學(xué)會(huì)你需要學(xué)到的規(guī)律。

3,我如何去改進(jìn)它

這方面,也是初入丹道的我一直在追尋的,目前認(rèn)為比較玄學(xué)。

因?yàn)榭磿?shū)也好,看大神們的博客論文也好,會(huì)發(fā)現(xiàn),每個(gè)使用場(chǎng)景,甚至每個(gè)數(shù)據(jù)集,每次訓(xùn)練,都是不一樣的。

因?yàn)樯疃葘W(xué)習(xí)的核心就是隨機(jī),所以沒(méi)有絕對(duì)正確的方法。

但這個(gè)正是大家在同一起跑線的優(yōu)勢(shì),

而大神們也僅僅是比你的經(jīng)驗(yàn)多一些(有用的和失敗的)

只有不斷的開(kāi)拓創(chuàng)新,實(shí)驗(yàn)調(diào)參,改善結(jié)構(gòu),,,各種方案無(wú)所不用其極。才能龜速的提升你的模型~~hhhh

所以不用著急,就算一開(kāi)始正確率比較低,那也不是網(wǎng)絡(luò)的錯(cuò)(網(wǎng)絡(luò)他爹的?)
去思考前兩點(diǎn),然后調(diào)整各種參數(shù)的實(shí)驗(yàn),才能有感覺(jué)~~
(這里我用的是感覺(jué),而不是理性思維推導(dǎo),,因?yàn)榭赡苣阍趪L試了幾次某一個(gè)參數(shù)改大,正確率就降低,然后要放棄的時(shí)候,又多改大了一點(diǎn)點(diǎn),就突然神奇的正確率提升了(匪夷所思就對(duì)了~))

二,技能和環(huán)境上的準(zhǔn)備

前面說(shuō)了一堆對(duì)于深度學(xué)習(xí)的理解哈,下面開(kāi)始本項(xiàng)目的切實(shí)準(zhǔn)備工作。

Python不多說(shuō)了,我這里用的3.6

pytorch,keras 建議二選一,深度學(xué)習(xí)新人建議keras。高手直接用TF或者其他網(wǎng)絡(luò)隨意隨意。(舉個(gè)例子:同一個(gè)網(wǎng)絡(luò),TF要寫(xiě)50行代碼,pytorch寫(xiě)20行,keras寫(xiě)10行。當(dāng)然論靈活性TF原架構(gòu)最高,pytorch其次,keras低點(diǎn)。易用性keras最高,初學(xué)者(我目前= =)能想到的網(wǎng)絡(luò)都能輕松構(gòu)建)

初學(xué)深度學(xué)習(xí)的同學(xué),我推薦一本keras的書(shū),我自己就是1個(gè)月左右的業(yè)余時(shí)間,通讀+所有代碼都是通透了一遍。
(不做廣告,只發(fā)個(gè)豆瓣的,各種網(wǎng)上有書(shū)賣(mài)的都有,自己去查吧長(zhǎng)下面這樣https://book.douban.com/subject/30293801/)

安裝pytorch和TF2的網(wǎng)上頁(yè)多得是,我也有篇文字可以參考(RNN & LSTM 學(xué)習(xí)筆記 —— Anaconda安裝,Python安裝,PyTorch,Tensorflow配置)

Keras的安裝和TF2 GPU版本的安裝在這篇文章(深度學(xué)習(xí) 從零開(kāi)始 —— 神經(jīng)網(wǎng)絡(luò)(三),安裝配置keras,GPU版本TensorFlow,安裝CUDA各種坑~~~)

最好是有GPU的電腦,TF2-GPU版本能讓你時(shí)半功成~~

當(dāng)然,沒(méi)有GPU或者裝CUDA懵圈的同學(xué),那就簡(jiǎn)單安裝普通CUP的TF2吧。就是跑的慢點(diǎn),結(jié)果都一樣。去上一天課回來(lái)就訓(xùn)完了 hhhhh

這里列一下我使用的一些關(guān)鍵庫(kù)的版本:
除了nilmtk用的panda庫(kù)需要0.25.0的以外。其他應(yīng)該是新的就好吧(大概是)




剩下需要的sci,numpy等等的庫(kù)就裝新的就好。

二,數(shù)據(jù)集的準(zhǔn)備

之前用的是REDD的數(shù)據(jù)集,用過(guò)的同學(xué),打印一下全部就知道,中間時(shí)間缺失了一大部分的數(shù)據(jù)、、、

所以這次我們使用UK-DALE的數(shù)據(jù)集 https://ukerc.rl.ac.uk/DC/cgi-bin/edc_search.pl?GoButton=Detail&WantComp=41

而且其中已經(jīng)有轉(zhuǎn)好格式的h5文件,只下載這個(gè)就包含前面的原始數(shù)據(jù)內(nèi)容了。

以上準(zhǔn)備好了

可以開(kāi)始我們《深度學(xué)習(xí)大冒險(xiǎn)》了

To be continued.

總結(jié)

以上是生活随笔為你收集整理的学习分享——基于深度学习的NILM负荷分解(一)对DL的看法准备工作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。