- 프로젝트 설명: 자연어처리를 이용한 온라인 강의 학습 보조 서비스 개발
- 공모전 일자: 2020.05 ~ 2020.07
- 주관: 성균관대학교 대학혁신과공유센터
- 수상실적: TBD
자연어처리를 이용한 온라인 강의 학습 보조 서비스 개발
프로젝트 배경 및 목적
- COVID-19 로 인해 많은 강의들이 온라인으로 진행됨에 따라, 학습자의 이해도와, 교수자의 평가 등과 같은 부분에서 많은 문제가 발생하고 있음.
- 모든 강의가 온라인에서 이루어지고, 강의 내용은 결국 사람의 언어이기 때문에 해당 내용에 자연어처리를 활용할 수 있음.
- 자연어처리를 활용해 학습에 도움을 줄 수 있는 여러 요소들을 자동화하여 학습자에게 제시
Contribution
- 강의 내용에 대한 핵심 문장을 자동으로 추출하고, 해당 내용에 대한 Quiz 를 자동으로 생성
- 강의 내용에 대한 핵심 키워드를 자동으로 추출해 제공
- 강의 내용을 Speech-To-Text 기술을 통해 자막으로 제공
- 학습자가 강의를 들으며 코넬식 노트를 작성할 수 있게 코넬식 노트에 관한 폼 제공
진행 내용
Google Speech-To-Text API 활용
- Google Speech-To-Text API를 활용해 강의 내용에 대한 스크립트를 자막으로 제공하고, 해당 스크립트를 이용해 자연어처리 task를 적용한다.
핵심 문장 추출
-
문서가 입력되면 문서를 각 문장별로 나눈 후, 문장의 명사들만 추출.
-
해당 명사들에 대해 코사인 유사도를 사용하여 각 문장별 유사도 행렬을 구함.
-
행렬에서 행별로 값을 다 더해, 그 값이 큰 N개의 문장을 문서의 핵심 문장으로 선정
핵심 문장에 대한 키워드 추출
- 핵심 문장에서 핵심 키워드를 통해 Quiz를 제공하기 위하여, 핵심 키워드를 자동으로 추출.
- ETRI에서 제공하는 개체명 인식기를 활용하여, 해당 문장의 명사 중에서 인명(PS_NAME), 위치명(LOCATION) 등 문장의 핵심 키워드가 될 수 있는 개체명을 핵심 키워드로 선정
키워드를 통해 문장에 대한 질문과 답 생성
- 학습 데이터 구축 및 정제
- 본 모델은 특정 문장으로부터 질문을 만들어내는 모델이므로, 문장과 질문이 있는 데이터가 요구됨.
- (1개의 문서, 문서에 대한 질문, 문서에서 질문이 있는 답의 위치) 로 구성되어 있는 KorQUAD 데이터셋을 정제해 특정 문장과 특정 문장에 대한 질문 으로 데이터쌍을 구성함.
- 문장에서 답이 있는 위치를 [mask] 로 표시해 (masking 된 문장, 해당 문장에 대한 질문) 형태로 데이터 셋을 구성
- Ko-GPT2 모델 fine-tuning
- 본 모델은 GPT-2를 fine-tuning 해서 masking된 문장이 입력으로 들어왔을 때, 질문을 생성할 수 있도록 하는 모델이다.
- 앞서 구축한 (masking 된 문장, 해당 문장에 대한 질문) 형태의 데이터셋을 Ko-GPT2 모델에 (masking된 문장 + [SEP] + 질문) 형태로 입력해 사전 학습된 Ko-GPT2 모델을 fine-tuning 한다.
- Ko-GPT2 모델을 활용한 질문 생성
- 앞서 추출한 문장과 해당 문장의 핵심키워드를 통해 해당 문장을 masking된 문장으로 만든다.
- masking된 문장을 fine-tuning 된 Ko-GPT2 모델에 입력해 해당 문장에 대한 질문을 생성한다.
결과
- 동영상 스트리밍
- STT 기술을 활용한 강의 스크립트 제시
- 중요도와 빈도수를 고려한 키워드 추출 및 해당 키워드 워드클라우드 제시
- 핵심 내용에 대한 퀴즈 제공
- 코넬식 노트 제공
의의 및 한계점
본 프로젝트를 통해 여러 자연어처리 기술들을 사용해 실제 강의에 적용하여 하나의 완성된 어플리케이션으로 제작할 수 있었다. 해당 플랫폼에 교수자가 강의를 업로드만 한다면 자막 생성, 퀴즈 생성, 키워드 추출 등의 과정을 자동으로 해결할 수 있다. 하지만 아직 STT 기술이 완성된 것이 아니라서, 수학이나 물리처럼 강의 내용에 수식이 들어간다면 스크립트 추출이 잘 되지 않는다는 문제점이 존재한다. 또한, 일관된 내용이 아닌 여러 내용을 가볍게 훑고 지나가는 강의같은 경우, 유사도를 통한 문장 추출에도 어려움이 있다.