Skip to content

UniMERNet 3090GPU实验复现问题 #83

Description

@jonewei

请问UniMERNet 能在单卡3090 GPU上实现实验复现吗?因为,我用该项目在单卡3090 GPU上跑了几天后(修改batch_size = 4),用训练好的模型在cpe、hwe、sce和spe上测试,bleu和token_accuracy指标都很低,edit_distance指标很多。请问出现这些问题,是不是因为我没正确配置吗?希望得到您的解答,谢谢!
具体的训练日志如下:{
"run": {
"runner": "runner_iter",
"task": "enhanced_unimernet_train",
"lr_sched": "linear_warmup_cosine_lr",
"init_lr": 0.0001,
"min_lr": 1e-08,
"warmup_lr": 1e-05,
"weight_decay": 0.05,
"batch_size_train": 4,
"batch_size_eval": 4,
"accum_grad_iters": 1,
"num_workers": 4,
"warmup_steps": 5000,
"iters_per_inner_epoch": 20000,
"max_iters": 300000,
"milestone": [
1
],
"seed": 42,
"output_dir": "../outputs_unimernet/enhanced_unimernet_base_V4(grammar)",
"amp": true,
"resume_ckpt_path": null,
"evaluate": false,
"eval_freq": 2000,
"train_splits": [
"train"
],
"valid_splits": [
"eval"
],
"device": "cuda",
"world_size": 1,
"dist_url": "env://",
"distributed": false,
"distributed_type": "ddp",
"generate_cfg": {
"temperature": 0.0,
"do_sample": false,
"top_p": 0.95
},
"use_contrastive_learning": true,
"contrastive_weight": 0.1,
"report_metric": true,
"agg_metric": "edit_distance"
},
"model": {
"arch": "enhanced_unimernet",
"load_finetuned": false,
"load_pretrained": false,
"pretrained": "path/to/pretrained/weight",
"finetuned": "",
"tokenizer_name": "nougat",
"tokenizer_config": {
"path": "/root/lanyun-tmp/UniMERNet/models/unimernet_tiny",
"name": "nougat"
},
"model_name": "unimernet",
"model_config": {
"max_seq_len": 1536,
"model_name": "/root/lanyun-tmp/UniMERNet/models/unimernet_tiny"
},
"model_type": "default"
},
"preprocess": {
"vis_processor": {
"train": {
"name": "formula_image_train",
"image_size": [
192,
672
]
},
"eval": {
"name": "formula_image_eval",
"image_size": [
192,
672
]
}
},
"text_processor": {
"train": {
"name": "blip_caption"
},
"eval": {
"name": "blip_caption"
}
}
},
"datasets": {
"formula_rec_train": {
"data_type": "images",
"build_info": {
"images": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/images",
"annotation": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/train.txt"
},
"sample_ratio": 1,
"vis_processor": {
"train": {
"name": "formula_image_train",
"image_size": [
192,
672
]
}
},
"text_processor": {
"train": {
"name": "blip_caption",
"max_words": 1536
}
}
},
"formula_rec_eval": {
"data_type": "images",
"build_info": {
"images": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/val/images",
"annotation": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/val/val.txt"
},
"vis_processor": {
"eval": {
"name": "formula_image_eval",
"image_size": [
192,
672
]
}
},
"text_processor": {
"eval": {
"name": "blip_caption",
"max_words": 1536
}
}
}
}
}
{
"run": {
"runner": "runner_iter",
"task": "enhanced_unimernet_train",
"lr_sched": "linear_warmup_cosine_lr",
"init_lr": 0.0001,
"min_lr": 1e-08,
"warmup_lr": 1e-05,
"weight_decay": 0.05,
"batch_size_train": 4,
"batch_size_eval": 4,
"accum_grad_iters": 1,
"num_workers": 4,
"warmup_steps": 5000,
"iters_per_inner_epoch": 20000,
"max_iters": 300000,
"milestone": [
1
],
"seed": 42,
"output_dir": "../outputs_unimernet/enhanced_unimernet_base_V4(grammar)",
"amp": true,
"resume_ckpt_path": null,
"evaluate": false,
"eval_freq": 2000,
"train_splits": [
"train"
],
"valid_splits": [
"eval"
],
"device": "cuda",
"world_size": 1,
"dist_url": "env://",
"distributed": false,
"distributed_type": "ddp",
"generate_cfg": {
"temperature": 0.0,
"do_sample": false,
"top_p": 0.95
},
"use_contrastive_learning": true,
"contrastive_weight": 0.1,
"report_metric": true,
"agg_metric": "edit_distance"
},
"model": {
"arch": "enhanced_unimernet",
"load_finetuned": false,
"load_pretrained": false,
"pretrained": "path/to/pretrained/weight",
"finetuned": "",
"tokenizer_name": "nougat",
"tokenizer_config": {
"path": "/root/lanyun-tmp/UniMERNet/models/unimernet_tiny",
"name": "nougat"
},
"model_name": "unimernet",
"model_config": {
"max_seq_len": 1536,
"model_name": "/root/lanyun-tmp/UniMERNet/models/unimernet_tiny"
},
"model_type": "default"
},
"preprocess": {
"vis_processor": {
"train": {
"name": "formula_image_train",
"image_size": [
192,
672
]
},
"eval": {
"name": "formula_image_eval",
"image_size": [
192,
672
]
}
},
"text_processor": {
"train": {
"name": "blip_caption"
},
"eval": {
"name": "blip_caption"
}
}
},
"datasets": {
"formula_rec_train": {
"data_type": "images",
"build_info": {
"images": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/images",
"annotation": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/train.txt"
},
"sample_ratio": 1,
"vis_processor": {
"train": {
"name": "formula_image_train",
"image_size": [
192,
672
]
}
},
"text_processor": {
"train": {
"name": "blip_caption",
"max_words": 1536
}
}
},
"formula_rec_eval": {
"data_type": "images",
"build_info": {
"images": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/val/images",
"annotation": "/root/lanyun-tmp/UniMERNet/data/UniMER-10K/val/val.txt"
},
"vis_processor": {
"eval": {
"name": "formula_image_eval",
"image_size": [
192,
672
]
}
},
"text_processor": {
"eval": {
"name": "blip_caption",
"max_words": 1536
}
}
}
}
}
{"train_lr": "0.000", "train_loss": "1.408", "train_main_loss": "1.391", "train_total_loss": "1.408", "train_contrastive_loss": "0.163", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.022918358444749588, "eval_edit_distance": 0.8527315959298961, "eval_token_accuracy": 0.0768408246426679, "eval_agg_metrics": 14.726840407010389, "eval_best_iters": 20000}
{"train_lr": "0.000", "train_loss": "0.861", "train_main_loss": "0.852", "train_total_loss": "0.861", "train_contrastive_loss": "0.076", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.04312990503643606, "eval_edit_distance": 0.645817623594661, "eval_token_accuracy": 0.23744609410189105, "eval_agg_metrics": 35.4182376405339, "eval_best_iters": 40000}
{"train_lr": "0.000", "train_loss": "0.578", "train_main_loss": "0.572", "train_total_loss": "0.578", "train_contrastive_loss": "0.050", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.06894015824532146, "eval_edit_distance": 0.5335873424082465, "eval_token_accuracy": 0.34086355546116326, "eval_agg_metrics": 46.641265759175354, "eval_best_iters": 60000}
{"train_lr": "0.000", "train_loss": "0.350", "train_main_loss": "0.346", "train_total_loss": "0.350", "train_contrastive_loss": "0.038", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.10493618317714072, "eval_edit_distance": 0.47318792987036096, "eval_token_accuracy": 0.390069029064492, "eval_agg_metrics": 52.6812070129639, "eval_best_iters": 80000}
{"train_lr": "0.000", "train_loss": "0.219", "train_main_loss": "0.216", "train_total_loss": "0.219", "train_contrastive_loss": "0.031", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.13169560534209723, "eval_edit_distance": 0.45090091916279035, "eval_token_accuracy": 0.40517705844468516, "eval_agg_metrics": 54.90990808372096, "eval_best_iters": 100000}
{"train_lr": "0.000", "train_loss": "0.144", "train_main_loss": "0.141", "train_total_loss": "0.144", "train_contrastive_loss": "0.024", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.1359013973943467, "eval_edit_distance": 0.4480455640182865, "eval_token_accuracy": 0.4146004537007625, "eval_agg_metrics": 55.195443598171344, "eval_best_iters": 120000}
{"train_lr": "0.000", "train_loss": "0.100", "train_main_loss": "0.098", "train_total_loss": "0.100", "train_contrastive_loss": "0.021", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.15392772508178085, "eval_edit_distance": 0.4323801558118087, "eval_token_accuracy": 0.42264624071437157, "eval_agg_metrics": 56.761984418819125, "eval_best_iters": 140000}
{"train_lr": "0.000", "train_loss": "0.070", "train_main_loss": "0.067", "train_total_loss": "0.070", "train_contrastive_loss": "0.017", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.18120317009741455, "eval_edit_distance": 0.4209069669067361, "eval_token_accuracy": 0.4317926772209945, "eval_agg_metrics": 57.90930330932639, "eval_best_iters": 160000}
{"train_lr": "0.000", "train_loss": "0.048", "train_main_loss": "0.046", "train_total_loss": "0.048", "train_contrastive_loss": "0.014", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.18847307146966763, "eval_edit_distance": 0.416086629578708, "eval_token_accuracy": 0.4400458566989298, "eval_agg_metrics": 58.3913370421292, "eval_best_iters": 180000}
{"train_lr": "0.000", "train_loss": "0.032", "train_main_loss": "0.030", "train_total_loss": "0.032", "train_contrastive_loss": "0.011", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.19705937947749544, "eval_edit_distance": 0.41725290718177693, "eval_token_accuracy": 0.44144032870513633, "eval_agg_metrics": 58.274709281822304, "eval_best_iters": 180000}
{"train_lr": "0.000", "train_loss": "0.021", "train_main_loss": "0.019", "train_total_loss": "0.021", "train_contrastive_loss": "0.009", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.2039326761538121, "eval_edit_distance": 0.41322582613972125, "eval_token_accuracy": 0.4428179961613213, "eval_agg_metrics": 58.67741738602788, "eval_best_iters": 220000}
{"train_lr": "0.000", "train_loss": "0.013", "train_main_loss": "0.012", "train_total_loss": "0.013", "train_contrastive_loss": "0.008", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.21080555289875577, "eval_edit_distance": 0.4105589100882191, "eval_token_accuracy": 0.4381827227122893, "eval_agg_metrics": 58.94410899117809, "eval_best_iters": 240000}
{"train_lr": "0.000", "train_loss": "0.009", "train_main_loss": "0.007", "train_total_loss": "0.009", "train_contrastive_loss": "0.006", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.2141177806995881, "eval_edit_distance": 0.4044803834822137, "eval_token_accuracy": 0.44677816252485186, "eval_agg_metrics": 59.551961651778626, "eval_best_iters": 260000}
{"train_lr": "0.000", "train_loss": "0.007", "train_main_loss": "0.005", "train_total_loss": "0.007", "train_contrastive_loss": "0.005", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.20771133186651125, "eval_edit_distance": 0.407498203123578, "eval_token_accuracy": 0.44439522149613897, "eval_agg_metrics": 59.2501796876422, "eval_best_iters": 260000}
{"train_lr": "0.000", "train_loss": "0.006", "train_main_loss": "0.005", "train_total_loss": "0.006", "train_contrastive_loss": "0.005", "train_grammar_loss": "0.004"}
{"eval_bleu": 0.2081988341726736, "eval_edit_distance": 0.40971660706004887, "eval_token_accuracy": 0.443173505213856, "eval_agg_metrics": 59.02833929399512, "eval_best_iters": 260000}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions