更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验
人工智能(AI, Artificial Intelligence)
- 定义:最广泛的技术概念,旨在使机器模拟人类智能行为。
- 核心能力:
- 理解自然语言
- 识别图像/声音
- 解决问题与推理
- 自主决策与学习
- 特点:
- 涵盖所有智能系统的研究与开发
- 不限定具体实现方式(包括规则引擎、机器学习等)。
- 应用场景:智能助手、自动驾驶、机器人、游戏AI等。
机器学习(ML, Machine Learning)
- 定义:实现AI的核心方法,通过数据驱动模型自动改进任务性能。
- 核心原理:
- 依赖算法和统计模型,从数据中“学习”规律。
- 无需显式编程指令(与传统程序不同)。
- 典型技术:
- 监督学习:线性回归、支持向量机(SVM)、决策树
- 无监督学习:聚类(如K-means)、降维(如PCA)
- 强化学习:Q-learning、策略梯度
- 特点:
- 数据依赖性高,性能随数据量提升。
- 需人工设计特征(传统方法中)。
- 应用场景:预测分析、推荐系统、欺诈检测等。
深度学习(DL, Deep Learning)
- 定义:机器学习的分支,基于深层神经网络结构进行学习。
- 核心原理:
- 使用多层(“深度”)神经网络自动提取数据特征。
- 擅长处理高维度、非结构化数据(如图像、文本、音频)。
- 典型模型:
- 卷积神经网络(CNN):图像识别
- 循环神经网络(RNN):序列数据(如语言模型)
- 生成对抗网络(GAN):数据生成
- 特点:
- 需大规模数据和算力支持。
- 减少人工特征工程,自动学习抽象特征。
- 应用场景:计算机视觉、语音识别、自然语言处理(NLP)等。
层级关系
AI ⊃ ML ⊃ DL
- AI 是顶层目标,ML 是实现AI的核心路径,DL 是ML中依赖深度神经网络的高阶方法。
- 关键区别:
- ML依赖人工特征工程,DL通过多层网络自动提取特征。
- DL在复杂任务(如图像分类)中表现更优,但需更大算力和数据量。
时间线
1. 符号主义(20世纪50-70年代)
- 1950年:图灵设计国际象棋程序,提出“图灵测试”概念。
- 1962年:IBM Arthur Samuel的跳棋程序战胜人类高手(第一次AI浪潮)。
- 特点:以专家系统和规则逻辑为主导,依赖符号推理。
2. 统计主义(20世纪80-2000年)
- 1993年:Vapnik提出支持向量机(SVM),成为统计学习代表方法。
- 1997年:IBM“深蓝”战胜国际象棋冠军卡斯帕罗夫(第二次AI浪潮)。
- 特点:基于概率统计模型解决分类、预测问题。
3. 神经网络与深度学习(21世纪初期-2016年)
- 2012年:AlexNet在ImageNet竞赛夺冠,引爆深度学习革命(卷积神经网络崛起)。
- 2016年:Google AlphaGo战胜李世石(第三次AI浪潮)。
- 特点:神经网络复兴,依赖大数据和算力提升。
4. 大规模预训练模型时代(2017年-至今)
- 2017年:Google提出Transformer框架(NLP领域里程碑)。
- 2018年: BERT(双向预训练模型)和GPT(生成式预训练)问世,开启大模型竞赛。
- 2022年:OpenAI发布ChatGPT,推动AIGC(生成式AI)普及。
- 2023年-至今:全球“百模大战”(如GPT-4、文心一言、Claude等),大模型进入高速迭代阶段。
符号推理 → 统计学习 → 神经网络 → 大模型AIGC
每次突破均伴随算法创新(如Transformer)、算力提升(GPU/TPU)和数据规模化(互联网文本/多模态数据)。当前焦点已从专用AI转向通用人工智能(AGI)探索。
深度学习框架
对比维度 | PyTorch | TensorFlow | PaddlePaddle | ONNX |
---|---|---|---|---|
开发者/机构 | Facebook(Meta) | 百度 | 微软主导,社区维护 | |
发布年份 | 2016 | 2015 | 2016 | 2017 |
编程语言 | Python(底层C++) | Python(底层C++、CUDA) | Python(底层C++) | 协议标准(支持多种语言) |
动态图/静态图 | 动态为主,支持TorchScript静态图 | 静态图为主,TF 2.x默认动态图(Eager Execution) | 动静结合,默认静态图 | 非框架,主要是模型交换格式 |
可视化工具 | TensorBoard(兼容),torch.utils.tensorboard | TensorBoard | VisualDL(自研) | 无直接可视化工具,可配合其他工具 |
训练易用性 | 简单易用,面向研究 | TF 2.x后也较易用,TF 1.x偏复杂 | API设计类似PyTorch,中文文档友好 | 非训练框架,负责模型格式交换和推理 |
部署支持 | TorchScript、ONNX、TorchServe等 | TensorFlow Lite、TensorFlow.js、TF Serving等 | Paddle Lite、Paddle Serving、Paddle.js等 | ONNX Runtime 可部署多平台,如移动端、服务器、浏览器等 |
推理性能 | 良好,支持ONNX加速推理 | 很强,TF Serving + XLA优化 | 不错,国产设备适配优化良好 | 优秀,尤其适配硬件后端如NVIDIA TensorRT、OpenVINO等 |
社区活跃度 | 非常活跃,学术界主流 | 非常活跃,工业界广泛使用 | 中国社区活跃,海外影响力略低 | 中立框架,支持多框架模型转换,社区支持不错 |
模型生态 | HuggingFace、TorchHub等丰富 | TensorFlow Hub、TF Model Zoo | PaddleHub、PaddleNLP、PaddleDetection等 | 提供通用模型格式支持,许多主流模型支持导出为ONNX格式 |
硬件支持 | GPU(NVIDIA)、CPU、MPS(Mac)、部分TPU支持 | 全面支持GPU、TPU、CPU等 | 支持GPU(NVIDIA)、昇腾、昆仑芯、CPU等 | ONNX Runtime 支持 GPU、CPU、NPU、TPU 等多种硬件后端 |
跨平台部署 | 支持 | 支持 | 支持 | 强,适合在多平台间迁移模型 |
中文文档支持 | 一般,社区翻译 | 一般,官方翻译为主 | 强,官方中文文档完善 | 一般,偏向开发者为主 |
环境配置
-
安装 Miniconda:https://www.anaconda.com/docs/getting-started/miniconda/install#power-shell
-
创建虚拟环境:
-
conda create -n ai python=3.12 -y # 创建一个虚拟环境 ai conda activate ai # 激活虚拟环境
-
安装 Pytorch:https://pytorch.org/
-
# 在官网选择相应Cuda版本,以win11+4060为例 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
-
验证安装:
-
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"
-
输出:
-
2.6.0+cu126 True # 安装成功