资源简介
BP神经网络实现气温学习和预测代码及代码分析(python+tensflow),用python+tensflow实现气温的预测,本代码包含数据集,不用重新下载,可以自行设置测试学习次数,误差范围,点开导包,运行即可使用,并且附上了因版本不同,可能出现导包错误的解决方法。我实在是即稳又贴心。
代码片段和文件信息
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
from numpy.random import RandomState
import pandas as pd
import numpy as np
import time
#定义神经网络的参数
d=3#输入节点个数
l=1#输出节点个数
q=2*d+1#隐层个数采用经验公式2d+1
train_num=480#训练数据个数
test_num=240#测试数据个数
eta=0.5#学习率
error=0.0009#精度
#初始化权值和阈值
w1= tf.Variable(tf.random.normal([d q] stddev=1 seed=1))#seed设定随机种子,保证每次初始化相同数据
b1=tf.Variable(tf.constant(0.0shape=[q]))
w2= tf.Variable(tf.random.normal([q l] stddev=1 seed=1))
b2=tf.Variable(tf.constant(0.0shape=[l]))
#输入占位
x = tf.placeholder(tf.float32 shape=(None d))#列数是d,行数不定
y_= tf.placeholder(tf.float32 shape=(None l))
#构建图:前向传播
a=tf.nn.sigmoid(tf.matmul(xw1)+b1)#sigmoid激活函数
y=tf.nn.sigmoid(tf.matmul(aw2)+b2)
mse = tf.reduce_mean(tf.square(y_ - y))#损失函数采用均方误差
train_step = tf.train.AdamOptimizer(eta).minimize(mse)#Adam算法
#train_step = tf.train.GradientDescentOptimizer(eta).minimize(mse)#梯度下降法
#读取气温数据
dataset = pd.read_csv(‘tem.csv‘ delimiter=““)
dataset=np.array(dataset)
mn=np.shape(dataset)
totalX=np.zeros((m-dd))
totalY=np.zeros((m-dl))
for i in range(m-d):#分组:前三个值输入,第四个值输出
totalX[i][0]=dataset[i][0]
totalX[i][1]=dataset[i+1][0]
totalX[i][2]=dataset[i+2][0]
totalY[i][0]=dataset[i+3][0]
#归一化数据
Normal_totalX=np.zeros((m-dd))
Normal_totalY=np.zeros((m-dl))
nummin=np.min(dataset)
nummax=np.max(dataset)
dif=nummax-nummin
for i in range(m-d):
for j in range(d):
Normal_totalX[i][j]=(totalX[i][j]-nummin)/dif
Normal_totalY[i][0]=(totalY[i][0]-nummin)/dif
#截取训练数据
X=Normal_totalX[:train_num-d:]
Y=Normal_totalY[:train_num-d:]
testX=Normal_totalX[train_num::]
testY=totalY[train_num::]
start = time.clock()
#创建会话来执行图
with tf.Session() as sess:
init_op = tf.global_variables_initializer()#初始化节点
sess.run(init_op)
STEPS=0
while True:
sess.run(train_step feed_dict={x: X y_: Y})
STEPS+=1
train_mse= sess.run(mse feed_dict={x: X y_: Y})
if STEPS % 10000 == 0:#每训练100次,输出损失函数
print(“第 %d 次训练后训练集损失函数为:%g“ % (STEPS train_mse))
##if train_mse ## break
if STEPS>10000000:
break
print(“总训练次数:“STEPS)
end = time.clock()
print(“运行耗时(s):“end-start)
#测试
Normal_y= sess.run(y feed_dict={x: testX})#求得测试集下的y计算值
DeNormal_y=Normal_y*dif+nummin#将y反归一化
test_mse= sess.run(mse feed_dict={y: DeNormal_y y_: testY})#计算均方误差
print(“测试集均方误差为:“test_mse)
#预测
XX=tf.constant([[18.317.416.7]])
XX=(XX-nummin)/dif#归一化
a=tf.nn.sigmoid(tf.matmul(XXw1)+b1)
y=tf.nn.sigmoid(tf.matmul(aw2)+b2)
y=y*dif+nummin#反归一化
print(“[18.317.416.7]输入下预测气温为:“sess.run(y))
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-12-09 08:42 BP神经网络实例及代码分析(python+tensorflow)\
目录 0 2019-12-08 10:10 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\
目录 0 2019-12-08 13:27 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\
目录 0 2019-12-09 08:23 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\
文件 441 2019-12-08 12:27 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\BP神经网络实例及代码分析(python+tensorflow).iml
目录 0 2019-12-08 10:13 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\inspectionProfiles\
文件 174 2019-12-08 10:13 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\inspectionProfiles\profiles_settings.xm
文件 294 2019-12-08 12:27 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\misc.xm
文件 367 2019-12-08 10:13 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\modules.xm
文件 3758 2019-12-09 08:23 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.idea\workspace.xm
目录 0 2019-12-08 12:26 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.ipynb_checkpoints\
文件 72 2019-12-08 12:26 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\.ipynb_checkpoints\Unti
文件 72 2019-12-08 12:26 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\Unti
文件 3257 2019-12-08 13:27 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\bpnn_tf.py
文件 4153 2019-03-09 19:57 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\tem.csv
文件 0 2019-12-08 10:17 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29\BP神经网络实例及代码分析(python+tensorflow)\unti
文件 3015 2019-12-08 10:10 BP神经网络实例及代码分析(python+tensorflow)\BP神经网络实例及代码分析%28python%2Btensorflow%29.rar
文件 12386 2019-12-09 08:42 BP神经网络实例及代码分析(python+tensorflow)\因版本不同的报错处理方法.docx
相关资源
- Python-subpixel利用Tensorflow的一个子像素
- 人脸识别算法,双2D2DPCALBP余弦相似度
- fbprophet免安装包.zip
- 作业一_BP_SVM_RBF函数拟合.7z
- LBPH算法人脸识别代码.rar
- mnist手写字体识别之BP.zip
- python-selenium-proxy-xhr.zip
- 利用Python实现的BP神经网络进行人脸识
- 手写数字识别:Python+BP神经网络+PYQ
- facebook开源项目prophet python模块fbprop
- 人脸识别pythonLBPH
- python神经网络书中的代码修改得到的
- Python手写体数字识别带详细注释2.0
- Python手写体数字识别——带详细注释
- python实现BP神经网络回归预测模型
- 基于OpenCV 3 LBPH 人脸识别 Python代码
- LBP算法实现
- tensorflow样例 BP神经网络
- python实现bp神经网络
- BP算法Python代码
- Python实现一个简单的3层BP神经网络
- BP神经网络_Python实习_包含鸢尾花分类
- GA-BP算法的python实现
- PyQt5中异步刷新UI+Python中的多线程+p
- 粒子群优化BPNN的python实现代码.rar
- 多层BP神经网络参数高自由度Python
- BP神经网络(马疝病数据集).zip
- PSO优化的BP神经网络——python实现
- BP神经网络马疝病数据集
- 房价预测的BP神经网络实现_python代码
评论
共有 条评论