한국인공지능연구소 1기
3달 동안의 연구소 활동을 하며 팀원 모두 배우고 얻어간 것이 있을것임에 확신합니다. 저희 자연어처리 팀인 AURA에서는 지난 3달 동안 각각 서로 자연어처리라는 큰 나무와 같은 분야에서 서로 다른 다양한 나뭇가지로 뻗어나갔고 서로의 각기 다른 나뭇가지에서 정보를 공유하면서 갈라진 가지를 조금씩 가까이 이어나가며 성장해 나갔습니다.
RN, LeakGan, 신어분석기, Chatterbot Engine (Based on ChatScript), 신조어 분석기, 샴 네트워크, Gensim, Word2Vec, 그리고 맥락 인식 챗봇까지 정말 다양하고 재미있는 활동들을 하였고 공유된 이 내용들은 모든 팀원들에게 있어서 앞으로 성장하는데 좋은 거름이 될 것입니다.
AURA의 팀원들은 2기에는 서로 흩어져 또 다른 여정을 하게 되었습니다. 자연어처리 AURA팀 랩장이었던 저는 2기에서는 새로운 자연어처리 팀인 'B타민' 이라는 팀에서 다시 랩장을 맡아 새로운 팀원과 함께 더 재미있는 연구를 계속 할 계획입니다.
한국인공지능연구소 1기에서의 경험은 좋은 기억으로 남을 것입니다. 1기에서 같이 팀을 꾸리고 정보 공유 및 프로젝트를 진행해준 민홍 연구원님, 박산희 연구원님, 전은광 연구원님, 홍권일 연구원님께 감사하다는 인사를 전하며 그럼 여기서 한국인공지능연구소 1기 자연어처리 팀 AURA 인사드리고 물러나겠습니다. 감사합니다.
발표자료 및 소스코드 공유 (링크)
발표자료: https://drive.google.com/open?id=1ipDY8ybgZ-iJGok4qqr9AaWIEK4atz_l
소스코드: https://github.com/hkim-tech/aurabot
aurabot / 맥락 분석 챗봇
한국인공지능연구소 1기 / 자연어처리 / AURA 팀
현재 서버에 올라와 있는 앱은 학습모델이 적용이 되어있지 않습니다. 데이터 학습 시간이 오래걸려 heroku boot timeout으로 인하여 Crashed 되었으니 이 점 참고하여 소스를 Clone 받으시고 직접 실행 시켜주시기 바랍니다.
아우라봇 링크: https://aurabot.herokuapp.com
한국인공지능연구소 1기 AURA 팀 링크: https://www.ai-lab.kr/labs/aura-raebjang-gimhyeonu (Github Star ★ 버튼을 눌러주시면 대단히 감사하겠습니다. ^^)
연구 배경
한국인공지능연구소 1기 마지막 발표에서 자연어 처리로 팀원 모두 합심하여 할 수 있는 것을 찾던 중 챗봇을 처음부터 끝까지 만들어 보면 어떨까 하는 생각에서 이번 발표 주제를 챗봇으로 선정하였습니다.
이번에 연구를 진행한 챗봇은 메모리 네트워크 모델로 구성된 상황인지 기반 챗봇으로 사람이 시나리오를 구성하는 방식이 아니라 무작위 수집한 데이터 내에서 관련 있는 맥락을 찾아 질문에 답하는 방식인 End To End 방식으로 구성되어 있습니다.
기술 설명
메모리 네트워크는 데이터를 메모리에 저장하여 맥락을 이해하여 질문에 대한 답을 하는 방식으로 사용자의 질문을 이용하여 맥락 정보를 선택하는 스토리 선택 모듈과 선택된 스토리 정보와 질문 정보로 답변을 선택하는 탑변 선택 모듈로 구성되어 있습니다.
이러한 단일 메모리 네트워크가 여러 개로 구성된 형태로 답변을 예측하여 이번 연구에서는 3개의 멀티 레이어 구조의 메모리 네트워크로 연구를 진행하려 합니다.
연구 방향
2017년 창원 대학교의 메모리 네트워크를 이용한 End-to-End 방식의 레스토랑 예약 시스템에 착안하여 첫 질문은 맥락 없이 답변하고 그 이후 질문은 이전 질 을 맥락정보로 활용하여 답변하도록 데이터 셋을 구성하였습니다.
연구 범위
본 연구에서는 데이터 구성부터 클라이언트 구현까지 챗봇 구성을 위한 모든 프로세스를 다루며, 맥락을 이해하여 답변하는 End-to-End 챗봇의 Prototype 구현을 목적으로 합니다.
모델 구조
서버 파트: 서버 파트에서는 메모리 네트워크를 통해 미리 정의된 데이터를 학습하고 준비하고 Bottle을 통해 클라이언트 파트에서 받은 질문에 대한 답변을 제시하는 역할을 합니다.
클라이언트 파트: 클라이언트 파트는 사용자의 입력을 받아 서버 파트에 전달하고 서버 파트에서 예측된 답변을 화면에 노출해줍니다. 서버와 클라이언트 간에는 json 기반의 REST 통신으로 데이터를 전달합니다.
본 프로젝트와 관련해 질문이 있으시면 hkim.tech@gmail.com으로 이메일 보내주시면 답장드리겠습니다.