KR101971582B1 - 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치 - Google Patents

사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR101971582B1
KR101971582B1 KR1020170095207A KR20170095207A KR101971582B1 KR 101971582 B1 KR101971582 B1 KR 101971582B1 KR 1020170095207 A KR1020170095207 A KR 1020170095207A KR 20170095207 A KR20170095207 A KR 20170095207A KR 101971582 B1 KR101971582 B1 KR 101971582B1
Authority
KR
South Korea
Prior art keywords
user
document
intention
healthcare
chatbot
Prior art date
Application number
KR1020170095207A
Other languages
English (en)
Other versions
KR20180055680A (ko
Inventor
최호진
이동건
오교중
김현기
허정
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Publication of KR20180055680A publication Critical patent/KR20180055680A/ko
Application granted granted Critical
Publication of KR101971582B1 publication Critical patent/KR101971582B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/22Social work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Abstract

채트봇을 이용해 사용자 의도를 추출하고 이를 기반으로 헬스케어 지침 문장을 추천하는 방법과 이를 위한 컴퓨터 장치 및 기록 매체가 제공된다. 이 방법은 헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 문서 의도 자질 추출 신경망 모델을 학습하는 단계와, 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계를 포함한다. 헬스케어 지침과 각종 의도 정보를 바탕으로 학습하여 자동화된 채트봇을 이용해 대화의 의도에 따라 의미를 추출하고 사용자 상황에 알맞은 헬스케어 지침을 제공함으로써, 경제적으로 사용자의 의도에 맞는 헬스케어 지침을 제공 할 수 있다.

Description

사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치 {METHOD OF PROVIDING HEALTH CARE GUIDE USING CHAT-BOT HAVING USER INTENSION ANALYSIS FUNCTION AND APPARATUS FOR THE SAME}
본 발명은 채팅 로봇(이를 줄여서 '채트봇(Chat-bot)이라 함)을 통해 사용자의 대화 내에 내재된 의도를 추출하고 그에 따른 헬스케어 서비스 추천 지침 문장을 추천하는 기술에 관한 것이다.
채팅은 컴퓨터 등의 장치를 통해 인터넷 상의 사용자가 만나 메시지를 주고받는 것으로 예전부터 사용되었다. 이후 휴대전화 및 모바일 장치의 발달로 인터넷 접속에 있어서의 공간적인 제약을 극복하여 채팅은 인터넷에 연결 할 수 있는 장치가 있는 곳이면 어디에서든 사용 가능하게 되었다.
일반적으로 채팅은 사람과 사람 간의 대화를 전제로 하는 것이어서, 대화 상대방이 존재하지 않는 경우에는 이용하기 어려웠다. 채팅할 상대방(사람)이 없는 경우에도 채팅을 할 수 있기를 원하는 요구도 존재한다. 이런 요구를 만족시키기 위한 수단으로 채트봇이 개발되었다. 채트봇은 입력되는 말에 따라 적절한 대답을 추천하여 표현하는 기능을 갖춤으로써, 사람을 대신하여 채팅 상대방으로서의 역할을 할 수 있게 되었다.
하지만 지금까지 개발된 채트봇은 단순한 질문의 주요 키워드와 미리 만들어진 답변 문장을 이용해 답하는 정도의 수준이다. 그렇기 때문에 종래의 채트봇은 연속된 대화의 의도를 추출해서 이용자의 의도에 따라서 정확한 답변을 하는 것이 어렵다.
한편, 인터넷을 이용하여 건강 상담자를 의료진과 연결시켜 주는 인터넷 건강 상담 시스템이 존재한다. 일반적으로, 인터넷 건강 상담 시스템은 건강 상담자가 병원에 가는 수고를 덜어주어 시간과 비용을 절약해 줄 수 있다. 그러나 실시간 상담을 위해서는 전문 의료진이 상시 대기해야 한다는 단점이 있다.
본 발명은 사용자와의 연속된 대화로부터 사용자의 내재된 의도를 분석, 추출하고 그 의도에 기초하여 사용자에게 최적의 헬스케어 지침을 제공할 수 있는 채트봇을 이용한 헬스케어 지침 제공 방법과 이를 위한 장치를 제공하기 위한 것이다.
또한, 본 발명의 다른 목적은 위와 같은 헬스케어 지침 제공 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터 가독형 기록 매체를 제공하는 것이다.
본 발명의 목적은 상술한 것들에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.
본 발명의 상기 목적을 달성하기 위한 실시예들에 따르면, 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법이 제공된다. 이 방법은 헬스케어 지침 문서와 사용자 의도 정보의 예시에 기초하여 문서 의도 자질 추출 신경망 모델을 학습하는 단계; 및 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계를 포함한다.
일 실시예에 따르면, 상기 '학습하는 단계'는, 자연어 지침 문서와 사용자 의도 정보를 어절 단위 텍스트로 분할하는 단계; 분할된 어절 단위 텍스트 각각을 미리 학습된 어절 수준 신경망 모델에 기초하여 입력 자질로 추출하는 단계; 추출된 입력 자질에 기초하여 문서 의도 자질 추출 신경망 모델을 학습하는 단계; 및 학습된 지침 문서 자질을 지침 문서 데이터베이스(DB)에 저장하는 단계를 포함할 수 있다.
일 실시예에 따르면, 상기 문서 의도 자질 추출 신경망 모델을 학습하는 단계는, 추출된 입력 자질과 목표 의도 유사도를 이용해 문서 의도 자질 추출 신경망 모델을 학습하는 것을 포함할 수 있다.
일 실시예에 따르면, 상기 지침 문서 DB에 저장하는 단계는 추출된 상기 자연어 지침 문서의 지침 문서 자질과 상기 자연어 지침 문서의 텍스트를 함께 저장하는 것을 포함할 수 있다.
일 실시예에 따르면, 상기 '추천하는 단계'는, 상기 채트봇이 사용자의 메시지를 입력 받는 단계; 입력받은 사용자의 메시지를 입력 자질로 추출하는 단계; 추출된 입력 자질을 이용하여 사용자 의도를 인지해 사용자 의도 자질로 추출하는 단계; 추출된 사용자 의도 자질을 유사도 분석에 기초하여 헬스케어 지침 문서를 탐색하는 단계; 및 탐색된 지침 문서를 사용자에게 추천하는 단계를 포함할 수 있다.
일 실시예에 따르면, 상기 사용자의 메시지는 음성으로 표현되는 대화와, 텍스트의 형태로 입력되는 문장 중 적어도 어느 한 가지를 포함할 수 있다.
일 실시예에 따르면, 상기 '사용자 의도 자질로 추출하는 단계'는 상기 추출된 입력 자질에 기초하여 학습된 문서 의도 자질 추출 신경망 모델을 이용해 상기 사용자 의도 자질을 추출하는 것을 포함할 수 있다.
일 실시예에 따르면, 상기 유사도 분석은, 상기 사용자 의도 자질과 상기 학습하는 단계에서 학습된 지침 문서 자질을 저장하고 있는 지침 문서 DB에 존재하는 미리 생성된 지침 문서 자질들을 비교하여, 상기 사용자 의도 자질과 가장 유사한 지침 문서 자질을 가지는 지침 문서를 찾아내는 방식으로 이루어질 수 있다.
한편, 본 발명의 상기 목적을 달성하기 위한 실시예들에 따르면, 위와 같은 방법들 중 어느 하나에 따른 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터 가독형(computer-readable) 기록 매체가 제공된다.
또한, 본 발명의 상기 목적을 달성하기 위한 실시예들에 따르면, 헬스케어 지침 서비스용 컴퓨터 장치가 제공된다. 상기 헬스케어 지침 서비스용 컴퓨터 장치는 데이터 저장부, 프로세서, 그리고 메모리를 포함한다. 데이터 저장부는 위와 같은 방법들 중 어느 하나에 따른 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램과 데이터를 저장한다. 상기 프로세서는 상기 컴퓨터 프로그램을 상기 데이터 저장장치로부터 읽어와서 실행한다. 상기 메모리는 상기 프로세서에 데이터 처리 작업 공간을 제공한다. 상기 프로세서는 상기 컴퓨터 프로그램을 실행함으로써 상담사와 상담자 간의 대화를 분석하여 대화 의도를 추출하여 그에 적합한 헬스케어 지침을 제공할 수 있다.
일 실시예에 따르면, 상기 컴퓨터 장치는 클라우드 서버 장치로 구현될 수 있다.
본 발명에 따르면, 헬스케어 지침과 각종 의도 정보를 바탕으로 학습하여 자동화된 채트봇을 구현할 수 있다. 그 채트봇을 이용해 사용자와의 대화로부터 사용자의 내재된 의도에 따라 사용자가 하는 말의 의미를 추출할 수 있고, 사용자의 상황에 알맞은 헬스케어 지침을 제공할 수 있다. 이를 통해, 경제적으로 사용자의 의도에 맞는 헬스케어 지침을 제공 할 수 있어, 사용자 맞춤형 헬스케어 서비스 제공이 가능하다.
도 1은 본 방명의 실시예에 따라 채트봇을 이용해 사용자의 의도를 추출하고 이를 헬스케어 문장 추천에 사용하는 방법을 나타내는 흐름도이다.
도 2는 본 발명의 실시예에 따라 '헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 학습하는 단계'에 대한 상세 흐름도이다.
도 3은 본 발명의 실시예에 따라 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계가 작동하는 시스템 구조를 도시하는 블록도이다.
도 4는 본 발명의 실시예에 따라 '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계'에 대한 상세 흐름도이다.
도 5는 본 발명의 실시예에 따라 '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계'가 작동하는 시스템 구조를 도시하는 블록도이다.
도 6은 본 발명의 실시예에 따라 형태소임베딩 모델 기반 한국어 문장 언어모델 학습 과정을 도시한다.
도 7은 본 발명이 정신과 상담에 적용될 때의 개념을 예시적으로 나타낸 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시 예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시 예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하에서는 첨부한 도면을 참조하면서 본 발명을 용이하게 실시할 수 있도록 구체적으로 설명한다.
도 1은 본 방명의 실시예에 따라 채트봇을 이용해 사용자의 의도를 추출하고 이를 헬스케어 문장 추천에 사용하는 방법을 나타낸다.
도 1을 참조하면, 채트봇을 이용해 내재된 사용자의 의도를 추출하고 이를 헬스케어 문장 추천에 사용하는 방법은 크게, 헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 문서 의도 자질 추출 신경망 모델을 학습하는 단계(S100)와, 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S200)를 포함한다.
헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 문서 의도 자질 추출 신경망 모델을 학습하는 단계(S100)는 미리 만들어진 헬스케어 지침의 문서와 의도 정보 데이터를 이용해 추론 모델을 학습하는 과정이다. 헬스케어 지침 문서는 예를 들어 "감기에 걸렸을 때는 생강차를 드시면 좋습니다. 생강차는 생강과 꿀을 넣고 뜨거운 물을 부어 만듭니다."와 같은 헬스케어 정보가 포함된 문서일 수 있다. 의도 정보는 예컨대"으슬으슬 몸이 추운 것 같아", "목이 따갑고 열이 나는 것 같아"등의 자연어 문장들로서, 헬스케어 문서와 관련된 의미를 포함하고 있는 문서들일 수 있다.
채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S200)는 학습된 모델과 채트봇을 이용해서 사용자의 의도를 입력 받아 헬스케어 지침을 추천하는 과정이다. 유저 인터페이스로 사용자 채팅 텍스트를 입력 받아 추론과정을 거쳐 헬스케어 지침 문서를 탐색하고 사용자에게 추천한다. 예를 들어 사용자가 "열이 나고 몸이 으슬으슬 추울 때는 어떡하지?"라는 문장을 입력했을 때, 이전에 학습된 모델을 이용해서 "감기에 걸렸을 때는 생강차를 드시면 좋습니다. 생강차는 생강과 꿀을 넣고 뜨거운 물을 부어 만들어 주세요."와 같은 헬스케어 문서를 탐색해 추천한다.
도 2는 '헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 학습하는 단계(S100)'의 구체적인 절차를 예시한다. 도 3은 본 발명의 실시예에 따라 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)가 작동하는 시스템 구조를 도시한다.
도 2에 따르면 '헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 학습하는 단계(100)'는 구체적으로, 자연어 지침 문서와 사용자 의도 정보를 어절 단위 텍스트로 분할하는 단계(S200)와, 분할된 어절 단위 텍스트를 입력 자질로 추출하는 단계(S210)와, 추출된 입력 자질을 바탕으로 문서 의도 자질 추출 신경망 모델을 학습하는 단계(S220), 그리고 학습된 지침 문서 자질을 데이터베이스(DB)에 저장하는 단계(S230)를 포함할 수 있다.
'헬스케어 지침 문서와 사용자 의도 정보의 예시를 이용해 학습하는 단계(100)'는 목표 의도 유사도를 더 활용하여 학습할 수도 있다.
자연어 지침 문서와 사용자 의도 정보와 같은 입력 텍스트를 어절 자질 단위 텍스트로 추출하는 단계(S200)를 도 3을 참조하면서 좀 더 구체적으로 설명한다. 입력 텍스트는 띄어쓰기, 공백 등과 같은 분할조건을 기반으로 하나 이상의 어절로 분할할 수 있다. 예를 들어, "감기에 걸렸을 때는 생강차를 드시면 좋습니다."라는 입력 텍스트를 띄어쓰기 기반으로 분할하면, 분할된 하나 이상의 어절은 "감기에", "걸렸을", "때는", "생강차를", "드시면", 그리고 "좋습니다"가 될 수 있다. 또한, 예를 들어, "목이 따갑고 열이 나는 것 같아"라는 입력 텍스트를 띄어쓰기를 기반으로 분할할 경우 그 하나 이상의 어절은 "목이", "따갑고", "열이", "나는", "것", "같아"가 될 수 있다.
분할된 어절 단위 텍스트를 입력 자질로 추출하는 단계(S210)는 S200 단계에서 어절 분할을 통해 추출된 상기 어절 자질 단위 텍스트 각각을 미리 학습된 어절 수준 신경망 모델을 이용해서 입력 자질로 나타낼 수 있다. 위의 예에서, "감기에", "걸렸을", "때는", "생강차를", "드시면", 그리고 "좋습니다"가 어절 자질 단위 텍스트이다.
추출된 입력 자질을 바탕으로 신경망을 학습하는 단계(S220)는 문서 의도 자질 추출 신경망 모델(310)을 학습한다. 즉, 추출된 입력 자질과 목표 의도 유사도(340)를 이용해 문서 의도 자질 추출 신경망 모델(310)을 학습 하는 것이다. 이 단계에서는 신경망을 통해 추론된 지침 문서 자질(330)과 사용자 의도 자질(350)의 목표 유사도(340)를 이용해 신경망을 학습한다.
학습된 지침 문서 자질을 DB에 저장하는 단계(S230)는 문서 의도 자질 추출 신경망 모델의 학습이 끝난 후에 모든 지침 문서의 지침 문서 자질(330)을 추론해 지침 문서 DB(320)에 지침 문서 텍스트와 함께 저장하는 단계이다.
도 2에 도시된 지침 문서와 사용자 의도 문장(정보)을 학습하고 학습의 결과를 지침 문서 DB(320)에 저장하는 방법을 예를 들어 좀 더 구체적으로 설명한다.
한국어 문장을 실수 벡터로 표현하기 위해서 한국어 형태소임베딩 기술을 사용할 수 있다. 형태학상 교착어 계열인 한국어의 특성에 맞추어 형태소 별로 임베딩 모델을 학습하기 위해서 형태소임베딩 방법이 유용하다. 영어에서의 단어는 기본적으로 어간(stem)을 독립적으로 쓰거나, 접사(affix)와 결합해서 동사만을 변형하여 사용한다. 이에 반해 한국어에서는 어간에 해당하는 어휘 형태소만 의미를 갖고, 어미나 조사에 해당하는 문법 형태소의 조합으로 단어를 구성한다. 따라서 형태소임베딩 기술은 형태소 수준에서 어휘 형태소만을 추출하여 학습한다. 예시적인 문장 "이 모델들은 얇은 2개의 층으로 구성된 신경망 네트워크로, (후략)"에서 예를 들어 '네트워크로'의 형태소를 분석하면, 일반명사 '네트워크'라는 어휘 형태소와 격조사 '로'가 합쳐진 어구로 분석할 수 있다. 그 중 '네트워크'라는 어휘 형태소만을 추출하여 학습대상으로 삼을 수 있다.
추가로 형태소의 종류(type), 어깨 번호(의미 코드), 그리고 어휘 형태소에 결합된 어미나 조사에 해당하는 문법 형태소를 학습 자질로서 함께 학습할 수도 있다. 이 같은 자질들을 어휘 형태소의 학습 자질로 사용하지 않은 경우, 문장 내에서 비슷한 위치에 등장하는 형태소가 비슷한 벡터로 학습될 수 있다. 이 경우, 쓰임이 다르거나, 반의어도 비슷한 벡터를 가진 형태소로 학습되어, 함의자질 추출이나 함의 문장 생성 시 성능에 영향을 줄 수 있다.
예시적인 일 실시예에 있어서, 한국어 형태소임베딩의 언어모델 학습방법은 다음과 같을 수 있다. 예컨대 한국어 위키피디아 문서에 나오는 문장들을 형태소 분석기를 통해 형태소 정보를 분석하며, 각 형태소에 대한 종류(type), 어깨 번호(의미 코드), 그리고 결합된 어미나 조사들을 학습 자질로 태그하여 말뭉치를 생성한다. 그리고 유사한 문맥 정보를 가진 단어와, 반의어를 언어 지식을 활용하여 정제한다. 그런 다음, 깊은 신경망네트워크의 한 종류인 Deep Belief Network(DBN)이라는 모델을 사용하여 말뭉치의 문장을 학습할 수 있다. 말뭉치의 문장 학습 시 활성화 함수는 ReLU를 사용할 수 있고, Dropout을 적용할 수 있다.
문장은 단어의 순차적인 나열이기 때문에, 문장의 앞에서부터 입력된 문맥 정보를 고려하면서 학습하는 것이 바람직하다. 이를 위해서, 신경망의 은닉층에서 현재 입력 데이터와 이전까지 학습된 context unit까지 모두 입력으로 받아 처리를 할 수 있는 모델을 사용할 수 있다. 예시적인 실시예에서, 문장은 단어의 순차적인 나열이기 때문에, 시계열 데이터를 학습하는 데 적합한 모델인 순환 신경망(recurrent neural network: RNN) 모델을 이용하면 효과적일 수 있다. RNN 계열의 깊은 신경망으로는 gradient vanishing 문제를 해결한 Long Short Term Memory(LSTM)와, 이를 간소화한 gated recurrent unit(GRU) 등이 있다.
예시적인 일 실시예에서, 어휘 형태소의 형태소 임베딩 결과를 활용하여 문장의 의미적 정보를 포함하여 언어모델을 학습하고 한국어 문장을 인코딩하는 방법을 사용할 수 있다. 이와 관련하여, 도 6은 본 발명의 예시적인 일 실시예에서 형태소임베딩 모델 기반 한국어 문장 언어모델 학습 과정을 나타낸다.
도 6을 참조하면, 형태소임베딩 모델 기반 한국어 문장 언어모델 학습하기 위해, 우선 모델을 학습 시킬 한국어 말뭉치를 선택한다. 이 말뭉치의 문장을 형태소분석기를 통해 분석한 형태소 분석 자질과, 단어 의미 중의성 해소 결과를 학습 자질을 태그로 형태소 임베딩에서 형태소 표현 방법 따라 주석을 단다. 어깨번호와 형태소 종류를 자질로써 형태소의 주석으로 달 수 있다. 예를 들어, 한국어 웹 백과사전인 위키피디아의 덤프 데이터 (: 데이터베이스_다운로드)를 사용할 수 있다. 한국어 위키피디아 덤프 데이터(2016년 6월 기준)에서 제목과, 본문의 문장만 파싱하여 말뭉치를 구성할 수 있다. 발명자들이 실제로 수행해본 바에 따르면, 숫자와 기호, 영문 및 한국어 문장만 정제하였을 때 2,619,773 문장이 파싱되었다. 그리고 형태소 분석결과 분석된 형태소는 77,172,818개로 카운트되었다.
선행학습으로 형태소 임베딩을 수행한 결과에서 해당 형태소의 형태소 벡터를 불러온다. 불러온 형태소 벡터를 입력과 출력으로 RNN 모델에 학습시킨다. 여기서 RNN 모델의 입력층은 현재 형태소의 형태소 임베딩 벡터이고, 출력층은 다음 형태소의 형태소임베딩 벡터이다. 따라서 도 6과 같이 첫 형태소를 학습할 때에는 "이슬람00NNG"에 해당하는 형태소임베딩 벡터를 입력으로 "또는00MAJ"에 해당하는 형태소임베딩 벡터를 출력으로 RNN을 학습시킨다. 이와 같은 학습의 예시적인 실시예에서, 예컨대 100차원의 형태소임베딩 벡터를 사용할 수 있다. 이 방법으로 형태소 분석 자질로 주석이 달린 한국어 위키피디아 말뭉치 문장을 학습시킨다. GRU 모델을 이용한 시험적 학습에는 예컨대 128개의 문장 길이를 사용하였다. 이는 평가용 말뭉치로 준비한 장학 퀴즈 말뭉치의 평균 길이이다. 마지막으로 GRU in/out/forget gate의 인자를 저장하고 학습 모델로 저장한다.
다음으로, 도 4는 본 발명의 예시적인 실시예에 따른 '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'의 상세 흐름도이다. 도 5는 본 발명의 예시적인 실시예에 따른 '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'가 작동하는 시스템 구조를 도시하는 블록도이다.
도 4와 도 5를 참조하면, 본 발명의 예시적인 실시예에 따른 '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'는 채트봇이 사용자로부터 그 사용자의 메시지를 입력 받는 단계(S300)를 포함할 수 있다. 채트봇에서 사용자 대화를 입력 받는 단계(S300)는 유저 인터페이스를 통해 사용자의 메시지 입력(510)을 실시간으로 입력 받을 수 있다. 사용자의 메시지는 음성으로 표현되는 대화, 텍스트의 형태로 입력되는 문장 등일 수 있다. 채트봇은 그와 같은 입력을 인터페이싱할 수 있는 유저 인터페이스 수단을 포함할 수 있다.
'채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'는 자연어 사용자 입력(510)을 입력 자질로 추출하는 단계(S310)를 포함할 수 있다. 자연어 사용자 입력을 입력 자질(520)로 추출하는 단계(S310)는 예를 들어"열이 나고 몸이 으슬으슬 춥네"와 같은 텍스트가 입력되면, 그 텍스트를 띄어쓰기, 공백과 같은 세분화 조건에 따라 어절 단위로 분할하여 예를 들어 "열이", "나고", "몸이", "으슬으슬", "춥네"와 같은 어절 단위 텍스트를 얻을 수 있다. 이와 같이 생성된 어절 단위 텍스트에 대해서 미리 학습된 어절 단위 신경망 모델을 이용하여 입력 자질(520)을 추출할 수 있다. 입력 자질의 추출 방법에 관해서는 앞서 구체적으로 설명하였으므로 그 내용을 참조하면 된다.
또한, '채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'는 추출된 입력 자질을 이용하여 문서 의도 자질 추출 신경망 모델(530)을 기반으로 사용자 의도를 인지해 사용자 의도 자질(540)로 추출하는 단계(S320)를 포함할 수 있다. 이 단계(S320)는 앞의 단계 S310에서 추출된 입력 자질(520)을 바탕으로 학습된 문서 의도 자질 추출 신경망 모델(530)을 이용해 사용자 의도 자질(540)을 추출할 수 있다.
'채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계(S110)'는 또한 사용자 의도 자질(540)에 대한 유사도 분석을 통해 헬스케어 지침 문서를 탐색하는 단계(S330)와, 탐색된 지침 문서를 사용자에게 추천하는 단계(S340)를 포함할 수 있다. 이를 위해 유사도 분석 모델(550)을 사용할 수 있다. 유사도 분석 모델(550)은 사용자 의도 자질(540)을 유사도 분석을 통해 헬스케어 지침 문서(570)를 탐색하는 단계(S330)를 수행한다. 유사도 분석 모델(550)은 예컨대 [1.0, 0, 0, 0.5]와 같은 현재 사용자 의도 자질(540)과 지침 문서 DB(560)에 존재하는 미리 생성된 지침 문서 자질들을 비교하여, 사용자 의도 자질(540)과 가장 유사한 지침 문서 자질(예를 들어, [0.8, 0, 0, 0.3])을 가지는 지침 문서(570)를 찾아낼 수 있다. 그렇게 하여 탐색된 지침 문서(570)를 유저 인터페이스를 통해서 사용자에게 실시간으로 전달하여 추천할 수 있다.
한편, 위에서 설명한 본 발명의 실시예들에 따른 헬스케어 지침 제공 방법은 컴퓨터 프로그램으로 구현될 수 있다. 그 컴퓨터 프로그램은 예컨대 사용자 대화 의도 추출 기능 구비 채트봇의 하드웨어 자원을 활용하여 실시될 수 있다. 즉, 채트봇은 기본적으로 하드디스크나 불휘발성 메모리 장치와 같은 저장수단과, 프로그램을 실행하기 위한 연산 처리를 하는 CPU 또는 마이크로프로세서 등과 같은 연산 장치, 그리고 사용자와의 인더랙티브한 소통을 위한 유저 인터페이스 수단(스피커와 모니터 등과 같은 입출력 장치와 이를 구동하기 위한 구동장치 등)을 구비할 수 있다. 헬스케어 지침 제공 방법을 구현한 컴퓨터 프로그램을 그와 같은 저장수단에 저장해 두었다가, 필요 시 연산장치가 그 프로그램을 실행하여 헬스케어 지침 제공 서비스를 제공할 수 있다.
한편, 본 발명에 따른 헬스케어 지침 제공 방법은 전문의와 환자 간의 건강 상담에 응용될 수 있다. 도 7은 본 발명의 실시예들에 따른 헬스케어 지침 제공 방법이 정신과 상담에 적용될 때의 개념을 예시적으로 나타낸 도면이다.
도 7을 참조하면, 본 발명에 따른 헬스케어 지침 제공 방법은 클라우드 서버 시스템(700)에서 서비스될 수 있도록 구현될 수 있다. 본 발명에 따른 헬스케어 지침 제공 방법을 구현한 컴퓨터 프로그램은 클라우드 서버(710)에 올려 실행될 수 있다. 정신과 상담사(예: 정신과 전문의), 상담자(사용자) A와 B등은 자신의 컴퓨터 장치(720, 730, 740)를 이용하여 통신망을 통해 클라우드 서버(710)에 접속할 수 있다. 클라우드 서버(710)에는 위에서 설명한 헬스케어 지침 제공 방법의 실시에 필요한 각종 하드웨어(CPU, 메모리, 저장수단, 통신수단 등) 및 소프트웨어 리소스들(컴퓨터 프로그램, 각종 데이터, 데이터베이스 시스템 등)이 탑재될 수 있다.
상기 컴퓨터 프로그램은 클라우드 서버(710)가 상담용 대화형 플랫폼을 실행하여 웹 페이지 형태로 상담사와 상담자 등의 사용자의 컴퓨터 장치(720, 730, 740)에 서비스할 수 있다. 사용자들은 그 웹 페이지 형태의 상담용 대화형 플랫폼을 매개로 하여 상담을 위한 대화(텍스트, 음성, 비디오 등)를 입력하여 상담을 진행할 수 있다.
본 발명에 따른 헬스케어 지침 제공방법이 구현된 상기 컴퓨터 프로그램은 상담 내용을 분석, 학습하면서 대화를 지원하고, 증상을 진단하고 해결방안을 도출하여 제시하는 등의 기능을 발휘할 수 있다.
클라우드 서버(710)가 제공하는 상기 상담용 대화형 플랫폼은 모바일 단말기용 앱(Application)을 통해 서비스될 수도 있다.
이와 같이 본 발명은 사용자와 채트봇의 대화로부터 사용자의 내재된 의도를 추출하고 그에 따르는 답변 문장을 선택할 수 있는 문서 분석 모델을 학습시킬 수 있다. 본 발명은 예컨대 정신과 전문의와 환자 간의 정신과 진료 상담 등과 같은 전문적인 상담 분야에도 다양하게 이용될 수도 있다.
이상에서 실시예들에 설명된 특징, 구조, 효과 등은 본 발명의 하나의 실시예에 포함되며, 반드시 하나의 실시예에만 한정되는 것은 아니다. 나아가, 각 실시 예에서 예시된 특징, 구조, 효과 등은 실시예들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시예들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
또한, 이상에서 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
300: 사용자 의도 기반 헬스케어 지침 추천 시스템
310, 530: 문서 의도 자질 추출 신경망 모델
320, 560: 지침 문서 데이터베이스(DB) 330: 지침 문서 자질
340: 목표 의도 유사도 350, 540: 사용자 의도 자질
510: 사용자 입력 문장 520: 입력 문장 자질
550: 유사도 분석 모델 570: 지침 문서

Claims (11)

  1. 컴퓨터 장치에서 실행되는 컴퓨터 프로그램을 이용하여 수행되는 방법으로서,
    상기 컴퓨터 프로그램은,
    상기 컴퓨터 장치에서, 헬스케어 지침 문서와 사용자 의도 정보의 예시에 기초하여 문서 의도 자질 추출 신경망 모델을 학습하는 단계; 및
    상기 컴퓨터 장치에서, 채트봇을 통해 사용자 의도를 입력 받아 헬스케어 지침을 추천하는 단계를 수행하기 위한 코드를 포함하며,
    상기 '학습하는 단계'는, 자연어로 표현된 헬스케어 지침 문서와 사용자 의도 정보를 어절 단위 텍스트로 분할하는 단계; 분할된 어절 단위 텍스트 각각을 미리 학습된 어절 수준 신경망 모델에 기초하여 지침 문서 자질과 사용자 의도 자질을 포함하는 입력 자질로 추출하는 단계; 추출된 입력 자질과 목표 의도 유사도에 기초하여 문서 의도 자질 추출 신경망 모델을 학습하는 단계; 및 학습된 지침 문서 자질을 지침 문서 데이터베이스(DB)에 저장하는 단계를 포함하고,
    상기 '추천하는 단계'는,
    상기 채트봇이 사용자 인터페이스를 통해 입력받은 사용자의 메시지를 어절 단위로 분할하고 미리 학습된 어절 단위 신경망 모델을 이용하여 입력 자질로 추출하는 단계; 추출된 입력 자질을 이용하여, 학습된 상기 문서 의도 자질 추출 신경망 모델을 기반으로 사용자 의도를 인지해 사용자 의도 자질로 추출하는 단계; 추출된 사용자 의도 자질을 상기 학습하는 단계에서 학습된 지침 문서 자질을 저장하고 있는 지침 문서 DB에 존재하는 지침 문서 자질들과 비교하여 유사도 분석을 하고, 상기 추출된 사용자 의도 자질에 가장 유사한 지침 문서 자질을 가지는 헬스케어 지침 문서를 탐색하는 단계; 및 탐색된 지침 문서를 상기 채트봇의 사용자 인터페이스를 통해 사용자에게 추천하는 단계를 포함하는 것을 특징으로 하는 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 지침 문서 DB에 저장하는 단계는 추출된 상기 자연어 지침 문서의 지침 문서 자질과 상기 자연어 지침 문서의 텍스트를 함께 저장하는 것을 포함하는 특징으로 하는 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법.
  5. 삭제
  6. 제1항에 있어서, 상기 사용자의 메시지는 음성으로 표현되는 대화와, 텍스트의 형태로 입력되는 문장 중 적어도 어느 한 가지를 포함하는 것을 특징으로 하는 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법.
  7. 삭제
  8. 삭제
  9. 제1항, 제4항, 제6항 중 어느 하나의 항에 따른 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터 가독형(computer-readable) 기록 매체.
  10. 제1항, 제4항, 제6항 중 어느 하나의 항에 따른 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램과 데이터를 저장하는 데이터 저장부;
    상기 컴퓨터 프로그램을 상기 데이터 저장부로부터 읽어와서 실행하기 위한 프로세서;
    상기 프로세서에 데이터 처리 작업 공간을 제공하는 메모리를 포함하며,
    상기 프로세서는 상기 컴퓨터 프로그램을 실행함으로써 상담사와 상담자 간의 대화를 분석하여 대화 의도를 추출하여 그에 적합한 헬스케어 지침을 제공하는 것을 특징으로 하는 헬스케어 지침 서비스용 컴퓨터 장치.
  11. 제10항에 있어서, 상기 컴퓨터 장치는 클라우드 서버 장치로 구현된 것을 특징으로 하는 헬스케어 지침 서비스용 컴퓨터 장치.
