深度学习(1)--基础概念

目录

一.计算机视觉(CV)

二.神经网络基础

三.神经网络整体架构


一.计算机视觉(CV)

(1).计算机视觉中图像表示为三位数组,其中三维数组中像素的值为0~255,像素的值越低表示该点越暗,像素的值越高表示该点越亮。

(2).图像表示 A*B*C,其中A,B分别为图像的长和宽,C则表示图像的颜色通道。

eg: 300*100*3 表示该图像的高度为300,宽度为100,颜色通道为3,即表示该图像有三个颜色通道。(RGB)

二.神经网络基础

1.得分函数:

(1).输入的图片经过得分函数获得对应每个类别的得分,其中x为图片参数,W为权重值参数。

(2).对于32x32x3的图片,一共有3072个像素点,所以像素点矩阵应当是一个3072x1大小的二维矩阵,而每个像素点对应一个权重值,所以权重值矩阵应当是一个1x3072大小的二维矩阵,两个矩阵相乘就可以得到对应该图片类别的一个得分。

(3).b为偏置项,其中W权重参数对结果起决定性作用,b偏置参数对结果进行微调。(b的矩阵大小和得分的矩阵大小相同,对于不同的类别分别进行不同的微调)

eg:将图片分为四个像素点,并选中三个类别图片的权重获取得分值的计算方法:

权重中正值表促进效果,负值表抑制效果,正值越大即对图像的决定性作用越强。

 2.损失函数:

损失函数(loss function)就是用来度量模型的预测值f(x)与真实值Y的差异程度的运算函数,它是一个非负实值函数,通常使用L(Y, f(x))来表示,损失函数越小,模型的鲁棒性就越好。

损失函数使用主要是在模型的训练阶段,每个批次的训练数据送入模型后,通过前向传播输出预测值,然后损失函数会计算出预测值和真实值之间的差异值,也就是损失值。得到损失值之后,模型通过反向传播去更新各个参数,来降低真实值与预测值之间的损失,使得模型生成的预测值往真实值方向靠拢,从而达到学习的目的。

eg:根据前一步得分函数计算出的得分值通过损失函数来计算损失值

损失函数 = 数据损失 (有多种计算方法)+ 正则化惩罚项(防止过拟合的情况出现)

过拟合:预测值和样本标签值几乎完全一致的情况,损失函数极小但泛化性能差。训练集的损失函数值很小,但是验证集/测试集上的损失函数值很大。

3.前向传播:

传播过程:将得分值转化为概率值再转换为损失值

(1).exp操作是对数进行指数运算(e^x)。

(2).normalize归一化计算,将前一步计算出的值转化为概率。

(3).通过对数函数将概率值转化为损失值。

4.反向传播:

反向传播通过导数链式法则计算损失函数对各参数的梯度,并根据梯度进行参数的更新。

损失对参数梯度的反向传播可以被这样直观解释:由A到传播B,即由 ∂L/∂A 得到 ∂L/∂B ,由导数链式法则 ∂L/∂B=(∂L/∂A)⋅(∂A/∂B) 实现。所以神经网络的BP(Back-propagation)就是通过链式法则求出 L对所有参数梯度的过程。

可以一步一步的计算梯度值,也可以取一整块计算梯度值。

反向传播中的常见门单元:

(1).加法门单元:例如对式子x+y求梯度,分别对x和y求偏导得到的值都是1,所以得到的梯度值均为1*后一个式子计算出的梯度值,相当于均等分配。

(2).MAX门单元:将梯度传给最大的值。

(3).乘法门单元:例如对式子x*y求梯度,分别对x和y求偏导得到的是y和x,所以得到的梯度值分别为y*后一个式子计算出的梯度值以及x*后一个式子的梯度值,相当于互换梯度值。

三.神经网络整体架构

生物模型→数学模型

(1).隐藏层hidden layer1保存着由原始特征转化成的计算机能够识别的特征值。

(2).输入层input layer到隐藏层hidden layer的变化通过矩阵相乘实现,其中输入层矩阵所乘的矩阵即为权重矩阵。eg: I[1x3] X W[3x4] = H[1x4]

(3).hidden layer2保存着对hidden layer1的特征值进一步加工得到的特征值。此时应当乘一个4x4大小的权重矩阵。

