Closed sangyongjia closed 1 year ago
执行命令: CUDA_VISIBLE_DEVICES=1,2,3,4,5,6,7 torchrun --nproc_per_node 7 training_sup_text_matching_model_mydata.py --num_epochs 1 --do_train --do_predict --output_dir outputs/STS-B-text2vec-macbert-v1 --batch_size 32 --data_parallel --model_arch "sentencebert" --train_file="/home/ma-user/work/data/embedding_model_eval_data_20230802/embedding_model_train_data_20230802_text2vec.jsonl" --valid_file="/home/ma-user/work/data/embedding_model_eval_data_20230802/embedding_model_eval_data_20230802_text2vec.jsonl" --model_name "/home/ma-user/work/text2vec/models/chinese-macbert-base"
没对比过,batch_size一样吗
SentenceTransformer 使用的batch_size是64。 text2vec的batch_size是32【注,从默认值64改为32是因为报OOM,所以调小了batch_size】
没对比过,batch_size一样吗
有对比过text2vec的单卡和多卡训练速度的区别吗?看sentence_transformer issues中,其作者尝试dataparallel以支持并行训练时,性能并没有收益。
多卡的并行处理是有收益的。
8卡使用text2vec中的 sentencebert模型,其训练速度比 单卡的sentense-transformer速度还慢(注:相同数量的训练数据)
不知道作者或其他使用者是否碰到过这个问题?