亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于SVM 的溫度預(yù)測回歸模型

        2020-08-21 01:00:40孟田華盧玉和丁少軍高清蘭黃榮
        現(xiàn)代計算機 2020年20期
        關(guān)鍵詞:模型

        孟田華,盧玉和,丁少軍,高清蘭,黃榮

        (1.山西大同大學物理與電子科學學院,大同037009;2.大同市氣象局,大同037010)

        0 引言

        天氣溫度對人們的生存生活有著重要的影響,特別是一天中的最高溫度和最低溫度。但由于影響短期溫度變化的機制和要素非常復(fù)雜,采用傳統(tǒng)常用的天氣預(yù)測方法,如天文學相關(guān)高空氣象圖解析天氣法的成本較高[1],而利用天氣預(yù)測儀THE-860 可預(yù)測范圍又很有限,不便于推廣[2,3]。作為機器學習的一個重要分支,支持向量機(SVM)在小樣本分類、回歸等方面體現(xiàn)出獨特的優(yōu)勢,因其無需大量樣本和經(jīng)驗假設(shè),在實現(xiàn)經(jīng)驗風險最小化和結(jié)構(gòu)風險最小化的同時亦可避免過擬合現(xiàn)象。目前,該智能機器學習方法已在很多領(lǐng)域得到成功的應(yīng)用[4-10]。此外,歷年天氣溫度的數(shù)據(jù)容易在網(wǎng)上獲取,故基于機器學習方法的預(yù)測便顯得更加經(jīng)濟實用。

        本文以山西省大同市為例,利用SVM 基于Python爬取網(wǎng)頁所獲得的大量天氣溫度數(shù)據(jù),建立了可預(yù)測未來一天天氣的最高溫和最低溫SVM 回歸模型[11-17]。利用此預(yù)測模型可根據(jù)歷史天氣溫度的數(shù)據(jù)有效預(yù)測當?shù)氐臏囟惹闆r,具有一定的推廣意義。此外SVM 的準確率高且泛化能力強,具有良好的預(yù)報能力。

        1 SVM模型的預(yù)測和檢驗樣本

        1.1 樣本數(shù)據(jù)的獲取

        樣本數(shù)據(jù)獲取采用Python 爬蟲技術(shù),即利用Py?thon 抓取網(wǎng)頁天氣數(shù)據(jù),其原理是模擬網(wǎng)頁瀏覽器,通過調(diào)用Python 的requests 庫和re 模塊,加載需要爬取的網(wǎng)頁信息,用正則表達式從網(wǎng)頁信息中提取出我們需要的天氣數(shù)據(jù),并將其保存下來并進行后期的數(shù)據(jù)分析和整理。具體方法如下:

        (1)目標站點的分析

        我們所獲取天氣數(shù)據(jù)的目標站點是:http://www.qixiangtai.org/2011datongxian4yuetianqi/,其目標站點的URL 和網(wǎng)頁源碼(HTML)如圖1 所示。

        圖1 網(wǎng)頁的URL和HTML

        通過對網(wǎng)頁上的URL 分析可知,http://www.qixi?angtai.org 為歷史天氣網(wǎng)的主站點,2011datongxian4yue?tianqi 則表示該頁面是大同2011 年4 月的天氣數(shù)據(jù),因此只要通過改變URL 里的參數(shù)即可得出近8 年96個月任何一天的天氣溫度數(shù)據(jù)。由HTML 可知,需要爬取的數(shù)據(jù)日期,最高氣溫和最低氣溫分別由()標簽包圍,其上的父節(jié)點的標簽()包含了需要爬取的一天中所有信息,其中我們所需要的日期是一個“title”,溫度可以直接用正則表達式提取。

        (2)溫度數(shù)據(jù)的爬取

        調(diào)用request 庫,采用get 方式獲取URL,如果請求狀態(tài)的狀態(tài)碼為200,即請求正常,則將從服務(wù)器獲取網(wǎng)頁源代碼,否則返回無,并將其定義為函數(shù),代碼為:

        采用正則表達式的方式對網(wǎng)頁信息進行提取,將抓取到的一個HTML 當作一個字符串,先采用.*?的非貪婪方式匹配此字符串并調(diào)用re 模塊中的compile()函數(shù)返回一天的天氣溫度,得到一次匹配結(jié)果后,再用re 模塊里的re.findall()函數(shù)對HTML 里所有符合上述匹配模式的字符進行匹配,得到整個月的所有最高溫度和最低溫度匹配結(jié)果,考慮到每天的最高溫度和最低溫度要分別抓取,這里采用字典遍歷匹配結(jié)果,用yelid()生成器提取出字符串里的日期+最高溫度或者日期+最低溫度。其中item[1]表示爬取最高氣溫,item[2]表示爬取最低氣溫,將上述解析HTML 過程定義為一個函數(shù):

        用一個for 循環(huán)將URL 里的每個月用一個字符串寫入便可得到一年的數(shù)據(jù),考慮到網(wǎng)站服務(wù)器,用time.sleep(1)將時間延遲一秒。代碼如下:

        所爬取溫度數(shù)據(jù)的部分結(jié)果見圖2,其中顯示了2011 年4 月最低氣溫的部分數(shù)據(jù)。

        圖2 爬取數(shù)據(jù)的部分結(jié)果

        1.2 數(shù)據(jù)集的建立

        我們將前面所獲取的大同市市區(qū)近8 年每日天氣的最高溫度和最低溫度數(shù)據(jù)導入到Excel 文本里,然后對其格式進行調(diào)整以滿足SVM 建模所要求的形式,并將修改后的數(shù)據(jù)以txt 文本的形式導出,部分數(shù)據(jù)集如表1 和表2 所示。

        表1 最高溫樣本集(℃)

        表2 最低溫樣本集(℃)

        2 SVM大同市溫度回歸模型

        2.1 回歸模型的建立

        利用上述訓練樣本建立SVM 大同市溫度預(yù)測回歸模型,其中當前溫度為目標值,前10 天的溫度為特征值,這是10 元線性回歸問題,即一個樣本有10 個特征的線性回歸問題:

        其中ω是待求值,x 為特征值,y 為目標值?;貧w模型的建立就是為了找到參數(shù)向量ω,這樣就可以得到一個映射關(guān)系,通過這個映射關(guān)系得出決策函數(shù),進而利用決策函數(shù)實現(xiàn)輸入向量x 得出目標值y。

        為了避免各個因子之間的量級差異,對全部數(shù)據(jù)集進行歸一化(SVM-Scale)處理,使得特征值落在[-1,1]的范圍之間。

        常用數(shù)據(jù)樣本集的處理方法有交叉驗證法,留出法和自助法。針對我們所研究對象的特征,選用k 折交叉驗證法,選取k=10,即十折交叉驗證,分別將最高溫度的200 組數(shù)據(jù)和最低溫度的180 組數(shù)據(jù)隨機分成均勻的10 份,將其中9 份作為訓練樣本,剩余1 份作為驗證樣本。

        SVM 最初是由感知機發(fā)展而來的,感知機是處理分類問題的,回歸是分類的推廣,這里是對天氣溫度的預(yù)測,屬于回歸問題,所以,選擇ε-支持向量回歸機(ε-SVR)作為訓練算法。

        而常見核函數(shù)如下:

        高斯核RBF(也稱徑向基核):可以處理偏非線性問題

        線性核linear:只能處理線性問題

        Sigmoid(雙曲正切)核:可以處理非線性問題

        K(x,xi)=tanh(βx*xi+θ),

        其中:

        在DOS 窗口下調(diào)用Python2.7、svm-train、pnuplot對訓練樣本進行訓練,分別得到尋優(yōu)參數(shù)c,g,p 的值,其中c 表示ε-SVR 中懲罰系數(shù)ε,g 表示RBF 核函數(shù)中γ值,p 表示SVR 中的損失函數(shù)中的ε,接著根據(jù)c,g,p的值進行訓練(svm-train)即可得到一個模型(model)文件,用此SVM 模型對測試樣本進行預(yù)測(svm-pre?dict)得出預(yù)測結(jié)果。

        對最高溫度分別用徑向基(RBF)核函數(shù),線性(lin?ear)核函數(shù),sigmoid 核函數(shù)訓練,其預(yù)測結(jié)果的均方差如表3 所示。

        表3 最高溫樣本集(℃)

        通過比較三種核函數(shù)對本問題的預(yù)測結(jié)果可知,選擇RBF 核函數(shù)的均方差最小,可靠性最高,所以本研究選取RBF 作為核函數(shù)。我們利用訓練樣本所建立的溫度預(yù)測模型參數(shù)分別為:預(yù)測最高氣溫對應(yīng)模型參數(shù)是=84.8,=0.327441406,=1.65;最低氣溫對應(yīng)模型參數(shù)是=627.2,gˉ=0.005859375,=0.74453125。這里的,,是10 個訓練樣本尋優(yōu)參數(shù)平均值。

        2.2 SVM大同市溫度回歸模型的檢驗

        我們隨機選取2019 年的部分溫度數(shù)據(jù)作為測試集,對上述由模型參數(shù)所建立好的SVM 最高氣溫預(yù)測模型和SVM 最低氣溫預(yù)測模型進行驗證,對應(yīng)的預(yù)測結(jié)果如表4 和表5 所示。

        表4 最高溫樣本集(℃)

        表5 最低溫樣本集(℃)

        通過比較真實值和預(yù)測值,我們可得出最高溫和最低溫預(yù)測的整體均方差分別為2.43 和2.66。其中,大多數(shù)預(yù)測值的絕對誤差在0℃附近,部分數(shù)據(jù)預(yù)測結(jié)果雖有偏差,但總體偏差不大,其預(yù)測結(jié)果相對較好,此結(jié)果表明基于SVM 的天氣溫度預(yù)測的可靠性與可行性。

        3 結(jié)語

        本研究首先利用Python 爬取國內(nèi)天氣網(wǎng)歷史天氣溫度的數(shù)據(jù),然后利用SVM 對歷史的天氣溫度數(shù)據(jù)進行建模預(yù)測,通過比較三種不同核函數(shù)的預(yù)測結(jié)果,優(yōu)選出RBF 核函數(shù)來建立預(yù)測未來天氣溫度的SVM 模型。并隨機選取了2019 年1 月到5 月的部分數(shù)據(jù)來檢驗我們所建立的最高溫SVM 回歸模型和最低溫SVM 回歸模型,結(jié)果顯示其均方差均小于2.7,說明利用SVM 這一方法進行溫度預(yù)報是可靠的,且有較強的泛化能力,因而可為天氣預(yù)報領(lǐng)域提供一種新的技術(shù)手段。

        猜你喜歡
        模型
        一半模型
        一種去中心化的域名服務(wù)本地化模型
        適用于BDS-3 PPP的隨機模型
        提煉模型 突破難點
        函數(shù)模型及應(yīng)用
        p150Glued在帕金森病模型中的表達及分布
        函數(shù)模型及應(yīng)用
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        3D打印中的模型分割與打包
        人妻少妇看a偷人无码精品| 在线观看视频免费播放| 欧美激情乱人伦| 国产人妻人伦精品1国产盗摄| 91福利国产在线观看一区二区| 水蜜桃视频在线观看免费18| 一区二区三区日韩精品视频| 久久99热狠狠色精品一区| 国产精品亚洲成在人线| 老熟女一区二区免费| 亚洲一区二区自偷自拍另类| 国产精品福利一区二区| 亚洲欧洲精品成人久久曰影片 | 国产真人无遮挡作爱免费视频| 无码伊人久久大香线蕉| 亚洲av日韩av综合aⅴxxx| 亚洲中文字幕诱惑第一页| 久久精品色福利熟妇丰满人妻91| 欧美精品欧美人与动人物牲交 | 亚洲av无码久久精品蜜桃| 另类专区欧美在线亚洲免费| 一区二区免费国产a在亚洲| 精品厕所偷拍一区二区视频| 全部孕妇毛片丰满孕妇孕交| 国产一区二区波多野结衣| 久久婷婷免费综合色啪| 漂亮丰满人妻被中出中文字幕| 免费1级做爰片1000部视频| 久久国产亚洲高清观看5388| 国产精品二区三区在线观看| 狠狠色狠狠色综合网| 久久99精品国产99久久6男男| 国产亚洲美女精品久久久2020| 天天色天天操天天日天天射| 曰韩亚洲av人人夜夜澡人人爽| 亚洲第一看片| 黄页免费人成网址大全| 国产精品无码素人福利不卡| 精品爆乳一区二区三区无码av| 国产激情一区二区三区在线蜜臀| 久久一道精品一区三区|