news 2026/8/18 3:39:38

【深度学习】(一)概述

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【深度学习】(一)概述

一、深度学习

1 深度学习介绍

深度学习是机器学习的一个子集,其核心是构建具有多个“隐藏层”的人工神经网络。它的灵感来源于人脑神经元的工作方式,但并非严格模拟生物神经机制。

核心思想:通过“端到端”的学习方式,让模型自动从原始数据中逐层提取特征。浅层网络学习边缘、颜色等简单特征,深层网络则将这些简单特征组合成轮廓、部件乃至语义等复杂抽象概念。这一过程被称为“特征学习”或“表示学习”。

发展关键:深度学习的崛起得益于三大要素:

  1. 数据:互联网时代积累的海量数据(图像、文本、语音)。
  2. 算力:GPU(图形处理器)、TPU(张量处理器)等高性能计算硬件的普及。
  3. 算法:反向传播算法、ReLU激活函数、Dropout正则化、Batch Normalization(批归一化)等技术的突破,解决了深层网络难以训练的问题。

2 深度学习知识框架

学习深度学习通常遵循以下层次结构:

  1. 数学基础

    • 线性代数:向量、矩阵、张量运算、特征分解。
    • 概率与统计:最大似然估计、贝叶斯定理、分布。
    • 优化方法:梯度下降、随机梯度下降(SGD)、Adam等优化器。
  2. 神经网络基础

    • 感知机:神经网络的基本单元。
    • 激活函数:Sigmoid, Tanh, ReLU, Softmax。
    • 损失函数:均方误差(MSE)、交叉熵。
    • 正则化:L1/L2正则、Dropout、早停法。
  3. 核心网络架构

    • 多层感知机:全连接网络,基础结构。
    • 卷积神经网络:处理网格状数据(如图像)。
    • 循环神经网络与Transformer:处理序列数据(如文本、时间序列)。
  4. 高级技术

    • 生成模型:生成对抗网络(GAN)、变分自编码器(VAE)、扩散模型。
    • 自监督学习:BERT、MAE等掩码建模技术。
    • 深度强化学习:DQN(深度Q网络)、PPO(近端策略优化)。

3 常用模型

模型类别代表模型特点适用场景
卷积神经网络ResNet、VGG、Inception利用卷积核提取局部特征,参数共享,平移不变性图像分类、目标检测、语义分割
循环神经网络与变体LSTM、GRU具有记忆单元,擅长处理时序依赖,但存在长程依赖瓶颈机器翻译、语音识别、时间序列预测
TransformerBERT、GPT、ViT基于自注意力机制,并行计算能力强,可捕捉长距离依赖自然语言处理(NLP)全领域、视觉大模型
生成模型GAN、Stable Diffusion能够生成高保真度的新数据样本图像生成、艺术创作、数据增强
图神经网络GCN、GAT处理非欧几里得空间的数据(图结构)社交网络分析、分子结构预测、推荐系统

4 应用场景

深度学习已渗透到几乎所有人工智能应用领域:

  1. 计算机视觉

    • 图像识别:人脸识别、医学影像诊断(癌症筛查)、自动驾驶中的交通标志识别。
    • 目标检测与分割:安防监控、工业质检、遥感图像分析。
  2. 自然语言处理

    • 大语言模型:ChatGPT、文心一言等,用于对话、写作、代码生成。
    • 信息抽取:情感分析、智能客服、机器翻译。
  3. 语音处理

    • 语音识别:智能音箱、实时字幕。
    • 语音合成:数字人播报、语音导航。
  4. 跨模态与生成

    • 文生图/视频:广告设计、游戏素材制作。
    • 多模态理解:视频理解、图像描述生成。
  5. 科学计算与决策

    • 生物信息学:蛋白质结构预测。
    • 游戏与机器人:AlphaGo、机械臂抓取、自动驾驶决策。

5 与机器学习的区别

深度学习是机器学习的一种实现方式,但两者在多个维度存在显著差异:

维度传统机器学习深度学习
特征工程人工主导。依赖专家手工设计特征(如SIFT、HOG),特征工程的质量决定了模型的上限。自动提取。模型端到端学习,自动从原始数据中提取分层特征,无需人工干预。
数据依赖小数据友好。在样本量较小(几百到几万条)时表现较好,不易过拟合。大数据依赖。通常需要海量数据(百万级以上)才能展现优势,在小数据上往往不如传统模型。
硬件需求。普通CPU即可运行大部分算法(如随机森林、逻辑回归)。。严重依赖GPU或TPU进行并行加速,训练成本高。
可解释性较高。决策树、线性回归等模型逻辑清晰,容易解释特征权重。较低。常被视为“黑盒”,参数规模巨大(千亿级),难以直观解释决策逻辑。
模型复杂度简单。参数数量少,训练时间短,调试相对直观。复杂。网络层数深,参数规模大(亿级至万亿级),调试需要大量经验。
典型算法线性回归、支持向量机、随机森林、XGBoost卷积神经网络(CNN)、循环神经网络(RNN)、Transformer、扩散模型

二、PyTorch

PyTorch 是由 Meta AI(原 Facebook AI Research)开发的开源深度学习框架,于 2017 年首次发布。它以动态计算图Pythonic 的设计哲学著称,已成为学术界和工业界最受欢迎的深度学习框架之一。

特点:

  • 张量计算
  • 自动微分系统
  • 深度学习库
  • 动态计算图
  • GPU加速
  • 跨平台支持

PyTorch 安装:

condainstallpytorch torchvision torchaudio pytorch-cuda=11.8-cpytorch-cnvidia
importtorch# 检查版本print(f"PyTorch 版本:{torch.__version__}")# 检查 CUDA 是否可用print(f"CUDA 可用:{torch.cuda.is_available()}")iftorch.cuda.is_available():print(f"CUDA 版本:{torch.version.cuda}")print(f"GPU 数量:{torch.cuda.device_count()}")print(f"当前 GPU:{torch.cuda.get_device_name()}")# 测试张量计算x=torch.rand(3,3)print(f"随机张量:\n{x}")# 测试 GPU 计算iftorch.cuda.is_available():y=x.cuda()print(f"GPU 张量设备:{y.device}")

三、张量

张量(Tensor)是 PyTorch 中最基本的操作对象,本质上是一个多维数组

  • 对标 NumPy:它的功能和 NumPy 的ndarray非常相似,都用于存储和操作多维数值数据。
  • 核心区别:PyTorch 张量可以无缝地在CPU 和 GPU之间迁移,并且专门为**自动求导(Autograd)**和深度学习计算进行了优化。

你可以把张量理解为深度学习框架的“通用语言”——数据(图像、文本、音频)进入模型前都要先转化为张量。

使用张量的好处:

特性说明
GPU 加速通过.to('cuda').cuda()轻松将张量移到 GPU,利用 CUDA 进行高速并行计算。
自动微分设置requires_grad=True后,PyTorch 会记录张量上的所有操作,并自动计算梯度,这是训练神经网络的基础。
动态计算图PyTorch 使用动态图(Define-by-Run),意味着计算图在每次前向传播时都会重新构建,更灵活、更易调试。
丰富的操作函数支持索引、切片、数学运算、线性代数、统计函数等,几乎涵盖所有科学计算需求。
与 NumPy 互操作可以轻松地在 NumPy 数组和 PyTorch 张量之间转换(torch.from_numpy().numpy()),且许多情况下共享内存。

张量的基本用法:

