神经网络与深度学习(二)

一、深度学习平台

在这里插入图片描述
在这里插入图片描述

张量(Tensor)

是一个物理量,对高维(维数 ≥ 2) 的物理量进行“量纲分析” 的一种工具。简单的可以理解为:一维数组称为矢量,二维数组为二阶张量,三维数组为三阶张量

计算图

  • 用“结点”(nodes)和“线”(edges)的有向图来描述数学计算的图像。“节点” 一般用来表示施加的数学操作,但也可以表示数据输入的起点/输出的终点,或者是读取/写入持久变量的终点。“线”表示“节点”之间的输入/输出关系。这些数据“线”可以输“size可动态调整”的多维数据数组,即“张量”(tensor)

PyTorch基本使用

  • 使用 tensor 表示数据
  • 使用 Dataset、DataLoader 读取样本数据和标签
  • 使用变量 (Variable) 存储神经网络权值等参数
  • 使用计算图 (computational graph) 来表示计算任务
  • 在代码运行过程中同时执行计算图

二、全连接网络

定义

  • 全连接网络由多个神经元组成,神经元之间的连接是全连接的,每个神经元都与上一层的所有神经元相连。全连接网络是一种前馈神经网络,输入只能从输入层进入,输出只能从输出层输出。其主要作用是进行分类和回归,基本结构由多个层组成,每一层都由多个神经元组成。最常见的结构是输入层、隐藏层和输出层。

常见结构输

  • 入层、隐藏层和输出层。其中输入层和输出层的神经元数量由问题本身决定,隐藏层的神经元数量通常由试验确定。每个神经元都有一个激活函数,用于对输入的信号进行处理,产生输出信号

弊端

  • 链接权过多,算的慢,难收敛,同时可能进入局部极小值,也容易产生过拟合问题。

解决方法

  • 减少权值连接,每一个节点只连到上一层的少数神经元,即局部连接网络。消除过拟合,采用信息分层处理,每一层在上层提取特征的基础上获取进行再处理,得到更高级别的特征。

三、卷积神经网络

  • 卷积神经网络的研究始于20世纪80至90年代,时间延迟网络和LeNet-5是最早出现的卷积神经网络。在21世纪后,随着深度学习理论的提出和数值计算设备的改进,卷积神经网络得到了快速发展,并被应用于计算机视觉、自然语言处理等领域。

基本概念

特征提取

  • 提取局部特征。
    填充
  • 在矩阵的边界上填充一些值,以增加矩阵的大小,通常用0或者复制边界像素来进行填充。
    步长
  • 步长决定了卷积核在输入数据上的滑动间隔,从而影响输出特征图的大小。
    多通道卷积
    池化
  • 使用局部统计特征,如均值或最大值。解决特征过多问题。

卷积神经网络结构

  • 由多个卷积层和下采样层构成,后面可连接全连接网络
  • 卷积层:𝑘个滤波器
  • 下采样层:采用mean或max
  • 后面:连着全连接网络
    在这里插入图片描述

学习算法

前向传播
在这里插入图片描述
第𝑙层是卷积+池化层
在这里插入图片描述

四、经典BP算法

结构

  • 输出层:
    在这里插入图片描述
  • 隐含层:
    在这里插入图片描述
  • 更新:
    在这里插入图片描述
    在这里插入图片描述

卷积NN的BP算法

卷积层+卷积层
在这里插入图片描述
卷积层+全连接层
在这里插入图片描述

五、LeNet-5网络

网络结构

在这里插入图片描述

C1层(第一个卷积层)

  • 主要功能:提取输入图像中的局部特征。它使用6个不同的5x5卷积核对输入图像进行卷积操作,每个卷积核在输入图像上滑动,通过卷积运算提取出不同的局部特征。
  • 输出:6个特征图(Feature Maps),每个特征图对应一个卷积核的输出结果。

S2层(池化层、下采样层)

  • 作用:降低特征图的维度,减少计算量,同时保留重要的特征信息。该层在C1卷积层之后,进一步对图像特征进行处理。
  • 具体处理:S2层会对C1层中每个22区域内的像素进行求和(或者其他池化操作,如最大池化),然后加上一个偏置,再将这个结果通过激活函数(如sigmoid函数)进行映射。这个过程实现了对特征的降维,减少了模型的复杂度,同时保留了重要的特征信息。S2层中的每个像素都与C1层中对应的2*2个像素以及一个偏置相连接,因此存在大量的连接。

C3层(第二个卷积层)

  • 作用:在S2池化层之后,进一步对图像特征进行抽象和提取。
  • 具体处理:C3层使用16个5x5的卷积核对S2层的输出特征图进行卷积操作,生成16个新的特征图。每个卷积核在S2层的特征图上滑动,通过卷积运算提取出更高级别的局部特征。
  • 输出:16个特征图,每个特征图都包含了输入图像在不同视角下的特征信息。

