데이터 증강을 여러 세부 테스크로 나눠서 진행했다. 우선 데이터 분류가 먼저 선행되어야한다고 판단했다. 이전에 제시한 데이터 증강 기준에 따르면 유형이 바뀌면서 데이터에 추가하는 작업이기 때문이다. 분류가 완료되면 외적 추론 유형에서 내적 추론 유형으로 문제를 수정하면서 변화하는 작업을 진행할 것이다. 필요한 키워드를 추출하고, 위키피디아에서 키워드를 검색해 크롤링하고(wikipediaapi
모듈 사용), 지문을 생성한 뒤, 문제를 검토/수정하여 데이터에 추가할 예정이다.
데이터 증강이 오래 걸리는 작업이므로 중간 결과 공유가 중요해졌다. 이를 가장 쉽게 공유하기 위해서는 Streamlit을 보완해야겠다고 생각했다. 데이터 증강하면서 기존 데이터 프레임에 새로운 칼럼이 추가될 텐데, 칼럼에 덜 의존적인 레이아웃이 필요했다. 우선, 현재 데이터 분류 실험이 더 중요하므로 실험 뒤로 작업 우선순위를 정리했다.
실험이 쌓여가면서, 실험 중간 데이터 버저닝이 중요하다고 판단했다. 데이터 버저닝 컨벤션은 이미 있었지만, 실험을 위한 데이터 버저닝 컨벤션은 없어서 DISCUSS 이슈를 올려서 실험 데이터 버저닝 컨벤션을 제안했다.
기존 실험을 진행했던 노트북 코드 또한 데이터 버저닝 컨벤션에 맞게 다시 정리했다. 깃허브에 .gitkeep 파일로 디렉토리 구조를 정하고 푸쉬해서 다른 팀원들도 디렉토리 구조를 알 수 있도록 공유했다.
프롬프트 엔지니어링이 주 작업이 됐다. 나는 어떤 생각에 꽂히면 주변 시야가 상당히 좁아진다. 몰입의 순간일 수도 있는데, 협업에서는 아직까지 아쉬운 면모가 많았다. 이는 프롬프트를 짤 때도 드러나는데, 내가 중요하게 생각하는 요소와 LLM이 중요하게 받아들이는 요소는 많이 다르다. 프롬프트를 한 번에 성공하고 싶지만, 역시 궁극적으로는 글이다보니 여러 번 퇴고를 거쳐야 한다.
피어세션에서 여러 논문을 훑어본 팀원이 공유해줬다. KMMLU 벤치마크 논문에서 재밌는 인사이트가 있었다. 수학, 과학, 역사 등 비교적 사실이 명확한 분야는 모델 파라미터가 많을 수록 CoT 적용 시 정확도가 높았지만, 국어, 사회 등 문맥이 중요한 분야는 한국어로 하드하게 학습된 모델이 CoT 적용시 성능이 높았다는 점이다. 여기서 특이한 점은, 파라미터가 많았던 다른 모델은 오히려 성능이 떨어졌다는 점이다. 내게는 논리적인 사고력과 메타 인지는 다르게 적용되는 것으로 다가왔다.
스트림릿 시각화 작업을 시작했다. 이전 스트림릿 작업을 해준 팀원이 매우 친절하게 코드를 작성해줘서 새로운 기능을 덧 붙이기 쉬웠다. 다만, 스트림릿 렌더링 방식은 프론트엔드 지식이 부족한 나는 코드를 짜기에 어려웠다. 정적 렌더링처럼 보였는데, 비슷한 레이아웃을 다른 탭에서 적용할려고 하니, ElementID 관련 오류가 발생했다.