KR102064207B1 - 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치 - Google Patents

의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치 Download PDF

Info

Publication number
KR102064207B1
KR102064207B1 KR1020180023384A KR20180023384A KR102064207B1 KR 102064207 B1 KR102064207 B1 KR 102064207B1 KR 1020180023384 A KR1020180023384 A KR 1020180023384A KR 20180023384 A KR20180023384 A KR 20180023384A KR 102064207 B1 KR102064207 B1 KR 102064207B1
Authority
KR
South Korea
Prior art keywords
slot
conversation
user
information
filled
Prior art date
Application number
KR1020180023384A
Other languages
English (en)
Other versions
KR20190102650A (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 주식회사 와이즈넛
Priority to KR1020180023384A priority Critical patent/KR102064207B1/ko
Publication of KR20190102650A publication Critical patent/KR20190102650A/ko
Application granted granted Critical
Publication of KR102064207B1 publication Critical patent/KR102064207B1/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/20ICT specially adapted for the handling or processing of patient-related medical or healthcare data for electronic clinical trials or questionnaires

Abstract

본 발명은 인공지능 기반의 대화관리 방법 및 그 장치에 관한 것으로, 본 발명에 따른 대화관리 방법은 슬롯 기반 대화방식을 기본으로 하여 슬롯을 채워 나가는 목적지향 대화관리 방법이다.
본 발명에 의한 대화관리 방법은, 사용자의 입력을 이해하여 정보를 획득하고 추가로 센서정보를 획득하여 이를 함께 슬롯에 저장하여 모든 슬롯이 채워질때까지 대화를 진행하되, 최단시간에 슬롯이 채워질 수 있도록 기계학습을 통해 학습된 대화예제 데이터베이스를 이용하여 사용자의 응답을 유도하는 시스템 응답을 생성한다. 이러한 대화방법에 의하면 자유도가 높으면서도 단시간 내에 대화의 목적을 달성할 수 있는 효과가 있다.

Description

의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치{METHOD AND APPARATUS OF CORPUS-BASED GOAL-ORIENTED DIALOG MANAGEMENT FOR MEDICAL INTERVIEW}
본 발명은 대화시스템에 관한 것으로, 특히 사용자로부터 필요한 정보를 획득하기 위한 목적지향 대화시스템에 관한 것이다.
기계학습(machine learning)을 활용한 인공지능의 성능이 점점 발달함에 따라 인공지능이 사람을 대신할 수 있는 분야에 대한 연구도 같이 활발해지는 추세이다. 인공지능을 이용한 대화시스템도 그 중 하나인데, 인공지능이 사람을 대신하여 사용자와 대화를 주고받는 시스템이 그런 것이다.
목적지향 대화시스템도 이러한 인공지능을 활용한 대화시스템 중 하나인데, 일정관리, 호텔/식당/항공권 등의 예약, 가전제품의 작동 또는 원하는 음악 재생같은 개인비서 서비스 혹은 콜센터 상담 등의 특정한 목적을 달성하는 것을 목표로 하는 대화시스템을 말한다.
목적지향 대화시스템은 사용자의 발화를 이용하여 사용자의 의도를 파악하고, 사용자의 의도에 맞는 정보를 제공하거나 서비스를 실행하기 위한 필수 정보들을 추가로 취득한 다음 사용자가 원하는 정보 또는 서비스를 제공한다.
목적지향 대화시스템의 핵심 모듈은 사용자의 표현이해 모듈과 대화관리 모듈이다. 이 중 일정한 목적을 달성하기 위해서는 대화관리 모듈이 핵심인데 대화관리 방법은 크게 유한상태 기반 방법과 슬롯(또는 프레임) 기반 방법으로 구분된다.
유한상태 기반 방법은 구현이 쉽고 예측이 쉬운 장점이 있으나, 사용자의 직접적인 대답이 있어야 다음 상태로 넘어갈 수 있어서 일방적인 대화가 진행되며 대화의 순서에 민감하다는 단점이 있다.
슬롯 기반 방법은 대화 순서에 의존하지 않아 자유도가 높다는 장점이 있으나, 사용자의 답변에 따라 대화가 분기되는 복잡한 대화는 어렵다는 단점이 있다.
본 발명의 발명자들은 이러한 종래 기술의 대화시스템을 개선하기 위해 연구 노력해왔다. 종래 대화시스템들의 단점을 보완하여 사용자와 대화시스템 간의 불필요한 대화를 줄이고 짧은 시간안에 대화의 목적을 달성할 수 있는 대화시스템을 완성하기 위해 많은 노력 끝에 본 발명을 완성하기에 이르렀다.
본 발명의 목적은 종래의 대화시스템에서 대화의 완성을 위해 불필요하게 계속되던 시스템의 질문을 줄이는 것이다.
이를 위해서는 대화시스템이 사용자의 정확한 대답을 유도해내기 위한 질문을 해야 하고, 따라서 대화시스템이 대화의 상황을 정확히 분석하여 사용자의 적절한 대답을 이끌어내기 위한 질문을 선택하는 것이 본 발명의 또 다른 목적이다.
또한, 사용자와 시스템 간의 대화 외에 추가로 다른 부가정보를 활용함으로써 질의응답을 최대한 단축하는 것을 목적으로 한다.
한편, 본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론 할 수 있는 범위 내에서 추가적으로 고려될 것이다.
슬롯 채우기 방식의 목적지향 대화시스템에 있어서, 사용자의 입력을 자연어 처리하고 패턴인식하여 목적에 맞는 정보를 추출하고, 사용자의 입력 없이 획득 가능한 센서정보를 획득한 다음,
상기 추출한 정보와 상기 센서정보를 대화상태의 정보저장단위인 슬롯에 저장하고, 상기 슬롯이 모두 채워졌는지 판단하여 채워지지 않은 슬롯을 채우기 위한 사용자의 입력을 유도하기 위해 대화 예제 데이터베이스 기반으로 대화시스템의 응답을 결정하는, 목적지향 대화관리 방법.
상기 슬롯의 상태는 완전히 채워진 상태, 채워지지 않은 상태, 불완전하게 채워진 상태로 구분되는 것을 특징으로 한다.
또한, 상기 슬롯은 상기 사용자의 입력에서 추출한 정보와 무관하게 채워져야 하는 비조건부 슬롯과, 상기 사용자의 입력에서 추출한 정보에 따라 채워져야 하는지 여부가 결정되는 조건부 슬롯으로 구분된다.
바람직하게는 상기 채워지지 않은 슬롯을 채우기 위한 대화시스템의 응답은, 상기 사용자의 입력과 이전 대화시스템의 응답과 상기 슬롯들의 상태를 이용하여 기계학습 기반 분류기에 의해 결정되는 것이 좋다.
본 발명의 바람직한 다른 실시예에 따른 대화관리 장치는 하나 이상의 프로세서와 메모리를 포함하며,
사용자로부터 입력을 받아 텍스트 전처리를 수행하는 입력부; 상기 사용자 입력을 사용자 사전을 기반으로 자연어 처리하고 패턴인식하여 필요한 정보를 추출하는 사용자 표현 이해부; 사용자의 입력과 무관하게 사용자와 관련된 정보를 입력받는 센서부; 대화의 목적을 달성하기 위한 대화상태의 정보저장단위인 슬롯에 상기 사용자 표현 이해부와 상기 센서부의 정보를 저장하고, 상기 슬롯들이 모두 채워졌는지 판단하여 추가 응답 생성여부를 결정하는 대화상태 관리부; 상기 대화상태 관리부의 판단에 따라 사용자의 추가 입력을 유도하기 위한 대화예제 기반의 시스템 응답을 생성하는 응답 생성부;를 포함하는 것을 특징으로 한다.
위와 같은 본 발명의 과제해결수단에 의해서 본 발명은 종래 기술의 목적지향 대화관리법에 비해 높은 자유도로 효과적으로 목적을 달성할 수 있다. 즉, 과거 대화기록을 기반으로 대화시스템의 질문을 효과적으로 만들어내어 사용자의 적절한 응답을 유도할 수 있으며, 대화 외에 부가적인 센서 정보 등을 활용하여 필요한 정보를 획득함으로써 대화를 단시간에 대화의 목적을 달성할 수 있는 효과가 있다.
이러한 효율적인 대화시스템은 지금까지 사람에 의해 수행되던 의료상담이나 문진, 콜센터 예약 등의 대화 서비스를 인공지능 시스템으로 대체할 수 있는 효과도 있다.
한편, 여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급됨을 첨언한다.
도 1은 본 발명의 바람직한 어느 실시예에 따른 예제기반 목적지향 대화관리 방법의 흐름도이다.
도 2는 본 발명의 대화관리 방법에 사용되는 슬롯의 구조를 나타낸다.
도 3은 본 발명의 바람직한 어느 실시예에 사용되는 대화상태 트리의 한 예를 나타낸다.
도 4은 본 발명의 바람직한 어느 실시예에 따른 예제기반 목적지향 대화관리 장치의 구조도이다.
※ 첨부된 도면은 본 발명의 기술사상에 대한 이해를 위하여 참조로서 예시된 것임을 밝히며, 그것에 의해 본 발명의 권리범위가 제한되지는 아니한다.
이하, 도면을 참조하여 본 발명의 다양한 실시예가 안내하는 본 발명의 구성과 그 구성으로부터 비롯되는 효과에 대해 살펴본다. 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명의 바람직한 어느 실시예에 따른 예제기반 목적지향 대화관리 방법의 흐름도이다
목적지향 대화는 예컨대 의료문진의 경우에는 의료진이 사용자의 건강상태를 확인하기 위해 질문을 하고 사용자가 그에 대한 응답을 하면 사용자의 응답으로부터 건강상태를 획득하기 위한 질의 응답 과정을 의미한다.
대화의 목적을 달성하기 위해서는 사용자로부터 적절한 응답을 얻어내야 하고 이 과정을 최소화하여 효율적으로 대화를 완성하는 것이 본 발명의 목적이다.
이를 위해 우선 사용자로부터 입력을 받는다(S110). 사용자의 입력은 스마트폰, 태블릿 컴퓨터, 데스크탑 컴퓨터, 노트북 컴퓨터 등을 통해 텍스트 형태로 입력 받을 수 있고, 또는 사용자가 설문지 등을 작성한 결과를 스캔하거나 촬영하여 사용자가 쓴 글씨를 인식하는 등의 방법으로 정보를 얻을 수 있다.
타이핑이나 글씨를 쓰기 어려운 사용자를 위해서는 사용자의 말을 문자로 변환하는 스피치-투-텍스트(Speech-to-text) 등의 기술을 사용하는 것도 가능할 것이다.
입력된 텍스트 정보는 텍스트 전처리 과정(S120)을 거쳐 사용자의 표현을 이해하게 된다(S130).
텍스트 전처리 과정에서는 사용자 입력 중에 필요 없는 부분을 제거하여 분석이 가능한 정보만을 남기게 된다. 오타를 수정하고 줄바꿈 처리를 하거나 특수기호 등을 제거하여 핵심 정보를 추출하는 것이다.
사용자 표현 이해 단계에서는 동의어 사전(132), 의미자질 사전(134), 패턴 사전(136) 등을 이용하여 사용자 입력에서 필요한 정보를 추출한다.
전처리 과정을 거친 사용자 입력의 텍스트는 자연어 처리를 통해 어간을 추출하여 의미단위로 분할된 텍스트의 배열로 변환한 다음 각 의미단위는 동의어 사전(132)을 활용하여 표제어로 변환한다.
변환된 표제어들은 의미자질 사전(134)을 이용하여 각 표제어들이 가지고 있는 속성을 갖는지 분석되고, 그 속성에 따라 그룹이 결정된다.
또한 수치형 데이터나 특정 패턴을 갖는 텍스트 표현은 정규표현식 패턴인식을 통해 수치와 단위 등을 분리하여 수치정보를 얻을 수 있다. 이 때 패턴 사전(136)이 이용된다.
사용자가 이렇게 입력한 정보 외에 스마트워치(Smart Watch) 등의 웨어러블 디바이스나 무선 체중계, 혈압계 등의 건강관리 장치들로부터 얻을 수 있는 정보들도 대화의 입력으로 사용될 수 있다.
다양한 센서기기들로부터 사용자의 키, 체중, 혈압, 심박수 등의 정보와 활동량, 운동정보, 수면정보 등의 추가 정보를 입력으로 받을 수 있다. 이러한 센서 정보를 입력받으면 사용자가 자신의 키나 몸무게, 수면시간, 주간 운동량 등의 정보를 생각해내기 위해 애쓸 필요 없이 정확한 정보의 입력이 가능하다.
대화상태 관리 단계에서는 대화를 위한 정보의 기본 저장단위인 슬롯(slot)을 관리하여 대화의 목적이 달성되었는지를 판단하게 된다.
슬롯 기반 대화방식은 목적달성을 위한 필수 정보를 슬롯으로 정의하고 여러 슬롯으로 구성된 프레임이 모두 채워질 때까지 대화를 계속하는 방식이다. 슬롯을 채우기 위해 사용자에게 질문을 하여 정보를 획득하고 빈 슬롯이 없이 프레임이 모두 채워지면 대화의 목적이 달성되어 대화가 종료된다. 슬롯 기반 대화방식을 사용하면 대화 순서에 의존하지 않는 자연스러운 대화가 가능한 장점이 있다.
도 2는 본 발명에서 사용하는 슬롯의 구조를 나타낸다.
사용자의 입력과 센서로부터 획득한 정보는 슬롯들을 채우는데, 사용자 표현 이해 단계에서 정보의 속성들이 결정되면 각각 해당하는 슬롯에 저장되는 방식이다.
예를 들어, 사용자가 “175cm 80kg”이라고 입력한 경우 이는 키 175cm, 몸무게 80kg을 의미하는 것이므로 키 슬롯(212)과 체중 슬롯(214)을 175와 80으로 채우는 것이다.
블루투스나 와이파이등의 근거리 무선통신망을 이용하여 정보를 전송할 수 있는 체중계, 혈압계 등의 센서가 있다면 사용자의 입력 없이 체중, 혈압 등의 정보를 전송할 수 있을 것이고, 이를 이용하면 체중 슬롯(214)과 혈압 슬롯(224, 226)이 채워진다.
슬롯은 크게 조건부 슬롯과 비조건부 슬롯으로 나뉜다. 비조건부 슬롯은 대화의 완성을 위해서 무조건 채워져야 하는 슬롯이고, 조건부 슬롯은 사용자 표현에 따른 정보획득 상황에 따라 채워져야 하는지 여부가 결정되는 슬롯이다.
도 2에서 키 슬롯(212), 체중 슬롯(214), 이상증상 슬롯(218)은 비조건부 슬롯에 해당하고, 나머지 슬롯들은 조건부 슬롯에 해당한다.
예를 들어 허리둘레 슬롯(222)은 사용자의 BMI(body mass index)가 25 이상인 경우에만 채워지고, 최고혈압 슬롯(224)은 사용자가 이상증상으로 두통을 입력한 경우에만 채워지는 조건부 슬롯이다. 따라서 사용자의 BMI가 25 미만인 경우에 허리둘레 슬롯(222)은 물론이고 연결된 다뇨증상확인 슬롯(232), 피로감확인 슬롯(234), 갈증확인 슬롯(236) 모두가 채워질 필요가 없다.
BMI 슬롯(216)은 키 슬롯(212) 및 체중 슬롯(214)와 점선 화살표로 연결되어 있는데 이는 묵시적 변환을 의미한다. 즉, 키와 체중이 입력되면 BMI가 미리 정의된 수식에 의해 자동으로 계산되어 BMI 슬롯(216)에 입력되는 것이다.
이와 달리 실선 화살표로 연결된 슬롯들은 입력된 값에 따라 활성화 단계가 다르다. 허리둘레 슬롯(222)은 BMI 값이 25 이상인 경우에만 채워진다. BMI가 25 이상인 경우에 허리둘레 슬롯(222)이 채워지고, 채워진 허리둘레 슬롯(222)의 값이 40인치 이상인 경우에만 다음 프레임으로 진행된다. 만약 허리 둘레가 40인치 미만인 경우라면 다음 프레임은 진행하지 않고, 즉, 다뇨증상확인 슬롯(232), 피로감확인 슬롯(234), 갈증확인 슬롯(236) 등은 채워지지 않고 대화가 종료된다.
BMI 슬롯과 달리 이상증상 슬롯(218)은 수치형 슬롯이 아니라 범주(category)형 슬롯이다. 구체적인 값을 가지는 슬롯이 아니라, 사용자 입력으로부터 추출한 정보가 이상증상에 해당하는지 판별하는 것이다. 예를 들어 사용자가 입력한 정보 중에 두통이나 피곤을 호소하는 문장 등이 있다면 이상증상 슬롯(218)에 '두통' 또는 '피로' 라는 갑이 입력되고, '두통'이 검출되었다면 최고혈압 슬롯(224)과 최저혈압 슬롯(226)이 추가로 채워지게 된다. 만일 '피로'가 검출된다면 체중증가여부 슬롯(228)이 추가로 채워질 것이다.
이처럼 각 슬롯은 대화상태 관리단계에서 채워지게 되고 필요한 모든 슬롯이 채워졌는지 여부를 판단하여(S160) 빈 슬롯이 남아 있다면 사용자 응답을 유도하기 위한 시스템 응답을 다시 생성하게 된다(S170). 만일 빈 슬롯이 없다면 대화의 목적을 이룬 것이므로 그것으로 대화는 종료된다.
시스템 응답 생성 단계에서는 슬롯들의 상태에 따라 적절한 시스템 응답을 생성한다. 시스템 응답을 생성하기 위해서는 각 슬롯을 노드로 하는 대화상태 트리(200)을 참조한다.
도 3은 대화상태 트리의 한 예를 나타낸다.
도 3에서 빗금으로 표시된 슬롯들(212, 214, 216)은 이미 정보가 채워진 슬롯을 의미하고, 빗금이 없는 슬롯들은 아직 정보가 채워지지 않은 빈 슬롯을 의미한다.
슬롯들로 구성된 각 프레임들(210, 220, 230)은 대화순서를 의미한다.
첫 번째 대화순서(210)는 키 슬롯(212), 체중 슬롯(214), BMI 슬롯(216) 및 이상증상 슬롯(218)으로 구성되고, 키 슬롯(212), 체중 슬롯(214) 및 BMI 슬롯(216)은 채워져 있는 상태이므로 시스템 응답 생성 단계에서는 이상증상 슬롯(218)을 채우기 위한 시스템 응답을 생성하게 된다.
이상증상을 채우기 위해 사용자의 응답을 유도하기 위한 질문인 시스템 응답으로는 예를 들어, “몸은 좀 어떠세요?” 또는 “어디 아픈 데 있으세요?” 등이 있고, 이는 대화예제 DB(172)로부터 생성할 수 있다. 이에 대한 사용자의 응답이 “며칠전부터 머리가 좀 아프네요.” 또는 “쉽게 피곤해진다.” 등이라면 이상상태 슬롯(218)이 채워지고 다음 대화순서인 두 번째 프레임(220)으로 대화가 진행된다.
두 번째 프레임(220)을 진행하기 위해서는 첫 번째 프레임(210)의 슬롯 중 BMI 슬롯(216)에 채워진 값이 25미만이고, 이상증상 슬롯(218)에 채워진 값도 '이상없음', '정상' 등이라면 건강에 이상이 없다는 것이므로 나머지 대화 프레임들은 채워지지 않은 채로 대화는 종료된다.
하지만 BMI 값이 25 이상이거나 이상증상 슬롯(218)의 값이 '두통'이나 '피로' 라면 다음 프레임(220)의 슬롯들을 채우기 위한 시스템의 추가 응답을 생성하게 된다. BMI가 25 이상이면 허리둘레가 얼마인지 질문하거나, 두통이 있다면 최고혈압 또는 최저혈압이 어느 범주에 존재하는지, 피로감을 느낀다면 체증이 증가했는지 여부를 물어보는 시스템 응답을 생성하는 것이다.
사용자의 응답 혹은 센서에 의해 측정한 허리둘레가 40인치 이상이라면 세 번째 대화 프레임(230)의 슬롯들을 채우기 위한 시스템 응답을 또 다시 생성한다. 허리둘레가 40인치 이상이라면 당뇨가 의심되는 상황이기 때문에, 다뇨증상이 있는지, 피로감을 느끼는지, 갈증이 심한지 등의 당뇨 증상을 확인하여 각 슬롯들(232, 234, 236)을 채우고 대화를 완성한다.
이와 같이 시스템 응답을 생성하는 것을 수식으로 표현하면 다음과 같다.
우선 t번째 대화순서(프레임)에서 대화상태는 DM t 로 나타낼 수 있다. DM t 는 각 슬롯의 상태를 포함하는 배열로 표현되며, N개의 슬롯을 갖는 대화상태는 아래와 같이 정의된다.
DM -t ={S1,S2,...,SN}
여기서 Si는 i번째 대화슬롯의 상태를 의미하며, i번째 대화슬롯은 총 3개의 값을 가질 수 있다. Si=0인 경우 슬롯이 채워지지 않았음을 의미하고, Si=1인 경우 대화가 완전히 채워졌음을 의미하며, 마지막으로 Si=2 인 경우에는 대화정보가 채워지긴 했으나 정보의 신뢰도가 낮아 확인이 필요함을 의미한다.
대화 슬롯의 상태가 1인 경우는 시스템 응답이 완벽히 채워진 경우일 수도 있고, 채워지진 않았으나 이전 대화 슬롯의 상태에 따라 채워질 필요가 없는 경우도 해당한다. 즉, 도 2의 예에서 BMI가 25미만인 경우 허리둘레 슬롯(222)은 채워질 필요가 없는데 이 때 슬롯 상태는 채워지지 않은 상태인 0이 아니라 1일 수 있는 것이다.
대화 슬롯의 상태가 2인 경우는 허리 둘레가 86인치로 입력된 경우와 같이 수치가 입력되긴 했으나 비정상 상태인 경우에 해당한다. 이 경우 시스템 응답은 “허리둘레가 86inch가 아니라 86cm 아닌가요?”와 같이 생성하여 사용자가 단위를 혼동하여 입력한 것이 아닌지 확인이 필요하다.
이처럼 t 시점에서의 시스템 발화인 at는 이전 프레임의 대화상태 트리(
Figure 112018019961830-pat00001
)와 이전 답변(
Figure 112018019961830-pat00002
, 그리고 사용자 표현(
Figure 112018019961830-pat00003
에 따라 달라진다. 이를 수식으로 나타내면 다음과 같다
Figure 112018019961830-pat00004
즉, 시스템 발화
Figure 112018019961830-pat00005
는 대화예제 데이터베이스인
Figure 112018019961830-pat00006
에서 이전 대화상태 트리, 이전 답변, 사용자 표현과 가장 유사한 발화로 선택되는데, 이는 기계학습(Machine Learning)의 분류기를 이용하여 결정된다. 기계학습 분류기는 KNN(K-Nearest Neighbors) 방식, 로지스틱 회귀(Logistic Regression) 방식, 딥러닝(Deep Learning) 방식, SVM(Support Vector Machine) 방식, 앙상블 학습법(Ensemble Learning) 등이 사용될 수 있다. 도 2의 예에서와 같이 총 11개의 슬롯을 가진 대화모델의 경우 입력 변수의 차원은 11개의 슬롯의 값과, 이전에 결정된 시스템 출력과, 사용자 입력으로 구성된 기계학습 특징벡터로 변환된다. 변환된 기계학습 벡터는 대화예제 데이터베이스를 통해 학습되며, 학습된 기계학습 모델을 이용하여 시스템 응답이 결정된다. 시스템 응답은 과거 기록에 근거해 볼 때 가장 적절한 사용자 표현을 유도하는 질문으로 생성되는 것이다.
도 4는 본 발명의 바람직한 어느 실시예에 따른 대화관리 방법을 수행하기 위한 장치의 개략적인 구조도이다. 본 발명의 대화관리 장치(30)는 하나이상의 프로세서와 메모리를 포함하여 구성될 수 있다.
대화관리 장치(30)는 입력부(310), 사용자 표현 이해부(320), 센서부(330), 대화상태 관리부(340) 및 시스템 응답 생성부(350)를 포함하여 구성된다.
입력부(310)는 키보드, 터치스크린, 마이크 등의 입력장치를 이용하여 사용자의 입력을 받는다. 사용자의 입력은 정보추출을 위해 텍스트가 아닌 경우에는 텍스트로 변환된다.
사용자 표현 이해부(320)는 텍스트 전처리를 거친 후 동의어 사전, 의미자질 사전, 패턴 사전 등을 이용하여 사용자 입력에서 필요한 정보를 추출한다.
센서부(330)는 사용자 입력 없이 각종 측정장치를 이용하여 사용자에 관한 정보를 취득한다. 센서부(330)는 내장 센서뿐 아니라 스마트 워치 등의 외부 장치로부터 블루투스, 와이파이 등 근거리 통신을 이용하여 정보를 취득할 수도 있다.
대화상태 관리부(340)는 대화를 위한 정보의 기본 저장단위인 슬롯을 관리하며, 모든 슬롯이 채워졌는지의 여부를 판단하여 대화의 목적이 달성되었는지, 즉, 대화를 종료해도 되는지를 판단한다. 슬롯의 구성 및 대화상태 판단 방법은 앞서 살펴본 바와 같다.
시스템 응답 생성부(350)는 분류모델 학습기(352), 기계학습모델(354), 답변 분류기(356) 및 대화예제 데이터베이스(358)를 포함하여 구성된다.
분류모델 학습기(352)는 이전 대화상태 트리, 이전 답변, 사용자 표현을 이용하여 시스템 발화를 분류하기 위한 학습을 수행하는데, 기계학습모델(354)은 대화 슬롯의 값과 이전 시스템 발화와 사용자 입력을 기계학습 특징벡터로 변환하여 대화예제 데이터베이스(358)를 통해 학습한다.
학습의 결과인 대화예제 데이트베이스(358)를 통해 답변 분류기(356)는 사용자의 응답을 유도하기 위한 시스템 발화를 생성함으로써 대화의 완성을 위한 사용자의 응답을 계속 이끌어낸다.
이렇게 슬롯 기반의 목적지향 대화관리 방법과 장치를 사용함으로써 인공지능 기반의 대화장치에서도 대화의 목적을 달성하기 위해 자유도가 높으면서 대화를 최단시간에 끝낼 수 있는 효율적인 질문을 생성해낼 수 있다.
참고로, 본 발명의 일 실시예에 따른 목적지향 대화관리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독가능매체에 기록될 수 있다. 상기 컴퓨터 판독가능매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독가능매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체, 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급언어코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다
본 발명의 보호범위가 이상에서 명시적으로 설명한 실시예의 기재와 표현에 제한되는 것은 아니다. 또한, 본 발명이 속하는 기술분야에서 자명한 변경이나 치환으로 말미암아 본 발명이 보호범위가 제한될 수도 없음을 다시 한 번 첨언한다.

Claims (5)

  1. 의료문진 목적달성을 위한 필수 정보를 슬롯으로 미리 정의하여 여러 슬롯으로 구성된 프레임이 모두 채워질 때까지 건강상태를 확인하기 위한 질의 응답 과정을 진행하는 슬롯 채우기 방식의 의료문진 목적지향 대화시스템에 있어서, 이 시스템의 목적지향 대화관리 방법은:
    사용자의 입력을 자연어 처리하고 패턴인식하여 목적에 맞는 정보를 추출하고, 사용자의 입력 없이 획득 가능한 센서정보를 획득한 다음,
    상기 추출한 정보와 상기 센서정보를 대화상태의 정보저장단위인 슬롯에 저 장하고, 상기 슬롯이 모두 채워졌는지 판단하여 채워지지 않은 슬롯을 채우기 위한 사용자의 입력을 유도하기 위해 대화 예제 데이터베이스 기반으로 대화 시스템의 응답을 결정하되,
    슬롯들로 구성된 대화순서에서 첫 번째 대화순서는 수치형 슬롯인 키 슬롯과 체중 슬롯과 BMI(body mass index) 슬롯 및 범주형 슬롯인 이상증상 슬롯으로 구성하고, 키 슬롯과 체중 슬롯이 채워지면 미리 정의된 수식에 의해 BMI가 계산되어 BMI 슬롯이 채워지며, 상기 BMI슬롯 및 상기 이상증상 슬롯이 채워지긴 했으나 정보의 신뢰도가 낮아 확인이 필요한 경우에 두 번째 대화순서의 시스템 응답을 생성하는 단계를 포함하는, 목적지향 대화관리 방법.
  2. 제1항에 있어서,
    상기 슬롯의 상태는 완전히 채워진 상태, 채워지지 않은 상태, 불완전하게 채워진 상태로 구분되는 것을 특징으로 하는, 목적지향 대화관리 방법.
  3. 제1항에 있어서,
    상기 슬롯은 상기 사용자의 입력에서 추출한 정보와 무관하게 채워져야 하는 비조건부 슬롯과, 상기 사용자의 입력에서 추출한 정보에 따라 채워져야 하는지 여부가 결정되는 조건부 슬롯으로 구분되는 것을 특징으로 하는, 목적지향 대화관리 방법.
  4. 제1항에 있어서,
    상기 채워지지 않은 슬롯을 채우기 위한 대화시스템의 응답은, 상기 사용자의 입력과 이전 대화시스템의 응답과 상기 슬롯들의 상태를 이용하여 기계학습 기반 분류기에 의해 결정되는 것인, 목적지향 대화관리 방법.
  5. 삭제
KR1020180023384A 2018-02-27 2018-02-27 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치 KR102064207B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180023384A KR102064207B1 (ko) 2018-02-27 2018-02-27 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180023384A KR102064207B1 (ko) 2018-02-27 2018-02-27 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20190102650A KR20190102650A (ko) 2019-09-04
KR102064207B1 true KR102064207B1 (ko) 2020-01-09

Family

ID=67950187

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180023384A KR102064207B1 (ko) 2018-02-27 2018-02-27 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102064207B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230060719A (ko) * 2021-10-28 2023-05-08 주식회사 스켈터랩스 대화 시스템에서, 슬롯을 추출하기 위한 장치, 방법, 시스템 및 컴퓨터 판독가능 저장 매체

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188781A (ja) * 1999-12-28 2001-07-10 Sony Corp 会話処理装置および方法、並びに記録媒体
JP2001256036A (ja) * 2000-03-03 2001-09-21 Ever Prospect Internatl Ltd 機器との情報授受方法及び当該方法を適用した対話機能を有する機器並びにこれら機器を複合させたライフサポートシステム
JP2002023783A (ja) * 2000-07-13 2002-01-25 Fujitsu Ltd 対話処理システム
JP2002099404A (ja) * 2000-07-21 2002-04-05 Matsushita Electric Ind Co Ltd 対話制御方法及びその装置
JP2006053470A (ja) * 2004-08-16 2006-02-23 Nippon Telegr & Teleph Corp <Ntt> 音声対話シーケンス状態表記方法、プログラム、および音声対話装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188781A (ja) * 1999-12-28 2001-07-10 Sony Corp 会話処理装置および方法、並びに記録媒体
JP2001256036A (ja) * 2000-03-03 2001-09-21 Ever Prospect Internatl Ltd 機器との情報授受方法及び当該方法を適用した対話機能を有する機器並びにこれら機器を複合させたライフサポートシステム
JP2002023783A (ja) * 2000-07-13 2002-01-25 Fujitsu Ltd 対話処理システム
JP2002099404A (ja) * 2000-07-21 2002-04-05 Matsushita Electric Ind Co Ltd 対話制御方法及びその装置
JP2006053470A (ja) * 2004-08-16 2006-02-23 Nippon Telegr & Teleph Corp <Ntt> 音声対話シーケンス状態表記方法、プログラム、および音声対話装置

Also Published As

Publication number Publication date
KR20190102650A (ko) 2019-09-04

Similar Documents

Publication Publication Date Title
US20220199205A1 (en) Systems and methods for mental health assessment
US20210110895A1 (en) Systems and methods for mental health assessment
US20220164541A1 (en) Systems and methods for dynamic user interaction for improving mental health
US9724824B1 (en) Sensor use and analysis for dynamic update of interaction in a social robot
US11756532B2 (en) Intelligence-driven virtual assistant for automated idea documentation
JP2021514514A (ja) 感情コンピューティングユーザインターフェースに基づく感性的インタラクションシステム、装置及び方法
CN109524085A (zh) 一种基于交互的认知分析方法及系统
US20190297033A1 (en) Techniques for improving turn-based automated counseling to alter behavior
EP3590117A1 (en) Psychotherapy triage method
US20200183928A1 (en) System and Method for Rule-Based Conversational User Interface
KR101943556B1 (ko) 쇼핑, 헬스케어, 말벗 및 게임을 수행하는 인공지능형 노인 돌봄 서비스 제공 방법
Fager et al. Evaluation of a speech recognition prototype for speakers with moderate and severe dysarthria: A preliminary report
KR102064207B1 (ko) 의료문진을 위한 예제기반 목적지향 대화관리 방법 및 그 장치
Purohit et al. Chatgpt in healthcare: Exploring ai chatbot for spontaneous word retrieval in aphasia
KR102101311B1 (ko) 동물구현체를 포함하는 가상현실 플랫폼 제공 방법 및 장치
Sophia et al. A survey on chatbot implementation in health care using NLTK
KR102507809B1 (ko) 공감대 형성을 통한 심리 치료용 인공지능 대화 시스템
Dammavalam et al. AI Based Chatbot for Hospital Management System
JP2020154427A (ja) 情報処理装置、情報処理方法、および、プログラム
Swain et al. Healthcare chatbot system: A survey
US11526541B1 (en) Method for collaborative knowledge base development
Rajapakshe et al. Sinhala conversational interface for appointment management and medical advice
KR20220048554A (ko) 의료 챗봇 시스템 및 이를 구동하는 방법
Mavropoulos et al. A smart dialogue-competent monitoring framework supporting people in rehabilitation
Pompili New features for on-line aphasia therapy

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant