第二章: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次迭代。

相关推荐
青云交2 分钟前
解锁 DeepSeek 模型高效部署密码:蓝耘平台深度剖析与实战应用
大数据·人工智能·技术融合·deepseek 模型·智能金融监管·deepseek-r1_32b·java 大数据
码界筑梦坊4 分钟前
基于Flask的当当网畅销图书榜单可视化分析系统的设计与实现
后端·python·flask·毕业设计
m0_748232928 分钟前
纯 Python、Django、FastAPI、Flask、Pyramid、Jupyter、dbt 解析和差异分析
python·django·fastapi
张3蜂1 小时前
PromptSource官方文档翻译
人工智能·机器人·开源
elecfan20111 小时前
本地化部署AI知识库:基于Ollama+DeepSeek+AnythingLLM保姆级教程
人工智能
测试杂货铺1 小时前
Jmeter常用的几种断言方法
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·压力测试
WANGWUSAN662 小时前
Python教程:使用Matplotlib模块画柱状图、饼形图、直方图
开发语言·经验分享·python·程序人生·matplotlib·数据可视化
Channing Lewis2 小时前
flask开发的网站,后端服务关闭后,可以找回之前的数据的吗
python·flask
幸福右手牵2 小时前
WPS如何接入DeepSeek(通过JS宏调用)
javascript·人工智能·深度学习·wps·deepseek
cchjyq2 小时前
opencv:基于暗通道先验(DCP)的内窥镜图像去雾
java·c++·图像处理·人工智能·opencv·计算机视觉