中文电子病历Bert预训练模型
cleaner可以将文件清理为预训练bert需要的格式。将原文件按标点符号切割为行。
cd ./cleaner/
python parser.py [-h] [--input INPUT] [--output OUTPUT] [-s] [--log LOG]
- --input: 输入文件夹
- --output: 输出文件夹
- -s: 输出是否是单个文件
- --log: log频率
进行预训练之前需要先生成tfrecord文件。因为需要训练的文本可能很大,脚本会先进行切分。
切分和生成tfrecord
cd ./train/
python make_pretrain_bert.py [-h] [-f FILE_PATH] [-s SPLIT_LINE]
[-p SPLIT_PATH] [-o OUTPUT_PATH] [-l MAX_LENGTH]
[-b BERT_BASE_DIR]
- -f: 清理完的输入文件夹
- -s: 分割行数, 默认=500000
- -p: 分割文件保存位置
- -o: .tfrecord文件保存位置
- -l: 句子最长字数
- -b: bert文件夹(需要从google下载)
pretrain128.sh和pretrain512.sh的参数需要根据需要自行修改。
sh pretrain128.sh
sh pretrain512.sh
一行测试中文NLP任务!两个NER任务,一个RE任务,一个QA任务,一个句子相似性判断任务。具体说明见**./test/readme.md**。
cd ./test/
sh run_test.sh
包含了如下任务CCKS2019NER, cMedQA2, Tianchi_NER, Tianchi_RE, ncov2019_sim。
结果包括用Google训练的中文Bert和用ChineseEhrBert分别fine-tune之后的结果。结果正在准备中。