주말동안 한 것
- 리더보드 가려주는 크롬 익스텐션을 만들었다.
- 슬랙에 공유를 하긴 했는데 일단 두 분 정도 사용하시는 것 같다.
- 아무도 안 쓸 줄 알았는데 완전 럭키비키잖아~
- 멘토님 피드백은… 아직 못 고쳤다.
- 흑백요리사가 생각보다 너무 재밌었다…
- 다음 주말을 이용해보는 걸로!
오늘 한 일
- MRC 훈련용 데이터셋에서 사용되는 Context들이
wikipedia_documents.json에 실제로 존재하는지 확인했다.
- 결론부터 말하자면, 모든 context가
wikipedia_documents.json에 존재했다.
- 그걸 찾다가 corpus에 중복 문서가 약 3000개 정도 존재하는 것을 확인했다.
- 지우는 작업이 필요할 것 같았는데,
faiss 만드는 과정에서 다 날려버린다고 한다.
- 따로 지우는 작업을 추가할 필요는 없어 보인다.
- corpus에 존재하는 문서가 60000개 정도 되는 거에 비해 실제 훈련용 데이터셋은 대충 4000개라, 전체의 10%도 되지 않아서 데이터 증강이 필요해 보인다.
- streamlit을 이용한 훈련용 데이터셋 EDA도 진행해봤다.
- 코드의 흐름을 역순으로 제어하고 싶다면,
st.empty()를 저장하는 placeholder를 이용하는 것도 좋은 방법이다.
- 저러면 나중에
placeholder.empty()로 다 날려버리고 새로운 글을 쓰거나 할 수 있다.
- 훈련용 데이터셋을 조금 둘러보다 보니 여러가지 사실을 알게 되었다.
- 애니메이션 캐릭터 관련 문서도 포함되어 있었다. (…) 이걸 아웃라이어로 봐야하려나…
- 그리고 잘 읽어보면 정답이 틀린 문서도 확인할 수 있었다.
- ex. 처음 맥락에서는 참인데, 더 읽어보면 상황이 바뀌는 경우가 있었다.
- 이걸로 Dense Retrieval을 학습하기엔 ODQA에 적합하지 않은 질문도 있는 것 같아서 이런 거는 쳐내야 할 것 같다.
- release를 이용한 프로젝트 버전 관리를 시작했다.
- H 모 캠퍼님이 먼저 제안주셔서 (처음에는 branch로 하려다가) release를 이용해보기로 했다.
- 장점
- 롤백이 가능하니 마음의 안식처가 생긴 느낌
- 버전별로 변경사항을 잘 관리하여 패치노트 같은 느낌으로 보기 편해졌다.
다음에 할 일
- token 단위로 분석해봐도 좋을 것 같다.
- 일본어나 한자어가 포함되어있는 문서가 많은데, 이런 건 한글 모델에서는 엥간하면
UNK 토큰일 것 같기도 하고?
- streamlit 페이지에 기능 추가
- 토큰 단위 분석 + context나 question 외에도 다른 정보 expander로 볼 수 있도록?
- retrieval도 테스트해볼 수 있으면 좋을 것 같기도 하고?]
- 팀원 모두가 지금 retrieval 쪽에 열중하고 있는 것 같다.
- 나도 해보고 싶긴 한데, L 모 캠퍼님이 Dense Retrieval을 완성한 이후부터 손봐야 할 것 같다.
- 나 지금 sparse 코드도 잘 안 읽어봐서 그것도 좀 읽어봐야 할 것 같기도 하고… 할 것 많네…
- 일단 퍼포먼스가 어느정도 보장된 모델을 찾고 싶기도 하고?
- 저번 프로젝트에
snunlp/KR-ELECTRA-discriminator같은 국밥 모델을 찾아두고 추가적인 실험을 돌리면 좋을 것 같은데?
- 전에
wandb 로깅을 비롯한, 실험 관리 체계도 중요할 것 같다.