google深度学习笔记从线性分类器到深度神经网络

梦里茶 梦里茶     2022-12-14     694

关键词:

转载请注明作者:梦里风林
Github工程地址:https://github.com/ahangchen/GDLnotes
欢迎star,有问题可以到Issue区讨论
官方教程地址
视频/字幕下载

Limit of Linear Model

  • 实际要调整的参数很多

如果有N个Class,K个Label,需要调整的参数就有(N+1)K个

  • Linear Model不能应对非线性的问题

  • Linear Model的好处

    • GPU就是设计用于大矩阵相乘的,因此它们用来计算Linear Model非常efficient
    • Stable:input的微小改变不会很大地影响output

    • 求导方便:线性求导是常数

  • 我们希望参数函数是线性的,但整个model是非线性的

  • 所以需要对各个线性模型做非线性组合

    • 最简单的非线性组合:分段线性函数(RELU)

Neural network

  • 用一个RELU作为中介,一个Linear Model的输出作为其输入,其输出作为另一个Linear Model的输入,使其能够解决非线性问题

  • 神经网络并不一定要完全像神经元那样工作
  • Chain Rule:复合函数求导规律

  • Lots of data reuse and easy to implement(a simple data pipeline)
  • Back propagation

    • 计算train_loss时,数据正向流入,计算梯度时,逆向计算
    • 计算梯度需要的内存和计算时间是计算train_loss的两倍

Deep Neural Network

Current two layer neural network:

优化:

  • 优化RELU(隐藏层), wider
  • 增加linear层,layer deeper

    • Performance: few parameters by deeper
    • 随层级变高,获得的信息越综合,越符合目标

About t-model

  • t-model只有在有大量数据时有效
  • 今天我们才有高效的大数据训练方法:Better Regularization
  • 难以决定适应问题的神经网络的规模,因此通常选择更大的规模,并防止过拟合

Avoid Overfit

Early Termination

  • 当训练结果与验证集符合度下降时,就停止训练

Regulation

  • 给神经网络里加一些常量,做一些限制,减少自由的参数
  • L2 regularization

在计算train loss时,增加一个l2 norm作为新的损失,这里需要乘一个β(Hyper parameter),调整这个新的项的值

Hyper parameter:拍脑袋参数→_→

  • l2模的导数容易计算,即W本身

DropOut

最近才出现,效果极其好
- 从一个layer到另一个layer的value被称为activation
- 将一个layer到另一个layer的value的中,随机地取一半的数据变为0,这其实是将一半的数据直接丢掉
- 由于数据缺失,所以就强迫了神经网络学习redundant的知识,以作为损失部分的补充
- 由于神经网络中总有其他部分作为损失部分的补充,所以最后的结果还是OK的
- More robust and prevent overfit
- 如果这种方法不能生效,那可能就要使用更大的神经网络了

  • 评估神经网络时,就不需要DropOut,因为需要确切的结果
  • 可以将所有Activation做平均,作为评估的依据
  • 因为我们在训练时去掉了一半的随机数据,如果要让得到Activation正确量级的平均值,就需要将没去掉的数据翻倍

觉得得我的文章对您有帮助的话,就给个star吧~

计算机视觉与深度学习线性分类器

...性分类器形式简单,易于理解。通过层级结构(神经网络)或高维映射(支持向量机)可以形成功能强大的非线性模型。线性分 查看详情

tensorflow实战google深度学习框架笔记codepart(代码片段)

深层神经网络线性模型的局限性激活函数实现去线性化a=tf.nn.relu(tf.matmul(x,w1)+biases1)y=tf.nn.relu(tf.matmul(a,w2)+biases2)经典损失函数#计算交叉熵cross_entropy=-tf.reduce_mean(y_*tf.log(tf.clip_by_value(y,le-10,1.0)))#tf.clip_by_value样例 查看详情

深度学习—线性分类器理解

...大的方法来解决图像分类问题,该方法可以自然地延伸到神经网络和卷积神经网络上。这种方法主要有两部分组成:一个是评分函数(scorefunction),它是原始图像数据到类别分值的映射。另一个是损失函数(lossfunction),它是... 查看详情

神经网络之深度学习

