模型:
monsoon-nlp/hindi-bert
这是使用Google研究的 ELECTRA 进行训练的印地语语言模型的初步尝试。
截至2022年,我推荐使用Google的MuRIL模型,该模型经过了对英语、印地语和其他主要印度语言的训练,包括其原始脚本和拉丁化脚本: https://huggingface.co/google/muril-base-cased 和 https://huggingface.co/google/muril-large-cased 。
对于因果语言模型,我建议使用 https://huggingface.co/sberbank-ai/mGPT ,尽管这是一个庞大的模型。
我最初使用 a modified ELECTRA 进行微调,但现在使用SimpleTransformers。
Blog post - 我受到了 https://huggingface.co/blog/how-to-train 的很大影响。
这个小模型在 BBC Hindi news classification 和 Hindi movie reviews / sentiment analysis 上的结果与多语言BERT相当。
您可以通过调整学习率(还可以:在config.json中更改model_type - 这是ktrain的一个未解决的问题)来提高准确性: https://colab.research.google.com/drive/1mSeeSfVSOT7e-dVhPlmSsQRvpn6xC05w?usp=sharing 。
在MLQA数据集上进行问答: https://colab.research.google.com/drive/1i6fidh2tItf_-IDkljMuaIGmEU6HT2Ar#scrollTo=IcFoAHgKCUiQ 。
使用ELECTRA基础规模的更大模型( Hindi-TPU-Electra )在印地语电影评论/情感分析上表现优于两个模型,但在BBC新闻分类任务上表现不佳。
下载: https://drive.google.com/drive/folders/1SXzisKq33wuqrwbfp428xeu_hDxXVUUu?usp=sharing 。
该语料库由两个文件组成:
额外的注意事项:
https://drive.google.com/file/d/1-6tXrii3tVxjkbrpSJE9MOG_HhbvP66V/view?usp=sharing
额外的注意事项:
将文件结构化,使用名为"trainer"的数据目录
trainer - vocab.txt - pretrain_tfrecords -- (all .tfrecord... files) - models -- modelname --- checkpoint --- graph.pbtxt --- model.*
CoLab笔记本提供了GPU与TPU设置的示例
使用此流程将进行中或已完成的ELECTRA检查点转换为适用于Transformers的模型:
git clone https://github.com/huggingface/transformers python ./transformers/src/transformers/convert_electra_original_tf_checkpoint_to_pytorch.py --tf_checkpoint_path=./models/checkpointdir --config_file=config.json --pytorch_dump_path=pytorch_model.bin --discriminator_or_generator=discriminator python
from transformers import TFElectraForPreTraining model = TFElectraForPreTraining.from_pretrained("./dir_with_pytorch", from_pt=True) model.save_pretrained("tf")
一旦您在同一级别上形成了一个包含config.json、pytorch_model.bin、tf_model.h5、special_tokens_map.json、tokenizer_config.json和vocab.txt的目录,运行:
transformers-cli upload directory