公司动态
KD_Lib安装避坑指南:PyPI与源码两种安装方式及3大常见问题排查
KD_Lib安装避坑指南PyPI与源码两种安装方式及3大常见问题排查【免费下载链接】KD_LibA Pytorch Knowledge Distillation library for benchmarking and extending works in the domains of Knowledge Distillation, Pruning, and Quantization.项目地址: https://gitcode.com/gh_mirrors/kd/KD_LibKD_Lib也叫 KD-Lib是一个基于 PyTorch 的知识蒸馏Knowledge Distillation库集成了知识蒸馏、模型剪枝Pruning和量化Quantization三类模型压缩方法非常适合做模型压缩实验与论文复现。不过很多新手在KD_Lib安装的第一步就卡住了不是依赖冲突就是版本不兼容。本文用最简单的方式带你走完 PyPI 与源码两种安装流程并给出3 大常见问题排查方案帮你 10 分钟跑通第一个蒸馏实验。一、为什么推荐用 KD_Lib 做知识蒸馏实验在动手安装前先花 30 秒认识它KD_Lib 把经典的蒸馏方法封装成了统一接口比如VanillaKD、DML、TAKD、RKD等你只需要传入教师模型、学生模型和数据加载器就能一键训练与评估。统一 API所有方法都继承自 KD_Lib/KD/common/base_class.py 中的BaseClass内置模型ResNet18/50、LeNet、LSTM等开箱即用覆盖全面视觉、文本、剪枝、量化一应俱全上图就是 KD_Lib 中概率偏移ProbShift方法的实验可视化效果安装完成后你也可以轻松复现类似结果。二、安装前的准备工作重要安装 KD_Lib 前请先确认你的环境满足以下条件否则容易踩坑检查项推荐配置Python 版本3.6 ~ 3.8老版本库兼容性最好PyTorch1.8 左右即可新版 PyTorch 需谨慎包管理强烈建议使用 venv 或 conda 虚拟环境2.1 创建虚拟环境强烈建议KD_Lib 的历史依赖版本较旧直接在全局环境安装很可能污染你现有的项目。先隔离环境python -m venv kd_env source kd_env/bin/activate三、安装方式一PyPI 一键安装最快速如果你只想快速体验用 pip 从 PyPI 安装是最省事的KD_Lib安装方法pip install KD-Lib注意PyPI 上的包名是KD-Lib带连字符而导入时用的是下划线KD_Lib两者不同别搞混了。安装后的快速验证from KD_Lib.KD import VanillaKD print(KD_Lib 安装成功!)如果没报错说明导入正常。更完整的验证方式是跑一个 MNIST 蒸馏小实验参考 README.md 的示例模型封装在 KD_Lib/models/ 目录下。四、安装方式二源码安装推荐功能最新PyPI 上的版本可能滞后于仓库代码想要体验最新功能推荐源码方式安装KD_Libgit clone https://gitcode.com/gh_mirrors/kd/KD_Lib cd KD_Lib python setup.py install源码安装的小技巧跳过自动依赖setup.py会自动安装requirements.txt里一大堆锁死版本的依赖如numpy1.21.0、pip21.1这些老版本很容易和你现有环境冲突。如果你只需要核心功能可以这样python setup.py install --no-deps然后手动安装requirements.txt中真正需要的核心库如 torch、matplotlib、tqdm。五、3 大常见问题排查含解决方案问题 1依赖版本冲突安装时报 numpy/pip 错误 ❌现象pip install KD-Lib时提示numpy 1.21.0与现有版本冲突或强制降级了你的 pip。原因项目的requirements.txt使用了大量精确版本锁定详见 requirements.txt年代较久。解决方案优先使用虚拟环境隔离避免影响全局使用--no-deps跳过自动依赖再手动按需安装若必须共存可用pip install KD-Lib --no-deps后单独安装兼容版本。问题 2Python 版本过高torchtext 装不上 现象ERROR: No matching distribution found for torchtext0.9.1。原因KD_Lib 要求torchtext0.9.1、transformers4.6.1等这些库不支持 Python 3.10。解决方案用 conda 创建 Python 3.7 环境conda create -n kd python3.7或改用--no-deps方式安装 KD_Lib 本体文本蒸馏部分KD_Lib/KD/text/BERT2LSTM/可以单独装新版本 transformers。问题 3torch / torchvision / torchtext 三者版本不匹配 现象运行时提示torchtext找不到对应的torch版本或 CUDA 相关报错。原因KD_Lib 锁定了torch1.8.1与torchvision0.9.1、torchtext0.9.1这套组合需要互相匹配且torch 1.8.1对新 CUDA 支持有限。解决方案# 先卸载再统一安装匹配版本 pip uninstall torch torchvision torchtext -y pip install torch1.8.1 torchvision0.9.1 torchtext0.9.1如果是 CUDA 环境请到 PyTorch 官网选择与显卡驱动匹配的 CUDA 版本进行安装。六、安装成功后的第一次蒸馏实验环境搞定后验证一下核心功能。以最简单的 VanillaKD 为例它实现了经典论文《Distilling the Knowledge in a Neural Network》import torch.optim as optim from KD_Lib.KD import VanillaKD from KD_Lib.models import ResNet18, ResNet50 # 准备 teacher / student 模型与优化器 distiller VanillaKD( teacher_model, student_model, train_loader, val_loader, optim.SGD(teacher_model.parameters(), 0.01), optim.SGD(student_model.parameters(), 0.01), ) distiller.train_teacher(epochs5) distiller.train_student(epochs5) distiller.evaluate()完整示例可参考 README.md 与官方文档 docs/usage/install.rst。七、小结总结一下这份KD_Lib安装避坑指南✅ 最快方式pip install KD-Lib适合快速体验✅ 最新功能git clone源码安装建议加--no-deps⚠️ 三大坑依赖锁版本、Python 版本过高、torch 三件套不匹配️ 万能方案虚拟环境 Python 3.7 手动控制依赖版本按照这份指南操作你就能避开绝大多数KD_Lib安装的坑把时间花在更有趣的蒸馏实验上。如果遇到其他问题欢迎在评论区留言交流 【免费下载链接】KD_LibA Pytorch Knowledge Distillation library for benchmarking and extending works in the domains of Knowledge Distillation, Pruning, and Quantization.项目地址: https://gitcode.com/gh_mirrors/kd/KD_Lib创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考