深度学习算法及卷积神经网络

news2025/1/12 21:55:49

目录标题

      • 传统神经网络
        • 矩阵计算:
        • 正则化:
        • 激活函数sigmoid
        • 损失函数
        • 前向传播
        • 激活函数Relu
        • 数据预处理
        • DROP-OUT
      • 卷积神经网络(CNN)
        • 1.CNN网络的构成
        • 2. 卷积层
          • 2.1 卷积的计算⽅法
          • 2.2 padding
          • 2.3 stride
          • 2.4 多通道卷积
          • 2.5 多卷积核卷积
          • 2..6 特征图大小
        • 3. 池化层(Pooling)
          • 3.1 最⼤池化
          • 3.2 平均池化
        • 4. 全连接层

传统神经网络

深度学习不适用情况:跨域(股票预测问题),旧历史数据的规律不适合新数据的规律

矩阵计算:

在这里插入图片描述
输入数据x[32×32×3]=3072个像素点,展开成一列,
目的:做一个10分类,10组权重参数,得到10个值,属于各个类别的概率
偏置项b,10个值
权重参数W得到:先随机,or预训练模型,
创新:修改损失函数。
损失函数:说明预测与实际的差异,差异越大说明W越不好需要大调,差异越小W微调

正则化:

在这里插入图片描述
W1和W2 与x的结果相同,但不代表w1和w2是一样的,w1只关注局部特征(偏科,随x变化剧烈,容易受异常点影响),w2关注全局(均衡,变化稳定)
如何体现出w1和w2的区别?-----正则化惩罚(防止过拟合)
异常点处理:最好在进入模型人工处理掉(比赛数据里面)

L2惩罚项:
在这里插入图片描述

损失函数 = 数据损失 + 正则化惩罚项
正则化L2惩罚项:
在这里插入图片描述

激活函数sigmoid

分类问题,希望得到的是一个概率值。但模型出来的数据什么都可能,如何做?—映射
sigmoid函数:
在这里插入图片描述
梯度消失问题:数值越大,梯度越接近0,更新不了行为参数,神经网络是一个传一个的模型,这个问题导致了97年到12年一直没有发展
神经网络:多个线性回归与逻辑回归的组和

损失函数

