一个模块化的,配置驱动的知识提炼框架。提供经过训练的模型、训练日志和配置,以确保再现性。

torchdistill的Python项目详细描述


torchdistill:一个模块化的、配置驱动的知识提取框架

Build Status

torchdistill(以前是kdkit)提供各种知识提炼方法 并使您能够通过编辑yaml文件而不是Python代码来设计(新)实验。 即使你需要在教师/学生模型中提取中间表示, 您将NOT需要重新实现模型,这些模型通常会更改转发的接口, 而是在yaml文件中指定模块路径。在

前钩管理器

使用ForwardHookManager,您可以在模型中提取中间表示,而无需修改其转发函数的接口。
This example notebook将使您更好地了解用法。在

ILSVRC 2012(ImageNet)前1验证精度

T: ResNet-34*PretrainedKDATFTCRDTf-KDSSKDL2PAD-L2
S: ResNet-1869.76*71.3770.9070.4570.9370.5270.0971.0871.71
Original workN/AN/A70.70N/A**71.1770.4271.6270.9071.71

*预训练的ResNet-34和ResNet-18由torchvision提供。
**在原始工作中,FT与ILSVRC 2015一起评估。
对于第二行(S:ResNet-18),检查点(训练权重)、配置和日志文件是available, 配置重用了除KD外的原始工作中使用的历元数等超参数。 图像分类、对象检测和语义分割的示例代码可在examples/中找到。在

引文

[Preprint]

@article{matsubara2020torchdistill,title={torchdistill: A Modular, Configuration-Driven Framework for Knowledge Distillation},author={Matsubara, Yoshitomo},year={2020}eprint={2011.12913},archivePrefix={arXiv},primaryClass={cs.LG}}

如何设置

  • Python 3.6>;=
  • pipenv(可选)

由pip/pipenv安装

^{pr2}$

从此存储库安装

git clone https://github.com/yoshitomo-matsubara/torchdistill.git
cd torchdistill/
pip3 install -e .
# or use pipenv
pipenv install "-e ."

问题/联系人

文件正在编制中。同时,如果您有功能请求或 如果你想私下问我,请给我发邮件(yoshitom@uci.edu)。在

参考文献

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java GridBagLayout不填充区域   java Memozied Fibonacci未运行与常规Fibonacci解决方案   Java Web启动未启动问题   Java中异常和if-then的区别   java从命令提示符运行批处理文件获取错误   socket在Java中验证SSL证书的公共名称   如何在JAVA中检查字符串数组中的相等字   用java语言将音频文件转换成文本文件的语音识别   java为什么foo(1,2,3)没有传递给varargs方法foo(对象…)作为整数[]   java通过蓝牙将奇怪的数据从Arduino传输到Android   java ContainerRequestFilter获取空entitystream   java如何从安卓 studio中删除不兼容类型错误   基本Java错误   在Spring引导中使用REST API时发生java错误   javascript通过从SQL查询派生的URL打开页面