importtorch# 1. 从数据直接创建a=torch.tensor([1,2,3])# 1维,整数型b=torch.tensor([[1,2],[3,4]],dtype=torch.float32)# 2维,指定类型# 2. 从NumPy创建importnumpyasnp arr=np.array([1,2,3])c=torch.from_numpy(arr)# 共享内存# 3. 创建特殊数值张量zeros=torch.zeros(3,4)# 全0,形状 3x4ones=torch.ones(2,3,4)# 全1,3维eye=torch.eye(5)# 单位矩阵rand=torch.randn(3,3)# 标准正态分布随机数# 4. 从已有张量创建(继承属性)d=torch.zeros_like(b)# 形状与b相同,值全0e=b.new_ones(2,2)# 使用b的dtype和device创建# 5. 创建可求导的张量(用于神经网络)x=torch.tensor([2.0,3.0],requires_grad=True)

四、数据集

在深度学习中,数据集(Dataset)是用于训练、验证和测试模型的样本集合。每个样本通常包含:

  • 特征(Features/X):模型的输入数据(如图像像素、文本词向量、表格数值)
  • 标签(Labels/Y):模型需要预测的目标值(如图像类别、房价数值、翻译文本)

核心原则:数据质量和数量往往比模型架构更能决定最终效果上限——“Garbage in, garbage out”。

数据集的三大划分

划分用途占比(常见)是否参与梯度更新
训练集用于模型学习参数,是梯度更新的依据70%~80%✅ 是
验证集用于调参(学习率、网络层数)和早停,防止过拟合10%~15%❌ 否
测试集最终评估模型泛化能力,严格来说只能使用一次10%~15%❌ 否

常见的数据集类型

领域经典数据集任务类型
图像MNIST, CIFAR-10, ImageNet, COCO分类、检测、分割
文本IMDb, AG News, WikiText, GLUE分类、情感分析、问答
语音LibriSpeech, VoxCeleb识别、说话人验证
表格UCI 各数据集, Kaggle 房价回归、分类
图结构Cora, PubMed, OGB节点分类、链接预测
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/18 3:39:18

Windows服务管理利器:sc命令从入门到精通

1. 项目概述:为什么你需要深入了解sc命令?如果你在Windows环境下做过系统运维、软件开发,或者仅仅是喜欢折腾自己的电脑,那么“服务”这个概念你一定不陌生。后台运行的各种守护进程,从数据库到Web服务器,从…

作者头像 李华
网站建设 2026/8/18 3:39:04

从零构建轻量级唤醒词检测系统:音频特征、模型设计与边缘部署实战

1. 项目概述:从“Hey Siri”到你的专属唤醒词 “Hey Siri”、“Alexa”、“小爱同学”——这些耳熟能详的唤醒词,早已成为我们与智能设备交互的第一道门。但你是否想过,抛开这些大厂预设的词汇,为自己的智能家居、个人助手甚至是一…

作者头像 李华
网站建设 2026/8/18 3:36:41

Android系统默认音频采样率修改实战:从配置到HAL的完整指南

1. 项目概述与核心价值最近在调试一个Android音频相关的项目时,遇到了一个挺典型的问题:从设备录制的音频,在另一台设备上播放时,音调总感觉有点不对,像是“快放”或“慢放”了一样。排查了一圈,最后定位到…

作者头像 李华
网站建设 2026/8/18 3:30:39

Uber自动驾驶五年安全重塑:双安全员模式与端到端大模型技术演进

1. 从“致命事故”到“谨慎重启”:Uber自动驾驶测试的五年之变 最近,Uber向监管机构申请恢复其自动驾驶汽车在公共道路上的测试资格,这则消息在自动驾驶圈内引发了不小的讨论。最引人注目的一个细节是,Uber明确表示,重…

作者头像 李华
网站建设 2026/8/18 3:29:26

从Anthropic盈利看AI工程化:模型优化、成本控制与商业实践

最近在关注 AI 行业动态时,一个标志性事件引起了我的注意:AI 领域的明星公司 Anthropic 在 2026 年第二季度实现了运营盈利。这不仅是 Anthropic 自身发展的里程碑,也标志着生成式 AI 行业从“烧钱”走向“造血”的关键转折点。对于开发者而言…

作者头像 李华