版权声明:仅用于个人学习,分享收获。 https://blog.csdn.net/qq_33431972/article/details/86697260
机器学习
机器学习三要素:数据、算法、算力
神经元模型
1、机器学习,就是在任务 T 上,随经验 E 的增加,效果 P 随之增加。
2、机器学习的过程是通过大量数据的输入,生成一个模型,再利用这个生成的
模型,实现对结果的预测。
3、庞大的神经网络是基于神经元结构的,是输入乘以权重,再求和,再过非线
性函数的过程。
文件读操作
import pickle
开:文件变量 = open(”文件路径文件名”, ”rb”)
取:放内容的变量 = pickle.load(文件变量)
关:文件变量.close()
文件写操作
import pickle
开:文件变量 = open(”文件路径文件名”, ”wb”)
存:pickle.dump(待写入的变量,文件变量)
关:文件变量.close()
神经网络的实现过程:
第一步:准备好数据集
第二步:NN结构,前向传播
第三步:迭代优化,反向传播
第四步:给入新数据—预测结果
第一步:准备好数据集
第二步:NN结构,前向传播
输入数据的特征
创建入口
#x训练入口(2个特征值) y_历史数据(1个答案)
#占位
x=tf.placeholder(tf.float32,shape=(None,2))
y_=tf.placeholder(tf.float32,shape=(None,1))
#权重w,随机生成
w1=tf.Variable(tf.random_normal([2,3],stddev=1,seed=1))
w2=tf.Variable(tf.random_normal([3,1],stddev=1,seed=1))
#矩阵运算
a=tf.matmul(x,w1) #隐藏层
y=tf.matmul(a,w2) #输出层
#得出,预测y
第三步:迭代优化,反向传播
#定义损失函数及反向传播
#历史数据-预测值
loss = tf.reduce_mean(tf.square(y_-y))
train_step = tf.train.GradientDescentOptimizer(0.001).minimize(loss)
#生成会话
with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
#训练模型
for i in range(轮数):
sess.run(train_step,feed_dict={x:数据集,y_:数据集})
要会话train_step ,需要知道喂入哪些数据
反推
train_step ----->> loss
loss ----->> y,y_(已有)
y ----->> x(已有)
得: x,y_