# soheeyang /dpr-question_encoder-single-trivia-base

 # DPRQuestionEncoder for TriviaQA ## dpr-question_encoder-single-trivia-base Dense Passage Retrieval (DPR) Vladimir Karpukhin, Barlas Oğuz, Sewon Min, Patrick Lewis, Ledell Wu, Sergey Edunov, Danqi Chen, Wen-tau Yih, [Dense Passage Retrieval for Open-Domain Question Answering](https://arxiv.org/abs/2004.04906), EMNLP 2020. This model is the question encoder of DPR trained solely on TriviaQA (single-trivia) using the [official implementation of DPR](https://github.com/facebookresearch/DPR). Disclaimer: This model is not from the authors of DPR, but my reproduction. The authors did not release the DPR weights trained solely on TriviaQA. I hope this model checkpoint can be helpful for those who want to use DPR trained only on TriviaQA. ## Performance The following is the answer recall rate measured using PyTorch 1.4.0 and transformers 4.5.0. The values in parentheses are those reported in the paper. | Top-K Passages | TriviaQA Dev | TriviaQA Test | |----------------|--------------|---------------| | 1 | 54.27 | 54.41 | | 5 | 71.11 | 70.99 | | 20 | 79.53 | 79.31 (79.4) | | 50 | 82.72 | 82.99 | | 100 | 85.07 | 84.99 (85.0) | ## How to Use Using AutoModel does not properly detect whether the checkpoint is for DPRContextEncoder or DPRQuestionEncoder. Therefore, please specify the exact class to use the model. python from transformers import DPRQuestionEncoder, AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("soheeyang/dpr-question_encoder-single-trivia-base") question_encoder = DPRQuestionEncoder.from_pretrained("soheeyang/dpr-question_encoder-single-trivia-base") data = tokenizer("question comes here", return_tensors="pt") question_embedding = question_encoder(**data).pooler_output # embedding vector for question