深度学习入门

文章目录

  • 深度学习基础
    • 前言
    • 深度学习应用
    • 计算机视觉
  • 神经网络基础
    • 得分函数 f(x,W)
    • 损失函数
    • Softmax分类器
    • 前向传播
    • 反向传播
    • 神经网络整体架构
    • 过拟合的解决办法
    • 激活函数

深度学习基础

前言

机器学习流程:

  1. 数据获取
  2. 特征工程
  3. 建立模型
  4. 评估与应用

特征工程的作用:

  • 数据特征决定了模型的上限
  • 预处理和特征提取是最核心的
  • 算法与参数选择决定了如何逼近中共上限

深度学习解决的问题:怎么样提特征,计算机学习什么样的特征是最合适的

深度学习应用

深度学习在各个领域中有广泛的应用,其用途包括但不限于以下几个方面:

  1. 计算机视觉
  • 图像分类:将图像分为不同的类别,如猫、狗、汽车等。
  • 物体检测:识别图像中的特定物体,并标出其位置.
  • 人脸识别:识别图像或视频中的人脸。
  • 图像生成:生成具有艺术性或创造性的图像,如风格迁移和GAN(生成对抗网络)生成的图像。
  1. 自然语言处理
  • 机器翻译:将一种语言的文本翻译成另一种语言。
  • 文本分类:将文本数据分为不同的类别,如垃圾邮件检测和情感分析。
  • 文本生成:生成自然语言文本,如文本摘要、对话生成和故事创作。
  1. 语音识别
  • 语音转文本:将语音信号转换为可读的文本。
  • 语音生成:生成自然流畅的语音,如虚拟助手和有声读物。
  1. 医学和生物信息学
  • 医学影像分析:诊断和检测医学图像中的疾病,如X射线和MRI。
  • 基因组学分析:分析基因和蛋白质序列以了解基因组学和药物研究。
  1. 自动驾驶
  • 深度学习在自动驾驶汽车中用于感知环境、决策和控制车辆,以实现安全的自动驾驶。

计算机视觉

计算机眼中的图像:一张图片被表示成三维数组的形式,每个像素的值从0到255,例如:300 x 100 x 3(矩阵长 x 矩阵宽 x 颜色通道RGB)
计算机眼中的图像:一张图片被表示成三维数组的形式,每个像素的值从0到255
计算机视觉面临的挑战:

  1. 照射角度
    在这里插入图片描述

  2. 形状改变
    在这里插入图片描述

  3. 部分遮蔽
    在这里插入图片描述

  4. 背景混入
    在这里插入图片描述

k近邻不能用来图像分类的原因:背景主导是一个最大的问题,但图像分类关注的是主体(主要成分)

神经网络基础

得分函数 f(x,W)

得分函数的定义:

得分函数是神经网络对输入数据进行预测和表达的关键工具。在神经网络的输出层,得分函数将网络的内部表示转化为具体的预测值或分类结果。对于不同的任务和数据类型,得分函数的形式和计算方式也会有所不同。
在这里插入图片描述
参数解释:
(1)x:所有像素点排成一列所形成的矩阵
(2)W:权重参数矩阵,不同类别对应权重参数不同(每一行代表一种类别的权重参数)
(3)b:偏重参数,微调作用,不同类别对应微调值不同

举例详细解释:
在这里插入图片描述

多组权重参数构成了决策边界
在这里插入图片描述

损失函数

损失函数的概念:

损失函数用于量化模型预测与真实值之间的差异。它是预测值与真实值之间差距的计算方法,并通过深度学习框架(如PyTorch、TensorFlow)进行封装。

损失函数的重要性:

在机器学习中,目标是使预测值尽可能接近真实值,因此需要通过最小化预测值和真实值之间的差异来实现。损失函数的选择对于模型的训练速度和效果至关重要,因为不同的损失函数会导致不同的梯度下降速度。

简单举例:
在这里插入图片描述

提问:损失函数的值相同,意味着两个模型效果一样吗?
 
答案是不一样的。举例:
在这里插入图片描述
由于得分函数中权重参数会产生损失,故而损失函数需加上正则化惩罚项(权重参数产生的损失)
在这里插入图片描述

Softmax分类器

通过得分函数所得结果是一个输入值的得分值,针对分类任务,若将类别的得分转换成概率的形式,结果会更加直观。

  1. 归一化
    在这里插入图片描述
  2. 计算损失值
    在这里插入图片描述

简单举例:
在这里插入图片描述

前向传播

前向传播是指从输入层开始,经过一系列的隐藏层后,将结果输出到输出层的过程。前向传播的过程将每层的输出作为下一层的输入,最终得到网络的输出。

前向传播整体流程:
在这里插入图片描述

反向传播

反向传播是一种用于训练神经网络的优化算法,其基本思想是利用链式法则计算损失函数对每个参数的导数,从而更新参数。反向传播中的计算可以通过计算图来表示,其中每个节点代表一个运算,每个边表示数据的传递。

