티스토리 뷰
이제 토픽에 한글 키워드를 등록하는 방법을 알아보자. 대화관리자는 토픽의 키워드 목록을기준으로 대화를 관리하기 때문에 이 절이 가장 중요하다 할 수 있다. 과일에 관한 토픽을 아래와 같이 작성한다고 가정해 보자.
Topic: ~계절과일 [ 사과 배 포도 딸기 봄 여름 가을 겨울 ]
#! 봄에는 딸기가 제철이지요
u: ( 봄* 딸기* 제철*) 예. 봄철의 딸기는 향이 참 좋아요
만약 예제 입력문 대로 사용자가 입력한다고 하면, 이 룰은 절대 매칭되지 않는다. 왜냐하면 예제 입력문과 토픽의 키워드 목록간에 일치되는 단어가 없기 때문이다. 예제 입력문에는 ‘봄에는’, ‘딸기가’ 등이 있고 ~계절과일 토픽에는 ‘봄, ‘딸기’가 있을 뿐 일치되는 단어가 없다. 따라서 ~계절과일 토픽이 활성화 되지 않고 소속되어 있는 저 룰은 일치 여부조차 검토 되지 않는 것이다. 미시적으로 예제 입력문과 패턴이 아무리 잘 맞더라도, 거시적으로 그 패턴을 보유하고 있는 토픽이 활성화 되지 않으면 아무 소용이 없다.
토픽 ‘키워드 란에 ‘봄’과 ‘딸기’라는 단어가 있고 사용자 입력문에도 ‘봄’과 ‘딸기’라는 단어가 있으니 일치하는 것 아니냐 할 수 있지만 그것은 한국사람의 시각으로 봤을 때 그런 것이고, 한국어를 전혀 모르는 CS 시각에서는 “딸기”와 “딸기가”, “봄”과 “봄에는”는 완전히 다른 단어이기 때문에 “봄에는 딸기가 제철이지요”라는 입력문에 ~계절과일 토픽을 활성화시킬 단서가 없는 것이다.
문제는 우리 말의 명사 대부분이 조사와 합쳐져 사용되기 때문에 이런 일이 특별한 상황이 아니라는 점이다. 그렇다고 사용자에게 조사를 붙이지 말고 말하라 할 수는 없으니 토픽의 키워드란에 “명사 +조사”의 형태로 등록을 하는 수 밖에 없다.
Topic: ~계절과일 [ 사과 사과가 사과는 사과를 사과와 사과의 사과만 사과도 등등 ..]
그러나 이는 현실적인 해결책이 못 된다. 빈번하게 사용되는 조사의 개수만 해도 대략 10~20개 될 텐데 이를 모든 명사와 결합해서 토픽 키워드로 등록한다는 것은 매우 비생산적인 일이다. 해결 방법으로 두 가지를 생각해 볼 수 있는데 첫 번째는 컨셉에 부분 와일드카드를 허용하는 것이다. 그러면 다음과 같이 작성할 수 있다.
concept: ~과일 [사과 배 포도 딸기]
concept: ~계절 [봄 여름 가을 겨울)
Topic: ~계절과일 [ ~과일* ~계절* ]
#! 봄에는 딸기가 제철이지요
u: ( ~계절* ~과일* 제철*) 예. _0 _1 향이 참 좋아요
(CS의 개발자에게 이의 필요성을 제안하였으나 CS 내부 로직을 많이 바꿔야 하기 때문에 쉽지 않은 일이라는 답변을 들었다.)
두 번째 방법은 컨셉과 Tablemacro를 이용하여 등록을 간편화 하는 것이다.[1] 이 방법의 장점은 필요한 경우에만 어절로 만들기 때문에 들이는 노력이나 차지하는 공간이 적게 소요된다는 점이다. 실제 사용 예는 6장 (4)절의 “K-POP 소재로 챗봇 개발하기”에서 설명하기로 하고 이곳에서는 토픽에 한글 키워드를 등록할 때는 실제 사용되는 형태, 즉 “명사+조사”의 형태로 등록해야 한다는 점을 다시 한 번 강조하겠다.
'5장. 한국어 특징을 반영하기' 카테고리의 다른 글
2. 사전 만들어 내장시키기 (0) | 2016.06.23 |
---|---|
1. CS의 대화 관리자 이해하기 (0) | 2016.05.27 |
- Total
- Today
- Yesterday
- 소프트봇 채터봇
- Chatscript AI 인공지능 챗봇 chatbot
- 한글챗봇 우리말챗봇 인공지능챗봇 ai챗봇
- chatscript chatbot 챗봇 한국어챗봇 ai 인공지능
- 한국어챗봇
- 챗봇개발 채팅로봇 한국챗봇
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |