Cartography 项目使用教程
1. 项目目录结构及介绍
Cartography 项目的目录结构如下:
cartography/
├── configs/
│ └── ... (各种任务的配置文件)
├── data/
│ └── data_map_coordinates/
│ └── ... (数据地图坐标文件)
├── notebooks/
│ └── ... (数据地图可视化笔记本)
├── sample/
│ └── ... (示例文件)
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
└── ... (其他辅助文件)
目录介绍
- configs/: 包含各种任务的配置文件,用于训练 GLUE-style 模型。
- data/: 包含数据地图坐标文件,用于生成数据地图。
- notebooks/: 包含数据地图可视化的 Jupyter 笔记本。
- sample/: 包含示例文件,用于演示如何使用项目。
- .gitignore: Git 忽略文件,指定哪些文件或目录不需要被 Git 管理。
- LICENSE: 项目许可证文件,采用 Apache-2.0 许可证。
- README.md: 项目说明文件,包含项目的基本信息和使用方法。
- requirements.txt: 项目依赖文件,列出了项目运行所需的 Python 包。
2. 项目启动文件介绍
Cartography 项目的主要启动文件是 run_glue.py,位于 cartography/classification/ 目录下。该文件用于训练 GLUE-style 模型并计算训练动态。
启动命令示例
python -m cartography.classification.run_glue \
-c configs/$TASK.jsonnet \
--do_train \
--do_eval \
-o $MODEL_OUTPUT_DIR
参数说明
-c configs/$TASK.jsonnet: 指定任务的配置文件。--do_train: 启用训练模式。--do_eval: 启用评估模式。-o $MODEL_OUTPUT_DIR: 指定模型输出的目录。
3. 项目的配置文件介绍
配置文件位于 configs/ 目录下,每个任务对应一个配置文件,例如 SNLI.jsonnet、MNLI.jsonnet 等。
配置文件示例
{
"task_name": "SNLI",
"model_name_or_path": "roberta-large",
"output_dir": "output/snli_roberta_large",
"max_seq_length": 128,
"do_train": true,
"do_eval": true,
"per_device_train_batch_size": 16,
"per_device_eval_batch_size": 16,
"learning_rate": 5e-5,
"num_train_epochs": 3,
"logging_dir": "logs/snli_roberta_large",
"save_steps": 500,
"save_total_limit": 2
}
配置项说明
task_name: 任务名称,如SNLI、MNLI等。model_name_or_path: 预训练模型的名称或路径。output_dir: 模型输出的目录。max_seq_length: 最大序列长度。do_train: 是否启用训练模式。do_eval: 是否启用评估模式。per_device_train_batch_size: 每个设备的训练批次大小。per_device_eval_batch_size: 每个设备的评估批次大小。learning_rate: 学习率。num_train_epochs: 训练轮数。logging_dir: 日志目录。save_steps: 保存模型的步数。save_total_limit: 保存模型的总数限制。
通过以上配置文件,可以灵活地调整模型的训练参数,以适应不同的任务需求。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



