Back to all models
question-answering mask_token: [MASK]
Context
Query this model
馃敟 This model is currently loaded and running on the Inference API. 鈿狅笍 This model could not be loaded by the inference API. 鈿狅笍 This model can be loaded on the Inference API on-demand.
JSON Output
API endpoint  

鈿★笍 Upgrade your account to access the Inference API

Share Copied link to clipboard

Monthly model downloads

ktrapeznikov/scibert_scivocab_uncased_squad_v2 ktrapeznikov/scibert_scivocab_uncased_squad_v2
109 downloads
last 30 days

pytorch

tf

Contributed by

ktrapeznikov Kirill Trapeznikov
3 models

How to use this model directly from the 馃/transformers library:

			
Copy to clipboard
from transformers import AutoTokenizer, AutoModelForQuestionAnswering tokenizer = AutoTokenizer.from_pretrained("ktrapeznikov/scibert_scivocab_uncased_squad_v2") model = AutoModelForQuestionAnswering.from_pretrained("ktrapeznikov/scibert_scivocab_uncased_squad_v2")

Model

allenai/scibert_scivocab_uncased fine-tuned on SQuAD V2 using run_squad.py

Training Parameters

Trained on 4 NVIDIA GeForce RTX 2080 Ti 11Gb

BASE_MODEL=allenai/scibert_scivocab_uncased
python run_squad.py \
  --version_2_with_negative \
  --model_type albert \
  --model_name_or_path $BASE_MODEL \
  --output_dir $OUTPUT_MODEL \
  --do_eval \
  --do_lower_case \
  --train_file $SQUAD_DIR/train-v2.0.json \
  --predict_file $SQUAD_DIR/dev-v2.0.json \
  --per_gpu_train_batch_size 18 \
  --per_gpu_eval_batch_size 64 \
  --learning_rate 3e-5 \
  --num_train_epochs 3.0 \
  --max_seq_length 384 \
  --doc_stride 128 \
  --save_steps 2000 \
  --threads 24 \
  --warmup_steps 550 \
  --gradient_accumulation_steps 1 \
  --fp16 \
  --logging_steps 50 \
  --do_train

Evaluation

Evaluation on the dev set. I did not sweep for best threshold.

val
exact 75.07790785816559
f1 78.47735207283013
total 11873.0
HasAns_exact 70.76585695006747
HasAns_f1 77.57449412292718
HasAns_total 5928.0
NoAns_exact 79.37762825904122
NoAns_f1 79.37762825904122
NoAns_total 5945.0
best_exact 75.08633032931863
best_exact_thresh 0.0
best_f1 78.48577454398324
best_f1_thresh 0.0

Usage

See huggingface documentation. Training on SQuAD V2 allows the model to score if a paragraph contains an answer:

start_scores, end_scores = model(input_ids) 
span_scores = start_scores.softmax(dim=1).log()[:,:,None] + end_scores.softmax(dim=1).log()[:,None,:]
ignore_score = span_scores[:,0,0] #no answer scores