어제 저녁에 BERT 마스킹을 했다. Bert multilingual 토크나이저로 인코딩 → 마스킹 → 디코딩한 새로운 텍스트를 증강했다. 하지만 마스킹 증강 특성 상 데이터 다양성이 떨어졌다. 똑같은 증강 데이터를 도출하는 경우도 있었다. korSTS 사전 학습 모델로 임베딩하고 코사인 유사도를 기반으로 threshold 및 기존 결과(원본 + 증강)에 없는 증강 데이터만 도출했다.
이런 방법으로 5배 증강, 20배 증강, 100배 증강을 했다. 100배 증강은 확실히 과적합을 일으킬 것 같다는 생각을 했다. 20배도 위험하다고 생각한다. 5배 증강은 노이즈에 강건하게(robust)하게 모델을 만든다고 생각했다. 다만, 직접 제출을 해야 한다.
gemma2:27b를 활용해 동의어 증강 데이터를 생성했다. 처음에는 아스키 정제 데이터에서 tqdm으로 5시간 30분이 소요된다고 한다... 문득 멀티 스레딩으로 비동기 처리를 하면 빨라지지 않을까? 싶었다. 실행 시작부터 현재까지(11:40 ~14:00) 약 60% 처리가 됐다. Ollama 서버 요청 로그도 요청 처리가 끝나기 전에 미리 미리 들어온다. 문득 GPU 멀티스레딩/멀티프로세싱이 궁금해졌다. 그리고 Ollama 등 LLM을 활용한 연산에서 어떻게하면 응답 속도를 최대로 끌어올릴 수 있을까 궁금해졌다.
프로젝트가 끝났다! README를 정리하는데, 프로젝트를 진행하며 분업과 진행 기록이 부족하다는 걸 느꼈다. 공유는 잘 됐지만, 기록이 아쉬웠다... 그래도 날이 가면 갈 수록 팀 워크가 잘 맞는다는 걸 느꼈다. 다음 주에 팀이 바뀌지만ㅠㅠ