글 수 88


K-001.png

 

K-002.png

 

https://arxiv.org/pdf/1704.00051.pdf

 

 

 

요즘 질의응답 시스템에 관심이 생겨서 계속 찾아보고 있습니다. 이번 논문은 2017년 페이스북에서 발표한 DrQA입니다. 위키피디아를 검색하여 질문에 대한 정답을 출력합니다.

 

예를 들어, "한국의 수도는?"이라고 질문을 하였습니다. 먼저 BoW(Bag of Words)로 문장을 벡터로 변환합니다. 전체 위키 문서에서 (미국, 한국, 크기, 역사, 수도)의 5개의 단어만 있다면 가정하겠습니다. 각 단어의 위치에 출현한 개수를 넣으면 (0, 1, 0, 0, 1)가 됩니다. 좀 더 정확도를 높이기 위해 TF-IDF를 적용하면 (0, 0.9, 0, 0, 0.7) 같이 바뀝니다. 다른 문서에서 자주 나오는 단어는 중요도를 낮추는 방법입니다.

 

또한 단어의 순서를 고려하기 위해 BoW가 바이그램(bigram)으로 되어있습니다. 단어 하나가 아니라 연속된 두 단어를 묶어서 최소 단위로 지정합니다. 위키의 전체 데이터는 이미 바이그램 TF-IDF로 만들어져 있습니다. 그다음 질문의 벡터와 각 문서 벡터의 코사인 유사도를 구합니다. 여기서 가장 점수가 높은 5개의 문서를 뽑습니다.

 

여기까지가 Document Retriever이고 이제 Document Reader를 수행합니다. 5개의 후보 문서를 각각 질문과 함께 입력하여 문서안에 있는 정답을 찾습니다. 5개의 결과 중 가장 정확도가 높은 것을 선택합니다. 트랜스포머와 버트가 나오기 전이라 딥러닝 모델은 LSTM으로 구현되었습니다.






List of Articles
제목 글쓴이 날짜 조회 수
새로운 자연어처리 벤치마크 - SuperGLUE 깊은바다 2019-08-15 46
딥러닝을 사용하여 심심이의 나쁜말 필터링 기능 구현 깊은바다 2019-08-14 51
위키에서 질문의 답을 찾는 딥러닝 모델, 페이스북의 DrQA file 깊은바다 2019-08-03 77
페이스북이 발표한 사전훈련 언어모델 RoBERTa file 깊은바다 2019-07-30 121
케라스로 만든 한글 Seq2Seq 챗봇 소스코드 깊은바다 2019-07-13 238
딥러닝 자연어처리 강의 - Natural Language Processing with PyTorch 깊은바다 2019-07-06 196
딥러닝을 사용하여 의도 및 엔티티를 파악하는 챗봇 소스코드 file 깊은바다 2019-06-25 397
가짜뉴스를 생성 또는 판별하는 딥러닝 모델 - Grover 깊은바다 2019-06-01 212
GPT2를 Colab에서 테스트할 수 있는 코드 깊은바다 2019-05-21 243
인간의 언어를 이해하는 기계, NLU 깊은바다 2019-05-17 273
Jay Alammar의 트랜스포머 한글 번역글 깊은바다 2019-05-09 239
BERT로 토익 문제를 푸는 프로젝트 file 깊은바다 2019-04-30 384
워드 임베딩에 대한 아주 쉬운 설명 - The Illustrated Word2vec 깊은바다 2019-04-09 224
대화 인공지능 대회 - ConvAI file 깊은바다 2019-03-25 333
문장의 유사성을 예측하고 평가하는 AI - 카카오 심슨 깊은바다 2019-03-20 469