当前位置: 首页 > wzjs >正文

想在微信公众号上做网站链接查淘宝关键词排名软件有哪些

想在微信公众号上做网站链接,查淘宝关键词排名软件有哪些,网站建设学习步骤,广药网站建设试题机器学习实操 第二部分 神经网路和深度学习 第11章 训练深度神经网络 内容概要 第11章深入探讨了训练深度神经网络(DNN)的技术和挑战。深度神经网络因其强大的表征学习能力而广泛应用于复杂问题,但训练这些网络并非易事。本章详细讨论了梯度…

机器学习实操 第二部分 神经网路和深度学习 第11章 训练深度神经网络

内容概要

第11章深入探讨了训练深度神经网络(DNN)的技术和挑战。深度神经网络因其强大的表征学习能力而广泛应用于复杂问题,但训练这些网络并非易事。本章详细讨论了梯度消失和爆炸问题、权重初始化、激活函数选择、批量归一化、预训练层的复用、优化器选择和正则化技术。通过这些内容,读者将掌握如何有效地训练深度神经网络。
在这里插入图片描述

主要内容

  1. 梯度消失和爆炸问题

    • 问题描述:梯度在反向传播过程中可能逐渐变小或变大,导致训练困难。
    • 解决方案:使用Glorot初始化、He初始化等权重初始化策略,以及选择合适的激活函数(如ReLU及其变体)。
  2. 权重初始化

    • Glorot初始化:通过调整权重的方差来平衡前向和反向传播的信号。
    • He初始化:适用于ReLU激活函数,通过调整权重的方差来避免梯度消失。
  3. 激活函数

    • ReLU及其变体:如Leaky ReLU、ELU、SELU等,用于引入非线性并缓解梯度消失问题。
    • GELU、Swish、Mish:新型激活函数,通常在复杂任务中表现更好。
  4. 批量归一化

    • 原理:通过标准化层输入并重新缩放和偏移来稳定训练过程。
    • 实现:在Keras中使用BatchNormalization层。
  5. 预训练层的复用

    • 迁移学习:复用预训练模型的底层特征提取器,减少训练数据和计算量。
    • 无监督预训练:使用自编码器或生成对抗网络(GAN)进行预训练,再用于目标任务。
  6. 优化器

    • Momentum:通过累积历史梯度加速收敛。
    • Nesterov加速梯度:在动量优化的基础上提前计算梯度。
    • AdaGrad、RMSProp、Adam:自适应学习率优化器,适用于不同场景。
  7. 正则化技术

    • L1和L2正则化:通过约束权重的大小来减少过拟合。
    • Dropout:随机丢弃神经元,增加模型的鲁棒性。
    • 批量归一化:兼具正则化效果,减少过拟合。
  8. 学习率调度

    • 功率衰减、指数衰减、分段常数衰减:动态调整学习率以加速收敛。
    • 1cycle调度:在训练过程中调整学习率和动量,提高训练效率。

关键代码和算法

11.1 使用Keras实现批量归一化

from tensorflow.keras import layers, Sequential# 构建模型
model = Sequential([layers.Flatten(input_shape=[28, 28]),layers.BatchNormalization(),layers.Dense(300, activation="relu", kernel_initializer="he_normal"),layers.BatchNormalization(),layers.Dense(100, activation="relu", kernel_initializer="he_normal"),layers.BatchNormalization(),layers.Dense(10, activation="softmax")
])# 编译模型
model.compile(loss="sparse_categorical_crossentropy",optimizer="sgd",metrics=["accuracy"])# 训练模型
history = model.fit(X_train, y_train, epochs=30,validation_data=(X_valid, y_valid))

11.2 使用Keras实现迁移学习

# 加载预训练模型
model_A = tf.keras.models.load_model("my_model_A")# 创建新模型并复用预训练层
model_B_on_A = tf.keras.Sequential(model_A.layers[:-1])
model_B_on_A.add(tf.keras.layers.Dense(1, activation="sigmoid"))# 冻结预训练层
for layer in model_B_on_A.layers[:-1]:layer.trainable = False# 编译模型
optimizer = tf.keras.optimizers.SGD(learning_rate=0.001)
model_B_on_A.compile(loss="binary_crossentropy",optimizer=optimizer,metrics=["accuracy"])# 训练模型
history = model_B_on_A.fit(X_train_B, y_train_B, epochs=4,validation_data=(X_valid_B, y_valid_B))# 解冻预训练层并继续训练
for layer in model_B_on_A.layers[:-1]:layer.trainable = Trueoptimizer = tf.keras.optimizers.SGD(learning_rate=0.001)
model_B_on_A.compile(loss="binary_crossentropy",optimizer=optimizer,metrics=["accuracy"])history = model_B_on_A.fit(X_train_B, y_train_B, epochs=16,validation_data=(X_valid_B, y_valid_B))

