本文是《滚动轴承故障诊断》系列的第 2 篇(环境部署)。
系列完整目录见文末【专栏导航】。本篇配套的安装命令、自检脚本与报错速查,见博主同名公众号。
一、本篇目的:为什么第一件事是搭环境
很多同学拿到代码第一反应是"赶紧跑起来",结果被 import tensorflow 报错劝退------这不是你笨,是环境没理顺。
深度学习项目区别于普通脚本的关键:它依赖一个由十几个库组成的运行时 (TensorFlow 管神经网络、NumPy 管数组、SciPy 读 .mat、scikit-learn 跑随机森林......),这些库又有版本、有依赖、有冲突。先搭好一个干净的、彼此兼容的环境,后面 8 篇才不会处处踩坑。
本文不讲"点哪几个按钮",而是帮你把这套环境到底由什么组成、为什么这么选想明白;具体命令请到公众号照着做。
二、一套环境 = 三件事
别把它想复杂了,一套能跑的环境就三层:
| 层级 | 是什么 | 本项目的具体选择 |
|---|---|---|
| 解释器 | 真正执行代码的 Python 本体 | Python 3.9(3.8~3.10 均可) |
| 依赖库 | 别人写好的功能包 | numpy / scipy / scikit-learn / matplotlib / tensorflow / joblib / PyQt5 |
| 虚拟环境 | 一套独立的"隔离房间",房间内固定了 Python 和库的版本 | Anaconda 创建的 bearing 环境 |
为什么要虚拟环境? 因为你电脑上可能还装了别的 Python 项目(数据分析、爬虫......),每个项目对库的版本要求可能冲突。虚拟环境就像给本项目单独开一间房,互不干扰,换版本、删东西都不怕殃及别的项目。这是专业做法的第一步,别跳过。
三、逐个认识我们需要的依赖库
这些库后面 8 篇都会反复用到,先混个脸熟:
| 库 | 干什么 | 对应文章章节 |
|---|---|---|
| NumPy | 多维数组,所有数据的"容器" | 第 3/4 篇(数据集、预处理) |
| SciPy | 读取 .mat 数据文件(loadmat) |
第 3 篇(数据集) |
| scikit-learn | 随机森林、评估指标 | 第 5 篇 |
| TensorFlow | 构建 CNN / ResNet 神经网络 | 第 6 7 篇 |
| matplotlib | 画波形图、训练曲线、混淆矩阵 | 第 3/6/7 篇 |
| PyQt5 | 做带界面的诊断工具 | 第 8 篇 |
| joblib | 保存/加载随机森林模型 | 第 5 篇 |
依赖之间的"隐形关系":TensorFlow 内部依赖 NumPy;scikit-learn 依赖 NumPy 和 SciPy。这就是为什么要用 Anaconda 统一装------它能自动处理好这种依赖关系,避免你手动装的时候"装了 A 发现要 B,装了 B 又把 A 覆盖了"。
四、CPU 还是 GPU?本项目 CPU 足够
很多同学一上来就担心"没显卡能不能跑深度学习"。本项目可以,且应该用 CPU 版跑。
- 数据量只有 5600 条、模型是轻量的 1D 卷积网络,CPU 训练也就 10~30 分钟,完全可接受;
- GPU 版需要英伟达显卡 + CUDA 环境,配置成本高、坑多,对入门而言得不偿失;
- 写论文、做答辩,CPU 跑出的结果和 GPU 完全一样,看不出差别。
所以:先装 CPU 版,跑通全流程;以后真要做大规模项目,再考虑 GPU。
五、Python 版本怎么选(决定成败的关键一步)
TensorFlow 对新版 Python 的跟进向来慢半拍。版本太新(3.11+)反而装不上兼容的 TensorFlow。
所以本项目锁 3.9:这个版本 TensorFlow 支持最稳、生态最全,是社区公认的"安全版本"。这也解释了为什么环境篇特别强调"用 Anaconda 建独立环境"------你可以在 3.9 环境里跑本项目,同时完全不影响电脑上可能已有的其他 Python 版本。
六、环境搭建的自检思路
装完之后,别急着跑模型,先做"体检"。
体检逻辑一句话:检查每个关键库是不是装上了、能不能正常导入 。这不是"确认文件在不在",而是模拟一次真正的 import,如果有库没装齐,这一步就暴露了,而不是等你跑几十行代码后才报错。
公众号里给你配了一个 check_env.py 自检脚本,它做的事就是:逐个 import 核心库 → 打印 [√]/[×] → 缺哪个就直接告诉你该装什么。这是专业 debug 的第一课:先定位,再解决,不瞎试。
七、环境篇的"三个高频疑问"
Q1:装失败了,问题到底出在哪?
按三层排查:① 是不是没装 Anaconda(最基础);② 是不是没激活 bearing 环境就装了库;③ 是不是在装的时候断网/版本不匹配。绝大多数环境失败,都在这三层里。
Q2:能在两台电脑上同步吗?
可以。等 01 章跑通后,用 requirements.txt 在另一台机器 pip install 就能复刻出几乎一致的环境,这比手动一个个装靠谱得多。
Q3:装完卡在"正在运行 TensorFlow"很久?
正常。TensorFlow 首次启动要初始化,耗时几秒到几十秒不等,不是卡死。可以开个后台干别的。
八、本篇小结
- 环境 = 解释器 + 依赖库 + 虚拟环境,三者理解之后,安装就不是玄学;
- 本项目锁 Python 3.9、用 CPU 版 TensorFlow,零基础一台普通电脑即可;
- 具体安装命令、自检脚本、报错速查:公众号私信。
【专栏导航】
| 篇次 | 主题 | 状态 |
|---|---|---|
| 1 | 项目总览与三模型对比 | ✅ |
| 2 | 环境部署:Anaconda + TensorFlow 2.x 全流程(本文) | ✅ |
| 3 | CWRU 数据集深度解析与波形可视化 | 排期中 |
| 4 | 数据预处理源码走读:从 .mat 到 npy | 排期中 |
| 5 | 随机森林:传统基线的取舍 | 排期中 |
| 6 | 一维卷积与残差模块:83% 到 95% 的原理拆解 | 排期中 |
| 7 | 训练与评估:复现全部实验结果 | 排期中 |
| 8 | 可视化界面:PyQt5 搭建诊断工具 | 排期中 |
| 9 | 从代码到毕设:论文框架与答辩话术 | 排期中 |
下一篇预告:《CWRU 数据集深度解析与四类故障波形可视化》,带你看懂这份免费公开的轴承数据集里到底藏了什么。
版权说明:CWRU 数据集版权归凯斯西储大学所有,仅限学习研究使用;本文代码与文字为本人原创,付费专栏读者可学习使用,禁止转售。