机器学习笔记10_从零开始训练一个神经网络

使用TensorFlow的库实现

①建立合适的模型

以逻辑回归模型为例:

  • 明确逻辑函数的输入和输出是什么——取决于输入 x 和模型参数,如上图第二列所示

这个代码片段指定了神经网络的整个架构

  • units :这一层的神经元个数
  • activation :这一层的输出使用的激活函数类型

根据这个代码片段,TF 可以根据上一层和下一层神经元的数量,自动计算 W 和 b 的维度

最后告诉 TF 可以以函数形式,计算输出(output)所需要的一切

(注:这里的 w 和 b ,一开始是随机生成的,会根据后面的步骤不断更新和优化)

在这一步中,我们指定一个合适的模型,就可以告诉 TensorFlow 如何计算和推断。

②指定损失函数(Loss)和代价函数(J)

先重述一下损失函数(Loss)和代价函数(J)的关系:

代价函数是用来计算在整个训练集上损失函数的平均值

代价函数也是神经网络中所有参数的函数

这里的 loss 使用二元交叉熵损失函数(来自 TensorFlow 库)

根据拟合的模型不同可选择不同的 loss 函数

当你指定了单个训练样本的损失之后

TF 就知道你想要最小化的代价是平均值,即取训练集上,所有训练样本损失的平均值

优化这个代价函数将使 神经网络 和你的数据相拟合

这一步我们也叫做编译模型,使用特定的损失函数

③用一个具体的梯度下降算法来最小化代价函数

这里的 epochs 表示:

你规定让一个学习算法进行梯度下降的步数

其中梯度算法中最关键的:偏导数的计算

可以直接调用 TF 库中的 fit 函数实现

这里的 fit 函数自己则是运用了反向传播算法

这一步叫做训练模型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值