DyTox:动态令牌扩展与连续变换器安装与使用指南
1. 项目目录结构及介绍
DyTox 是一个专为连续学习设计的变压器模型,它的仓库结构精心组织,便于开发者快速上手。以下是关键的目录结构与简介:
./arthurdouillard/dytox
:主项目根目录。code
: 包含主要的源代码文件,如模型定义、训练脚本等。main.py
: 应该是主要的运行入口,但实际操作基于train.sh
脚本。convert_memory.py
,erratum_distributed.md
等辅助脚本和文档。
options
: 配置文件夹,包含了数据集设置、模型版本选择和实验参数等详细配置。- 分为数据相关 (
data
), 模型相关 (model
) 和可能的任务特定选项。
- 分为数据相关 (
logs
: 自动创建的结果存放目录,记录实验结果。requirements.txt
: Python 依赖列表,确保环境兼容性。.gitignore
,LICENSE
,README.md
: 标准的Git忽略文件、许可证文件以及项目介绍。
2. 项目的启动文件介绍
项目的核心启动不通过直接运行Python文件,而是利用了bash脚本 train.sh
来简化多步骤的实验设置。这个脚本允许用户通过命令行参数指定不同的配置来启动实验,包括但不限于:
- 数据集路径(
--data-path
) - 输出基目录以保存检查点(
--output-basedir
) - 所需的GPU编号(例如通过
0,1
指定第一和第二块GPU) - 以及至关重要的选项文件路径,这些选项文件定义了实验的具体细节,如数据集(如
cifar100_2-2.yaml
)、类顺序和模型类型(如cifar_dytox.yaml
)。
示例启动命令展示了如何在CIFAR100数据集上使用DyTox模型进行训练:
train.sh 0 1 \
--options options/data/cifar100_2-2.yaml options/data/cifar100_order1.yaml options/model/cifar_dytox.yaml \
--name dytox \
--data-path YOUR_DATASET_PATH \
--output-basedir PATH_TO_SAVЕ_CHECKPOINTS \
--memory-size 1000
3. 项目的配置文件介绍
配置文件位于 options
目录下,分为几个子类别,每个子目录对应不同类型的配置项:
data
: 包含不同数据集的配置文件,指定了数据集名称、分割方式等。model
: 提供了模型架构的选择与自定义配置,如DyTox的不同变体。
每份YAML配置文件明确了模型训练的参数,比如任务的设置、模型的具体版本、记忆体大小等。例如,选择CIFAR100的数据配置、特定的类顺序排列和DyTox模型配置,这些信息确保了实验的一致性和可复现性。修改这些配置文件即可适应不同实验需求,提供高度定制化的训练过程。
通过以上概述,开发者能够迅速理解DyTox的基本架构,并依据提供的配置文件和启动脚本来轻松地搭建并运行实验。记得,在开始任何实验之前,先确保按照requirements.txt
文件安装所有必要的库和依赖。