五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

R語言實(shí)現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化|附代碼數(shù)據(jù)

2022-12-27 22:45 作者:拓端tecdat  | 我要投稿

原文鏈接:http://tecdat.cn/?p=6691

最近我們被客戶要求撰寫關(guān)于神經(jīng)網(wǎng)絡(luò)的研究報(bào)告,包括一些圖形和統(tǒng)計(jì)輸出。

神經(jīng)網(wǎng)絡(luò)一直是迷人的機(jī)器學(xué)習(xí)模型之一,不僅因?yàn)榛ㄉ诘姆聪騻鞑ニ惴?,而且還因?yàn)樗鼈兊膹?fù)雜性(考慮到許多隱藏層的深度學(xué)習(xí))和受大腦啟發(fā)的結(jié)構(gòu)

神經(jīng)網(wǎng)絡(luò)并不總是流行,部分原因是它們在某些情況下仍然計(jì)算成本高昂,部分原因是與支持向量機(jī)(SVM)等簡單方法相比,它們似乎沒有產(chǎn)生更好的結(jié)果。然而,最近神經(jīng)網(wǎng)絡(luò)變得流行起來。

在這篇文章中,我們將擬合神經(jīng)網(wǎng)絡(luò),并將線性模型作為比較。

數(shù)據(jù)集

數(shù)據(jù)集是郊區(qū)房屋價格數(shù)據(jù)的集合。我們的目標(biāo)是使用所有其他可用的連續(xù)變量來預(yù)測自住房屋(medv)的中位數(shù)。

首先,我們需要檢查是否缺少數(shù)據(jù)點(diǎn),否則我們需要填充數(shù)據(jù)集。

apply(data,2function(x)sumis.na(x)))

然后我們擬合線性回歸模型并在測試集上進(jìn)行測試。

index?<?-??sample(1:nrow(data),round(0.75?*?nrow(data))) ???MSE.lm?<?-??sum((pr.lm??-??test?$?medv)^?2)/?nrow(test

sample(x,size)函數(shù)簡單地從向量輸出指定大小的隨機(jī)選擇樣本的向量x。

準(zhǔn)備擬合神經(jīng)網(wǎng)絡(luò)

在擬合神經(jīng)網(wǎng)絡(luò)之前,需要做一些準(zhǔn)備工作。神經(jīng)網(wǎng)絡(luò)不容易訓(xùn)練和調(diào)整。

作為_第一步_,我們將解決數(shù)據(jù)預(yù)處理問題。
因此,我們先劃分?jǐn)?shù)據(jù):

maxs?<?-??apply(data,2,max)? ?scaled?<?-??as.data.frame(scale(data,center?=?mins,scale?=?maxs??-??mins)) train_?<?-??scaled?[index,]test_?<?-??scaled?[-index,]

請注意,scale需要轉(zhuǎn)換為data.frame的矩陣。

參數(shù)

雖然有幾個或多或少可接受的經(jīng)驗(yàn)法則,但沒有固定的規(guī)則可以使用多少層和神經(jīng)元。一般一個隱藏層足以滿足大量應(yīng)用程序的需要。就神經(jīng)元的數(shù)量而言,它應(yīng)該在輸入層大小和輸出層大小之間,通常是輸入大小的2/3

  • hidden參數(shù)接受一個包含每個隱藏層的神經(jīng)元數(shù)量的向量,而參數(shù)linear.output用于指定我們要進(jìn)行回歸linear.output=TRUE或分類linear.output=FALSE

繪制模型:

plot(nn)

這是模型的圖形表示,每個連接都有權(quán)重:

黑色線條顯示每個層與每個連接上的權(quán)重之間的連接,而藍(lán)線顯示每個步驟中添加的偏差項(xiàng)。偏差可以被認(rèn)為是線性模型的截距。

使用神經(jīng)網(wǎng)絡(luò)預(yù)測medv

現(xiàn)在我們可以嘗試預(yù)測測試集的值并計(jì)算MSE。

pr.nn?<?-??compute(nn,test?_?[,1:13])

然后我們比較兩個MSE。

顯然,在預(yù)測medv時,網(wǎng)絡(luò)比線性模型做得更好。但是,這個結(jié)果取決于上面執(zhí)行的訓(xùn)練測試集劃分。下面,我們將進(jìn)行快速交叉驗(yàn)證。
下面繪制了測試集上神經(jīng)網(wǎng)絡(luò)和線性模型性能的可視化結(jié)果

輸出圖:


通過檢查圖,我們可以看到神經(jīng)網(wǎng)絡(luò)的預(yù)測(通常)在直線周圍更加集中(與線完美對齊將表明MSE為0,因此是理想的完美預(yù)測)。

下面繪制了模型比較:

交叉驗(yàn)證

交叉驗(yàn)證是構(gòu)建預(yù)測模型的另一個非常重要的步驟。有不同類型的交叉驗(yàn)證方法。?

然后通過計(jì)算平均誤差,我們可以掌握模型。

我們將使用神經(jīng)網(wǎng)絡(luò)的for循環(huán)和線性模型cv.glm()boot包中的函數(shù)來實(shí)現(xiàn)快速交叉驗(yàn)證。
據(jù)我所知,R中沒有內(nèi)置函數(shù)在這種神經(jīng)網(wǎng)絡(luò)上進(jìn)行交叉驗(yàn)證。以下是線性模型的10折交叉驗(yàn)證MSE:

?lm.fit?<?-??glm(medv~.,data?=?data)

我以這種方式劃分?jǐn)?shù)據(jù):90%的訓(xùn)練集和10%的測試集,隨機(jī)方式進(jìn)行10次。我使用plyr庫初始化進(jìn)度條,因?yàn)樯窠?jīng)網(wǎng)絡(luò)的擬合可能需要一段時間。