在这里插入图片描述
得到预测值后,
1,先把差异放大(加个指数函数ex
2,再用归一化转化为概率值在这里插入图片描述

3,计算损失值:只考虑正确类别的概率值,越接近1损失值越接近0计算损失值
log函数:
在这里插入图片描述

前向传播

反向传播(即梯度下降)
神经网络:把人类理解的特征转化成,计算机理解的特征
在这里插入图片描述
隐藏层1:特征1 = 0.7H-0.1W+0.6A,。。。
中间数–权重
特征变换:Wx+b变成一组新特征
隐藏层2再做一遍,找到更适合的特征。

W和b的大小个数:
在这里插入图片描述

激活函数Relu

如果只引入线性,解决的问题有限–引入非线性函数
Relu:小于0的特征直接删掉了,
越重要的特征越学越大
在这里插入图片描述

数据预处理

去均值:在这里插入图片描述
标准化
在这里插入图片描述

DROP-OUT

不用全部的神经元,防止过拟合
随机杀死神经元:
在这里插入图片描述

卷积神经网络(CNN)

利⽤全连接神经⽹络对图像进⾏处理存在以下两个问题:

  • 需要处理的数据量⼤,效率低
  • 图像在维度调整的过程中很难保留原有的特征,导致图像处理的准确率不⾼

1.CNN网络的构成

CNN⽹络受⼈类视觉神经系统的启发
CNN⽹络主要有三部分构成:

  • 卷积层、池化层和全连接层构成,其中卷积层负责提取图像中的局部特征;
  • 池化层⽤来⼤幅降低参数量级(降维);
  • 全连接层类似⼈⼯神经⽹络的部分,⽤来输出想要的结果。

在这里插入图片描述

2. 卷积层

2.1 卷积的计算⽅法

卷积层的⽬的是提取输⼊特征图的特征
如何卷积:原始图像,要提取这个图像上的特征,与卷积核进行一个卷积(把卷积核在图像上进行一个遍历),输出一个特征结果
在这里插入图片描述
卷积运算本质上就是在滤波器和输⼊数据的局部区域间做点积。
在这里插入图片描述

点计算⽅法,同理可以计算其他各点,得到最终的卷积结果。
最后结果作为特征图输出

2.2 padding

要保证结果与原图大小一样,通过padding
在上述卷积过程中,特征图⽐原始图减⼩了很多,我们可以在原图像的周围进⾏padding,来保证在卷积过程中特征图⼤⼩不变。
进行0来填充:
55的图,要输出55的特征图:
在这里插入图片描述

2.3 stride

步长的设计:步长为1,也可以把stride增⼤,⽐如设为2,也是可以提取特征图的,如下图所示:
在这里插入图片描述

2.4 多通道卷积

前面是单通道的,下面看多通道的

计算⽅法如下:当输⼊有多个通道(channel)时(例如图⽚可以有 RGB三个通道),卷积核需要拥有相同的channel数,每个卷积核 channel 与输⼊层的对应 channel 进⾏卷积,将每个 channel 的卷积结果按位相加得到最终的 Feature Map

在这里插入图片描述

2.5 多卷积核卷积

当有多个卷积核时,每个卷积核学习到不同的特征,对应产⽣包含多个 channel 的 Feature Map,
在这里插入图片描述
n个卷积核产生n个 Feature Map

2…6 特征图大小

输出特征图的⼤⼩与以下参数息息相关:

  • size:卷积核/过滤器⼤⼩,⼀般会选择为奇数,⽐如有1* 1, 3 *3, 5 *5
  • padding:零填充的⽅式
  • stride:步⻓
    在这里插入图片描述
    在tf.keras中实现:
tf.keras.layers.MaxPool2D(pool_size=(2, 2), strides=None, padding='valid')
#pool_size: 池化窗⼝的⼤⼩
#strides: 窗⼝移动的步⻓,默认为1
#padding: 是否进⾏填充,默认是不进⾏填充的

3. 池化层(Pooling)

池化层迎来降低了后续⽹络层的输⼊维度,缩减模型⼤⼩,提⾼计算速度,并提⾼了Feature Map 的鲁棒性,防⽌过拟合,
它主要对卷积层学习到的特征图进⾏下采样(subsampling)处理,主要由两种:

3.1 最⼤池化

Max Pooling,取窗⼝内的最⼤值作为输出,这种⽅式使⽤较⼴泛
在这里插入图片描述

3.2 平均池化

Avg Pooling,取窗⼝内的所有值的均值作为输出
在这里插入图片描述

4. 全连接层

全连接层位于CNN⽹络的末端,经过卷积层的特征提取与池化层的降维后,将特征图转换成⼀维向量送⼊到全连接层中进⾏分类或回归的操作。
在这里插入图片描述
flatten展开,特征图展开

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/444285.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无法打开“fsevents.node

在Mac 打开vue项目的时候「c c」出现这个,可能是一个项目多个ide打开, 如何解决呢? 图1 把 node_modules 文件夹删了,在编译一把。也就是 npm install npm install

配置中心Disconf、SpringCloudConfig、Apollo、Nacos比较

Config Server Center 1、Disconf 1、1简介 2014年7月百度开源的配置管理中心,同样具备配置的管理能力,不过目前已经不维护了,最近的一次提交是两年前了。 2、SpringCloudConfig 2-1、简介 2014年9月开源,Spring Cloud 生态…

技术选型|日志采集和管理工具您都了解哪些,看这篇就够了

简介 对于日志管理当前网络上提供了大量的日志工具,今天就给大家分析总结一下这些常用工具的特点,希望对你们在选型时有所帮助,如果有用记得一键三连。 1、Filebeat Filebeat是用于转发和集中日志数据的轻量级传送程序。作为服务器上的代理…

2_STM32最小系统设计

MCU最小系统:一个MCU在正常工作中,正常下载程序前提下的最简电路。 最简电路包含: 供电电路、复位电路、时钟电路(高速时钟、低速时钟):2个外部晶振、Boot启动模式选择(跳线帽)、下载电路(uart/JTAG/SWD)、后备电池VBAT(维持后备区…

使用vscode+cmake进行c++代码编写

1. 前言 因为vcode的主题格式比visual studio好看,而且注释使用ctr/注释非常方便。所以对于一下小型的c代码测试,例如用不到外部库,只需要纯c自己语法,我就想和python一样,在vscode上写。因此记录一下比较简单的典型的…

SAP ABAP 使用SICF发布HTTP API接口

一、SE24创建类:Z_HCX_HTTP 1、创建类: 2、切换到接口(interface)页签,输入IF_HTTP_EXTENSION ,回车。切换到方法(method)页签,双击IF_HTTP_EXTENSION~HANDLE_REQUEST进…

Linux学习记录——십구 进程间通信(1) 管道

文章目录 1、进程间通信介绍1、目的2、发展 2、管道1、原理2、简单模拟实现3、总结 3、匿名管道——控制进程4、命名管道1、原理2、模拟实现 1、进程间通信介绍 之前所学都是单个进程,多个进程之间如何运转? 1、目的 数据传输:一个进程需要…

Linux下SOCKET编程

一、SOCKET编程 1、socket()函数 int socket(int protofamily, int type, int protocol);//返回sockfd返回值sockfd是描述符。 socket函数对应于普通文件的打开操作。普通文件的打开操作返回一个文件描述字,而socket()用于创建一个socket描述符(socke…

2. C++使用Thread线程参数传递问题

1. 说明 在子线程函数中进行参数传递,实际上是Thread类的构造函数对传递的参数进行了拷贝,拷贝到线程独立的内存中,及时参数是引用的形式,也可以在新线程中进行访问,如果参数传递时的类型不一致,在线程的上…

Servlet(二)

目录 1.Cookie 和 Session 1.1HttpServletRequest 类中的相关方法 1.HttpSession getSession() 2.Cookie[] getCookies() 1.2HttpServletResponse 类中的相关方法 1.void addCookie(Cookie cookie) 1.3HttpSession 类中的相关方法 1.4Cookie 类中的相关方法 1.5网页登录…

详解Spring Security

目录 1.概述 2.登录 2.1.默认用户 2.2.自定义用户 2.3.加密 2.4.绕过加密 2.5.怎么传递用户信息 2.6.记住我 3.登出 4.使用数据库 4.1.jdbcAuthentication 4.2.userDetailsService 5.自定义处理器 6.更多细粒度的控制 7.原理简述 1.概述 Spring Security是一个…

使用 Kubernetes 运行 non-root .NET 容器

翻译自 Richard Lander 的博客 Rootless 或 non-root Linux 容器一直是 .NET 容器团队最需要的功能。我们最近宣布了所有 .NET 8 容器镜像都可以通过一行代码配置为 non-root 用户。今天的文章将介绍如何使用 Kubernetes 处理 non-root 托管。 您可以尝试使用我们的 non-root…

gateway报 netty堆外内存溢出问题解决io.netty.util.internal.OutOfDirectMemoryError

昨天线上网关突然无法访问。打开日志看到错误信息“io.netty.util.internal.OutOfDirectMemoryError” 堆外内存溢出。。这也没碰到过啊,看来今天准点下班的愿望又落空了。老规矩面向百度编程。先看看网上有没有其他兄弟碰到这个问题。一顿搜索之后发现,…

已解决windows pycocotools安装失败问题 —— 超简单

作者主页:爱笑的男孩。的博客_CSDN博客-深度学习,YOLO,活动领域博主爱笑的男孩。擅长深度学习,YOLO,活动,等方面的知识,爱笑的男孩。关注算法,python,计算机视觉,图像处理,深度学习,pytorch,神经网络,opencv领域.https://blog.csdn.net/Code_and516?typecollect个人…

分库分表与分布式主键生成策略详解--一个无数人踩过却一直被人忽视的深坑

文章目录 一、从分库分表的一个神坑说起二、分布式主键要考虑哪些问题?三、主要的主键生成策略1、数据库策略2、应用单独生成3、第三方服务统一生成4、与第三方结合的segment策略 四、定制雪花算法1、如影随形的时钟回拨问题2、用主键生成策略优化分配工作进程位3、…

萤石“小步快走”,跨进智能家居生态圈

文丨智能相对论 作者丨Kinki 近日,萤石网络(下称“萤石”)举办了2023春季新品发布会,这是公司上市以来的首个新品发布会,除了拳头产品智能家居摄像机之外,还有智能入户产品、TV Studio等十多款新品&#…

NC65 集团业务参数 GLS01参数值的默认值作用是什么?

NC65 集团业务参数 GLS01参数值的默认值作用是什么? 用在总账系统的所有账簿。如果设置的期间个数大于12,还得要求所查询的账表支持跨年查询,比如科目余额表,不支持跨年(注意:这里说的不支持跨年是指余额为…

4.2.1朴素模式匹配算法

什么是字符串的模式匹配: 从这段字符串里面搜索内容,被搜索的字符串我们称之为主串。 也可能匹配不到 主串长度为n,模式串长度为m。 朴素模式匹配算法:将主串中所有长度为m的字串依次与模式串对比,直到找到一个完全匹…

【JavaEE】File、InputStream和OutputStream的使用

1.File 在计算机中目录结构如下: 而File就表示一个目录或者一个普通文件。 File表示目录: File表示普通文件: 我们先来看File的构造方法: 构造器描述File(File parent, String child)根据父目录 孩子文件路径,创…

Linux权限提升—定时任务、环境变量、权限配置不当、数据库等提权

Linux权限提升—定时任务、环境变量、权限配置不当、数据库等提权 1. 前言1.1. 如何找编译好的EXP 2. 定时任务提权2.1. 查看定时任务2.2. 通配符注入提权2.2.1. 创建执行脚本2.2.2. 创建定时任务2.2.3. 查看效果2.2.4. 提权操作2.2.4.1. 切换普通用户2.2.4.2. 执行命令2.2.4.3…