神经网络的训练(Tensorflow)

134 阅读2分钟

(1)要求Tensorflow将这三层串成神经网络

(2)要求Tensorflow编译模型,Tensorflow的编译模式的关键步骤是指定你要使用的最后一个函数是什么 在这里使用的是Binary cross entropy

(3)调用fit()函数告诉Tensorflow通过使用步骤2中的损失函数,及数据集X Y ,去拟合步骤一中的模型, Epoch是一个技术术语,表示可能想要运行多少步来创建梯度下降

image.png 模型训练步骤

1.建立逻辑回归模型的第一步是指定如何在给定输入特征x和参数w和b的情况下计算输出

2.编译模型,并指定损失和成本

3.最小化我们训练逻辑回归的成本函数

 

Loss function(损失函数) : 在单个示例上进行计算

Cost function(成本函数J): 在整个数据集上进行计算

Binary cross entropy : 二元交叉熵损失函数 ,一旦你指定这个损失并取平均值对于整个数据集就会得到整个neural network的Cost Function.

image.png

image.png

image.png 语法中写的是让Tensorflow使用这个损失函数来编译神经网络

在指定了单个训练示例的损失之后,Tensorflow知道你想要最小化的成本是所有训练示例损失的平均值,优化这个成本函数将导致神经网络适合二元分类问题的数据,如果您想解决的是回归问题而不是分类问题,你可以告诉Tensorflow使用不同的loss function编译你的模型。

例如,如果你有一个回归问题你就可以指定使用loss function :MeanSquareedError(平方误差损失函数)。

Cost Function 是神经网络中所有参数的函数,这里的大写W B就是神经网络中每一层的参数一起构成的参数矩阵,所以如果打算优化Cost function 那么就会对W B中的所有参数进行优化处理

image.png Tensorflow是使用一种称为反向传播的的算法计算这些偏导数项,tensorflow可以帮我实现这些事,在fit函数中实现了反向传播,

所以需要做的就是调用model.fit 指定数据集X Y 并告诉他这样进行100次迭代或100个epoch