深度学习学习笔记:从概念到实践
一、深度学习相关岗位需求
想入门深度学习,先了解行业需要什么样的人才,能让学习更有方向。目前主流的两个核心岗位,要求各有侧重,但核心技能高度重合。
1. 深度学习应用工程师:
- 扎实的机器学习理论和实践能力,这是基础中的基础;
- 熟悉 CNN(卷积神经网络)这类经典模型,还要懂物体检测、图像分类等常用模型的适用场景,比如知道什么时候用 ResNet 做图像分类,什么时候用 YOLO 做实时目标检测;
- 编程能力不能少,Python 是必备,PyTorch、TensorFlow 这些主流深度学习框架至少要精通一种;
- 数学和编程功底要扎实,毕竟模型调优、问题排查都离不开数学思维,同时团队合作能力也很关键,实际项目很少单打独斗。
2. AI 算法工程师:
- 要在计算机视觉、图像处理领域有深入积累,比如 GAN(生成对抗网络)、扩散模型、图像生成、多模态这些前沿方向,至少有一个方向能钻研透彻;
- 编程上不仅要会 Python,C++ 也常被要求,Linux 开发环境更是日常;
- 学习能力和创新思维是核心,毕竟算法迭代快,需要不断跟进新技术;
- 有 AIGC 相关产品落地经验会更吃香,现在生成式 AI 是行业热点,有实际项目经验的候选人更受青睐。
二、历史:人类工业文明中的 AI 位置
深度学习不是突然出现的,它是人类工业文明发展到一定阶段的产物。回顾工业文明的四次大跨越,能更清楚 AI 的定位:机械化时代(18 世纪末)电气化时代(19 世纪末);信息化时代(20 世纪 50 年代中期)人工智能时代(21 世纪至今)
三、核心概念:人工智能与深度学习?
很多人会把 “人工智能”“机器学习”“深度学习” 混为一谈,其实它们是包含关系:人工智能是大范畴,机器学习是实现 AI 的核心方法,深度学习是机器学习的一个重要分支。
1. 人工智能(AI)
,AI 就是 “用人工的方法让机器拥有类似人的智能”。从学科角度看,它是研究如何模拟、延伸和扩展人类智能的理论、方法和应用系统的科学。
2. 机器学习(ML)
机器学习是 AI 的核心技术,它的本质是 “让机器从经验中学习”。这里的 “经验” 就是数据,机器通过分析数据,自动调整参数,让自己在某个任务上的性能不断提升。
- 先采集大量音频样本,标注出 “包含唤醒词” 和 “不包含唤醒词” 的样本;
- 设计一个程序(模型),这个程序的行为由很多参数控制(可以理解成 “旋钮”);
- 用标注好的数据去 “调旋钮”,找到能最准确识别唤醒词的 “最佳参数集”;
- 这个 “调旋钮” 的过程就是 “学习”,而负责调旋钮的元程序就是 “学习算法”。
3. 深度学习(DL)
深度学习是机器学习的一个分支,它的核心是 “深度神经网络”—— 通过多层神经网络对数据进行复杂转换,从而实现更精准的预测或决策。
四、技术原理:机器学习的关键组件与训练过程
不管是机器学习还是深度学习,核心逻辑都离不开 “数据、模型、目标函数、优化算法” 这四个组件,以及一套标准化的训练流程。
. 四大关键组
- 数据:机器学习的 “燃料”。每个数据集由 “样本” 组成,样本通常包含 “特征” 和 “标签”(监督学习中)。比如识别猫的图片,每张图片是 “样本”,图片的像素值是 “特征”,“猫” 或 “不是猫” 是 “标签”。数据越多、质量越高,模型效果通常越好,但也要注意 “正确的数据” 比 “海量数据” 更重要 —— 如果数据标注错误,再大的量也没用。
- 模型:处理数据的 “工具”。模型就是调整参数后的程序,不同任务需要不同模型(比如回归用线性回归模型,图像分类用 CNN)。深度学习的模型就是深度神经网络,通过多层结构提取数据的深层特征。
- 目标函数:衡量模型好坏的 “尺子”。也叫损失函数,用来量化模型预测结果和真实结果的差距。比如回归任务用 “平方误差”(预测值与真实值差的平方),分类任务用 “交叉熵”(衡量预测概率分布和真实分布的差距)。训练模型的目标,就是最小化损失函数。
- 优化算法:调整模型参数的 “方法”。核心是找到能让损失函数最小的参数。深度学习中最常用的是 “梯度下降”—— 就像下山时沿着坡度最陡的方向走,每次调整参数都朝着减少损失的方向,逐步找到最优参数。
五、机器学习的主要类型
根据数据是否有标签,机器学习主要分为监督学习、无监督学习、强化学习三大类,各自适用不同场景。
1. 监督学习
最常用的类型,数据有标签,核心是 “学习输入到标签的映射”。比如:
- 回归任务:标签是连续数值,比如房价预测(标签是房价)、气温预测(标签是温度)。损失函数常用平方误差,目标是让预测值尽可能接近真实值。
- 分类任务:标签是离散类别,比如猫狗识别(标签是 “猫” 或 “狗”)、手写数字识别(标签是 0-9,多分类)。损失函数常用交叉熵,目标是提高分类准确率。
- 多标签分类:标签不是互斥的,一个样本可以有多个标签。比如图片中同时有猫和狗,标签就是 “猫” 和 “狗”,常见于目标检测、短视频分类。
2. 无监督学习
数据没有标签,核心是 “从数据中自动发现规律”。比如聚类(把相似样本归为一类,比如用户分群)、主成分分析(降维,减少数据维度同时保留关键信息)、生成对抗网络(GAN,生成逼真的假数据,比如 AI 绘画)。
3. 强化学习
和前两者不同,强化学习不是靠预先准备好的数据,而是通过 “智能体与环境交互” 学习。
六、深度学习框架:PyTorch ?
做深度学习离不开框架,框架就像 “工具包”,封装了复杂的底层代码,让我们能专注于模型设计和训练。目前主流的框架有 PyTorch、TensorFlow、JAX 等
- API 简洁优雅:用 Python 编写,语法贴近 Python,容易上手,比如定义模型、训练模型的代码很直观,新手也能快速理解;
- 动态计算图:训练时可以实时调整计算流程,调试方便,不像 TensorFlow 早期的静态计算图那样死板;
- 社区活跃:学术论文大多会用 PyTorch 开源代码,遇到问题时能找到更多资料和帮助;
- 工业界支持:很多公司(比如 Meta、特斯拉)都在用 PyTorch 做研发,落地案例丰富。