過了一會兒,過程完成,我們計(jì)算平均MSE并將結(jié)果繪制成箱線圖:

?cv.error10.3269799517.640652805?6.310575067?15.769518577?5.730130820?10.520947119?6.1211608406.389967211?8.004786424?17.369282494?9.412778105

上面的代碼輸出以下boxplot:

神經(jīng)網(wǎng)絡(luò)的平均MSE(10.33)低于線性模型的MSE,盡管交叉驗(yàn)證的MSE似乎存在一定程度的變化。這可能取決于數(shù)據(jù)的劃分或網(wǎng)絡(luò)中權(quán)重的隨機(jī)初始化。

點(diǎn)擊標(biāo)題查閱往期內(nèi)容

用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實(shí)例

左右滑動查看更多

01

02

03

04

模型可解釋性的說明

神經(jīng)網(wǎng)絡(luò)很像黑盒子:解釋它們的結(jié)果要比解釋簡單模型(如線性模型)的結(jié)果要困難得多。因此,根據(jù)您需要解決的應(yīng)用問題的類型,也要考慮這個因素。此外,需要小心擬合神經(jīng)網(wǎng)絡(luò),小的變化可能導(dǎo)致不同的結(jié)果。

非常感謝您閱讀本文,有任何問題請?jiān)谙旅媪粞裕?/h1>

本文摘選?《?R語言實(shí)現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化?》?,點(diǎn)擊“閱讀原文”獲取全文完整資料。

點(diǎn)擊標(biāo)題查閱往期內(nèi)容

RNN循環(huán)神經(jīng)網(wǎng)絡(luò) 、LSTM長短期記憶網(wǎng)絡(luò)實(shí)現(xiàn)時間序列長期利率預(yù)測
結(jié)合新冠疫情COVID-19股票價格預(yù)測:ARIMA,KNN和神經(jīng)網(wǎng)絡(luò)時間序列分析
深度學(xué)習(xí):Keras使用神經(jīng)網(wǎng)絡(luò)進(jìn)行簡單文本分類分析新聞組數(shù)據(jù)
用PyTorch機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
PYTHON用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)的參數(shù)優(yōu)化方法預(yù)測時間序列洗發(fā)水銷售數(shù)據(jù)
Python用Keras神經(jīng)網(wǎng)絡(luò)序列模型回歸擬合預(yù)測、準(zhǔn)確度檢查和結(jié)果可視化
Python用LSTM長短期記憶神經(jīng)網(wǎng)絡(luò)對不穩(wěn)定降雨量時間序列進(jìn)行預(yù)測分析
R語言中的神經(jīng)網(wǎng)絡(luò)預(yù)測時間序列:多層感知器(MLP)和極限學(xué)習(xí)機(jī)(ELM)數(shù)據(jù)分析報(bào)告
R語言深度學(xué)習(xí):用keras神經(jīng)網(wǎng)絡(luò)回歸模型預(yù)測時間序列數(shù)據(jù)
Matlab用深度學(xué)習(xí)長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對文本數(shù)據(jù)進(jìn)行分類
R語言KERAS深度學(xué)習(xí)CNN卷積神經(jīng)網(wǎng)絡(luò)分類識別手寫數(shù)字圖像數(shù)據(jù)(MNIST)
MATLAB中用BP神經(jīng)網(wǎng)絡(luò)預(yù)測人體脂肪百分比數(shù)據(jù)
Python中用PyTorch機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)分類預(yù)測銀行客戶流失模型
R語言實(shí)現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進(jìn)行回歸數(shù)據(jù)分析
SAS使用鳶尾花(iris)數(shù)據(jù)集訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)(ANN)模型
【視頻】R語言實(shí)現(xiàn)CNN(卷積神經(jīng)網(wǎng)絡(luò))模型進(jìn)行回歸數(shù)據(jù)分析
Python使用神經(jīng)網(wǎng)絡(luò)進(jìn)行簡單文本分類
R語言用神經(jīng)網(wǎng)絡(luò)改進(jìn)Nelson-Siegel模型擬合收益率曲線分析
R語言基于遞歸神經(jīng)網(wǎng)絡(luò)RNN的溫度時間序列預(yù)測
R語言神經(jīng)網(wǎng)絡(luò)模型預(yù)測車輛數(shù)量時間序列
R語言中的BP神經(jīng)網(wǎng)絡(luò)模型分析學(xué)生成績
matlab使用長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)對序列數(shù)據(jù)進(jìn)行分類
R語言實(shí)現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化
用R語言實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)預(yù)測股票實(shí)例
使用PYTHON中KERAS的LSTM遞歸神經(jīng)網(wǎng)絡(luò)進(jìn)行時間序列預(yù)測
python用于NLP的seq2seq模型實(shí)例:用Keras實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)機(jī)器翻譯
用于NLP的Python:使用Keras的多標(biāo)簽文本LSTM神經(jīng)網(wǎng)絡(luò)分類


R語言實(shí)現(xiàn)擬合神經(jīng)網(wǎng)絡(luò)預(yù)測和結(jié)果可視化|附代碼數(shù)據(jù)的評論 (共 條)

分享到微博請遵守國家法律
赞皇县| 五常市| 合肥市| 安平县| 清原| 独山县| 利辛县| 抚顺市| 绥德县| 定襄县| 陆良县| 泽普县| 杭州市| 三江| 瓦房店市| 泾阳县| 平山县| 印江| 黑河市| 镇原县| 大城县| 乌鲁木齐县| 陆丰市| 凌云县| 财经| 西林县| 桐柏县| 图们市| 南京市| 武义县| 中阳县| 罗甸县| 交口县| 通榆县| 睢宁县| 宣武区| 巨野县| 温宿县| 常熟市| 库车县| 延长县|