模型:
uer/sbert-base-chinese-nli
这是由 UER-py 预训练的句子嵌入模型,其介绍在 this paper 中提到。
使用 ChineseTextualInference 作为训练数据。
该模型在 Tencent Cloud 上由 UER-py 进行了微调。我们基于预训练模型 chinese_roberta_L-12_H-768 ,在序列长度为128的基础上进行了五个epoch的微调。在每个epoch结束时,当在开发集上取得最佳性能时,模型被保存。
python3 finetune/run_classifier_siamese.py --pretrained_model_path models/cluecorpussmall_roberta_base_seq512_model.bin-250000 \ --vocab_path models/google_zh_vocab.txt \ --config_path models/sbert/base_config.json \ --train_path datasets/ChineseTextualInference/train.tsv \ --dev_path datasets/ChineseTextualInference/dev.tsv \ --learning_rate 5e-5 --epochs_num 5 --batch_size 64
最后,我们将预训练模型转换成Huggingface的格式:
python3 scripts/convert_sbert_from_uer_to_huggingface.py --input_model_path models/finetuned_model.bin \ --output_model_path pytorch_model.bin \ --layers_num 12
@article{reimers2019sentence, title={Sentence-bert: Sentence embeddings using siamese bert-networks}, author={Reimers, Nils and Gurevych, Iryna}, journal={arXiv preprint arXiv:1908.10084}, year={2019} } @article{zhao2019uer, title={UER: An Open-Source Toolkit for Pre-training Models}, author={Zhao, Zhe and Chen, Hui and Zhang, Jinbin and Zhao, Xin and Liu, Tao and Lu, Wei and Chen, Xi and Deng, Haotang and Ju, Qi and Du, Xiaoyong}, journal={EMNLP-IJCNLP 2019}, pages={241}, year={2019} }