反向传播的主要思想是从输出层开始,计算每一层的梯度,然后根据链式法则将梯度向前传播,最终计算出每个参数的梯度。具体来说,对于每个参数,反向传播算法会计算其对损失函数的梯度,然后使用梯度下降等优化算法来更新参数。

简单的栗子:f(x,y,z) = (x+y)z
 
正向传播:在这里插入图片描述
在这里插入图片描述
链式法则:梯度是一步一步传的
在这里插入图片描述

复杂的例子:在这里插入图片描述
在这里插入图片描述

常见门单元:

  • 加法门单元:均等分配
  • MAX门单元:给最大的
  • 乘法门单元:互换的感觉

举例:
在这里插入图片描述

神经网络整体架构

在这里插入图片描述
架构特点:全连接、非线性(一步一步进行);
神经网络的强大之处在于,用更多的参数来拟合复杂的数据。
在这里插入图片描述

神经元个数对结果的影响:
理论上来说,神经元个数越多,分类回归效果越好,但是神经元过多可能会造成过拟合现象。神经元越多,过拟合的风险越大。

过拟合的解决办法

不同的数据预处理结果会使得模型的效果产生很大的差异。
数据标准化:
在这里插入图片描述
参数初始化:通常使用随机策略进行
在这里插入图片描述
解决过拟合的办法

  1. 正则化+LR
  2. DROP-OUT(每一层训练过程中随机的选择一部分神经元进行训练)
    在这里插入图片描述

激活函数

激活函数在神经网络中主要作用是给神经网络提供非线性建模能力。

(1)sigmoid函数:将输入变换为(0,1)上的输出。它将范围(-inf,inf)中的任意输入压缩到区间(0,1)中的某个值。
在这里插入图片描述
当我们想要将输出视作⼆元分类问题的概率时, sigmoid仍然被⼴泛⽤作输出单元上的激活函数。然而, sigmoid在隐藏层中已经较少使⽤,因为一旦数值较大或较小时会出现梯度消失现象。
(2)ReLU函数:线性整流单元,ReLU提供了一种非常简单的非线性变换。给定元素x,ReLU函数被定义为该元素与0的最大值。
在这里插入图片描述
ReLU函数的求导表现的很好:要么让参数消失,要么让参数通过。ReLU减轻了神经网络的梯度消失问题。

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

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

相关文章

高考试卷押运车视频监控解决方案

一、引言 高考作为我国教育领域的重要事件,其公正、公平和安全性一直备受社会关注。试卷押运作为高考的重要环节,其安全性直接关系到高考的顺利进行和考生的切身利益。因此,对高考试卷押运车实施视频监控解决方案,对于确保试卷安…

蓝桥杯练习系统(算法训练)ALGO-935 互质数个数

