🚀 BERT-base uncased模型在SQuAD v1上微调
该模型是在HuggingFace的BERT基础无大小写检查的检查点上,针对SQuAD1.1数据集进行微调得到的。此模型不区分大小写,即“english”和“English”对它来说没有区别。
🚀 快速开始
此模型是从HuggingFace的BERT基础无大小写检查的检查点在SQuAD1.1上微调而来。该模型不区分大小写。
✨ 主要特性
- 基于BERT基础无大小写检查模型微调,适用于问答任务。
- 不区分大小写,在处理文本时更加灵活。
📦 安装指南
在使用该模型前,需要安装相关依赖。可以通过以下步骤进行安装:
# 安装Hugging Face的transformers库
pip install transformers
💻 使用示例
基础用法
from transformers import pipeline
qa_pipeline = pipeline(
"question-answering",
model="csarron/bert-base-uncased-squad-v1",
tokenizer="csarron/bert-base-uncased-squad-v1"
)
predictions = qa_pipeline({
'context': "The game was played on February 7, 2016 at Levi's Stadium in the San Francisco Bay Area at Santa Clara, California.",
'question': "What day was the game played on?"
})
print(predictions)
📚 详细文档
数据集详情
数据集 |
划分 |
样本数量 |
SQuAD1.1 |
训练集 |
90.6K |
SQuAD1.1 |
评估集 |
11.1k |
微调详情
- Python版本:
3.7.5
- 机器规格:
CPU
:Intel(R) Core(TM) i7 - 6800K CPU @ 3.40GHz
内存
:32 GiB
GPU
:2块GeForce GTX 1070,每块显存8GiB
GPU驱动
:418.87.01,CUDA:10.1
- 微调脚本:
# 在安装https://github.com/huggingface/transformers之后
cd examples/question-answering
mkdir -p data
wget -O data/train-v1.1.json https://rajpurkar.github.io/SQuAD-explorer/dataset/train-v1.1.json
wget -O data/dev-v1.1.json https://rajpurkar.github.io/SQuAD-explorer/dataset/dev-v1.1.json
python run_squad.py \
--model_type bert \
--model_name_or_path bert-base-uncased \
--do_train \
--do_eval \
--do_lower_case \
--train_file train-v1.1.json \
--predict_file dev-v1.1.json \
--per_gpu_train_batch_size 12 \
--per_gpu_eval_batch_size=16 \
--learning_rate 3e-5 \
--num_train_epochs 2.0 \
--max_seq_length 320 \
--doc_stride 128 \
--data_dir data \
--output_dir data/bert-base-uncased-squad-v1 2>&1 | tee train-energy-bert-base-squad-v1.log
微调大约需要2小时完成。
模型结果
模型大小:418M
指标 |
本模型值 |
原始值(表2) |
精确匹配(EM) |
80.9 |
80.8 |
F1值 |
88.2 |
88.5 |
需要注意的是,以上结果未进行任何超参数搜索。
🔧 技术细节
该模型基于BERT基础无大小写检查模型,在SQuAD1.1数据集上进行微调。通过微调,模型能够更好地处理问答任务。在微调过程中,使用了特定的训练参数和脚本,以确保模型能够学习到数据集中的语义信息。
📄 许可证
本项目采用MIT许可证。
由Qingqing Cao创建 | GitHub | Twitter
于纽约用心打造。