KR1020170095207A 2016-11-16 2017-07-27 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치 KR101971582B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160152622 2016-11-16
KR20160152622 2016-11-16

Publications (2)

Publication Number Publication Date
KR20180055680A KR20180055680A (ko) 2018-05-25
KR101971582B1 true KR101971582B1 (ko) 2019-08-13

Family

ID=62299463

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170095207A KR101971582B1 (ko) 2016-11-16 2017-07-27 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치

Country Status (1)

Country Link
KR (1) KR101971582B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US11423227B2 (en) 2020-02-13 2022-08-23 International Business Machines Corporation Weak supervised abnormal entity detection

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190392926A1 (en) * 2018-06-22 2019-12-26 5 Health Inc. Methods and systems for providing and organizing medical information
USD931294S1 (en) 2018-06-22 2021-09-21 5 Health Inc. Display screen or portion thereof with a graphical user interface
KR102261797B1 (ko) * 2018-12-14 2021-06-07 신라대학교 산학협력단 의료 보조서비스를 제공하는 로봇 시스템 및 그 방법
KR102189567B1 (ko) * 2019-03-27 2020-12-11 주식회사 포시에스 다수의 의도가 포함된 문장으로부터 의도 및 의도에 대응되는 내용을 검출하는 전자문서 시스템
KR102254300B1 (ko) * 2019-04-19 2021-05-21 한국과학기술원 토론 상황 시 발화된 주장에 대한 근거 문장 제공 엔진
KR102334973B1 (ko) * 2019-07-26 2021-12-06 (주)유템 인공지능 의료 지원 서비스 플랫폼에서 수행되어지는 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101583984B1 (ko) * 2014-09-17 2016-01-11 포항공과대학교 산학협력단 건강 정보 데이터베이스를 이용한 대화 방법 및 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090113158A (ko) * 2008-04-25 2009-10-29 (주)에이치앤비솔루션 상태 기반의 지능적 사용자 요구 라우팅 및 응대 시스템과이를 이용한 상태 기반의 집단 지성 활용 및 관리 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101583984B1 (ko) * 2014-09-17 2016-01-11 포항공과대학교 산학협력단 건강 정보 데이터베이스를 이용한 대화 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US11423227B2 (en) 2020-02-13 2022-08-23 International Business Machines Corporation Weak supervised abnormal entity detection

