第二章:7.1 TensorFlow实现

欢迎来到本课程,关于高级学习算法,在之前我们学习了如何在神经网络中进行推理,本周我们将复习神经网络的训练。我认为能够利用自己的数据训练自己的神经网络很好。

我们继续运行手写数字识别示例,识别此图像是1还是0。这里我们使用的还是之前看到的神经网络架构:

其中有一个输入x,那就是输入,然后是第一个隐藏层,有25个单元,第二个隐藏层,有15个单元,然后还有一个输出。

我们将得到一组由图像x组成的训练示例,但是如何训练这个神经网络的参数?

第一步就是之前的神经网络过程(推理过程);第二步要求tensorflow编译模型;(而要求tensorflow编译模型的关键步骤是指定要使用的损失函数是什么)第三步是调用fit函数(训练模型),他告诉tensorflow拟合在步骤一中使用指定的损失函数模型/或者在第二步中指定的数据集x,y的成本函数。

epochs是专业术语,可以调节步长,以及梯度下降要跑多长时间。


现在先让我们回忆一下如何训练一个逻辑回归模型的,在上一个课程中,建立一个Logistic回归模型,(这个模型将指定如何计算输出,给定输入特征x和参数w和b)

第一步:在哪里指定什么是Logistic回归的输入输出函数(这取决于输入x和参数w和·b)

第二步是训练Logistic回归模型

这是一个衡量Logistic回归在单个训练示例上做得多好的指标

成本函数:

第三步是使用算法,特别是梯度下降最小化w,b的代价函数j

之后w,b均更新为新的w,b

以上三个步骤是我们如何在张量流中训练神经网络。

简单来说,

第一步是给定输入x和参数w,b如何计算输出:

第二步是编译模型,告知它我们想用什么损失函数,下面这个是用来指定这个损失函数的代码。即(binary cross entropy)(二元交叉熵损失函数)

即在整个训练集上取平均值,神经网络的成本函数。

第三步就是调用函数,试图最小化成本(作为神经网络参数的函数)


第一步就是指定了神经网络的整个架构

第二步要指定损失函数是什么(这也将定义我们用来训练神经网络的成本函数)下面是最常用的

损失函数

成本函数

成本函数就是神经网络中所有参数的函数

如果你想要优化成本函数,你就要试图优化它的所有参数。

第三步就要要求TensorFlow最小化成本函数,就是要使用梯度下降,

为了使用梯度下降,需要计算的关键是这些偏导数项

而张量流的作用,事实上,神经网络训练的标准是使用一种叫做反向传播的算法

而TensorFlow 可以为我们做这些事情,它在fit的函数中实现了反向传播,所以我们要做的是调用模型点拟合x,y并且告诉它这样做100次迭代。

相关推荐
充值修改昵称1 小时前
数据结构基础:B树磁盘IO优化的数据结构艺术
数据结构·b树·python·算法
C系语言1 小时前
python用pip生成requirements.txt
开发语言·python·pip
william_djj1 小时前
python3.8 提取xlsx表格内容填入单个文件
windows·python·xlsx
市象1 小时前
字节AI撒“豆”成兵
人工智能
kszlgy6 小时前
Day 52 神经网络调参指南
python
wrj的博客7 小时前
python环境安装
python·学习·环境配置
康康的AI博客8 小时前
腾讯王炸:CodeMoment - 全球首个产设研一体 AI IDE
ide·人工智能
中达瑞和-高光谱·多光谱8 小时前
中达瑞和LCTF:精准调控光谱,赋能显微成像新突破
人工智能
mahtengdbb18 小时前
【目标检测实战】基于YOLOv8-DynamicHGNetV2的猪面部检测系统搭建与优化
人工智能·yolo·目标检测
Pyeako8 小时前
深度学习--BP神经网络&梯度下降&损失函数
人工智能·python·深度学习·bp神经网络·损失函数·梯度下降·正则化惩罚