tensorflow笔记二:反向传播

  • 反向传播
    训练模型参数,在所有参数上用梯度下降,使NN模型在训练数据上的损失函数最小
  • 损失函数(loss):
    预测值(y)与已知答案(y_)的差距
  • 均方误差MSE:
    损失函数的计算方法有很多,比较常用的有 均方误差.
  • loss = tf.reduce_mean(tf.square(y_-y))
  • 反向传播训练方法:以减小loss值 为优化目标
    训练时,有多种优化方法可以选择。
    所有优化器中 都需要一个参数:学习率
  • 学习率:每次参数更新的幅度
    使用时,可以选一个比较小的值先填进去,比如0.001。

前向传播计算输出y;再反向传播减小loss值,优化模型参数;最后,使用模型,实现预测和分类。

  • 搭建神经网路的八股:准备、前传、反传、迭代
    0 准备:import;常量定义;生成数据集;
    1 前向传播:定义输入、参数、输出
x=
y_=
w1=
w2=
a=
y=

2 反向传播:定义损失函数、反向传播方法

loss=
train_step=

3 生成会话,训练STEPS轮。(即 在with结构中完成迭代)

with tf.session() as sess:
	init_op = tf.global_variables_initializer()
	sess_run(init_op)
	
	STEPS = 3000
	for i in range(STEPS):
		start=
		end=
		sess.run(train_step, feed_dict:)

转载于:https://my.oschina.net/workhardforward/blog/2397568

你可能感兴趣的:(tensorflow笔记二:反向传播)