1. Tensorflow代码实现
- 在tensorflow中训练神经网络模型的步骤:第一步:指定模型,并告诉tensorflow按何种方式计算。第二步:使用特定的损失函数编译模型。第三步:训练模型
2. 训练逻辑回归模型的步骤
- 第一步:如何在给定输入特征x和参数w、b的情况下计算输出f(x)
- 第二步:指定损失函数和成本函数。其中成本函数是参数w和b的函数,它计算m个训练实例的损失函数的平均值。损失函数是计算单个训练实例的函数,而成本函数是计算整个训练集的函数
- 第三步:使用训练集,并采用梯度下降算法来找到一组w和b使成本函数最小化
3. 训练神经网络模型的步骤
- 第一步:如何在给定输入特征x和参数w、b的情况下计算输出,这里采用前向传播算法
- 这段代码指定了整个神经网络模型的架构,并告诉了tensorflow全部参数w、b和输入特征x。其中w、b的值随机初始化,并在训练过程中自动调整,也可以手动设置
- 第二步:编译模型,并指定损失函数和成本函数,这里采用二元交叉熵损失函数,同时取所有训练实例的损失函数的平均值为成本函数
- 这个语法表示让tensorflow使用这个损失函数来编译神经网络模型。也可以改变损失函数为平方误差损失函数,来计算线性问题。
- 用W、B,表示它包含整个模型中所有的w和b
- 第三步:调用函数来使成本函数最小化
- 如果我们使用梯度下降算法,那么对于每一层的每一个单元的w、b参数,我们都要进行更新,公示如上图。
- 所以梯度下降算法的关键是这些偏导数项,而tensorflow和神经网络使用反向传播的算法来计算这些偏导数项
- tensorflow的.fit()函数实现了这个反向传播算法
- tensorflow其实使用了一个比梯度算法快一些的算法,后面会讲