- AI Dev - 인공지능 개발자 모임
- 정보공유
- 챗봇 개발
글 수 59
Dialogflow에서 서로 다른 의도에 있는 문장이 비슷하면 문제가 발생합니다. 이런 문장들을 찾아서 수정할 수 있도록 하는 방법을 설명하고 있습니다.
가장 먼저 모든 문장들을 벡터로 변환합니다. 그다음 다른 의도에 속하면서 벡터값이 유사한 문장을 검색합니다. 구글의 USE(Universal Sentence Encoder)를 사용했습니다. Word2vec이 단어 차원이라면, USE는 문장 단위로 처리합니다. 원래 영어만 가능했는데, 최근 한글을 포함한 다중언어를 지원하고 있습니다.
개인적으로 챗봇 빌더에서 문장의 유사도를 자동으로 판단해주는 기능이 꼭 필요하다고 생각합니다. 지금은 각 의도마다 비슷한 문장들을 최소 수십개 이상 입력해야 합니다. 의도가 많아질수록 작업량도 급격히 늘어납니다. 사실 이렇게 해도 커버를 못하는 문장이 너무 많습니다. 사람이 일일이 모든 가능한 문장을 작성한다는 것은 비효율적입니다. 앞으로 이 부분은 반드시 인공지능으로 자동화가 필요하다고 봅니다.