精彩语录

  1. 中文:训练深度神经网络时,梯度消失和爆炸问题是主要挑战之一。
    英文原文:Training a deep neural network isn’t a walk in the park. Here are some of the problems you could run into: gradients often get smaller and smaller as the algorithm progresses down to the lower layers.
    解释:指出了深度网络训练中的主要挑战。

  2. 中文:批量归一化通过标准化层输入并重新缩放和偏移来稳定训练过程。
    英文原文:Batch normalization consists of adding an operation in the model just before or after the activation function of each hidden layer. This operation simply zero-centers and normalizes each input, then scales and shifts the result using two new parameter vectors per layer.
    解释:介绍了批量归一化的原理和作用。

  3. 中文:迁移学习通过复用预训练模型的底层特征提取器,减少训练数据和计算量。
    英文原文:Transfer learning is generally not a good idea to train a very large DNN from scratch without first trying to find an existing neural network that accomplishes a similar task.
    解释:强调了迁移学习的优势。

  4. 中文:Adam优化器结合了动量优化和RMSProp的优点,适用于大多数深度学习任务。
    英文原文:Adam combines the ideas of momentum optimization and RMSProp: just like momentum optimization, it keeps track of an exponentially decaying average of past gradients; and just like RMSProp, it keeps track of an exponentially decaying average of past squared gradients.
    解释:介绍了Adam优化器的核心思想。

  5. 中文:Dropout通过随机丢弃神经元来增加模型的鲁棒性和泛化能力。
    英文原文:Dropout is one of the most popular regularization techniques for deep neural networks. It was proposed in a paper by Geoffrey Hinton et al. in 2012 and further detailed in a 2014 paper by Nitish Srivastava et al.
    解释:描述了Dropout的基本原理和优势。

总结

通过本章的学习,读者将掌握训练深度神经网络的核心技术和方法。这些内容包括解决梯度消失和爆炸问题的策略、权重初始化、激活函数选择、批量归一化、迁移学习、优化器选择和正则化技术。这些技术能够显著提高深度神经网络的训练效率和模型性能,使其能够处理复杂的机器学习任务。

http://www.dtcms.com/wzjs/340575.html

相关文章:

  • dreamweaver如何做网站win10一键优化工具
  • 四川省政府采购网招标官网搜索关键词排名优化
  • 有没有做语文题的网站百度官方app下载
  • 做电话销售需要的网站什么平台引流最快
  • 江苏五星建设集团有限公司网站百度seo学院
  • 广西南宁做网站windows优化大师绿色版
  • 重庆网站建设招聘信息网站里的友情链接
  • 企业级网站开发原理图seo云优化外包
  • wordpress主题虚拟资源交易平台武汉seo网站优化
  • 优质手机网站建设哪家好上海牛巨微seo关键词优化
  • 网件路由器推荐泉州百度关键词优化
  • h5手机网站源码下载国内免费建站平台
  • 网站建设行业论坛seoyoon
  • 珠海市住房和城乡建设厅网站福州百度推广开户
  • android软件开发工程师windows优化大师手机版
  • 建设银行行号网站查询是什么sem营销推广
  • 做网站用什么软件axure如何做企业网站
  • 如何注册域名免费东莞整站优化推广公司找火速
  • 做服装广告素材网站班级优化大师app
  • 邯郸网站建设多少钱wix网站制作
  • 杭州建站软件seo比较好的公司
  • 建设图书馆网站离我最近的电脑培训中心
  • 网站开发信息平台项目总结今日新闻头条新闻最新
  • 网站设计专业域名ip查询查网址
  • 网站建设公司网磁力猫torrent kitty
  • 视频上传网站如何做营销策略有哪几种
  • 自创字 网站环球资源网站网址
  • 武汉建网公司网站建设软文范例大全100字
  • 做企业网站赚钱吗怎样在百度上做免费推广
  • 重庆模板建站哪家好seo百度关键词排名