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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

序贯模型作回归预测

發布時間:2024/1/1 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 序贯模型作回归预测 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#!/usr/bin/env python # -*- coding:utf-8 -*- # Author: Jia ShiLin ''' 數據集是UCI庫中的讀入用pandas,CSV文件,原因1.包含空字段,2.數據集為歐洲國家通常習慣的逗號作為小數點 '''from keras.layers import Input from keras.layers.core import Dense from keras.models import Model from sklearn.preprocessing import StandardScaler import matplotlib.pyplot as plt import numpy as np import os import pandas as pdDATA_DIR = './data' AIRQUALITY_FILE = os.path.join(DATA_DIR, 'AirQualityUCI.csv') aqdf = pd.read_csv(AIRQUALITY_FILE, sep=';', decimal=',', header=0)# 移除前面和后面倆列 del aqdf['Date'] del aqdf['Time'] del aqdf['Unnamed: 15'] del aqdf['Unnamed: 16']# 使用平均值填充空缺值,并將數據導出為矩陣 aqdf = aqdf.fillna(aqdf.mean()) Xorig = aqdf.as_matrix() # Xorig = aqdf.values# 標準化 scaler = StandardScaler() Xscaler = scaler.fit_transform(Xorig) # 保存均值和標準差,以用于預測新數據 Xmeans = scaler.mean_ Xstds = scaler.scale_# 數據集, x = np.delete(Xscaler, 3, axis=1) y = Xscaler[:, 3] # 目標為第四列train_size = int(0.7 * X.shape[0]) # 劃分數據集的長度 xtrain, xtest, ytrain, ytest = x[0:train_size], x[train_size:], y[:train_size], y[train_size:]# layers,輸入是一個12特征的向量,輸出是伸縮值預測,hiddenlayers有8個神經元 # 初始化機制glorot uniform來初始化全連接權重矩陣, readings = Input(shape=(12,)) x = Dense(8, activation='relu',kernel_initializer = 'glorot_uniform')(readings) benzene = Dense(1,kernel_initializer='glorot_uniform')(x) model =Model(inpus =[readings],outputs =[benzene]) model.compile(loss='mse',optimizer='adam')#batch,epoch NUM_EPOCHS =20 BATCH_SIZE =10history =model.fit(xtrain,ytrain,batch_size=BATCH_SIZE,epochs=NUM_EPOCHS,validation_split=0.2) ytest_ = model.predict(xtest).flatten()#預測值和真實值對比,將伸縮后的z值重新伸縮 for i in range(10):label =(ytest[i]*Xstds[3])+Xmeans[3]prediction =(ytest_[i]*Xstds[3])+Xmeans[3]print('Benzene Conc. expected:{:.3f},prdicted:{:.3f}'.format(label,prediction))#最后繪制 plt.plot(np.arange(ytest.shape[0]),(ytest*Xstds[3])/Xmeans[3],color='b',label='actual') plt.plot(np.arange(ytest_.shape[0]),(ytest_*Xstds[3])/Xmeans[3],color='r',alpha=0.5,label='predicted') plt.xlabel('time') plt.ylabel('苯含量') plt.legend(loc ='best') plt.show()

?

總結

以上是生活随笔為你收集整理的序贯模型作回归预测的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。