第3章 神经网络入门

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010819416/article/details/89674024

3.1 神经网络剖析

训练神经网络围绕:

  • 层,多个层组合成网络(或模型)
  • 输入数据和相应的目标
  • 损失函数,即用于学习的反馈信号
  • 优化器,决定学习过程如何进行

在这里插入图片描述

3.1.1 层:深度学习的基础组件

层是一个数据处理模块,将一个或多个输入张量转换为一个或多个输出张量。
大多数层是有状态的,即层的权重。
权重是利用随机梯度下降学到的一个或多个张量,其中包含网络的知识。
2D张量用密集连接层来处理,3D张量用循环层来处理,4D张量用二维卷积层来处理。

3.1.2 模型:层构成的网络

深度学习模型是层构成的有向无环图。

3.1.3 损失函数与优化器:配置学习过程的关键

  • 损失函数 :在训练过程中需要将其最小化。它能够衡量当前任务是否已成功完成。
  • 优化器 : 决定如何基于损失函数对网络进行更新。它执行的是随机梯度下降(SGD)的某个变体。

3.2 Keras简介

Keras是一个Python深度学习框架。

3.2.1 Keras、TensorFlow、Theano和CNTK

在这里插入图片描述

3.2.2 使用Keras开发:概述

Keras工作流程:
(1)定义训练数据:输入张量和目标张量
(2)定义层组成的网络(或模型),将输入映射到目标
(3)配置学习过程:选择损失函数、优化器和需要监控的指标
(4)调用模型的fit方法在训练数据上进行迭代

定义模型有两种方法:一种是Sequential类(仅用于层的线性堆叠),另一种是函数式API(用于层组成的有向无环图)

3.3. 建立深度学习工作站

3.3.1 Jupyter笔记本:运行深度学习实验的首选方法

3.3.2 运行Keras:两种选择

3.3.3 在云端运行深度学习任务:优点和缺点

3.3.4 深度学习的最佳GPU

3.4 电影评价分类:二分类问题

3.4.1 IMDB数据集

3.4.7 小结

  • 通常需要对原始数据进行大量预处理,以便将其转换为张量输入到神经网络中。
  • 带有relu激活的Dense层堆叠,可以解决很多种问题,包括情感分类
  • 对于二分类问题,网络的最后一层应该是只有一个单元并使用sigmoid激活的Dense层,网络输出应该是0~1范围内的标量,表示概率值
  • 对于二分类问题的sigmoid标量输出,你应该使用binary_crossentropy损失函数
  • rmsprop优化器通常都是足够好的选择

3.5 新闻分类:多分类问题

3.6 预测房价:回归问题

猜你喜欢

转载自blog.csdn.net/u010819416/article/details/89674024
今日推荐