KR20200119035A - 대화 시스템, 전자장치 및 대화 시스템의 제어 방법 - Google Patents

대화 시스템, 전자장치 및 대화 시스템의 제어 방법 Download PDF

Info

Publication number
KR20200119035A
KR20200119035A KR1020190041352A KR20190041352A KR20200119035A KR 20200119035 A KR20200119035 A KR 20200119035A KR 1020190041352 A KR1020190041352 A KR 1020190041352A KR 20190041352 A KR20190041352 A KR 20190041352A KR 20200119035 A KR20200119035 A KR 20200119035A
Authority
KR
South Korea
Prior art keywords
user
message
relationship
receiver
emotional
Prior art date
Application number
KR1020190041352A
Other languages
English (en)
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 KR1020190041352A priority Critical patent/KR20200119035A/ko
Priority to US16/697,495 priority patent/US20200327888A1/en
Priority to DE102019218918.0A priority patent/DE102019218918A1/de
Priority to CN201911231730.1A priority patent/CN111797208A/zh
Publication of KR20200119035A publication Critical patent/KR20200119035A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • G10L15/07Adaptation to the speaker
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Child & Adolescent Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

개시된 발명은 사용자가 메시지 전송을 요청하였을 때, 사용자와 수신자의 사회적 관계뿐만 아니라 이들의 감정적 관계, 현재 상황 정보 등을 이용하여 사용자의 의도를 충분히 반영한 적절한 메시지를 전송할 수 있는 대화 시스템, 전자 장치 및 그 제어 방법을 제공한다.
일 실시예에 따른 대화 시스템은, 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 관계 정보를 저장하는 저장부; 상기 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 입력되면, 상기 메시지 내용과 연관된 상황 정보를 수집하는 입력 처리기; 상기 관계 정보에 기초하여 상기 사용자와 상기 수신자 사이의 관계를 판단하고, 상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 대화 관리기; 및 상기 사용자와 상기 수신자 사이의 관계, 상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 결과 처리기;를 포함한다.

Description

