1_12_常见库介绍#
作者: ZhouLong
创建日期: 2026 年 02 月 01 日
版本: 1.0
浏览量:
简介#
下面会介绍在深度学习项目中常见的库。大家根据需求需要掌握并熟练使用一些核心的库,这可以大大提高开发效率。
熟练度说明:
熟练代表要非常熟悉这个库。掌握代表可以基本地使用了解代表了解功能即可,根据个人需求来掌握或达成熟练
1、科学计算与数据分析库#
这部分主要涉及基础的科学计算,以及数据处理流程。最后还有可视化的包也建议大家掌握。
库名称 |
主要用途 |
关键功能 |
需要掌握的程度 |
学习路线建议 |
|---|---|---|---|---|
NumPy |
数值计算基础 |
多维数组(ndarray)、线性代数、傅里叶变换等 |
熟练 |
1. 数组创建和索引 |
Pandas |
数据处理分析 |
DataFrame/Series操作、数据清洗、分组聚合、时间序列 |
熟练 |
1. 数据读写(CSV/Excel) |
SciPy |
科学计算扩展 |
优化算法、信号处理、统计分析、积分求解 |
掌握 |
1. 常用统计函数 |
Scikit-learn |
机器学习 |
分类、回归、聚类、降维、模型评估 |
熟练 |
1. 数据预处理 |
Statsmodels |
统计分析 |
统计建模、假设检验、时间序列分析 |
了解 |
1. 线性回归模型 |
Matplotlib |
基础数据可视化 |
2D图形绘制、子图布局、样式设置 |
熟练 |
1. 基本图形绘制 |
Seaborn |
统计可视化 |
高级统计图形、数据分布可视化 |
掌握 |
1. 分布图(distplot, kdeplot) |
2、深度学习与AI库#
深度学习的框架只需要精通一个,其余的掌握即可。这里推荐大家学习PyTorch,这是目前学术界的主流。使用体验也相对较好,社区生态完善。 后续第三部分会介绍PyTorch
| 库名称 | 主要用途 | 关键功能 | 需要掌握的程度 | |--------|----------|----------|----------------|------------| | PyTorch | 深度学习框架 | 神经网络构建与训练 | 熟悉 | | TensorFlow | 深度学习框架 | 神经网络构建与训练 | 掌握 | | JAX | 高性能计算 | 自动微分、JIT编译、向量化 | 了解 |
3、Web开发库#
这部分对于深度学习不是必要的,可以不掌握。但是建议大家对flask有一定了解,方便后续把深度学习封装成web应用,降低应用交互难度,提升使用性。
| 库名称 | 主要用途 | 关键功能 | 需要掌握的程度 | |--------|----------|----------|----------------|----------| | Flask | 轻量级Web框架 | 路由、请求响应、模板渲染、扩展机制 | 掌握 | | Django | 全栈Web框架 | ORM、Admin后台、认证系统、路由系统 | 了解 | | FastAPI | 现代API框架 | 异步支持、自动API文档、数据验证 | 了解 | | Requests | HTTP客户端 | GET/POST请求、会话管理、文件上传 | 了解 | | BeautifulSoup | HTML解析 | HTML解析、元素查找、数据提取 | 了解 | | Scrapy | 爬虫框架 | 爬虫编写、数据管道、中间件 | 了解 |
4、自动化与工程工具#
这部分对于深度学习不是必要的,可以不掌握。此类工具比较多,比较杂,这里仅列出一些举例,大家根据需求掌握。
库名称 |
主要用途 |
关键功能 |
需要掌握的程度 |
应用场景 |
|---|---|---|---|---|
Selenium |
浏览器自动化 |
网页操作、元素定位、等待机制 |
了解 |
1. 元素定位方法 |
PyAutoGUI |
桌面自动化 |
鼠标键盘控制、屏幕识别、图像匹配 |
了解 |
1. 坐标控制 |
Paramiko |
SSH连接 |
SSH连接、SFTP传输、命令执行 |
了解 |
1. SSH连接管理 |
APScheduler |
任务调度 |
定时任务、后台调度、任务持久化 |
了解 |
1. 触发器设置 |
Celery |
分布式任务队列 |
异步任务、任务路由、监控管理 |
了解 |
1. 任务定义和调用 |
5、开发工具与辅助库#
这部分的库主要辅助python进行工程化,从而降低开发难度,提升开发效率。大家需要尽可能地掌握。
类别 |
库名称 |
掌握程度 |
关键用途 |
必备技能 |
|---|---|---|---|---|
测试框架 |
pytest |
熟练 |
单元测试、功能测试 |
1. 测试用例编写 |
代码格式化 |
black |
熟练 |
代码自动格式化 |
1. 配置规则 |
类型检查 |
mypy |
熟练 |
静态类型检查 |
1. 类型注解 |
日志管理 |
logging |
熟练 |
日志记录 |
1. 日志级别设置 |
6、学习路线#
学习资源推荐#
所有库的官方网站文档,这些是第一手学习资料,非常重要,例如NumPy、PyTorch、Pandas、Django等
b站网课,对于习惯上网课的同学,b站的网课应有尽有,非常不错。注意要边看边多敲代码练习
进阶学习#
阅读优秀开源项目源码
参与开源项目贡献
学习设计模式和架构设计
这个详细指南提供了不同层次的学习建议,你可以根据自己的职业方向和当前水平选择合适的库进行深入学习。记住:广度重要,深度更重要。