(4).最后一步由隐藏层到输出层,其中同样乘以相应的权重矩阵。此时应当乘以一个4x1大小的权重矩阵。

(5).神经元个数越多,效果一般来说会越好,但是要避免过拟合等问题。

激活函数:

激活函数(Activation Function)是一种添加到人工神经网络中的函数,旨在帮助网络学习数据中的复杂模式。在神经元中,输入的input经过一系列加权求和后作用于另一个函数,这个函数就是这里的激活函数。

神经网络中每一层的输入输出都是一个线性求和的过程,下一层的输出只是承接了上一层输入函数的线性变换,所以如果没有激活函数,那么无论你构造的神经网络多么复杂,有多少层,最后的输出都是输入的线性组合,纯粹的线性组合并不能够解决更为复杂的问题。而引入激活函数之后,我们会发现常见的激活函数都是非线性的,因此也会给神经元引入非线性元素,使得神经网络可以逼近其他的任何非线性函数,这样可以使得神经网络应用到更多非线性模型中。 (在每一层对input值进行权重值的线性计算后再进行激活函数的非线性计算,给下一层的神经元引入非线性元素)

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

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

相关文章

美摄视频SDK的HDR格式编辑方案

在当今的视觉媒体时代,高动态范围(HDR)技术已成为高质量视频内容的标配。为了满足企业对高效、高质量视频处理的需求,美摄科技推出了业界领先的视频SDK,全面支持多种HDR标准的图像视频进行处理。 一、核心优势 HDR全…

视频智能识别周界入侵检测AI智能分析网关V4如何配置ONVIF摄像机接入

AI边缘计算智能分析网关V4性能高、功耗低、检测速度快,易安装、易维护,硬件内置了近40种AI算法模型,支持对接入的视频图像进行人、车、物、行为等实时检测分析,上报识别结果,并能进行语音告警播放。算法可按需组合、按…

从matlab的fig图像文件中提取数据

这里用的是openfig()函数打开的fig文件 →→→【matlab 中 fig 数据提取】 很简洁 →→→【MATLAB提取 .fig 文件中的数据】 这个给出了包含多个曲线的情况 →→→【提取matlab fig文件里的数据和legend】 chatgpt给出的方法 打开fig文件并保存数据 我的…

Vue入门七(Vuex的使用|Vue-router|LocalStorage与SessionStorage和cookie的使用|路由的两种工作模式)

文章目录 一、Vuex1)理解vuex2)优点3)何时使用?4)使用步骤① 安装vuex② 创建vuex③ 导入vuex④ 创建仓库Store⑤ 基本使用 5)五个模块介绍1.State2.mutations3.actions4.Getter5.Modules 6)购物…

QT设置QTableWidget左上角文字(CornerButton)

关于这个左上角 在QTableWidget中,左上角有一个可以点击的空白区域,如图: 默认情况下,点击它会全选所有的单元格。 它即不属于列表头,也不属于行表头,它的名称叫Corner Button 在QTableWidget中&#xf…

Flask 项目怎么配置并创建第一个小项目?附上完成第一个小案例截图

目录 1. 为什么要学习 flask? 2. flask 是什么? 3. flask 如何使用? 要安装 Flask,可以按照以下步骤进行: 4. 使用流程 4.1. 新建项目 4.1.1. 打开 pycharm,新建项目 4.1.2. 设置目录,并…

【JavaEE进阶】 依赖注⼊DI详解

文章目录 🌴什么是依赖注入🎄依赖注入的三种方法🚩属性注⼊(Field Injection)🚩构造⽅法注⼊🚩Setter注⼊🚩三种注⼊的优缺点 🌳Autowired存在的问题🌲解决Autowired存在的问题&…

借势营销怎么做才能有效宣传?媒介盒子揭秘

借势营销之所以受到品牌欢迎,原因就在于通过借势营销能够达到“润物细无声和四两拨千斤的效果,用小投入获得大回报,但有许多企业稍有不慎就会翻车,今天媒介盒子就从多个角度和大家聊聊:借势营销怎么做才能有效宣传。 一…

深入详解使用 RabbitMQ 过程中涉及到的多个细节问题(面试可用)

目录 1、基础类问题 2、cluster 相关问题 3、综合性问题 4、参考资料 C软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/125529931C/C基础与进阶&…