대화 시스템, 전자장치 및 대화 시스템의 제어 방법{DIALOGUE SYSTEM, ELECTRONIC APPARATUS AND METHOD FOR CONTROLLING THE DIALOGUE SYSTEM}
개시된 발명은 사용자와 대화를 주고 받을 수 있는 대화 시스템, 전자 장치 및 그 제어 방법에 관한 것이다.
대화 시스템은 사용자의 발화를 인식하고 인식된 발화에 대응되는 서비스를 제공할 수 있다.
대화 시스템이 제공하는 서비스로서 메시지 전송이 있다. 사용자가 음성으로 메시지 전송을 요청하면, 대화 시스템은 사용자가 발화한 내용을 메시지로 전송하는 바, 이 때 메시지 수신자와 사용자 사이의 관계나 상황 정보 등을 고려하지 않으면 부적절한 메시지가 전송되거나, 전송되는 메시지에 사용자의 의도가 충분히 반영되지 않을 수 있다.
개시된 발명은 사용자가 메시지 전송을 요청하였을 때, 사용자와 수신자의 사회적 관계뿐만 아니라 이들의 감정적 관계, 현재 상황 정보 등을 이용하여 사용자의 의도를 충분히 반영한 적절한 메시지를 전송할 수 있는 대화 시스템, 전자 장치 및 그 제어 방법을 제공한다.
일 실시예에 따른 대화 시스템은, 관계 정보를 저장하는 저장부; 상기 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 입력되면, 상기 메시지 내용과 연관된 상황 정보를 수집하는 입력 처리기; 상기 관계 정보에 기초하여 상기 사용자와 상기 수신자 사이의 관계를 판단하고, 상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 대화 관리기; 및 상기 사용자와 상기 수신자 사이의 관계, 상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 결과 처리기;를 포함한다.
상기 사용자와 상기 수신자 사이의 관계는, 사회적 관계 및 감정적 관계를 포함할 수 있다.
상기 저장부는, 상기 사용자와 수신자의 감정적 관계 및 상황 별로 상기 사용자가 전송한 메시지의 특성이 매칭된 메시지 특성 DB를 저장할 수 있다.
상기 대화 관리기는, 상기 메시지 특성 DB에 기초하여 상기 의미 표현을 생성할 수 있다.
상기 메시지의 특성은, 화행 및 말투 중 적어도 하나를 포함할 수 있다.
상기 대화 관리기는, 상기 사용자의 감정 상태를 획득하고, 상기 사용자와 상기 수신자 사이의 관계 및 상기 사용자의 감정 상태를 반영하여 상기 의미 표현을 생성할 수 있다.
상기 저장부는, 상기 사용자와 수신자의 감정적 관계, 상기 사용자의 감정 상태 및 상황 별로 상기 사용자가 전송한 메시지의 특성이 매칭된 메시지 특성 DB를 저장하고, 상기 대화 관리기는, 상기 메시지 특성 DB에 기초하여 상기 의미 표현을 생성할 수 있다.
상기 관계 정보는, 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 대화 시스템의 제어 방법은, 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화를 수신하고; 상기 메시지 내용과 연관된 상황 정보를 수집하고; 상기 사용자와 상기 수신자 사이의 관계를 판단하고; 상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하고; 상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 것;을 포함한다.
상기 사용자와 상기 수신자 사이의 관계를 판단하는 것은, 상기 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 관계 정보에 기초하여 상기 사용자와 상기 수신자 사이의 사회적 관계 및 감정적 관계를 판단하는 것;을 포함할 수 있다.
상기 사용자와 수신자의 감정적 관계 및 상황 별로 상기 사용자가 전송한 메시지의 특성을 매칭시켜 저장하는 것;을 더 포함할 수 있다.
상기 의미 표현을 생성하는 것은, 상기 판단된 감정적 관계 및 현재 상황에 매칭된 메시지의 특성을 검색하고; 상기 검색된 메시지의 특성을 이용하여 상기 의미 표현을 생성하는 것;을 포함할 수 있다.
상기 사용자의 감정 상태를 획득하는 것;을 더 포함할 수 있다.
상기 의미 표현을 생성하는 것은, 상기 사용자와 상기 수신자 사이의 관계 및 상기 사용자의 감정 상태를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 것;을 포함할 수 있다.
상기 사용자와 수신자의 감정적 관계, 상기 사용자의 감정 상태 및 상황 별로 상기 사용자가 전송한 메시지의 특성을 매칭시켜 저장하는 것;을 더 포함할 수 있다.
상기 의미 표현을 생성하는 것은, 상기 판단된 감정적 관계, 상기 획득된 감정 상태 및 현재 상황에 매칭된 메시지의 특성을 검색하고; 상기 검색된 메시지의 특성을 이용하여 상기 의미 표현을 생성하는 것;을 포함할 수 있다.
일 실시예에 따른 전자 장치는, 하나 이상의 프로그램이 저장되는 메모리; 및 상기 저장된 프로그램을 실행하는 프로세서;를 포함하고, 상기 프로그램은, 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 수신되면, 상기 메시지 내용과 연관된 상황 정보를 수집하고; 상기 사용자와 상기 수신자 사이의 관계를 판단하고; 상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하고; 상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 것;을 포함한다.
일 측면에 따른 대화 시스템, 전자 장치 및 그 제어 방법에 의하면, 사용자가 메시지 전송을 요청하였을 때, 사용자와 수신자의 사회적 관계뿐만 아니라 이들의 감정적 관계, 현재 상황 정보 등을 이용하여 사용자의 의도를 충분히 반영한 자연스러운 메시지를 전송할 수 있다.
도 1 은 일 실시예에 따른 대화 시스템의 제어 블록도이다.
도 2는 일 실시예에 따른 대화 시스템에 있어서, 입력 처리기의 구성이 구체화된 제어 블록도이다.
도 3은 일 실시예에 따른 대화 시스템에 있어서, 대화 관리기의 구성이 구체화된 제어 블록도이다.
도 4 및 도 5는 일 실시예에 따른 대화 시스템에 있어서, 저장부에 저장되는 메시지의 특성을 나타내는 예시이다.
도 6은 일 실시예에 따른 대화 시스템에 있어서, 결과 처리기의 구성이 구체화된 제어 블록도이다.
도 7은 일 실시예에 따른 대화 시스템이 사용자와 주고 받는 대화의 예시를 나타낸 도면이다.
도 8은 도 7의 예시에서 의미 표현 생성기가 생성하는 의미 표현을 나타낸 도면이다.
도 9는 일 실시예에 따른 대화 시스템의 제어 방법의 순서도이다.
본 명세서에 기재된 실시예와 도면에 도시된 구성은 개시된 발명의 바람직한 일 예이며, 본 출원의 출원시점에 있어서 본 명세서의 실시예와 도면을 대체할 수 있는 다양한 변형 예들이 있을 수 있다.
또한, 본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다", "구비하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.
또한, "~부", "~기", "~블록", "~부재", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어, 상기 용어들은 FPGA(field-programmable gate array)/ASIC(application specific integrated circuit) 등 적어도 하나의 하드웨어, 메모리에 저장된 적어도 하나의 소프트웨어 또는 프로세서에 의하여 처리되는 적어도 하나의 프로세스를 의미할 수 있다.
각 단계들에 붙여지는 부호는 각 단계들을 식별하기 위해 사용되는 것으로 이들 부호는 각 단계들 상호 간의 순서를 나타내는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이하에서는 첨부된 도면을 참조하여 일 측면에 따른 대화 시스템 및 그 제어 방법에 관한 실시예를 상세하게 설명하도록 한다.
일 실시예에 따른 대화 시스템은 사용자의 음성 및 음성 외 입력을 이용하여 사용자의 의도를 파악하고 사용자의 의도에 적합한 서비스를 제공하거나, 사용자의 입력이 없더라도 사용자에게 필요한 서비스를 스스로 판단하여 제공하는 장치이다.
일 실시예에 따른 대화 시스템이 제공 가능한 서비스에는 메시지 전송이 포함될 수 있다. 여기서, 메시지 전송은 문자 메시지 전송과 음성 메시지 전송을 모두 포함할 수 있으나, 후술하는 실시예에서는 구체적인 설명을 위해 문자 메시지 전송의 경우를 예로 들어 설명하기로 한다.
도 1 은 일 실시예에 따른 대화 시스템의 제어 블록도이다.
도 1을 참조하면, 일 실시예에 따른 대화 시스템(100)은 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 관계 정보를 저장하는 저장부(140); 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 입력되면, 메시지 내용과 연관된 상황 정보를 수집하는 입력 처리기(110); 관계 정보에 기초하여 사용자와 수신자 사이의 관계를 판단하고, 사용자와 수신자 사이의 관계를 반영하여 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 대화 관리기(120); 및 사용자와 수신자 사이의 관계, 메시지 내용 및 의미 표현에 기초하여 수신자에게 전송할 메시지를 생성하는 결과 처리기(130)를 포함한다.
저장부(140)는 플래시 메모리, 롬(Read Only Memory), 이피롬(Erasable Programmable Read Only Memory: EPROM), 이이피롬(Electrically Erasable Programmable Read Only Memory: EEPROM) 등의 비휘발성 메모리 중 적어도 하나를 포함할 수 있고, 램(Random Access Memory, RAM), S램(Static Random Access Memory, S-RAM), D램(Dynamic Random Access Memory, D-RAM) 등의 휘발성 메모리 중 적어도 하나를 더 포함하는 것도 가능하다.
입력 처리기(110), 대화 관리기(120) 및 결과 처리기(130)는 전술한 동작 및 후술하는 동작을 수행하는 프로그램이 저장된 적어도 하나의 메모리 및 저장된 프로그램을 실행하는 적어도 하나의 프로세서를 포함할 수 있다. 따라서, 전술한 동작 및 후술하는 동작을 수행하는 프로그램이 저장된 적어도 하나의 메모리 및 저장된 프로그램을 실행하는 적어도 하나의 프로세서를 포함하는 전자 장치는, 대화 시스템이라 지칭되지 않더라도 일 실시예에 따른 대화 시스템(100)의 권리 범위에 포함될 수 있다.
또한, 입력 처리기(110), 대화 관리기(120) 및 결과 처리기(130)가 메모리나 프로세서를 공유하는 것도 가능하고, 각각 별도의 메모리와 프로세서를 사용하는 것도 가능하다.
대화 시스템(100)에 복수의 메모리와 복수의 프로세서가 포함되는 경우에는 이들이 하나의 칩 상에 집적되는 것도 가능하고, 물리적으로 분리된 위치에 마련되는 것도 가능하다.
또한, 입력 처리기(110), 대화 관리기(120), 결과 처리기(130) 및 저장부(140)가 서비스 제공자 측 서버에 마련될 수도 있고, 대화 서비스의 제공 매체인 차량, 가전기기, 스마트폰, 인공지능 스피커 등의 사용자 측 단말에 마련될 수도 있다. 전자의 경우, 사용자 측 단말에 마련된 마이크에 사용자의 발화가 입력되면, 사용자 측 단말은 사용자의 발화를 음성 신호로 변환하여 서비스 제공자 측 서버에 전송한다.
또한, 사용자 측 단말의 메모리 용량 및 프로세서 처리 성능에 따라 입력 처리기(110), 대화 관리기(120) 및 결과 처리기(130)의 동작 일부는 사용자 측 단말에서 수행되고, 나머지 일부는 서비스 제공자 측 서버에서 수행되는 것도 가능하다.
후술하는 실시예에서는 구체적인 설명을 위해 사용자가 차량의 운전자이고, 사용자 측 단말이 차량이거나 차량에 연결된 스마트폰 등의 모바일 기기인 경우를 예로 들어 설명하기로 한다.
도 2는 일 실시예에 따른 대화 시스템에 있어서, 입력 처리기의 구성이 구체화된 제어 블록도이다.
도 2를 참조하면, 입력 처리기(110)는 음성 입력을 처리하는 음성 입력 처리기(111) 및 상황 정보를 처리하는 상황 정보 처리기(112)를 포함할 수 있다.
사용자 측 단말의 마이크를 통해 입력된 사용자 음성은 음성 입력 처리기(111)로 전달되고, 사용자 측 단말이 센서를 이용하여 측정하거나 외부 서버와 통신하여 획득한 상황 정보는 상황 정보 처리기(112)로 전달된다.
음성 입력 처리기(111)는 입력된 사용자 음성을 인식하여 텍스트 형태의 발화문으로 출력하는 음성 인식기와 발화문에 대해 자연어 이해 기술(Natural Language Understanding)을 적용하여 발화문이 내포하는 사용자의 의도를 파악하는 자연어 이해기를 포함할 수 있다.
음성 인식기는 음성 인식 엔진(speech recognition engine)을 포함하고, 음성 인식 엔진은 입력된 음성에 음성 인식 알고리즘을 적용하여 사용자가 발화한 음성을 인식하고, 인식 결과를 생성할 수 있다.
음성 인식기의 인식 결과인 텍스트 형태의 발화문은 자연어 이해기로 입력된다.
자연어 이해기는 자연어 이해 기술을 적용하여 발화문에 내포된 사용자의 의도를 파악할 수 있다.
먼저, 자연어 이해기는 텍스트 형태의 발화문에 대해 형태소 분석을 수행하여 입력 문자열을 형태소열로 바꿔준다. 또한, 자연어 이해기는 발화문으로부터 개체명을 인식할 수 있다. 개체명은 인명, 지명, 조직명, 시간, 날짜, 화폐 등의 고유 명사로서, 개체명 인식은 문장에서 개체명을 식별하고 식별된 개체명의 종류를 결정하는 작업이다. 개체명 인식을 통해 문장에서 중요한 키워드를 추출하여 문장의 의미를 파악할 수 있다.
자연어 이해기는 발화문으로부터 도메인을 추출할 수 있다. 도메인은 사용자가 발화한 언어의 주제를 식별할 수 있는 것으로서, 예를 들어, 문자, 내비게이션, 일정, 날씨, 교통, 차량 제어 등의 다양한 주제를 나타내는 도메인이 데이터베이스화 되어 저장부(140)에 저장될 수 있다.
자연어 이해기는 발화문이 갖는 화행을 분석할 수 있다. 화행 분석은 발화문이 갖는 의도를 분석하는 작업으로, 사용자가 질문을 하는 것인지, 요청을 하는 것인지, 응답을 하는 것인지, 단순한 감정 표현을 하는 것인지 등의 발화의 의도를 파악하는 것이다.
자연어 이해기는 발화문에 대응되는 도메인, 개체명, 화행 등의 정보에 기초하여 사용자의 발화 의도를 파악하고, 발화 의도에 대응되는 액션을 추출할 수 있다. 액션은 오브젝트(Object)와 오퍼레이터(Operator)에 의해 정의될 수 있다.
또한, 자연어 이해기는 액션 수행과 관련된 인자를 추출하는 것도 가능하다. 액션 수행과 관련된 인자는 액션을 수행하는데 직접적으로 필요한 유효 인자일 수도 있고, 이러한 유효 인자를 추출하기 위해 사용되는 비유효 인자일 수도 있다.
예를 들어, 음성 인식기가 출력한 발화문이 "길동이에게 문자 보내줘"인 경우에, 자연어 이해기는 발화문에 대응되는 도메인을 『문자』로 결정하고, 액션을 『문자 전송』으로 결정할 수 있다. 화행은 『요청』에 해당한다.
개체명인 『길동이』는 액션 수행과 관련된 [인자1: 수신자]에 해당하나, 실제 문자 전송을 위해서는 [인자2: 구체적인 메시지 내용]이 더 필요하다. 이 경우, 대화 시스템(100)이 시스템 발화 "전송할 메시지를 말씀해주세요"를 출력하여 사용자로부터 구체적인 메시지 내용을 획득할 수 있다.
일 실시예에 따른 대화 시스템(100)은 단순히 사용자가 요청한 메시지 내용을 그대로 전송하는 것이 아니라, 사용자와 수신자의 관계와 상황 정보까지 고려하여 메시지를 전송함으로써 사용자의 의도가 충분히 반영된 서비스를 제공할 수 있다.
이를 위해, 상황 정보 처리기(112)는 사용자가 발화한 메시지 내용과 관련 있는 상황 정보를 수집할 수 있다. 예를 들어, 사용자가 발화한 메시지 내용과 관련 있는 상황 정보는 교통 상황, 날씨, 현재 위치, 도착 시간, 일정, 차량 상태 등의 정보가 될 수 있다.
한편, 저장부(140)는 저장되는 데이터의 중요성이나 영속성 및 설계자의 의도에 따라 단기 메모리(141)와 장기 메모리(142)에 구분하여 저장할 수 있다.
단기 메모리(141)에는 현재 시점으로부터 기준 시간 이내에 측정된 각종 센서 값, 현재 시점으로부터 기준 시간 이내에 수행한 대화 내용, 현재 시점으로부터 기준 시간 이내에 외부 서버로부터 제공받은 정보, 사용자가 등록한 일정 등이 저장될 수 있다.
장기 메모리(142)에는 연락처, 특정 주제에 대한 사용자의 선호도 등이 저장될 수 있고, 단기 메모리(141)에 저장된 데이터를 가공하여 새롭게 획득된 정보 등이 저장될 수도 있다.
사용자의 메시지 내역, 통화 내역, 및 소셜 미디어 작성 내역 등 사용자와 다른 사람 사이의 관계를 나타내는 관계 정보는 단기 메모리(141)에 저장될 수도 있고, 장기 메모리(142)에 저장될 수도 있다. 예를 들어, 현재 시점으로부터 기준 시간 이내에 축적된 메시지 내역, 통화 내역, 소셜 미디어 작성 내역을 단기 메모리(141)에 저장하고, 기준 시간이 경과한 내역을 자동으로 삭제할 수 있다. 또는, 시점에 관계 없이 메시지 내역, 통화 내역 및 소셜 미디어 작성 내역이 모두 장기 메모리(142)에 저장되는 것도 가능하다.
예를 들어, 음성 입력 처리기(111)가 판단한 메시지 내용이 약속시간에 늦는다는 내용인 경우, 상황 정보 처리기(112)는 현재 위치, 교통 상황, 도착 시간, 차량 상태 등의 정보를 수집할 수 있다. 해당 정보가 단기 메모리(141)에 이미 저장되어 있는 경우에는, 단기 메모리(141)에서 해당 정보를 가져올 수 있고, 해당 정보가 아직 단기 메모리(141)에 저장되어 있지 않은 경우에는, 외부 서버, 차량 센서 등에 필요한 정보를 요청하여 가져올 수 있다.
다른 예로, 음성 입력 처리기(111)가 판단한 메시지 내용이 새로운 약속을 정하기 위한 내용인 경우, 상황 정보 처리기(112)는 사용자의 일정과 집주소, 수신자의 집주소, 지도 정보, 사용자가 선호하는 장소에 대한 POI 등의 정보를 수집할 수 있다. 해당 정보가 단기 메모리(141)에 이미 저장되어 있는 경우에는 단기 메모리(141)에서 해당 정보를 가져올 수 있고, 해당 정보가 아직 단기 메모리(141)에 저장되지 않은 경우에는 외부 서버에 필요한 정보를 요청하여 가져올 수 있다.
입력 처리기(110)는 자연어 이해 결과인 텍스트, 도메인, 액션, 인자 및 메시지 내용과 연관된 상황 정보를 대화 관리기(120)에 전달할 수 있다.
도 3은 일 실시예에 따른 대화 시스템에 있어서, 대화 관리기의 구성이 구체화된 제어 블록도이고, 도 4 및 도 5는 일 실시예에 따른 대화 시스템에 있어서, 저장부에 저장되는 메시지의 특성을 나타내는 예시이다.
도 3을 참조하면, 대화 관리기(120)는 대화 또는 액션을 생성, 삭제, 업데이트하여 대화의 흐름을 관리하는 대화 흐름 관리기(121), 사용자와 수신자 사이의 관계를 분석하는 관계 분석기(122) 및 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 의미 표현 생성기(123)를 포함할 수 있다.
대화 흐름 관리기(121)는 입력 처리기(110)로부터 전달된 액션에 대응되는 대화 태스크 또는 액션 태스크가 이미 생성되었는지 여부를 판단할 수 있다. 입력 처리기(110)로부터 전달된 액션에 대응되는 대화 태스크 또는 액션 태스크가 이미 생성되어 있다면, 이미 생성된 태스크에서 수행된 대화나 액션을 참조하여 이후 대화나 액션을 이어나갈 수 있고, 입력 처리기(110)로부터 전달된 액션에 대응되는 대화 태스크 또는 액션 태스크가 존재하지 않는다면 이를 새로 생성할 수 있다.
관계 분석기(122)는 저장부(140)에 저장된 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 관계 정보에 기초하여 사용자와 수신자 사이의 관계를 분석할 수 있다. 여기서, 사용자와 수신자 사이의 관계는 사회적 관계와 감정적 관계를 포함할 수 있다.
사회적 관계는 친구, 직장 상사, 직장 후배, 학교 선배, 학교 후배, 학부모, 부모, 조부모, 자녀, 친척 등 직업, 혈연, 학연 등에 의해 정해지는 관계를 의미하고, 감정적 관계는 상대방에 대한 호감도 또는 상대방과의 친밀도 등에 의해 정해지는 관계를 의미할 수 있다.
예를 들어, 수신자가 "팀장님"인 경우에, 사회적 관계는 『직장 상사』이고, 감정적 관계는 『호감 & 친밀』일 수도 있고, 『비호감 & 친밀』일 수도 있으며, 『비호감 & 어색』이거나, 『호감 & 어색』일 수도 있다.
사회적 관계는 수신자를 지칭하는 호칭에 의해 결정될 수도 있고, 연락처에 기초하여 결정될 수도 있으며, 호칭이나 연락처에 의해서도 결정될 수 없는 경우에는 메시지 내역, 통화 내역, 소셜 미디어 작성 내역 등의 관계 정보에 기초하여 결정될 수도 있다.
감정적 관계 역시 연락처, 메시지 내역, 통화 내역, 소셜 미디어 작성 내역 등의 관계 정보에 기초하여 결정될 수 있다. 예를 들어, 수신자가 "팀장님"인 경우에 연락처에 "마녀 김팀장"이라고 저장되었으면, 수신자에 대한 감정적 관계는 『비호감』일 수 있다. 또한, 사용자가 해당 수신자와 주고 받은 메시지 내역이나 통화 내역을 분석하여 둘 사이의 관계가 친밀한지 어색한지 여부도 판단할 수 있다.
다른 예로, 수신자가 "홍길동"인 경우, "홍길동"이 연락처의 친구 그룹에 저장되어 있으면, 수신자를 사용자의 『친구』로 결정할 수 있고, 둘 사이에 주고 받은 메시지 내역이나 통화 내역 등을 분석하여 둘 사이의 관계가 친밀한지 어색한지 여부와 호감인지 비호감인지 여부를 판단할 수 있다. 또한, 둘 사이의 대화 내역 뿐만 아니라 다른 사람과의 대화 내역을 분석하여 사용자와 홍길동이 친밀한지 어색한지, 사용자가 홍길동에 대해 갖는 감정이 호감인지 비호감인지 여부를 판단할 수도 있다.
의미 표현 생성기(123)는 상황 정보를 문장으로 변환하기 위한 의미 표현(meaning representation)을 생성한다. 대화 처리에서의 의미 표현이란, 자연어 이해의 결과일 수도 있고, 자연어 생성의 입력일 수도 있다. 예를 들어, 입력 처리기(110)는 사용자의 발화를 분석하여 사용자의 의도를 표현하는 의미 표현을 생성할 수 있고, 대화 관리기(120)는 대화 흐름과 상황을 고려하여 다음 시스템 발화에 해당하는 의미 표현을 생성할 수 있다. 결과 처리기(130)는 대화 관리기(120)에서 출력된 의미 표현에 기초하여 시스템이 발화할 문장을 생성할 수 있다.
저장부(140)는 사용자가 상황 별로 주고 받은 메시지의 특성을 매칭시켜 저장할 수 있다. 이를 메시지 특성 DB라 한다. 메시지의 특성은 화행 및 말투 중 적어도 하나를 포함할 수 있고, 말투에는 존댓말과 반말의 사용 여부, 이모티콘 사용 여부, o 받침 사용 여부, 의성어 사용 여부 등이 포함될 수 있다. 예를 들어, 사용자의 과거 대화 이력을 기초로 하여 사용자가 약속 시간에 늦고, 길이 막히는 상황에서 이모티콘이나 의성어를 사용하는지 여부 등이 저장될 수 있다. 여기서의 상황은 사용자가 메시지를 주고 받을 당시에 처한 상황으로서, 메시지 내용에 의해 결정될 수도 있고, 메시지 내용과 연관된 상황 정보에 의해 결정될 수도 있다.
또한, 도 4에 도시된 바와 같이, 메시지의 특성은 상황 뿐만 아니라 사용자의 감정 상태에 따라서도 구분하여 저장될 수 있다. 예를 들어, 약속 시간에 늦고, 길이 막히는 동일한 상황에서도 사용자의 감정 상태가 화남인지, 초조함인지, 느긋함인지, 슬픔인지, 미안함인지, 즐거움인지 등에 따라 메시지의 특성이 다르게 저장될 수 있다.
사용자의 감정 상태는 사용자의 생체 신호를 측정하는 센서의 출력값을 이용하여 판단할 수도 있고, 사용자의 발화에 포함된 목소리 톤, 말투, 발화 내용 등을 분석하여 판단할 수도 있다. 사용자의 감정 상태를 판단하는 방법에 대해서는 제한을 두지 않는다.
의미 표현 생성기(123)는 현재 상황 및 사용자의 현재 감정 상태에 매칭된 메시지 특성을 검색하고, 검색된 메시지 특성을 이용하여 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성할 수 있다.
또한, 도 5에 도시된 바와 같이, 메시지의 특성이 상황과 사용자와 수신자 사이의 감정적 관계에 따라서 구분하여 저장되는 것도 가능하다. 예를 들어, 약속 시간에 늦고, 길이 막히는 상황에서 사용자와 수신자 사이의 친밀도나 호감 여부에 따라 말투나 이모티콘 사용 여부 등이 다르게 저장될 수 있다.
의미 표현 생성기(123)는 현재 상황 및 사용자와 수신자 사이의 감정적 관계에 매칭된 메시지 특성을 검색하고, 검색된 메시지 특성을 이용하여 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성할 수 있다.
또한, 메시지의 특성이 상황, 사용자와 수신자 사이의 감정적 관계 및 사용자의 감정 상태에 각각 매칭되어 저장되는 것도 가능하다.
이러한 메시지의 특성은 상황 정보를 나타내는 문장 뿐만 아니라, 사용자가 발화한 메시지 내용에도 반영될 수 있다. 예를 들어, 사용자가 "길동이에게 좀 늦는다고 문자 보내줘"라고 발화한 경우, "좀 늦는다"는 의미가 포함되는 문장을 생성함에 있어서 전술한 메시지의 특성이 반영될 수 있다. 또한, 사용자가 메시지 내용을 묻는 시스템 발화에 대한 응답으로 "좀 늦어"라고 발화한 경우에도, 문자 그대로 "좀 늦어"라고 전송하는 것이 아니라 전술한 메시지의 특성을 반영하여 변형된 문자를 전송할 수 있다.
한편, 관계 분석기(122)의 출력 역시 의미 표현으로 볼 수 있는바, 사용자와 수신자 사이의 사회적 관계 및 감정적 관계를 나타내는 의미 표현과 의미 표현 생성기(123)의 출력인, 메시지 내용과 연관된 상황 정보와 메시지 특성을 나타내는 의미 표현은 결과 처리기(130)로 전달될 수 있다.
도 6은 일 실시예에 따른 대화 시스템에 있어서, 결과 처리기의 구성이 구체화된 제어 블록도이다.
도 6을 참조하면, 결과 처리기(130)는 대화 관리기(120)로부터 입력된 액션을 수행하기 위해 필요한 응답의 생성을 관리하는 응답 생성 관리기(131), 응답 생성 관리기(131)의 요청에 따라 텍스트 응답, 이미지 응답 또는 오디오 응답을 생성하는 대화 응답 생성기(132) 및 응답 생성 관리기(131)의 요청에 따라 액션 수행을 위해 필요한 명령어를 생성하는 명령어 생성기(133)를 포함할 수 있다.
대화 관리기(120)로부터 액션에 관련된 정보, 예를 들어, [액션: 문자 전송], [액션 인자1: 수신자], [액션 인자2: 메시지 내용]과 함께, 상황 정보를 문장으로 변환하기 위한 의미 표현이 전달되면, 대화 응답 생성기(132)는 전달된 정보에 부합하는 메시지를 생성하고, 명령어 생성기(133)는 메시지를 전송하기 위한 명령어를 생성할 수 있다.
대화 응답 생성기(132)가 메시지를 생성할 때 응답 템플릿을 참조할 수도 잇고 규칙을 기반으로 생성할 수도 있다.
또한, 대화 응답 생성기(132)는 메시지를 전송하기 전에 사용자에게 확인을 받기 위한 대화 응답을 생성할 수 있다. 대화 응답 생성기(132)가 대화 응답을 생성할 때에도 저장부(140)에 저장된 응답 템플릿을 참조할 수도 있고, 규칙을 기반으로 할 수도 있다.
도 7은 일 실시예에 따른 대화 시스템이 사용자와 주고 받는 대화의 예시를 나타낸 도면이고, 도 8은 도 7의 예시에서 의미 표현 생성기가 생성하는 의미 표현을 나타낸 도면이다.
도 7의 예시를 참조하면, 사용자가 "문자 보내줘"라고 발화하게 되면, 음성 입력 처리기(111)는 음성 인식 및 자연어 이해의 과정을 거쳐 [도메인: 문자], [액션: 문자 전송]인 것을 판단할 수 있다. 그러나, 문자 전송 액션을 수행하기 위한 필수 인자인 수신자와 메시지 내용이 누락되었는바, 대화 응답 생성기(132)는 사용자 발화에 대한 응답으로 수신자를 확인하기 위한 시스템 발화 "누구에게 보낼까요?"를 출력할 수 있다.
사용자가 수신자의 이름 "길동이"를 발화하면, 관계 분석기(122)는 저장부(140)에 저장된 관계 정보에 기초하여 사용자와 길동이 사이의 사회적 관계 및 감정적 관계를 판단할 수 있다.
대화 응답 생성기(132)는 메시지 내용을 확인하기 위한 시스템 발화 "전송할 메시지를 말씀해주세요"를 출력할 수 있다.
사용자가 메시지 내용 "좀 늦을 것 같아"를 발화하면, 상황 정보 처리기(112)는 메시지 내용과 연관된 상황 정보인 현재 위치, 교통 상황, 도착 시간 등을 수집할 수 있다.
관계 분석기(122)가 사용자와 길동이 사이의 사회적 관계를 『친구』로, 감정적 관계를 『친밀 & 호감』으로 판단하고, 전술한 도 5의 메시지 특성 DB에 현재 상황과 감정적 관계에 대응되는 메시지 특성이 『이모티콘 사용 & ㅇ 받침 사용 & 반말』로 저장된 경우, 의미 표현 생성기(123)가 생성하는 의미 표현은 도 8에 도시된 바와 같다.
도 8을 참조하면, 의미 표현 생성기(123)가 생성하는 의미 표현은 [현재 위치: oo근처], [교통 정보: 정체 + xx 사거리 접촉사고], [화행: 정보 전달], [도착 예정 시간: 20분 이후], [말투: o받침 사용 & 반말 & 이모티콘 사용]이 될 수 있다.
대화 관리기(120)는 [액션: 문자 전송], [수신자: 길동이], [사용자가 발화한 메시지 내용: 좀 늦을 것 같아], [사회적 관계: 친구], [감정적 관계: 친밀 & 호감] 등의 의미 표현과 함께 도 8에 도시된 의미 표현을 결과 처리기(130)에 전달할 수 있다.
결과 처리기(130)의 대화 응답 생성기(131)는 응답 템플릿을 참조하거나 규칙을 기반으로 하여, 전달된 의미 표현에 대응되는 메시지를 생성할 수 있다. 예를 들어, 생성된 메시지는 "지금 oo근처인뎅, xx사거리에서 접촉 사고가 나서 길이 무지 막혀. 좀 늦을 것 같앙 ㅜㅜ"가 될 수 있다.
또한, 대화 응답 생성기(132)는 생성된 메시지를 전송할 지 여부에 대한 확인을 받기 위한 시스템 발화로 "길동이에게 '지금 oo근처인뎅, xx사거리에서 접촉 사고가 나서 길이 무지 막혀. 좀 늦을 것 같앙 ㅜㅜ'라고 문자를 보낼까요?"를 출력할 수 있다.
사용자가 수락의 의미로 "응 그래"를 발화하면, 명령어 생성기(133)는 길동이에게 "지금 oo근처인뎅, xx사거리에서 접촉 사고가 나서 길이 무지 막혀. 좀 늦을 것 같앙 ㅜㅜ"라고 문자를 보내기 위한 명령어를 생성하고, 생성된 명령어에 따라 문자를 보낼 수 있다.
이하, 대화 시스템의 제어 방법에 관한 실시예를 설명한다. 일 실시예에 따른 대화 시스템의 제어 방법을 수행할 때 전술한 실시예에 따른 대화 시스템(100)이 사용될 수 있다. 따라서, 앞서 도 1 내지 도 8을 참조하여 설명한 대화 시스템(100)에 관한 내용은 별도의 언급이 없더라도 대화 시스템의 제어 방법에 적용될 수 있다.
도 9는 일 실시예에 따른 대화 시스템의 제어 방법의 순서도이다.
도 9를 참조하면, 일 실시예에 따른 대화 시스템의 제어 방법은 사용자로부터 메시지 전송 요청을 수신하고(210), 메시지 내용과 연관된 상황 정보를 수집하고(211), 사용자와 수신자 사이의 관계를 판단하고(212), 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하고(213), 수신자에게 전송할 메시지를 생성(214)하는 것을 포함한다.
사용자는 사용자 측 단말에 마련된 마이크에 메시지 전송을 요청하기 위한 발화를 입력할 수 있다. 메시지 전송을 요청하기 위한 발화에는 수신자와 메시지 내용이 포함될 수 있고, 수신자와 메시지 내용은 한 번에 발화될 수도 있고 단계 별로 발화될 수도 있다.
메시지 내용과 연관된 상황 정보는 현재 위치, 교통 상황, 도착 시간, 차량 상태, 사용자의 일정, 수신자의 집주소, 지도 정보, POI 등의 정보를 포함할 수 있다. 이러한 정보가 이미 획득되어 단기 메모리(141)나 장기 메모리(142)에 저장되어 있는 경우에는, 필요한 정보를 단기 메모리(141)나 장기 메모리(142)로부터 가져올 수 있고, 아직 획득되지 않은 경우에는 외부 서버나 차량 센서 등에 필요한 정보를 요청할 수 있다.
사용자와 수신자 사이의 관계는 사회적 관계와 감정적 관계를 포함할 수 있다. 사회적 관계는 수신자를 지칭하는 호칭에 의해 결정될 수도 있고, 연락처에 기초하여 결정될 수도 있으며, 호칭이나 연락처에 의해서도 결정될 수 없는 경우에는 메시지 내역, 통화 내역, 소셜 미디어 작성 내역 등의 관계 정보에 기초하여 결정될 수도 있다. 감정적 관계 역시 연락처, 메시지 내역, 통화 내역, 소셜 미디어 작성 내역 등의 관계 정보에 기초하여 결정될 수 있다.
한편, 일 실시예에 따른 대화 시스템의 제어 방법에 의하면, 사용자가 상황 별로 주고 받은 메시지의 특성이 데이터베이스화되어 저장될 수 있다. 이 때, 메시지 특성이 상황 뿐만 아니라 수신자와의 감정적 관계에 따라서도 구분될 수 있다. 따라서, 일 실시예에 따른 대화 시스템의 제어 방법은, 사용자와 수신자의 감정적 관계 및 상황 별로 사용자가 전송한 메시지의 특성을 매칭시켜 저장하는 것을 더 포함할 수 있고, 의미 표현을 생성하는 것(213)은, 212 단계에서 판단된 사용자와 수신자 사이의 감정적 관계 및 현재 상황에 매칭된 메시지의 특성을 메시지 특성 DB에서 검색하고, 검색된 메시지의 특성을 이용하여 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 것을 포함할 수 있다.
또한, 의미 표현을 생성함에 있어서, 사용자의 감정 상태를 반영하는 것도 가능하다. 이를 위해, 사용자와 수신자 사이의 감정적 관계, 사용자의 감정 상태 및 상황 별로 메시지의 특성을 매칭시켜 저장할 수 있다. 사용자의 현재 감정 상태를 획득하면, 212 단계에서 판단된 사용자와 수신자 사이의 감정적 관계, 현재 상황 및 사용자의 현재 감정 상태에 매칭된 메시지의 특성을 메시지 특성 DB에서 검색하고, 검색된 메시지의 특성을 이용하여 의미 표현을 생성할 수 있다.
전술한 대화 시스템 및 그 제어 방법에 의하면, 사용자가 대화 시스템(100)에 문자의 전송을 요청했을 때 사용자가 발화한 메시지 내용 뿐만 아니라 메시지 내용과 연관된 상황 정보를 함께 전송하고, 사용자와 수신자 사이의 사회적 관계와 감정적 관계를 고려하여 결정된 말투에 따라 메시지를 전송함으로써 사용자의 의도를 충실히 반영한 자연스러운 메시지를 전송할 수 있게 된다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안된다.
100: 대화 시스템
110: 입력 처리기
120: 대화 관리기
130: 결과 처리기
140: 저장부