资源限制 内存限制:256.0MB C/C时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s 互质数个数 问题描述 已知正整数x,求1~x-1中,有多少与x互质的数。(互质是指两个数最大公约数为1&…

PieCloudDB Database Flink Connector:让数据流动起来

面对客户环境中长期运行的各种类型的传统数据库,如何优雅地设计数据迁移的方案,既能灵活地应对各种数据导入场景和多源异构数据库,又能满足客户对数据导入结果的准确性、一致性、实时性的要求,让客户平滑地迁移到 PieCloudDB 数据…

arco design表单label和输入框的空间分布

表单空间分布 arco利用的栅格系统来实现label、input的大小分布 <a-form :model"formData.form" :label-col-props"{ span: 6 }" :wrapper-col-props"{ span: 18 }" >// 其它...... </a-form>栅格系统中&#xff0c;默认空间总量2…

FreeRtos进阶——通用链表的实现方式

通用链表实现方式&#xff08;一&#xff09; struct node_t {struct node_t *next; };struct person {struct node_t node;char *name;int age; };struct dog {struct node_t node;char *name;int age;char *class; };在此链表中&#xff0c;node结构体被放在了最前面&#x…

【一百零一】【算法分析与设计】差分,1109. 航班预订统计,P4231 三步必杀,P5026 Lycanthropy

1109. 航班预订统计 这里有 n 个航班&#xff0c;它们分别从 1 到 n 进行编号。 有一份航班预订表 bookings &#xff0c;表中第 i 条预订记录 bookings[i] [first(i), last(i), seats(i)] 意味着在从 first(i) 到 last(i) &#xff08;包含 first(i) 和 last(i) &#xff09;…

瑞吉外卖项目学习笔记(一)

项目展示&#xff1a; 一、软件开发整体介绍 1.1 软件开发流程 作为软件开发人员&#xff0c;我们的主要工作是在 编码阶段 1.2 角色分工 1.3 软件环境 二、瑞吉外面项目介绍 2.1 项目介绍 系统管理后台页面&#xff1a; 移动端页面&#xff1a; 2.2 产品原型展示 产品原型是…

STM32学习问题总结(1)—CubeMX生成后下载无反应

在CubeMX生成项目后&#xff0c;写好代码&#xff0c;测试LED时发现怎么都不行&#xff0c;然后发现时Keil工程配置的问题 第一步&#xff1a; 打开Keil魔术棒的Debug下的Settings 第二步&#xff1a; 勾选Flash Download下的Reset and Run即可 被卡了两个小时&#xff0c;…

洗地机什么牌子好?洗地机前十名排行榜

现代吸拖扫一体洗地机不仅高效&#xff0c;还具有智能化设计&#xff0c;使清洁变得轻松。它强大的吸尘功能能够轻松应对灰尘和碎屑&#xff0c;不论是硬质地面还是地毯&#xff0c;都能提供理想的清洁效果。配合拖地功能&#xff0c;通过内置水箱和智能拖布&#xff0c;能彻底…

国产飞腾/龙芯/瑞芯微芯片在信创行业应用:金融行业、教育行业、党政机关

党政机构 方案背景&#xff1a; 在国家提出信息技术应用创新发展战略的大环境下&#xff0c;政务大厅需要基于国家科技自主技术深入推进“互联网政务服务”。加快建设全国一体化在线政务服务平台&#xff0c;进一步落实创新驱动发展战略&#xff0c;提升政务网络安全保障能力…

NATS-研究学习

NATS-研究学习 文章目录 NATS-研究学习[toc]介绍说明提供的服务内容各模式介绍测试使用发布订阅&#xff08;Publish Subscribe&#xff09;请求响应&#xff08;Request Reply&#xff09;队列订阅&分享工作&#xff08;Queue Subscribers & Sharing Work&#xff09;…

运放的自激振荡问题

运放的自激振荡指的是当运算放大器加电后&#xff0c;在没有外部信号输入的情况下&#xff0c;输出端会出现高频类似于正弦波的波形。 运算放大器产生自激的原因以及解决办法-CSDN博客 a)当振荡由分布电容、电感等引起时&#xff0c;可通过反馈端并联电容&#xff0c;抵消影响…

【开源】课程管理平台 JAVA+Vue.js+SpringBoot+MySQL

目录 一、项目介绍 课程管理模块 作业题目模块 考试阅卷模块 教师评价模块 部门角色菜单模块 二、项目截图 三、核心代码 一、项目介绍 Vue.jsSpringBoot前后端分离新手入门项目《课程管理平台》&#xff0c;包括课程管理模块、作业题目模块、考试阅卷模块、教师评价模…

spoon工具的安装与配置

spoon对应的jdk包下载资源地址 spoon软件下载资源地址 首先需要安装jdk&#xff0c;配置java环境&#xff0c;安装好后&#xff0c;cmd一下&#xff0c;查看java -version&#xff0c;看看是否成功安装&#xff0c;如果失败&#xff0c;查看系统环境变量&#xff0c;去配置jdk…

Java | Leetcode Java题解之第122题买卖股票的最佳时机II

题目&#xff1a; 题解&#xff1a; class Solution {public int maxProfit(int[] prices) {int ans 0;int n prices.length;for (int i 1; i < n; i) {ans Math.max(0, prices[i] - prices[i - 1]);}return ans;} }

Python保存为json中文Unicode乱码解决json.dump()

保存为json中文Unicode乱码&#xff1a; 可以看到&#xff0c;中文字符没有乱码&#xff0c;只是出现了反斜杠&#xff0c;此时解决方法应考虑是否进行了二次序列化。 一、原因1 在dump时加入ensure_asciiFalse 即可解决&#xff0c;即json.dump(json_data, f, indent4, en…

阿里云布置net core 项目

一、 创建镜像 给镜像添加触发器&#xff0c;编译的时候会触发k8s集群里的taget链接&#xff0c;从而更新项目 二&#xff0c;创建k8s集群 使用镜像创建 添加基本信息 镜像名称&#xff1a;镜像仓库》基本信息公网地址镜像Tag:创建镜像时的镜像版本镜像配置为&#xff1a;总…

opencv笔记(13)—— 停车场车位识别

一、所需数据介绍 car1.h5 是训练后保存的模型 class_directionary 是0&#xff0c;1的分类 二、图像数据预处理 对输入图片进行过滤&#xff1a; def select_rgb_white_yellow(self,image): #过滤掉背景lower np.uint8([120, 120, 120])upper np.uint8([255, 255, 255])#…

C#WPF数字大屏项目实战04--设备运行状态

1、引入Livecharts包 项目中&#xff0c;设备运行状态是用饼状图展示的&#xff0c;因此需要使用livechart控件&#xff0c;该控件提供丰富多彩的图形控件显示效果 窗体使用控件 2、设置饼状图的显示图例 通过<lvc:PieChart.Series>设置环状区域 3、设置饼状图资源样…

【TB作品】MSP430G2553单片机,智能储物柜

智能储物柜将实现的功能&#xff1a; 1在超市或者机场场景下&#xff0c;用户需要进行物品暂存时。按下储物柜键盘的需求按键&#xff0c;智能储物柜将会随机为用户分配一个还没使用的柜子&#xff0c;屏幕提示用户选择密码存储方式或者身份证存储方式&#xff1b; 2 用户选择密…