跳到正文
博客园· 小屋打AI·· 3 小时前AI 评分12

手把手教你:基于深度学习的滚动轴承故障诊断|第 2 篇 · 环境部署:从零搭建 TensorFlow 2.x 深度学习环境(CPU 版)

手把手教你:基于深度学习的滚动轴承故障诊断|第 2 篇 · 环境部署:从零搭建 TensorFlow 2.x 深度学习环境(CPU 版) - 小屋打AI

AI 导读

滚动轴承故障诊断系列第 2 篇给出环境部署方案:用 Anaconda 创建 bearing 虚拟环境,锁定 Python 3.9,安装 CPU 版 TensorFlow 2.x 及 numpy、scipy、scikit-learn、matplotlib、PyQt5、joblib 等依赖库。

正文

本文是《滚动轴承故障诊断》系列的第 2 篇(环境部署)。
系列完整目录见文末【专栏导航】。本篇配套的安装命令、自检脚本与报错速查,见博主同名公众号。

qrcode_for_gh_38075e8fe6f3_258

一、本篇目的:为什么第一件事是搭环境

很多同学拿到代码第一反应是"赶紧跑起来",结果被 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,零基础一台普通电脑即可;
  • 具体安装命令、自检脚本、报错速查:公众号私信。

激活 bearing 环境并验证(终端示意)

check_env.py 自检脚本全绿输出

【专栏导航】

篇次 主题 状态
1 项目总览与三模型对比 ✅
2 环境部署:Anaconda + TensorFlow 2.x 全流程(本文) ✅
3 CWRU 数据集深度解析与波形可视化 排期中
4 数据预处理源码走读:从 .mat 到 npy 排期中
5 随机森林:传统基线的取舍 排期中
6 一维卷积与残差模块:83% 到 95% 的原理拆解 排期中
7 训练与评估:复现全部实验结果 排期中
8 可视化界面:PyQt5 搭建诊断工具 排期中
9 从代码到毕设:论文框架与答辩话术 排期中

下一篇预告:《CWRU 数据集深度解析与四类故障波形可视化》,带你看懂这份免费公开的轴承数据集里到底藏了什么。


版权说明:CWRU 数据集版权归凯斯西储大学所有,仅限学习研究使用;本文代码与文字为本人原创,付费专栏读者可学习使用,禁止转售。


来源:博客园 · cnblogs.com