인공지능 챗봇을 만들고 싶은데 데이터가 없습니다.
챗봇을 만드려고 할 때 학습시킬 데이터가 전혀 없거나 있어도 활용하기 불가능한 방식의 형태를 갖고 있다는 점
챗봇을 간단히 생각하면 유저가 질문하면 봇이 대답하는, ‘질문과 대답’으로 구성된 프로그램이다.
질문에 맞게 봇이 대답하게 만드는 방법은 크게 분류해 2가지다.
1. 질문에 대한 대답을 미리 만들어 두고 답하게 하는 것
2. 질문에 대한 대답을 챗봇이 자동적으로 생성하는 것
이 두 가지의 차이, 장단점, 현재 사용되고 있는 분야, 트렌드이다.
결국 가장 현실적으로 챗봇을 만들 수 있는 부분은 특정 주제를 검색 모델을 활용하여 제공하는 방식
즉, 특정주제에 미리 만들어놓은 답으로 대답하는 것이 가장 현실적이다.
검색 모델 (Retrieval-based model)
검색 모델은 유저의 질문내용과 대화의 문맥에 기반에서 의도를 파악하고 적절한 응답을 고르는- 검색하는- 방식을 말한다. 이 모델은 새로운 텍스트를 생성하지 않으며, 미리 만들어진 답변에서 답을 고르는 방식이다.
방법 : 필요한 질문과 답변 쌓을 필요한 만큼 만들고, 다른 방식으로 물어봐도 동일한 의도면 동일하게 답할 수 있도록 질문을 유사하게 복제해서 머신러닝 한다.
-
학습 효율을 높이기 위해 유사 질문 제네레이터(Training set generator)를 쓰기도 한다. 답변은 복제할 필요가 없다. 여기에 쓰이는 인공지능은, 유저가 애매하게 물어봐도 질문의 의도를 제대로 이해하게 하는 데 사용된다.
(기계가 자연어로 된 인간 질문의 의도를 파악하는 게 아직도 너무나 어렵다) -
장점 : 답변의 내용이 정확하다. 문법에 안 맞는 답변을 하지 않는다.
-
단점 : 미리 준비된 Q&A세트에서 응답하기 때문에 준비되지 않은 것에는 답변하지 못한다. (폴백 관리 필요)
-
주 활용 범위 : 검색 모델은 답변이 정확해야 하는 챗봇에서 사용된다. (대부분의 기업이 사용)
이 모델의 가치는 유저가 말하는 의도를 제대로 이해하는 것에서부터 시작된다.
의도가 파악이 되어야 거기에 맞는 답변을 검색해 쓸 수 있다.
의도 분석기(Intent classifier)에서는 사용자 메시지의 의도를 구별한다.
정교한 봇들은 하나의 메시지에서 여러 의도를 파악하는데, 미리 정의되어 있는 여러 ‘의도’중 확률적으로 가장 높은 것을 선택하고, 선택된 의도에 맞는 답을 ‘검색’해 놓는다. 의도를 정교하게 분류하기 위해서는 ‘맥락(Context engine)’을
사용하게 되는데 이전에 무슨 대화를 하고 있었는지, 유저 그렇다면, 답변은 고정된 형태의 내용만 내는가, 꼭 그런 것은 아니다. 답변도 적합도의 랭킹을 내서 랭킹이 가장 높은 것을 출력할 수 있다. 또 최적의 답변을 위해 다른 알고리즘을 나 채널의 성격은 무엇인지 등으로 더 세밀하게 판단하게 된다.
생성 모델 (Generative model)
생성 모델은 말 그대로 말을 생성해 내는 방식이다.
대화 상대의 질문 의도를 파악한다기 보다는, 유저가 이런 질문을 했을 때는 이런 식의 답변을 하는 것이 최선이다라는 판단을 내려 답변을 생성하는 것, 유저의 질문에 따라 새로운 답변을 만들어 내기 때문에 생성 모델 챗봇과 이야기하다 보면 마치 사람과 이야기하는 듯한 인상을 주기도 한다.
그렇지만 이 방식은 만들기 어렵고, 잘 만들기 위해서는 엄청난 양의 데이터가 필요하다.
-> 생성 모델로 만든 챗봇 영상자료 https://www.youtube.com/watch?v=q44fefORi1k
-
방법 : 채팅 상담 내역, 게시판, 영화대본 등 대화 데이터(Text Corpus)등을 통째로 머신러닝, 인공지능을 이용해 새로운 답변을 유기적으로 조합 및 생성하여 답변하게 한다.
-
장점 : 대화가 거의 끊기지 않는다.
-
단점 : 이외의 답변, 질문이 같아도 일치하지 않는 답변을 할 수 있다. 문법에 안 맞는 답변을 하기도 한다.
주 활용범위 : 가벼운 일상 대화(small talk)를 제공하는 챗봇이나 외국어 교육용 챗봇 등에서 주로 사용(생성 모델의 대표적인 예로는 MS의 Zo가 있다./https://www.zo.ai/)
'에듀테크' 카테고리의 다른 글
심심이 챗봇 특징 (0) | 2021.03.13 |
---|---|
챗봇 기획 UX 체크리스트 (0) | 2021.03.12 |
챗봇 모델 방향 (0) | 2021.03.11 |
챗봇은 AI가 필요할까? (0) | 2021.03.09 |
챗봇 기획시 고려할 점 (0) | 2021.03.06 |