Skip to content

boostcampaitech5/level2_nlp_mrc-nlp-05

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

level2_MRC-nlp-05


🐴Members

변성훈 서보성 이상민 이승우 이예원

📎ODQA (Open-Domain Question Answering)

부스트캠프 AI-Tech 5기 NLP 트랙 Level2 3차 경진대회 프로젝트입니다. Question Answering 은 다양한 종류의 질문에 대해 대답하는 인공지능을 만드는 연구 분야입니다. 특히 Open-Domain Question Answering (ODQA) 은 주어지는 지문이 따로 존재하지 않고 사전에 구축된 Knowledge resource에서 질문에 답할 수 있는 문서를 찾는 과정이 추가됩니다. 본 대회에서 우리가 만들어야 했던 모델은 질문에 관련된 문서를 찾아주는 retriever - 관련된 문서를 읽고 적절한 답변을 찾거나 만들어주는 reader의 two-stage로 구성되어 있습니다.


Data

  • 데이터 구성
    image

  • 데이터 예시
    image

Metric

  • Exact Match (EM), F1 Score (보조)



✔️Project

Structure

root/input/code/
|
|-- BS_inference.py
|-- BS_train.py
|-- BSQuestionAnsweringModel.py
|-- curriculum.py
|-- evaluation.py
|-- find_answer_sentence.py
|-- inference.py
|-- prepare_dataset.py
|-- scores_voting.py
|-- train.py
|-- trainer_qa.py
|-- utils_qa.py
|
|-- ensemble/
|   |-- probs_voting_ensemble_n.py
|   |-- probs_voting_ensemble.py
|   |-- scores_voting_ensemble.py
|
|-- retrieval/
|   |-- DenseModel/
|   |   |-- DenseModel.py
|   |   |-- train.py
|   |-- cross_encoder.py
|   |-- retrieval_BM25.py
|   |-- retrieval_DPR.py
|   |-- retrieval_ES.py
|   |-- retrieval_reranking.py
|   |-- retrieval_reranking2.py
|   |-- retrieval_TFIDF.py
|
|-- utils/
|   |-- elastic_search.py
|   |-- es.py
|   |-- naming.py

Data Analysis

  • Data Augmentation
  • Preprocessing
  • Prompt Tuning

Retriever

  • Retriever Tokenizer
  • Sparse Retriever
    • TF-IDF
    • BM25
    • BM25 + TF-IDF
    • Elastic Search
  • Dense Retriever
    • Bi-Encoder
    • Cross-Encoder
    • Colbert
  • Inference Method
    • [SEP] special token
    • Independent Documents Inference

Reader

  • Model, Tokenizer Tuning
  • Curriculum Learning
  • Transfer Learning
  • Negative Sampling

Sentence-level Approach (Bremen Special)


Ensemble

  • nbest-probs soft voting

💡 위에 관한 자세한 내용은 Wrap-up Report를 참고해주세요.


🐞Usage

# TRAIN
python3 input/code/train.py

# INFERENCE
python3 input/code/inference.py

🏆Result

  • Public 3위 image

  • Private 2위 image

About

level2_nlp_mrc-nlp-05 created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published