S4层(池化层)

  • 作用:降低特征图的维度,以减少模型的参数数量和计算复杂度,同时尽可能地保留关键的特征信息。
  • 具体处理:在S4层中,特征图的每个神经元与C3层的一个大小为2x2的领域相连接,通过池化操作(如最大池化或平均池化)来整合这个区域内的特征信息。这样,S4层的每个特征图的大小都会减半,但通道数(即特征图的数量)保持不变,仍为16个。
  • 输出:S4层的输出将作为后续网络层的输入,继续参与模型的训练和推理过程。

C5层(第三个卷积层)

  • 作用:在S4池化层之后,继续对图像特征进行提取和抽象。
  • 具体处理:C5层使用120个5x5的卷积核对S4层的输出特征图进行卷积操作。由于卷积核的数量增加,C5层将产生120个特征图,每个特征图都包含了输入图像在不同视角下的高级特征信息。
  • 输出:卷积操作完成后,C5层的输出将作为后续全连接层的输入。

F6层(全连接层)

  • 作用:用于将前面层提取的局部特征整合为全局特征,以便进行分类任务。
  • 具体处理:F6层有84个节点,对应于一个7x12的比特图。这些节点与前一层的所有节点相连,通过权重和偏置进行线性变换,并使用激活函数(如Sigmoid函数)进行非线性处理。
  • 输出:

输出层

  • 作用:负责最终的分类任务。
  • 具体处理:(假设有10个类别)输出层通常有10个节点,每个节点对应一个类别的概率输出。softmax函数会将这10个节点的输出值映射到(0,1)区间内,并且所有节点的输出值之和为1,满足概率分布的性质。具体来说,对于输入图像,经过前面各层的处理后,会得到一个特征向量作为输出层的输入。然后,输出层会对这个特征向量进行线性变换,得到10个原始的输出值。接着,softmax函数会对这10个原始输出值进行指数运算,并进行归一化处理,最终得到10个概率值,分别表示输入图像属于各个类别的概率。
  • 输出:结果

基本卷积神经网络

AlexNet

网络结构
在这里插入图片描述

VGG-16

网络结构
在这里插入图片描述

残差网络

Inception网络

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

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

相关文章

调用飞书获取用户Id接口成功,但是没有返回相应数据

原因: 该自建应用没有开放相应的数据权限。 解决办法: 在此处配置即可。

单片机学习笔记——ESP32

ESP32 引言ESP32的一些基本知识ESP32 的通信能量消耗ESP的休眠模式中断程序定时器 Timers脉宽调制频 pulse-width modulation数模转换器SAR ADC 逐次逼近型ADC应用——停车占用探测HCSR-04引脚器件参数工作原理

DETR【Transformer+目标检测】

End-to-End Object Detection with Transformers 2024 NVIDIA GTC,发布了地表最强的GPU B200,同时,黄仁勋对谈《Attention is All You Need》论文其中的7位作者,座谈的目的无非就是诉说,Transformer才是今天人工智能成…

【环境变量】命令行参数 | 概念 | 理解 | 命令行参数表 | bash进程

目录 四组概念 命令行参数概念&理解 查看命令函参数 命令行字符串&命令行参数表 命令行参数存在的意义 谁形成的命令行参数 父进程&子进程&数据段 bash进程 最近有点小忙,可能更新比较慢。 四组概念 竞争性: 系统进程数目众多&#xff0c…

构建企业级微服务平台:实现可扩展性、弹性和高效性

在软件开发的快速发展领域中,企业不断努力构建健壮、可扩展和高效的系统。随着微服务架构的出现,再加上云原生技术的应用,创建敏捷且具有弹性的平台的可能性是无限的。在本指南中,我们将深入探讨使用强大的工具和技术组合&#xf…

Python基于深度学习的人脸识别项目源码+演示视频,利用OpenCV进行人脸检测与识别 preview

​ 一、原理介绍 该人脸识别实例是一个基于深度学习和计算机视觉技术的应用,主要利用OpenCV和Python作为开发工具。系统采用了一系列算法和技术,其中包括以下几个关键步骤: 图像预处理:首先,对输入图像进行预处理&am…

.Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置

.Net Core/.Net6/.Net8 &#xff0c;启动配置/Program.cs 配置 没有废话&#xff0c;直接上代码调用 没有废话&#xff0c;直接上代码 /// <summary>/// 启动类/// </summary>public static class Mains{static IServiceCollection _services;static IMvcBuilder _…

ViT模型实现-数据处理

目录 ViT模型实现 将PIL图像或NumPy ndarray转换为torch.Tensor torchvision是什么 img.con

flutter中的ListView单元测试