Claims (17)

  1. 관계 정보를 저장하는 저장부;
    상기 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 입력되면, 상기 메시지 내용과 연관된 상황 정보를 수집하는 입력 처리기;
    상기 관계 정보에 기초하여 상기 사용자와 상기 수신자 사이의 관계를 판단하고, 상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 대화 관리기; 및
    상기 사용자와 상기 수신자 사이의 관계, 상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 결과 처리기;를 포함하는 대화 시스템.
  2. 제 1 항에 있어서,
    상기 사용자와 상기 수신자 사이의 관계는,
    사회적 관계 및 감정적 관계를 포함하는 대화 시스템.
  3. 제 2 항에 있어서,
    상기 저장부는,
    상기 사용자와 수신자의 감정적 관계 및 상황 별로 상기 사용자가 전송한 메시지의 특성이 매칭된 메시지 특성 DB를 저장하는 대화 시스템.
  4. 제 2 항에 있어서,
    상기 대화 관리기는,
    상기 메시지 특성 DB에 기초하여 상기 의미 표현을 생성하는 대화 시스템.
  5. 제 3 항에 있어서,
    상기 메시지의 특성은,
    화행 및 말투 중 적어도 하나를 포함하는 대화 시스템.
  6. 제 1 항에 있어서,
    상기 대화 관리기는,
    상기 사용자의 감정 상태를 획득하고,
    상기 사용자와 상기 수신자 사이의 관계 및 상기 사용자의 감정 상태를 반영하여 상기 의미 표현을 생성하는 대화 시스템.
  7. 제 6 항에 있어서,
    상기 저장부는,
    상기 사용자와 수신자의 감정적 관계, 상기 사용자의 감정 상태 및 상황 별로 상기 사용자가 전송한 메시지의 특성이 매칭된 메시지 특성 DB를 저장하고,
    상기 대화 관리기는,
    상기 메시지 특성 DB에 기초하여 상기 의미 표현을 생성하는 대화 시스템.
  8. 제 1 항에 있어서,
    상기 관계정보는,
    상기 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 대화 시스템.
  9. 사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화를 수신하고;
    상기 메시지 내용과 연관된 상황 정보를 수집하고;
    상기 사용자와 상기 수신자 사이의 관계를 판단하고;
    상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하고;
    상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  10. 제 8 항에 있어서,
    상기 사용자와 상기 수신자 사이의 관계를 판단하는 것은,
    상기 사용자의 메시지 내역, 통화 내역, 연락처 및 소셜 미디어 작성 내역 중 적어도 하나를 포함하는 관계 정보에 기초하여 상기 사용자와 상기 수신자 사이의 사회적 관계 및 감정적 관계를 판단하는 것;을 포함하는 대화 시스템의 제어 방법.
  11. 제 10 항에 있어서,
    상기 사용자와 수신자의 감정적 관계 및 상황 별로 상기 사용자가 전송한 메시지의 특성을 매칭시켜 저장하는 것;을 더 포함하는 대화 시스템의 제어 방법.
  12. 제 11 항에 있어서,
    상기 의미 표현을 생성하는 것은,
    상기 판단된 감정적 관계 및 현재 상황에 매칭된 메시지의 특성을 검색하고;
    상기 검색된 메시지의 특성을 이용하여 상기 의미 표현을 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  13. 제 9 항에 있어서,
    상기 사용자의 감정 상태를 획득하는 것;을 더 포함하는 대화 시스템의 제어 방법.
  14. 제 13 항에 있어서,
    상기 의미 표현을 생성하는 것은,
    상기 사용자와 상기 수신자 사이의 관계 및 상기 사용자의 감정 상태를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  15. 제 14 항에 있어서,
    상기 사용자와 수신자의 감정적 관계, 상기 사용자의 감정 상태 및 상황 별로 상기 사용자가 전송한 메시지의 특성을 매칭시켜 저장하는 것;을 더 포함하는 대화 시스템의 제어 방법.
  16. 제 15 항에 있어서,
    상기 의미 표현을 생성하는 것은,
    상기 판단된 감정적 관계, 상기 획득된 감정 상태 및 현재 상황에 매칭된 메시지의 특성을 검색하고;
    상기 검색된 메시지의 특성을 이용하여 상기 의미 표현을 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  17. 하나 이상의 프로그램이 저장되는 메모리; 및
    상기 저장된 프로그램을 실행하는 프로세서;를 포함하고,
    상기 프로그램은,
    사용자로부터 메시지 수신자 및 메시지 내용을 포함하는 발화가 수신되면, 상기 메시지 내용과 연관된 상황 정보를 수집하고;
    상기 사용자와 상기 수신자 사이의 관계를 판단하고;
    상기 사용자와 상기 수신자 사이의 관계를 반영하여 상기 상황 정보를 문장으로 변환하기 위한 의미 표현을 생성하고;
    상기 메시지 내용 및 상기 의미 표현에 기초하여 상기 수신자에게 전송할 메시지를 생성하는 것;을 포함하는 전자 장치