神经网络非线性能力即原理1. 感知器与逻辑门2. 强大的空间非线性切分能力3. 网络表达能力与过拟合问题4. BP算法与SDGCafé主要是用于图像的主流框架Tensflow框架,灵活的网络,工程上做训练,常用库TF-learning,TensorLayerKreas框架搭... 查看详情

bp神经网络分类实战项目(深度学习笔记)原创!基础篇

查看详情

深度学习笔记:lstm

深度学习笔记(一):logistic分类深度学习笔记(二):简单神经网络,后向传播算法及实现深度学习笔记(三):激活函数和损失函数深度学习笔记(四):循环神经网络的概念,结构和代码注释深度学习笔记(五):LSTM看到一篇讲LSTM非常... 查看详情

斯坦福cs231n—深度学习与计算机视觉----学习笔记课时12&&13

课时12神经网络训练细节part2(上)训练神经网络是由四步过程组成,你有一个完整的数据集图像和标签,从数据集中取出一小批样本,我们通过网络做前向传播得到损失,告诉我们目前分类效果怎么样。然后我们反向传播来得... 查看详情

深度学习笔记:lstm

...习笔记(一):logistic分类深度学习笔记(二):简单神经网络,后向传播算法及实现深度学习笔记(三):激活函数和损失函数深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)深度学习笔记(四):循环... 查看详情

google深度学习笔记卷积神经网络(代码片段)

ConvolutionalNetworks转载请注明作者:梦里风林Github工程地址:https://github.com/ahangchen/GDLnotes欢迎star,有问题可以到Issue区讨论官方教程地址视频/字幕下载deepdiveintoimagesandconvolutionalmodelsConvnetBackGround人眼在识别图像 查看详情

深度学习初步:

...实际工程中一般这么算:            3.神经网络:      (1)神经网络:一般神经网络结构     (2)从逻辑回归到神经元“感知器”          (3)添加少量隐层===>浅层神经网络  ... 查看详情

深度学习中得数学,高效计算基础与线性分类器

深度学习说到底就是要调节网络中得权重,使网络的分类结果更接近于训练值。这个重复迭代的过程又是一个线性回归的问题。在这种可能会用到高数,线性代数,概率论中的知识。一、数学基础提一提。1.高数中得知识。 ... 查看详情

深度学习笔记第6课:卷积神经网络简介

到目前为止,我们已经大致地介绍了一些新网络但是,如果你对数据已有一些了解,比如它是一张图片,或者一系列事物,你可以做得更好颜色想法非常简单,如果你的数据是某种结构,则你的网络没有必要从零开始学习结构,... 查看详情

tensorflow实战google深度学习框架笔记摘要pfour

6.4经典卷积网络模型LeNet-5模型     Inception-v3模型     6.5卷积神经网络迁移学习              查看详情

深度学习文献阅读笔记

...知网)  记录了Hinton提出的两个重要观点:一是多隐层神经网络具有优异的特征学习能力,而是深度网络在训练上的难度可通过“逐层初始化”有效克服。具体描写叙述了及机器学习的两次浪潮:浅层学习和深度学习,并指出... 查看详情

《andrewng深度学习》笔记1

深度学习概论1.什么是神经网络?2.用神经网络来监督学习3.为什么神经网络会火起来?1.什么是神经网络?深度学习指的是训练神经网络。通俗的话,就是通过对数据的分析与计算发现自变量与因变量的映射关系(神经网络模型)... 查看详情

深度学习方法及应用——学习笔记

...用多层的、非线性信息处理方法,大概就是结构比较深的神经网络算法,也是包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,每一层可以看作是一个逻辑... 查看详情

google深度学习笔记循环神经网络实践(代码片段)

转载请注明作者:梦里风林Github工程地址:https://github.com/ahangchen/GDLnotes欢迎star,有问题可以到Issue区讨论官方教程地址视频/字幕下载加载数据使用text8作为训练的文本数据集text8中只包含27种字符:小写的从a到z&#x... 查看详情

深度学习笔记:优化方法总结(bgd,sgd,momentum,adagrad,rmsprop,adam)

...习笔记(一):logistic分类深度学习笔记(二):简单神经网络,后向传播算法及实现深度学习笔记(三):激活函数和损失函数深度学习笔记:优化方法总结深度学习笔记(四):循环神经网络的概念,结构和代... 查看详情