在 Flutter 中&#xff0c;你可能会希望测试 ListView 内容是否如预期那样显示&#xff0c;是否能够正确滚动&#xff0c;以及是否处理用户输入。以下是测试 ListView 的一些基本步骤&#xff1a; 测试 ListView 的内容 这涉及到确认 ListView 是否显示了正确数量的项&#x…

Debian linux版本下运行的openmediavault网盘 千兆网卡升级万兆

一、适用场景 1、使用vmware ESXi虚拟化平台运行多种不同应用服务器时&#xff0c;其中网盘服务器采用开源的openmediavault搭建&#xff1b; 2、将老专业服务器升级千兆网为万兆网&#xff1b; 3、需要转移的数据量大的企业或用户&#xff1b; 4、从服务器到服务器的数据转移…

【群晖】NASTOOL-自动化处理影音视频工具

【群晖】NASTOOL-自动化处理影音视频 本文主要从获取、部署、使用、配置等方面进行手把手教学如何使用nastool工具进行影音视频自动化处理。从此靠别繁琐的网上各个网址找资源-下载-复制-改名-刮削等操作。 准备 DSM 7.1 &#xff08;我使用的是群晖 7.1 系统&#xff0c;不管…

uniapp/设置桌面角标/发送系统通知/动态修改桌面应用图标/展示3d模型/仿淘宝二楼

uniapp的安卓apk图标角标设置消息数量 1、主要方法&#xff1a; 设置角标&#xff1a; plus.runtime.setBadgeNumber(999) 清除角标&#xff1a; //plus.runtime.setBadgeNumber(0)//没有效果 plus.runtime.setBadgeNumber(-1) //有效果 2、使用在具体的生命周期 1、打开app获取…

【图像处理小知识】PIL Image 中的P和L模式

在PIL&#xff08;Python Imaging Library&#xff09;中&#xff0c;P模式和L模式是两种不同的图像模式&#xff0c;用于表示图像的存储方式和色彩空间。 P模式&#xff08;Palette模式&#xff09;&#xff1a;P模式是一种索引颜色图像模式&#xff0c;它使用一个调色板&…

实战webSocket压测(二)jmeter配置webSocket连接

背景 我们可以通过Jmeter添加插件实现webSocket脚本编写。WebSocket的插件较多&#xff0c;我选择以WebSocket Samplers by Peter Doornbosch为例来进行配置。 步骤1、WebSocket Samplers插件安装 下载地址&#xff1a;JMeter WebSocket Samplers&#xff0c;建议下载最新版本…

Termius for Mac v8.4.0激活版下载

Termius for Mac是一款功能强大的多协议远程管理软件&#xff0c;专为开发人员、系统管理员和网络专业人士设计。它支持多种远程连接协议&#xff0c;如SSH、Telnet、RDP、VNC和RFB等&#xff0c;使得用户可以轻松连接到不同类型的远程服务器和设备。 软件下载&#xff1a;Term…

智慧展览馆:基于AI智能识别技术的视频智慧监管解决方案

一、建设背景 随着科技的不断进步和社会安全需求的日益增长&#xff0c;展览馆作为展示文化、艺术和科技成果的重要场所&#xff0c;其安全监控系统的智能化升级已成为当务之急。为此&#xff0c;旭帆科技&#xff08;TSINGSEE青犀&#xff09;基于视频智能分析技术推出了展览馆…

[C++初阶]初识C++(一)—————命名空间和缺省函数

声明: 本篇文献内容选自百度文库、比特就业课 代码内容部分选自比特就业课 一、命名空间 1.什么是命名空间 在编程语言中&#xff0c;命名空间是一种特殊的作用域&#xff0c;它包含了处于该作用域中的所有标示符&#xff0c;而且其本身也是由标示符表示的。命名空间的使用目…

STM32的定时器中断Cubemx

STM32的定时器中断Cubemx 0.定时器简介1.配置时钟2.配置定时器3.创建工程4.补充源码 0.定时器简介 基本定时器功能&#xff1a; 16位向上、向下、向上/下自动装载计数器16位可编程(可以实时修改)预分频器&#xff0c;计数器时钟频率的分频系数为1&#xff5e;65535之间的任意…

vue2源码解析——vue中如何进行依赖收集、响应式原理

vue每个组件实例vm都有一个渲染watcher。每个响应式对象的属性key都有一个dep对象。所谓的依赖收集&#xff0c;就是让每个属性记住它依赖的watcher。但是属性可能用在多个模板里&#xff0c;所以&#xff0c;一个属性可能对应多个watcher。因此&#xff0c;在vue2中&#xff0…

Practice of PILos——transform np.array into img ,store in batch

先放上源码 import os import shutil import subprocess import tarfileimport os import pandas as pd import numpy as np from PIL import Image# Set up Kaggle API credentials kaggle_json_path os.path.expanduser("~/.kaggle/kaggle.json")if not os.path.…