[ML]机器学习_神经网络训练

目录

一、TensorFlow训练神经网络

1、示例

2、模型训练细节


一、TensorFlow训练神经网络

1、示例

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

import tensorflow as tf
from tensorflow.keras import Sequential
from tensorflow.keras.layers import Dense
 
model = Sequential([
    Dense(units = 25, activation = 'sigmoid'),
    Dense(units = 12, activation = 'sigmoid'),
    Dense(units = 1, activation = 'sigmoid')
                  ])
 
from tensorflow.keras.losses import BinaryCrossentropy #二元交叉熵损失函数
 
model.compile(loss=BinaryCrossentropy)
model.fit(X,Y, epochs = 100)

        第一步让TensorFlow按顺序将神经网络的三层串联起来。第二步是让TensorFlow编译模型,要求编译模型的关键步骤是指定要使用的损失(Loss)函数,在示例中,使用二元交叉熵损失函数。第三步是调用fit函数,它使用在步骤二中指定的损失函数来拟合第一步中指定的模型到数据集x,y。

        在TensorFlow中,fit()函数是用于训练模型的主要函数之一。它的作用是训练一个模型,使其能够对未知的数据进行预测。在训练过程中,fit()函数会自动进行反向传播和梯度下降等优化操作,以最小化模型的损失函数。

fit()函数的输入参数包括训练数据、标签、训练轮数、批量大小、验证数据等等。它支持多种常见的优化器,例如随机梯度下降(SGD)、Adam、Adagrad、Adadelta等等,以及多种损失函数,例如均方误差、交叉熵等等。在训练过程中,fit()函数会输出训练损失、验证损失和训练准确率等指标,以便我们评估模型的性能。

fit()函数是TensorFlow中很常用的一个函数,它简化了模型训练的流程,使得用户可以更加方便地进行模型训练和优化。

        在TensorFlow中,fit函数的epoch参数指的是整个训练数据集在神经网络中重复训练的次数。一个epoch等价于在整个数据集上训练一次。例如,如果一个数据集中有100个样本,将epoch设置为10,那么神经网络将在这100个样本上训练10次。在每个epoch之后,算法会用新的样本来更新模型的参数,以提高其性能和准确性。通常,epoch越大,模型的训练时间越长,但也会获得更好的训练效果。

        Sequential() 告诉tensorflow 如何去计算
        model.compile()  选择合适的函数来降低代价

2、模型训练细节

训练逻辑回归模型步骤:

1)、指定如何在给定输入特征x,以及参数w和b的情况下计算输出。

2)、指定损失函数和代价函数。

3)、使用一种特定的梯度下降算法来最小化w和b的代价函数J,以将其作为参数w和b的函数最小化。

notes:

        代价函数是参数w和b的函数,是平均计算损失函数的总体m个训练示例的平均值,m个训练样例,x_{1}y_{1}x_{m}y_{m}。约定损失函数是学习算法输出和在单个训练样例上计算真实标签,而代价函数J是在整个训练集上计算的损失函数的平均值。

        使用梯度下降降代价J作为参数的函数最小化,其中w更新为w^{'}=w-\alpha \frac{\partial J}{\partial w}

b更新为b^{'}=b-\alpha \frac{\partial J}{\partial b}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IAz-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值