맛동산

오픈한글 프로젝트 연구 방향 공유(context personalization, etc..) 본문

머신러닝/오픈한글 프로젝트

오픈한글 프로젝트 연구 방향 공유(context personalization, etc..)

오지고지리고알파고포켓몬고 2017. 10. 29. 16:29

그동안 일이 바빠서 api관련 새로 업데이트 된 내용은 없습니다.

다만 프로젝트가 계속 진행중이라는 점을 알려드리기 위해 현재 진행하고 있는 연구에 관한 내용을 작성하겠습니다.


데이터 기반 딥러닝 모델에 대한 연구는 여러곳에서 진행중입니다.

또한 그 빅데이터에 포함하는 모든 경우를 처리하기 때문에 general한 특성을 가지고 있습니다.

지정한 의도에 해당하는 대답을 수행하는 경우가 아니면 대충 그럴싸하게 들릴만한 대답을 토해내죠.


(모르는건 검색으로 넘겨버리자고~)


하지만 많은 양의 데이터 만으로 인공지능이 '대화'라는 영역을 극복할 수 있을까요?

세상에 존재하는 모든 데이터를 수집하면 완벽한 성능을 낼 수 있을까요?

저는 그렇지 않을거라 생각합니다.


가령 word2vec의 개념에서, '나 밥먹고 있어' '걔 밥먹고 있어' 라는 문장을 학습하면 '나'와 '걔'가 의미상 유사한 백터에 존재하고 있다라는 결과를 볼 수 있습니다.

그렇다면 '나 밥먹고 있어' '밥먹고 있어 걔' 라는 문장을 학습하면 '나'와 '걔'의 유사성(대명사 적 의미)을 파악할 수 있을까요?




물론 알고리즘 개선과 파라미터 튜닝을 통해 찾아낼 수 있을것입니다.(사실 저렇게만 넣어도 찾아낼 수 있을지 모르죠)


그렇다면 좀 더 의미론적인 관점으로 얘기해보고 싶습니다.


A라는 사람이 '나는 치킨이 좋아', B라는 사람이 '나는 치킨이 싫어'라고 말했습니다.

두가지 데이터로 학습된 챗봇에게 '너 치킨 좋아해?' 라고 물어보면 뭐라고 대답할까요?


저는 바로 이 부분이 빅데이터 기반 딥러닝 모델의 맹점이라고 생각합니다.

모든 차원의 모든 백터 값, 언어가 가질 수 있는 구조적 경우의 수와 의미들, 즉 세상에 존재하는 모든 데이터를 모으면 결국 0, 원점으로 수렴하는 현상이 발생할 수 있다는 것이죠.



혹자는 이렇게 말할 것 입니다.

'어찌됐든 모델 돌리면 좋다 싫다 대답은할텐데?'



먼 훗날 알파고가 말을 배운 뒤에 누군가 '넌 왜 그곳에 바둑돌을 두었니?' 라고 묻는다면, '저기 둬야 이길 수 있을거라고 생각했어' 라고 대답할 수 있을 것 입니다.


그럼 다시 챗봇에게 '넌 왜 치킨이 좋다고 대답했니?' 라고 물었을때, 과연 뭐라고 대답할 수 있을까요?

(챗봇이 할 알맞은 말을 고르시오.)

1. 50:50 확률로 찍었어~

2. 랜덤 넣고 돌렸어~

3. 어쩌다 보니 그렇게 됐어~

..과연 이게 인공지능?


지능에는 '생각' 또는 '행동'에 대한 근거가 뒷받침 됩니다.


아침 일찍 출근 준비를 하는이유 -> 늦게 나가면 지각 -> 지각하면 대표가 잔소리 -> 인사고과 불이익.

맛있어서 치킨을 좋아하고, 이기기 위해 바둑알을 두고, 모든 행동은 자신의 이익을 최대화하기 위해, 손해를 최소화하기 위해 일어나는 것이죠.



결론적으로 '치킨을 먹어봤더니 맛있어서' 라는 대답을 할 수 있는 근거를 마련해 주기 위해 기존의 딥러닝 방식과 별개로 챗봇의 personalization을 연구하고 있습니다.


그 첫번째로 개인화된 context network 모델을 연구중이며 근래에 데모 페이지를 만들어 사용해 보실 수 있도록 할 예정입니다.

더불어 니마시니(mnemosyne) 철학을 기반으로 개인의 context 관계에 따른 형태소 분석, 객체 관계 분석을 목표로 하고 있습니다.



연구에 몰두하여 한국어 오픈소스에 기여하고 싶은 마음이 굴뚝 같지만 영업 파트 업무가 쏟아져 들어오고 있어서 어려움이 있습니다.(이렇게라도 하소연..)

아무쪼록 다가오는 겨울 감기 조심하시고, 다음엔 좋은 소식을 공유해드릴 수 있었으면 좋겠습니다.


감사합니다.


(영업? 저 개발잔데요?)




[이미지 출처]

http://onelive.tistory.com/59

https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors/

https://medium.com/cxinnovations/6-easy-ways-to-break-a-chatbot-ab8f4e9e4698

'머신러닝 > 오픈한글 프로젝트' 카테고리의 다른 글

아연API 다슬봇 & 카카오플러스친구 연동  (4) 2017.08.28
수정사항  (0) 2017.08.22
건의사항  (0) 2017.08.03
자료실1  (0) 2017.07.31
0630 작업일지  (0) 2017.06.30
Comments