KR1020190041352A 2019-04-09 2019-04-09 대화 시스템, 전자장치 및 대화 시스템의 제어 방법 KR20200119035A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190041352A KR20200119035A (ko) 2019-04-09 2019-04-09 대화 시스템, 전자장치 및 대화 시스템의 제어 방법
US16/697,495 US20200327888A1 (en) 2019-04-09 2019-11-27 Dialogue system, electronic apparatus and method for controlling the dialogue system
DE102019218918.0A DE102019218918A1 (de) 2019-04-09 2019-12-05 Dialogsystem, elektronisches gerät und verfahren zur steuerung des dialogsystems
CN201911231730.1A CN111797208A (zh) 2019-04-09 2019-12-05 对话系统,电子设备和用于控制对话系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190041352A KR20200119035A (ko) 2019-04-09 2019-04-09 대화 시스템, 전자장치 및 대화 시스템의 제어 방법

Publications (1)

Publication Number Publication Date
KR20200119035A true KR20200119035A (ko) 2020-10-19

Family

ID=72613036

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190041352A KR20200119035A (ko) 2019-04-09 2019-04-09 대화 시스템, 전자장치 및 대화 시스템의 제어 방법

Country Status (4)

Country Link
US (1) US20200327888A1 (ko)
KR (1) KR20200119035A (ko)
CN (1) CN111797208A (ko)
DE (1) DE102019218918A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022114701A1 (ko) * 2020-11-25 2022-06-02 삼성전자 주식회사 사용자 입력에 대한 응답을 생성하는 전자 장치 및 그 동작 방법
KR102690789B1 (ko) * 2023-10-25 2024-08-05 주식회사 후아 가족 관계를 고려한 대화형 일정 관리 장치

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4181120A4 (en) * 2020-11-25 2024-01-10 Samsung Electronics Co., Ltd. ELECTRONIC DEVICE FOR GENERATING A RESPONSE TO A USER INPUTION AND OPERATING METHOD THEREFOR

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925708B2 (en) * 2008-01-04 2011-04-12 Yahoo! Inc. System and method for delivery of augmented messages
US8386506B2 (en) * 2008-08-21 2013-02-26 Yahoo! Inc. System and method for context enhanced messaging
CN102036198A (zh) * 2009-09-24 2011-04-27 北京安捷乐通信技术有限公司 一种在短信内容中增加附加信息的方法及装置
US8588825B2 (en) * 2010-05-25 2013-11-19 Sony Corporation Text enhancement
FR2965436B1 (fr) * 2010-09-28 2014-06-27 Paycool Int Ltd Procede d'enrichissement d'un message vocal par une information complementaire non vocale
KR20130077428A (ko) * 2011-12-29 2013-07-09 한국인터넷진흥원 모바일 클라우드 사용자 접속 상황 정보 수집 시스템 및 방법
WO2013103978A2 (en) * 2012-01-05 2013-07-11 Glympse Inc. Systems and methods for mobile communication integration
US9705829B2 (en) * 2012-12-07 2017-07-11 Linkedin Corporation Communication systems and methods
CN106201161B (zh) * 2014-09-23 2021-09-03 北京三星通信技术研究有限公司 电子设备的显示方法及系统
KR102341144B1 (ko) * 2015-06-01 2021-12-21 삼성전자주식회사 메시지를 출력하는 전자 장치 및 그 제어 방법
CN107493353A (zh) * 2017-10-11 2017-12-19 宁波感微知著机器人科技有限公司 一种基于上下文信息的智能机器人云计算方法
US10791067B1 (en) * 2019-03-04 2020-09-29 International Business Machines Corporation Cognitive message response assistant

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022114701A1 (ko) * 2020-11-25 2022-06-02 삼성전자 주식회사 사용자 입력에 대한 응답을 생성하는 전자 장치 및 그 동작 방법
KR102690789B1 (ko) * 2023-10-25 2024-08-05 주식회사 후아 가족 관계를 고려한 대화형 일정 관리 장치

