目标:

  • 搞懂什么是“深度学习”

  • 弄清楚它和传统机器学习有啥不一样

  • 看懂“神经网络”的结构和工作方式

  • 跑通一个最简单的神经网络示例


一、什么是深度学习?

定义(通俗版):

深度学习就是用“多层神经网络”让机器学会感知世界的一种方法。

它是机器学习的一个子领域,重点在于构建更复杂的“脑”结构,来解决“图像识别”、“语言理解”、“语音识别”等高感知类任务。


类比理解:

人类感知 深度学习对应
看图 图像识别 CNN
听声音 语音识别 RNN
理解语言 NLP 模型 Transformer
做决策 强化学习(有时配合 DL)


二、深度学习 vs 传统机器学习

项目 传统机器学习 深度学习
特征提取 人工设计特征 自动学习特征
模型结构 决策树、SVM、KNN 神经网络(NN)
表达能力 有限,依赖手工经验 表达能力强,可学习复杂抽象
训练数据 小数据也能学 越多数据越好(大数据)


三、神经网络长啥样?

结构示意:

输入层(input) → 隐藏层(hidden layers) → 输出层(output) 

每一层由多个“神经元”构成,神经元之间通过“权重”连接。

举个例子:手写数字识别(MNIST)

  • 输入层:28×28 像素 → 784 个神经元

  • 隐藏层:64 或 128 个神经元

  • 输出层:10 个神经元(表示 0–9 的数字)


 工作原理简述:

  1. 输入像素值(图片转成数字)

  2. 每层进行加权和(权重 × 输入)+ 偏置

  3. 激活函数(如 ReLU)处理非线性关系

  4. 输出层给出预测结果

  5. 比较预测结果和真实值 → 算损失(Loss)

  6. 通过反向传播优化网络(调整权重)


四、一个简单的神经网络代码示例(用 PyTorch)

import torch 
import torch.nn as nn 
import torch.optim as optim 
# 模拟数据:x 是输入,y 是目标输出 
x = torch.tensor([[1.0], [2.0], [3.0]]) 
y = torch.tensor([[2.0], [4.0], [6.0]]) 
# 定义一个神经网络:输入1维,输出1维 
model = nn.Sequential( nn.Linear(1, 1) # y = wx + b ) 
# 损失函数 & 优化器 
loss_fn = nn.MSELoss() 
optimizer = optim.SGD(model.parameters(), lr=0.01) 
# 训练 100 次 
for epoch in range(100): 
    y_pred = model(x) 
    loss = loss_fn(y_pred, y) 
    optimizer.zero_grad() 
    loss.backward() 
    optimizer.step() 
    print("训练完成,预测结果:", model(torch.tensor([[4.0]])))

五、深度学习能干嘛?(现实案例)

应用场景 技术模型
人脸识别 CNN
自动驾驶感知 CNN + LIDAR处理
翻译和对话 Transformer(GPT 就是这个)
推荐系统 深度协同过滤
AI绘图 / 视频生成 GAN、Diffusion、大模型
医学影像分析 深度残差网络(ResNet)


六、想学深度学习,该准备什么?

技术基础建议:

领域 内容
编程 Python(最常用)
数学 线性代数、微积分、概率基础
框架 PyTorch(推荐)或 TensorFlow


📚 拓展资料推荐

资源 链接
吴恩达深度学习系列 https://www.deeplearning.ai
PyTorch 官方教程 https://pytorch.org/tutorials
B站:李宏毅《深度学习》课程 搜索“李宏毅 深度学习 2024”
书籍:《动手学深度学习》 中文版有配套代码,强烈推荐
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