-
AutoMeet에 사용하기 위해 fine-tuning한 ai 모델들프로젝트/AutoMeet 2024. 6. 27. 18:42
이번 프로젝트에서 ai 기능을 활용해서 사용자에게 회의 관련 자동화 업무 서비스를 제공한다. 사용한 ai는 총 3개이다.
3가지의 ai 모델
- 회의 내용 요약(Text summarization)
- 텍스트 감정 분석(Text Sentiment Analysis)
- 영상 감정 분석(Face Expression Recognition)
백엔드 개발자로서 백엔드 관련 개발을 진행했지만, ai 모델도 3개나 적용하기에 각자 1개씩 맡아서 주도적으로 진행했다.
ai 개발자인 팀원의 도움을 받아서 1번의 회의 내용 요약 ai를 집중적으로 개발했다.
그렇다고 다른 ai에 대해서 모르는 것도 아니고, 주도적으로 요약 ai 모델링을 한 것이기에 3가지 모델에 대해서 정리해보려고 한다.
AutoMeet은 3가지 ai 모델을 그대로 사용한 것이 아니라 fine-tuning을 진행하거나 layer 구조를 변경시켰기에 의미 있는 경험을 했던 프로젝트이다.
프로젝트의 전반적인 목표
화상 회의 시장이 커짐에 따라 비대면 화상 회의를 이전보다 많이 진행한다. 'IT' 회의를 진행할 때, 전문적인 핵심 내용을 찾아 요약해주는 ai 서비스를 개발하여 적용하는 것이 목표이며, 참여자의 개인 감정 및 집중도를 파악하여 회의 분위기 분석까지 하는 것이 연구의 목표이다.
1. 회의 내용 요약 (Text summarization)
첫 번째로 회의 내용 요약 모델이다. 모델은 한국어 텍스트 요약에 대해 학습한 Encoder-Decoder 모델인 KoBART를 선정했다.
프로젝트 목표가 IT 회의를 진행할 때 더 잘 요약해주는 ai를 개발해서 적용하는 것이기 때문에 추가 데이터를 학습시켰다.
AI Hub의 기술과학 요약 데이터를 추가로 학습시켰으며, 이 데이터는 기술과학 분야의 전문 서적이나 논문에 대한 데이터이다.
학습 과정
전처리한 데이터셋을 Pretrained-Model에 추가로 학습시킴
[Hyper Parameters] - Epoch : 10, Batch size : 32, Learning rate : 3e-5
학습시킨 결과 그래프이다. 요약 모델은 ROUGE score라는 방법으로 평가하는데, 원본과 요약본을 대비해서 원본이 얼마나 핵심을 잘 요약했는지 검증해주는 평가 방법이라고 한다.
성능 향상 수치
ROUGE - 1 : 4.88%, ROUGE - 2 : 5.79%, ROUGE - L : 2.95%, ROUGE - LSUM : 2.95%
수치들은 단어의 유사도, 빈도수, 가장 긴 부분 수열을 기준으로 평가한 수치이다. 모든 수치에서 ROUGE score가 증가한 것을 확인할 수 있다.
2. 텍스트 감정 분석(Text Sentiment Analysis)
텍스트 감정 분석은 개인의 회의 화면에서 자신의 소리만 음성을 녹음하다. 그 이후에 whisper api를 이용해서 STT를 진행하고, text의 감정을 분석했다.
ai 모델은 RTD(Replaced Token Detection) Task로 학습한 모델인 KoELECTRA 모델을 선택했다. 여기에 ai hub의 '한국어 감정 정보가 포함된 단발성 대화 데이터셋'과 '속성 기반 감정 분석 데이터셋'을 추가로 학습시켰다.
기존의 모델은 긍정, 부정의 2개의 class로 데이터를 분류했는데, 중립을 추가해서 긍정, 부정, 중립의 3개의 class로 분류를 하도록 변형시켰다.
학습 과정
[Hyper Parameters] - Epoch : 20, Batch size : 32, Learning rate : 1e-7, Dropout : 0.4
3개의 class를 분류 시, 약 84%의 Accuracy를 보였다. 원래 모델은 정확도가 89% 정도였는데, 2개에서 3개의 class로 늘렸는데도 정확도가 크게 줄어들지 않았다.
- "모두들 시간이 충분하셨을텐데, 정말 많이 하셨네요." : 부정 (원래는 긍정으로 예측)
- "다들 들어오셨으니, 오늘 회의를 시작해볼게요." : 중립
- "어려운 요구사항이었는데, 정말 많이 하셨네요. 수고하셨습니다." : 긍정
특히, 위와 같이 비꼬는 듯한 말투는 원래 긍정이었는데, 발전시킨 모델은 부정으로 잘 예측하게 되었다.
3. 영상 감정 분석(Face Expression Recognition)
영상 감정 분석은 Patt-Lite 모델의 backbone 모델과 layer 구조를 일부 변형시켰다.
입력 layer를 우리가 원하는 입력 값으로 변경시켰으며, pre-classfication의 layer를 일부 변형시켰다. 여기에 추가로 '한국인 감정 인식을 위한 복합 영상' 데이터를 추가로 학습시켰다.
학습 과정
[Hyper Parameters] - Epoch : 20, Batch size : 16, Learning rate : 1e-5, Dropout : 0.5
Train과 Validation F1 Score에서 각각 0.82, 0.8을 기록하였으며, MobileNetV2를 backbone 구조로 사용해 적은 리소스로 효율적인 특성 추출을 가능하게 해줬다.
'프로젝트 > AutoMeet' 카테고리의 다른 글
Mongo db의 embedded 관계로 설계 변경 (0) 2024.05.17 Openvidu를 이용한 화상채팅 서버 (0) 2024.05.12 스키마의 유연성을 위한 mongo db 사용 (0) 2024.04.11 WebSocket, STOMP를 이용한 채팅 구현 (0) 2024.04.04