Also Published As

Publication number Publication date
US20200327888A1 (en) 2020-10-15
CN111797208A (zh) 2020-10-20
DE102019218918A1 (de) 2020-10-15

Similar Documents

Publication Publication Date Title
US10733983B2 (en) Parameter collection and automatic dialog generation in dialog systems
US20220221959A1 (en) Annotations in software applications for invoking dialog system functions
CN107657017B (zh) 用于提供语音服务的方法和装置
US11574637B1 (en) Spoken language understanding models
US20110172989A1 (en) Intelligent and parsimonious message engine
CN111261151B (zh) 一种语音处理方法、装置、电子设备及存储介质
JP7230806B2 (ja) 情報処理装置、及び情報処理方法
US11615787B2 (en) Dialogue system and method of controlling the same
KR20200119035A (ko) 대화 시스템, 전자장치 및 대화 시스템의 제어 방법
CN112017642B (zh) 语音识别的方法、装置、设备及计算机可读存储介质
CN113421561B (zh) 语音控制方法、语音控制装置、服务器和存储介质
US11711469B2 (en) Contextualized speech to text conversion
KR20200080400A (ko) 페르소나에 기반하여 문장을 제공하는 방법 및 이를 지원하는 전자 장치
KR20210034276A (ko) 대화 시스템, 대화 처리 방법 및 전자 장치
US11646035B1 (en) Dialog management system
US11544504B1 (en) Dialog management system
CN111462726B (zh) 一种外呼应答方法、装置、设备及介质
KR20200017272A (ko) 음성에 기반하여 기능을 실행하기 위한 방법 및 이를 지원하는 사용자 전자 장치
CN111312236A (zh) 语音识别系统的域管理方法
US10657951B2 (en) Controlling synthesized speech output from a voice-controlled device
KR102485339B1 (ko) 차량의 음성 명령 처리 장치 및 방법
JP4228442B2 (ja) 音声応答装置
CN111414468A (zh) 话术选择方法、装置和电子设备
US11893996B1 (en) Supplemental content output
JP2003228393A (ja) 音声対話装置及び方法、音声対話プログラム並びにその記録媒体

Legal Events

Date Code Title Description
A201 Request for examination