IBM 인공지능 왓슨에게 말 가르치기 3편


안녕하세요. 지난 편(바로가기)에 이어서 이번 편에는 본격적으로 말 가르치기를 해보겠습니다. 여기서는 한글 기준으로 작성하겠지만 한국어 인식이 아직 완벽한 완성형이 아닌고로 결과가 정확하지 않다면 영어를 넣어보셔도 괜찮습니다. 그러면 지난 편에 했던 얘기들을 다시 한번 되짚어 보겠습니다.



Watson Conversation에는 3가지 메뉴가 있다 하였습니다. 첫번째 intents는 의도. 굳이 갖다 붙이자면 동사 같은 존재입니다. 2번째 entities는 무엇을 할 것인가인데 주어나 목적어 같이 생각하시면 되겠습니다. dialog는 앞의 2개를 이어 붙여서 문장을 만드는 것이죠. 하나씩 해보도록 하겠습니다.


STEP1. Intent 넣기

앞서 Intent에는 의도를 넣는 거라 하였습니다. 이미 완성된 것이 있지만 create new 버튼을 눌러서 새로운 것을 만들어 봅시다. 한글도 넣고 영어도 넣어보려고 합니다.



저는 '보여줘'를 테마로 삼겠습니다. '정보를 보여줘' , '정보를 화면에 띄워줘' 같은게 예시가 될 수 있겠네요. '보여줘'라는 테마로 가능한 많은 테마가 있으면 있을 수록 좋습니다. Intent Name에 테마 키워드 명을 적어주시고 아래 User example에서는 예시 문장을 적어줍니다. 짧든 길든 생각나는 최대한 적어줍시다. 그리고 Create를 눌러줍니다. 그러면 #보여줘라는 intent가 생기고 그 아래에 샘플 문장들이 저장됩니다. 이걸 왓슨이 인식을 하게 됩니다.



STEP2. Entity 넣기

다음은 Entity 입니다. 이미 제가 작성한 것들이 있고 이것에 대한 정보를 써도 되지만 여기서 꼬일 수 있으니까 새로운 것을 만들어 보겠습니다. 보여주는 게 어떤 게 필요할까요?? 여기서는 '주소'에 대해 적어보겠습니다. 예시로 코엑스와 벡스코의 주소를 샘플로 삼아보겠습니다. Entity에는 주소를 적어주는 데 벡스코라고 생각될 수 있는 키워드를 적어줍니다. 부산 벡스코, BEXCO, Busan BEXCO 등 인간의 지능에선 벡스코라 할 수 있는 키워드들을 입력하여 줍시다. 그리고 Create를 누르면 @주소 라는 테마를 가진 entity가 생성이 됩니다. 이러면 앞서의 intent와 entity를 합치면 'COEX 주소(@주소) 보여줘(#보여줘)' 라는 문장이 생성됩니다. 다른 방식으로 '벡스코 주소(@주소) 화면에 띄워줘(#보여줘)' 라는 문장도 만들 수 있겠죠. 이쯤에서 생각하시는 분들이 많으시겠지만 이래서 사람 말을 기계한테 인식 시키는 게 어렵습니다. 엄청나게 무궁무진 할테니까요.



STEP3. Dialog 넣기

다음은 앞서 말한 내용들을 실제로 끼워맞추는 Dialog 입니다. +버튼을 누르면 새로운 dialog를 생성할 수 있는데 아래 2번째 그림에서 trigger에서는 앞서 우리가 만든 #보여줘 테마를 넣어줍니다. #보 까지만 적어도 자동 완성을 띄워주기 때문에 쉽게 넣을 수 있습니다. 그리고 하단의 response에서는 앞에서 만든 주소의 2가지 카테고리. 즉, BEXCO와 COEX에 대한 답변을 넣어줍니다. 그래서 if에서는 @주소:BEXCO와 @주소:COEX를 각각 넣고 해당하는 답변을 넣어줍니다. 만일 EXCO 항목을 entity에 추하해서 넣었다고 치면 @주소:EXCO를 넣고 해당하는 답변을 기입할 수 있습니다.



완료되면 약 1,2분 뒤(왓슨이 공부할 시간을 주기 위해) 우측 상단의 말풍선 아이콘을 눌러봅시다. 그러면 채팅창이 뜨는데 앞서 만든 문구들도 왓슨과 놀아볼 수 있는 채팅창입니다. 우리가 앞서 만들었던 '코엑스 주소 보여줘'를 기입하여 주면 해당 intent와 entity를 인식해서 답글을 하는 것을 볼 수 있습니다.



그리고 답글 문구 말미에 만일 네비게이션 작동을 원하시면 '네비 켜줘'라고 말씀하여 주세요 를 제가 입력한 것을 볼 수 있는데 제가 사전에 주소 뿐만 아니라 기기를 켜고 끄는 것도 사전에 만들어 두었습니다. 그래서 네비 켜줘 라고 입력하면 켜다 dialog로 이동해서 대답을 하는 것을 볼 수가 있습니다. 여기선 샘플로 했지만 실제로는 앱 실행 명령어를 넣는다던가 하는 식으로 대응할 수 있을 것입니다.



그리고 다시 처음인 Worksapces로 돌아와서 저희가 만든 카드의 메뉴를 누르면 JSON 형태로 파일을 다운 받을 수 있고, View Details를 누르면 Work-space ID를 확인하여 향후 App 만들때 API 정보를 기입할 수 있습니다.




여기선 간략하게 왓슨에게 말을 가르치고 이렇게 물으면 이렇게 답하라를 배웠습니다. 대부분 느끼셨겠지만 말이라는 게 변수가 굉장히 많아서 지금이야 단순하니까 심심이랑 얘기하는 것처럼 문장 대화가 깔끔하게 이뤄졌지만 제대로 하려면 굉장히 고려해야 할 변수가 많다는 걸 느끼셨을 것 같습니다. 그래서 인공지능이 생각보다 늦게 발전하고 있는 거라 생각합니다. 보다 Detail한 내용과 실제 Conversation이 적용된 샘플을 확인하고 싶으시면 바로가기를 통해 들어가시면 확인이 가능합니다. (다만 영어입니다) 3편까지 읽어주셔서 감사합니다.


[ 시리즈 보기 ]

1편 바로가기

2편 바로가기

3편 바로가기

댓글(0)

Designed by JB FACTORY