深度学习:入门简介

深度学习(Deep Learning, DL)是机器学习(Machine Learning, ML)的一个重要分支,核心是通过模拟人类大脑神经元的连接方式,构建多层神经网络来自动学习数据中的特征和规律,最终实现预测、分类、生成等任务。它摆脱了传统机器学习对 “人工设计特征” 的依赖,能直接从原始数据(如图像、文本、音频)中挖掘深层信息,是当前人工智能(AI)技术爆发的核心驱动力。

一、深度学习的核心思想:“多层” 与 “自动特征学习”

要理解深度学习,首先需要对比它与传统机器学习的核心差异:

举个直观例子:

  • 用传统机器学习识别猫:需手动设计 “是否有胡须”“是否有尖耳朵”“毛色分布” 等特征,再喂给模型训练;
  • 用深度学习识别猫:直接输入原始猫的图片,模型会自动从 “像素点→边缘→纹理→五官→完整猫轮廓” 逐层学习特征,无需人工干预。

二、深度学习的基础组件:神经网络的核心单元

深度学习的模型本质是多层神经网络,其最小组成单元和结构如下:

1. 基本单元:人工神经元(Artificial Neuron)

模拟生物神经元的 “接收信号→处理信号→输出信号” 过程,是神经网络的基础:
• 输入(Input):接收来自前一层的信号(如数据特征、前一层神经元的输出);
• 权重(Weight):每个输入对应一个权重(表示该输入的重要性,模型训练的核心就是优化权重);
• 偏置(Bias):调整神经元激活的 “基准线”,避免仅由输入和权重决定输出;
• 激活函数(Activation Function):对 “输入 × 权重 + 偏置” 的结果进行非线性变换,让模型能学习复杂的非线性关系(如图像、语言中的复杂规律)。

常见激活函数:

  • ReLU:最常用,公式 f(x) = max(0, x),解决 “梯度消失” 问题,计算高效;
  • Sigmoid:将输出压缩到 [0,1],适用于二分类任务的输出层;
  • Tanh:将输出压缩到 [-1,1],比 Sigmoid 更对称,常用于早期模型的隐藏层。
  • 这是生物上的神经元

  • 这是计算机上的神经网络、

  • 神经网络是由大量的节点(或称“神经元”)和之间相互的联接构成。
  • 每个节点代表一种特定的输出函数,称为激励函数、激活函数(activation function)。
  • 每两个节点间的联接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。

2. 神经网络的层结构


多个人工神经元按 “层” 组织,形成神经网络,核心层包括:
• 输入层(Input Layer):接收原始数据(如图片的像素值、文本的向量),仅传递数据,不做计算;
• 隐藏层(Hidden Layer):对输入层的信号进行逐层加工、提取特征,“深度” 即指隐藏层的数量(通常≥2 层即可称为 “深度网络”);
• 输出层(Output Layer):输出模型的最终结果,根据任务类型选择不同的激活函数:
◦ 分类任务:用 Softmax(多分类,输出各类别概率之和为 1);
◦ 回归任务:无激活函数(直接输出连续值);
◦ 二分类任务:用 Sigmoid(输出单个概率值)。

三、推导

  • 以下是推导过程:
    • 传入特征,按照不同的权重传入神经元进行求和
    • 然后将结果放入sigmod函数进行非线性映射
    • 最后得出分类结果

四、感知器与多层感知器

1.感知器

  • 由两层神经元组成的神经网络--“感知器”(Perceptron),感知器只能线性划分数据。
  • 因为只能通过一个线性函数(即加权和)将输入数据映射到输出类别
  • 感知器图示
  • 右下角是计算规则

2.多层感知器


多层感知器(MLP)是深度学习中一种重要的神经网络结构,由多个层次的神经元组成,通常包括以下部分:

输入层:接收数据特征。
隐藏层:一个或多个,进行复杂的非线性变换。每层的神经元通过激活函数(如ReLU、Sigmoid)处理输入。
输出层:生成最终的预测结果或分类标签。

3.偏置


在神经网络中需要默认增加偏置神经元(节点),这些节点是默认存在的
它本质上是一个只含有存储功能,且存储值永远为1的单元
在神经网络的每个层次中,除了输出层以外,都会含有这样一个偏置单元
偏置节点没有输入(前一层中没有箭头指向它)
一般情况下,我们都不会明确画出偏置节点
调整决策边界:偏置项允许决策边界在特征空间中进行平移,而不仅仅是通过原点。

提高模型灵活性:使得神经网络能够捕捉到更多的数据模式和复杂性,即使在没有输入特征的情况下也能进行调整。

五、如何确定输入层和输出层个数

  • 输入层的节点数:与特征的维度匹配
  • 输出层的节点数:与目标的维度匹配。
  • 中间层的节点数:目前业界没有完善的理论来指导这个决策。一般是根据经验来设置。较好的方法就是预先设定几个可选值,通过切换这几个值来看整个模型的预测效果,选择效果最好的值作为最终选择。

六、损失函数

模型训练的目的:使得参数尽可能的与真实的模型逼近。
具体做法:
1、首先给所有参数赋上随机值。我们使用这些随机生成的参数值,来预测训练数据中的样本。    

2、计算预测值为yi,真实值为y。那么,定义一个损失值loss,损失值用于判断预测的结果和真实值的误差,误差越小越好
常用的损失函数: 0-1损失函数 均方差损失 平均绝对差损失 交叉熵损失 合页损失
多分类的情况下,如何计算损失值

七、正则化惩罚

输入为[1,0,0,0]现有2种不同的权重值

w1 = [1,0,0,0]

w2 = [0.25,0.25,0.25,0.25]

w1和w2与输入的乘积都为1,但w2 与每一个输入数据进行计算后都有数据,使得w2会学习到每一个特征信息。而w1只和第1个输入信息有关系,容易出现过拟合现象,因此w2的效果会比w1 好

正则化惩罚的功能:主要用于惩罚权重参数w,一般有L1和L2正则化。

八、梯度下降

1. 偏导数

        我们知道一个多变量函数的偏导数,就是它关于其中一个变量的导数而保持其他变量恒定。该函数的整个求导: 例如:计算像 f(b0,b1)=b0x1²* b1x2 这样的多变量函数的过程可以分解如下:

2. 梯度

梯度可以定义为一个函数的全部偏导数构成的向量,梯度向量的方向即为函数值增长最快的方向

3、梯度下降法

一个一阶最优化算法,通常也称为最陡下降法 ,要使用梯度下降法找到一个函数的局部极小值

步长(学习率):梯度可以确定移动的方向。学习率将决定我们采取步长的大小。不易过小和过大 如何解决全局最小的问题?产生多个随机数在不同的位置分别求最小值。

九、BP神经网络

BP(Back-propagation,反向传播)前向传播得到误差,反向传播调整误差,再前向传播,再反向传播一轮一轮得到最优解的。

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

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

相关文章

switch摇杆JoyCon摇杆研究,碳膜摇杆、霍尔电磁摇杆

https://blog.csdn.net/qq_28145393/article/details/125769568 https://zhuanlan.zhihu.com/p/1925522678263056352 插件DIP 碳膜摇杆 6脚,内部两个滑动变阻器,1个按键。 引脚定义如下:1脚AD1、2脚按键GND、3脚按键、4脚AD2、5脚变阻器GND、…

保护 PDF 格式:禁止转换为其他格式文件

在日常办公中,PDF是很常见的文件格式。有时候为了方便编辑,我们会将PDF转换成其他格式文件,比如Word、PPT等;但有时候出于安全考虑,我们又不希望PDF可以随意转换成其他格式文件。那如何禁止转换格式呢?其实…

docker 打包

目录 构建docker容器 使用 Dockerfile 构建自定义镜像 构建docker容器 docker images docker pull pytorch/torchserve:latest-gpu docker imagesdocker run -d --rm --gpus all --name torchserve-dev-bg -u $(id -u):$(id -g) -v /nas:/nas pytorch/torchserve:latest /bi…

云原生俱乐部-k8s知识点归纳(7)

计划是再更两篇就完结k8s系列,其中CRD客户端资源定义会单独列一篇,或许会讲一讲operator。不过当前的k8s并没有细讲operator,因为涉及到很多的go语言内容,以及相关的package的方法。这一部分主要就是讲一讲k8s如何进行监控和升级&…

c语言之进程函数

1. 进程创建#include <sys/types.h>#include <unistd.h>pid_t fork(void);fork 创建一个新进程fork() creates a new process by duplicating the calling process. The new process is referred to as the child process. The calling process is refe…

学习python第12天

今日任务&#xff1a;DataFrameDataFrame的构造pandas.DataFrame(dataNone, indexNone, columnsNone, dtypeNone, copyFalse)参数说明&#xff1a;data&#xff1a;DataFrame 的数据部分&#xff0c;可以是字典、二维数组、Series、DataFrame 或其他可转换为 DataFrame 的对象。…

C++显示类型转换运算符static_cast使用指南

这是一篇关于 static_cast 用法的文章。本文会从基础概念到常见应用场景全覆盖&#xff0c;并附上代码示例以方便理解。C 中的 static_cast 用法详解 在 C 中&#xff0c;static_cast 是一种显式类型转换运算符&#xff0c;主要用于在编译期进行类型安全的转换。相比 C 风格的强…

es6常用方法来解决功能需求

前言&#xff1a;es6常用方法来解决功能需求。1、出现复杂的json字符串如何去解析&#xff1f;比如&#xff1a;下面这个字符串&#xff0c;如果用json.parse解析发现还是个字符串"\"[{\\\"orgId\\\":\\\"1054021138280960\\\",\\\"orgName…

龙虎榜——20250822

上证指数今天继续创新高收中阳线&#xff0c;量能维持在5天均量线附近&#xff0c;目前均线多头强势的走势&#xff0c;小级别也未出现反转信号&#xff0c;上涨趋势不要轻易看空。深证指数今天延续强势的走势&#xff0c;大涨收光头光脚的阳线&#xff0c;目前均线多头排列&am…

3维模型导入到3Dmax中的修改色彩简单用法----第二讲

目录回顾1 补充信息*stp导出没有颜色怎么办&#xff1f;*2 3Dmax的使用如果颜色丢失了怎么办呢&#xff1f;怎么实现一零件上多个色彩呢&#xff1f;怎么将零件绑到一起呢&#xff1f;怎么将三角形的面变成光滑曲面呢&#xff1f;回顾 上一讲&#xff0c;我们简单的说了一下&a…

智慧农业新基建:边缘计算网关在精准农业中的落地实践案例

智慧农业新基建&#xff1a;边缘计算网关在精准农业中的落地实践案例传统农业生产中&#xff0c;水肥管理依赖经验判断&#xff0c;往往造成资源浪费和产量不稳定&#xff1b;同时&#xff0c;恶劣的自然环境也给农业生产带来诸多挑战。而蓝蜂边缘计算网关在精准农业中的应用&a…

llm操控solidworks 画立方体 deepseek

deepseek接入solidowrks画立方体用eval方法链接llm和solidworks pythonwin32接口 离好的效果还差一个有脑子会生成复杂命令序列的ai 参考 基于Python的Solidworks二次开发方法_selectbyray-CSDN博客 Welcome - 2025 - SOLIDWORKS API Help 仓库 llm_sw: llm链接solidworks…

MySQL事务及原理详解

MySQL 事务 事务是一组不可分割的操作集合&#xff0c;这些操作要么同时成功提交&#xff0c;要么同时失败回滚。 acid事物的四大特性 原子性 最小工作单元&#xff0c;要么同时成功&#xff0c;要么同时失败。 例如A转账300给B,A账户-300与B账户300必须满足操作原子性&#xf…

Flutter上手记:为什么我的按钮能同时在iOS和Android上跳舞?[特殊字符][特殊字符]

文章目录&#x1f525; 先解决灵魂拷问&#xff1a;凭啥选Flutter&#xff1f;&#x1f9f1; 解剖Flutter&#xff1a;它肚子里藏着什么黑科技&#xff1f;三层蛋糕架构 &#x1f382;状态管理&#xff1f;江湖门派大战&#xff01; &#x1f94b;&#x1f6e0; 真实项目暴击&a…

单片 、物联网、51单片机、软硬件之基于STM32与蓝牙的仓储管控系统的设计与实现/基于物联网的仓库管理系统

单片 、物联网、51单片机、软硬件之基于STM32与蓝牙的仓储管控系统的设计与实现/基于物联网的仓库管理系统

Product Hunt 每日热榜 | 2025-08-22

1. Mocke 标语&#xff1a;模拟邮件营销&#xff1a;在不发起活动的情况下了解你的回复率 介绍&#xff1a;Mocke AI代理模拟运行电子邮件营销活动&#xff0c;并在一分钟内返回结果&#xff0c;包括邮件的打开率、回复率和退订率。它还会揭示每个潜在客户为何未打开邮件、报…

基于Java+SpringBoot+Vue+HTML5电影评论网站系统(源码+LW+调试文档+讲解等)/电影评论/网站系统/电影/评论/网站/系统/影评网站/电影网站/评论系统/电影评论系统

博主介绍 &#x1f497;博主介绍&#xff1a;✌全栈领域优质创作者&#xff0c;专注于Java、小程序、Python技术领域和计算机毕业项目实战✌&#x1f497; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅&#x1f447;&#x1f3fb; 2025-2026年最新1000个热门Java毕业设计选题…

家用电器,让现代家庭生活更美好

在现代家庭中&#xff0c;家用电器早已不再是冰冷的机器&#xff0c;而是成为了我们生活中不可或缺的一部分。它们以科技之名&#xff0c;融入我们的日常&#xff0c;让生活变得更加便捷、舒适和美好。 清晨&#xff0c;当第一缕阳光透过窗帘&#xff0c;智能咖啡机已经为您准备…

RabbitMQ延时队列的两种实现方式

目录 一、延时插件实现 1、版本要求 2、为运行新容器时安装 3、为已运行的容器安装 4、验证安装 5、代码编写 1. 配置类 2. 生产者 3. 消费者 二、死信队列实现 1、代码编写 1. 配置类 2. 生产者 3. 消费者 三、踩坑记录 1、发送消息失败 2、消息过期后未能转…

深度学习在股票量化中的应用

深度学习在股票量化中的具体应用&#xff1a;从时间序列预测到Alpha挖掘深度学习并非量化交易的银弹&#xff0c;但它是一套强大的工具集&#xff0c;能够解决传统量化方法难以处理的复杂问题。其核心价值在于从海量、高维、非结构化的数据中自动提取有效特征并发现非线性关系。…