一、AI、ML、DL基本关系
机器学习是实现人工智能的途径,深度学习是机器学习的一种方法。
人工智能 (AI)↓
机器学习 (ML) —— 让机器从数据中学习规律↓
深度学习 (DL) —— 使用深层神经网络的机器学习方法
二、深度学习与机器学习
概念
深度学习(Deep Learning)是机器学习的分支,是一种以人工神经网络为架构,对数据进行特征学习的算法。 这个名字中的“深度”(Deep)来源于其核心模型——神经网络的层数(深度)——用来自动提取特征。
深度学习就是用来解决特征抽取困难这一类问题的。有一些数据在机器学习中不方便进行特征提取,如文本数据、图像数据、音频数据。与传统机器学习算法不同,深度学习能够自动从原始数据中学习到有用的特征,而不需要人工特征工程,而是依赖算法自动提取特征。
对比维度 | 机器学习 | 深度学习 |
---|---|---|
模型结构 | 浅层模型(如线性回归、SVM、决策树、随机森林) | 深层神经网络(如CNN、RNN、Transformer) |
特征工程 | 需要人工设计和提取特征(如SIFT、HOG、TF-IDF) | 自动从数据中学习特征(端到端学习) |
数据需求 | 可在小到中等规模数据上表现良好 | 通常需要大量标注数据才能发挥优势 |
计算资源 | CPU 通常足够 | 依赖 GPU/TPU 进行高效训练 |
训练时间 | 相对较短 | 训练时间较长(尤其是大模型) |
可解释性 | 模型相对简单,可解释性强(如决策树规则清晰) | “黑箱”模型,可解释性差 |
应用场景 | 结构化数据(表格)、小样本问题 | 非结构化数据(图像、语音、文本)、大数据场景 |
优缺点
#1.优点
自动提取特征
精度高,性能优于其他机器学习算法,某些领域甚至超越了人类
可以拟合任意非线性关系
框架多,不需我们自己造轮子#2.缺点
黑箱,可解释性差
网络结构复杂,参数多,超参数也多
训练时间长,对算力有较高要求
小数据集上表现不佳,容易过拟合
三、深度学习框架
框架:是一个为解决特定问题而设计的“半成品”软件结构,它提供了一套规范、工具和基础代码,帮助开发者更高效地构建应用程序
框架 | 开发者 | 语言 | 特点 | 适用场景 |
---|---|---|---|---|
PyTorch | Meta (Facebook) | Python | 动态图、易调试、研究首选 | 学术研究、大模型、快速实验 |
TensorFlow | Python, JS, C++ | 静态图(早期)、部署强 | 工业级部署、移动端、Web | |
Keras | Python | 高级API、简洁易用 | 初学者、快速原型开发 | |
JAX | Python | 函数式编程、高性能 | 科研、科学计算、前沿模型 | |
PaddlePaddle (飞桨) | 百度 | Python | 国产、中文支持好 | 国内项目、产业应用 |
MindSpore | 华为 | Python | 全场景、国产自主 | 政企项目、昇腾芯片适配 |