如何隐藏服务器真实IP地址,隐藏服务器IP有什么好处

首先我们介绍了隐藏服务器IP的概念及工作模式,接着阐述了其对于DDoS攻击的防护作用。然后介绍了如何利用隐藏服务器IP增加系统性能和稳定性。接着我们讲述了如何隐藏服务器IP防止黑客攻击,最后总结了隐藏服务器IP在保护服务器和用户数据方面发挥的作用。…

chatgpt的实用技巧四temperature 格式

四、temperature 格式 GPT3.5 temperature 的范围为:0-0.7; GPT4.0 temperature 的范围为:0-1; 当 temperature 为 0 时候,结果可稳定。 当 temperature 为 0.7/1 时候,结果发散具备创力。 数值越大&a…

线性表的案例引入 | 多项式的运算

#include <iostream> using namespace std; #define MAXSIZE 100#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2typedef int Status;typedef struct {int *elem;int length; }SqList;// 初始化 Status Init…

打造更智能的应用 - 机器学习和Andorid

打造更智能的应用 - 机器学习和Andorid 一、关于机器学习和Andorid二、使用 Gemini 让您的 Android 应用如虎添翼2.1 Gemini API2.2 Android AICore 三、现成可用的还是自定义的机器学习3.1 机器学习套件 SDK 的常见用户流3.2 高性能自定义机器学习 四、机器学习套件 SDK&#…

用sdkman在linux上管理多个java版本

概述&#xff1a; SDKMAN 是一个用于管理软件开发工具的工具&#xff0c;允许您轻松地安装、升级和切换不同版本的 JDK、Maven、Gradle 等工具。以下是在 Linux 上安装 SDKMAN! 的基本步骤&#xff1a; 安装SdkMan 使用 curl 安装 SDKMAN!: 打开终端&#xff0c;并运行以下命…

在线App封装技术:HTML5的新生命

HTML5封装的魅力所在HTML5带来了丰富的多媒体功能、地理位置服务、离线存储等特性&#xff0c;使得Web应用的体验更加接近原生App。封装HTML5到App中&#xff0c;可以大大缩短开发周期&#xff0c;降低开发成本&#xff0c;并且一次编写&#xff0c;多平台运行&#xff0c;极大…

保姆版Vps安装灯塔(ARL)

因为灯塔的默认端口为5003&#xff0c;所以我们在安装之前就在防火墙里把我们的5003端口打开 打开端口步骤如下&#xff1a; 1.我们打开控制面板&#xff0c;在控制面板里点击 系统和安全 。如下图&#xff1a; 2.接着点击 Windows Defender防火墙,如下图&#xff1a; 3.再…

为什么 macOS 比 Windows 稳定?

在计算机操作系统领域&#xff0c;macOS 和 Windows 分别是苹果公司和微软公司的主打产品。尽管两者都拥有大量的用户群体&#xff0c;但在稳定性和用户体验方面&#xff0c;macOS 常常被认为优于 Windows。那么&#xff0c;为什么 macOS 比 Windows 更稳定呢&#xff1f; 我们…

Wheeltec小车的开发实录(0)

配置静态ip&#xff08;可以联网&#xff09; 首先在你正常链接网络的时候打开“Connection Information”(我的是wifi&#xff0c;而且是手机热点&#xff0c;所以我手机就相当于一台路由器) 查看路由ip 观察到Default Route 是192.168.***.225这就是我手机的地址&#xff0…

Oracle命令大全

文章目录 1. SQL*Plus命令&#xff08;用于连接与管理Oracle数据库&#xff09;2. SQL数据定义语言&#xff08;DDL&#xff09;命令3. SQL数据操作语言&#xff08;DML&#xff09;命令4. PL/SQL程序块5. 系统用户管理6. 数据备份与恢复相关命令1. SQL*Plus命令&#xff08;用…

原型设计 Axure RP 9

Axure RP 9是一款专业的原型设计和协作工具&#xff0c;让用户快速创建高保真度的交互原型&#xff0c;模拟真实的用户界面和交互体验。该软件界面布局合理&#xff0c;易于使用&#xff0c;提供丰富的交互功能和效果&#xff0c;如动态面板、变量、条件逻辑、动画等。同时支持…