Also Published As

Publication number Publication date
KR20180055680A (ko) 2018-05-25

Similar Documents

Publication Publication Date Title
KR101971582B1 (ko) 사용자 대화 의도 추출 기능 구비 채트봇을 활용한 헬스케어 지침 제공 방법 및 이를 위한 장치
US11500917B2 (en) Providing a summary of a multimedia document in a session
US9805718B2 (en) Clarifying natural language input using targeted questions
US10657327B2 (en) Dynamic homophone/synonym identification and replacement for natural language processing
US11587541B2 (en) Providing personalized songs in automated chatting
Can et al. “It sounds like...”: A natural language processing approach to detecting counselor reflections in motivational interviewing.
Aleedy et al. Generating and analyzing chatbot responses using natural language processing
Thorne Chatbots for troubleshooting: A survey
US20160364476A1 (en) Systems and methods for learning semantic patterns from textual data
US11532387B2 (en) Identifying information in plain text narratives EMRs
Tseng et al. Approaching Human Performance in Behavior Estimation in Couples Therapy Using Deep Sentence Embeddings.
US20230123328A1 (en) Generating cascaded text formatting for electronic documents and displays
Kim et al. Constructing novel datasets for intent detection and ner in a korean healthcare advice system: guidelines and empirical results
Inupakutika et al. Integration of NLP and Speech-to-text Applications with Chatbots
Sakurai et al. VICA, a visual counseling agent for emotional distress
Amery et al. Augmentative and alternative communication for Aboriginal Australians: Developing core vocabulary for Yolŋu speakers
Zarinbal et al. A new social robot for interactive query-based summarization: Scientific document summarization
Seon et al. Improving domain action classification in goal-oriented dialogues using a mutual retraining method
Zafari et al. Chatsum: an intelligent medical chat summarization tool
Huang et al. Chatbot: Design, architecture, and applications
Agrawal et al. Role of Expectation and Working Memory Constraints in Hindi Comprehension: An Eye-tracking Corpus Analysis
Lee Natural Language Processing: A Textbook with Python Implementation
Lacson et al. Automatic processing of spoken dialogue in the home hemodialysis domain
Xie et al. DA-GCN: A dependency-aware graph convolutional network for emotion recognition in conversations
Harwood et al. Understanding multilingual communities through analysis of code-switching behaviors in social media discussions

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant