본문 바로가기

챗봇2

[TENSORFLOW] seq2seq 기반 챗봇 만들기 2017/07/12 - [machine learning] - [TENSORFLOW] LSTM Dual encoder 기반 챗봇 만들기 지난 포스팅에 검색 기반 챗봇을 구현했다면 이번에는 generative model의 대표격인 seq2seq를 활용해서 챗봇을 만들어 보자. seq2seq의 대표적인 구조이다. encoder 부분에서는 입력 응답을 받아 하나의 hidden code 값으로 표현을 해주고 decoder 영역에서는 hidden code 값과 start tag를 받아 가장 적합한 결과 단어들을 추출해 준다. 여기서 train과 test의 모델이 각각 다르게 나타나는데, train의 경우에는 decoder의 output과는 별개로 훈련 셋이 input으로 들어가는데 반해 test 모델의 경우에는 d.. 2017. 7. 14.
[TENSORFLOW] LSTM Dual encoder 기반 챗봇 만들기 해당 포스팅은 아래의 wildml 블로그에서 소개한 코드를 참조로 작성하였다. http://www.wildml.com/2016/04/deep-learning-for-chatbots-part-1-introduction/ 챗봇을 크게 검색 기반형 챗봇과 generative 챗봇으로 나눌 수 있다. 검색 기반은 일반적으로 후보 응답 셋들과 모델을 통해 예측된 결과 벡터와의 유사도를 구해 가장 유사도가 높은 결과 응답을 정답으로 나타내며, generative의 경우 기존 응답 셋을 활용하는게 아니라 유사도 높은 단어의 조합으로 새로운 응답 결과를 나타내는 방식을 말한다. 우리는 여기서 검색 기반형 챗봇에 대해 알아볼 것이며, 기본적인 모델의 구조는 아래와 같다. 위쪽의 c1,c2,ct에 질문 문장이 구성된 단어.. 2017. 7. 12.