IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 《深度学习入门-基于Python的理论与实现》读书笔记 -> 正文阅读

[人工智能]《深度学习入门-基于Python的理论与实现》读书笔记

写在前面:

1、该读书笔记将侧重总结深度学习理论而非Python实现。

2、本书环境基于Python3.x+Numpy+Matplotlib。

第一章 Python入门

第二章 感知机

第三章 神经网络

? ? ? ? 最简单的神经网络有一个输入层一个输出层和一个中间层(隐藏层)组成,复杂的神经网络可以包含多层中间层。

????????神经网络与感知机(人类大脑的神经元)类似,神经元接受输入信息,判断是否激活该神经元,然后根据某种处理方式得到结果输出。拆解神经网络的一个节点可以发现,它是由输入x1、x2,偏置1,权重b、w1、w2,激活函数h()和输出y组成的。

????????具体公式可以如下表示,其中偏置表示该神经元被激活的难易度,激活函数h()则表示该神经元的处理方式。

?a = b + w1x1 + w2x2

y = h(a)

? ? ? ? ?最简单的激活函数是阶跃函数。

? ? ? ? 常用的激活函数包括sigmoid函数和ReLu函数?

? ? ? ? 神经网络的运算主要为大量的矩阵运算,注意各数据的维度要保持一致,输出的维度又权重的列数决定。

? ? ? ? ?输出层的激活函数与前几层稍有不同,通常神经网络可以用在分类问题(数据属于哪一个类别)和回归问题(根据某个输入预测一个(连续的)数值)上,一般来说,分类问题用softmax函数,回归问题用恒等函数。

? ? ? ? 恒等函数将输入按原样输出,不做任何改动;softmax函数可以用以下式子表示,使用softmax函数可以用概率的方法处理问题。

? ? ? ? ?使用神经网络解决问题时,需要先使用训练数据进行权重参数的学习;进行推理时,使用刚才学习到的参数,对输入数据进行分类。

?第四章 神经网络的学习

? ? ? ? ?首先需要提取特征量,这里比较以下传统方法、机器学习和神经网络的区别。

? ? ? ? ?机器学习中,一般将数据分为训练数据和测试数据,训练数据用来寻找最优参数,然后使用测试数据评价模型的泛化能力,泛化能力是指处理未被观察过的数据的能力,获得泛化能力是机器学习的最终目标。

? ? ? ? 寻找最优参数即寻找使损失函数的值最小的参数,因此需要先定义损失函数,最常用的是均方根误差,其中y表示神经网络的输出,t表示监督数据,k表示数据维数。

? ? ? ? ?其他还有交叉熵误差等。

? ? ? ? ?注意不能使用识别精度为指标,因为需要输出值是连续的,否则参数的导数在绝大多数地方都会变成0,因此阶跃函数不能作为激活函数,否则输出都会变成不连续的,而sigmoid函数的导数在任何地方都不为0,这对神经网络的学习非常重要。

? ? ? ? 注:batch是批处理的意思,batch_size=100表示将100张图同一批次处理。

?第五章 误差反向传播法

? ? ? ? 有数据式和计算图两种方法,计算图将计算过程用图形表示出来,比较直观,本章以计算图为例。

? ? ? ? 苹果价格100日元,个数2个,消费税10%,最后实付220日元。

? ? ? ? ?加上另一种水果后如下。

? ? ? ? ? ?用计算图解决问题的步骤是先构建计算图,然后从左到右计算。其中这个从左到右的计算过程是一种正方向的传播,简称正向传播,获得了正向传播结果后,可以通过导数计算实现反向传播。

??

?????????反向传播的计算顺序是,先将节点的输入信号乘以节点的局部导数(偏导数),然后再传递给下一个节点。比如反向传播时,“**2”节点的输入是z对z的偏导数,将其乘以局部导数即z对t的偏导数(因为正向传播是,输入是t、输出是z,所以这个节点的偏导数是z对t的偏导数),然后传播给下一个节点。注意反向传播第一个节点的输入是1;从图上的公式可以看出反向传播符合链式法则,即一个节点的输入累乘上这个节点的偏导数就等于这个节点的输出。

第六章 与学习相关的技巧

????????Dropout是一种在学习过程中随机删除神经元的方法。训练时,随机选出隐藏层的神经元,然后将其删除。被删除的神经元不再进行信号的传递。训练时,每传递一次数据,就会随机选择要删除的神经元。然后,测试时,虽然会传递所有的神经元信号,但是对于各个神经元的输出,要乘上训练时的删除比例后再输出。

????????通过使用Dropout,训练数据和测试数据的识别精度的差距变小了,并且训练数据也没有达到100%的识别精度。像这样,通过使用Dropout,即使是表现力强的网络,也可以抑制过拟合,即实际使用时效果较好。

?第七章 卷积神经网络

????????Convolutional Neural Network,CNN,常用于图像识别和语音识别。 主要包含输入层、卷积层、激活函数(输出层常使用Softmax,其他层常使用ReLu)、池化层、全连接层(通常使用Affine)和输出层。

卷积层

? ? ? ? ?如果每次进行卷积运算都会缩小空间,那么在某个时刻输出大小就有可能变成1,导致无法再应用卷积运算,为了避免出现这种情况,所以要使用填充。

? ? ? ? 并且卷积运算的步幅可以大于1,增大步幅,输出尺寸会变小,而填充后,输出尺寸会变大。通过以下公式可以计算输出尺寸大小。

? ? ? ? 设输入尺寸为(H,W),滤波器尺寸为(FH,FW),输出尺寸为(OH,OW),填充为P,步幅为S。此时输出尺寸为

OH=(H+2P-FH)/S + 1

OW=(W+2P-FW)/S + 1

? ? ? ? ?必须使分式可以除尽。

?通道方向上有多个特征图

?????????会按通道进行输入数据和滤波器的卷积运算,并将结果相加,从而得到输出。

通道方向上有多个滤波器

? ? ? ? 这样输出也可以有多个输出。

? ? ? ? ?同时可以应用批处理,一次有多个输入。

????????各部分维度如下图。

池化层

? ? ? ? 用于缩小高、长方向上的空间运算。池化有多种方式,max池化是获取最大值的池化方式,另外还有average池化等。

? ? ? ? ?池化不会改变输入数据和输出数据的通道数。

? ? ? ? ?池化对输入数据的微小偏差有鲁棒性。

第八章 深度学习

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-07-31 16:38:15  更:2021-07-31 16:40:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/2 8:13:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码