KR20220073513A - 대화 시스템, 차량 및 대화 시스템의 제어 방법 - Google Patents

대화 시스템, 차량 및 대화 시스템의 제어 방법 Download PDF

Info

Publication number
KR20220073513A
KR20220073513A KR1020200161645A KR20200161645A KR20220073513A KR 20220073513 A KR20220073513 A KR 20220073513A KR 1020200161645 A KR1020200161645 A KR 1020200161645A KR 20200161645 A KR20200161645 A KR 20200161645A KR 20220073513 A KR20220073513 A KR 20220073513A
Authority
KR
South Korea
Prior art keywords
control
user
additional
control signal
utterance
Prior art date
Application number
KR1020200161645A
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 KR1020200161645A priority Critical patent/KR20220073513A/ko
Priority to US17/455,584 priority patent/US20220165264A1/en
Priority to CN202111381901.6A priority patent/CN114550713A/zh
Publication of KR20220073513A publication Critical patent/KR20220073513A/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
    • B60K35/10
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/037Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for occupant comfort, e.g. for automatic adjustment of appliances according to personal settings, e.g. seats, mirrors, steering wheel
    • B60R16/0373Voice control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/08Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to drivers or passengers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0098Details of control systems ensuring comfort, safety or stability not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • 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/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • B60K2360/148
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • B60W2050/143Alarm means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/21Voice
    • 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
    • G10L2015/088Word spotting
    • 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
    • G10L2015/223Execution procedure of a spoken command
    • 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
    • G10L2015/225Feedback of the input speech
    • 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
    • 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

Abstract

개시된 발명은 사용자 발화에 기초하여 사용자 의도에 대응되는 제어 및 이와 관련된 추가 제어 항목을 판단하고, 추가 제어 항목에 관한 정보를 시각적으로 출력함으로써, 사용자의 추가 발화를 용이하고 신속하게 유도하고 이를 통해 자연스러운 대화와 연속적인 제어를 가능하게 하는 대화 시스템, 차량 및 대화 시스템의 제어 방법을 제공한다.
일 실시예에 따른 대화 시스템은 사용자 발화를 발화 텍스트로 변환하는 음성 인식기; 상기 발화 텍스트에 포함된 사용자 의도를 판단하는 자연어 이해기; 및 상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하는 제어부;를 포함하고, 상기 제어부는, 상기 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목이 있는지 여부를 판단하고, 상기 추가 제어 항목이 있으면 상기 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제2제어 신호를 생성한다.

Description

대화 시스템, 차량 및 대화 시스템의 제어 방법{DIALOGUE SYSTEM, VEHICLE AND METHOD FOR CONTROLLING DIALOGUE SYSTEM}
개시된 발명은 사용자 발화에 대응되는 서비스를 제공하는 대화 시스템, 차량 및 대화 시스템의 제어 방법에 관한 것이다.
대화 시스템은 사용자와의 대화를 통해 사용자 의도를 파악하고, 파악된 사용자 의도에 대응되는 서비스를 제공할 수 있는 시스템이다.
대화 시스템은 특정 장치와 연계되어 사용자 의도에 따라 해당 장치에 대한 제어를 수행하기도 하고, 사용자 의도에 따라 특정 정보를 제공하기도 한다. 이러한 제어의 수행이나 정보의 제공에 있어서, 단일 사용자 발화에 사용자 의도 파악을 위해 필요한 모든 정보가 포함되어 있지 않은 경우가 있다.
이러한 경우, 대화 시스템은 사용자의 추가 발화를 통해 필요한 정보를 획득할 수 있으나, 사용자의 추가 발화를 유도하고 이로부터 필요한 정보를 얻기 까지 워크 플로우가 길어지고 사용자가 원하는 서비스의 제공이 지연되는 문제가 발생할 수 있다.
개시된 발명은 사용자 발화에 기초하여 사용자 의도에 대응되는 제어 및 이와 관련된 추가 제어 항목을 판단하고, 추가 제어 항목에 관한 정보를 시각적으로 출력함으로써, 사용자의 추가 발화를 용이하고 신속하게 유도하고 이를 통해 자연스러운 대화와 연속적인 제어를 가능하게 하는 대화 시스템, 차량 및 대화 시스템의 제어 방법을 제공한다.
일 실시예에 따른 대화 시스템은 사용자 발화를 발화 텍스트로 변환하는 음성 인식기; 상기 발화 텍스트에 포함된 사용자 의도를 판단하는 자연어 이해기; 및 상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하는 제어부;를 포함하고, 상기 제어부는, 상기 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목이 있는지 여부를 판단하고, 상기 추가 제어 항목이 있으면 상기 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제2제어 신호를 생성한다.
상기 제어부는, 상기 사용자 의도에 대응되는 제어가 수행되는 중에 상기 제2 제어 신호를 상기 디스플레이에 전송할 수 있다.
상기 제어부는, 상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화에 기초하여 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 생성할 수 있다.
상기 자연어 이해기는, 상기 발화 텍스트에 대응되는 사용자 의도를 판단하기 위해, 상기 발화 텍스트에 대응되는 도메인(Domain), 인텐트(Intent) 및 엔티티(Entity)의 값을 결정할 수 있다.
상기 제어부는, 상기 엔티티의 값이 변경 가능한 경우, 상기 값의 변경이 가능한 엔티티에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성할 수 있다.
상기 제어부는, 상기 인텐트의 타겟(target)이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성할 수 있다.
상기 제어부는, 상기 추가 사용자 발화에 상기 엔티티의 변경된 값이 포함되면, 상기 추가 사용자 발화에 포함된 엔티티의 변경된 값에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성할 수 있다.
상기 제어부는, 상기 추가 사용자 발화에 상기 변경된 타겟이 포함되면, 상기 추가 사용자 발화에 포함된 변경된 타겟에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성할 수 있다.
일 실시예에 따른 차량은, 사용자 발화를 수신하는 마이크; 상기 수신된 사용자 발화를 상기 사용자 발화에 대응되는 사용자 의도를 판단하는 대화 시스템에 송신하고, 상기 대화 시스템으로부터 상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 수신하는 통신부; 상기 수신된 제1제어 신호에 따른 제어를 수행하는 제어부; 및 상기 제1제어 신호에 따른 제어가 수행되는 중에, 상기 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목에 관한 정보를 표시하는 디스플레이;를 포함한다.
상기 통신부는, 상기 마이크에 상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화를 상기 대화 시스템에 송신하고, 상기 대화 시스템으로부터 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 수신할 수 있다.
상기 디스플레이는, 상기 사용자 발화로부터 추출된 엔티티의 값이 변경 가능한 경우, 상기 값의 변경이 가능한 엔티티에 관한 정보를 표시할 수 있다.
상기 디스플레이는, 상기 변경 가능한 엔티티의 값을 나타내는 리스트를 표시할 수 있다.
상기 디스플레이는, 상기 사용자 발화로부터 추출된 인텐트의 타겟이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 표시할 수 있다.
상기 디스플레이는, 상기 변경 가능한 타겟의 종류를 나타내는 리스트를 표시할 수 있다.
일 실시예에 따른 대화 시스템의 제어 방법은, 사용자 발화를 발화 텍스트로 변환하고; 상기 발화 텍스트에 대응되는 사용자 의도를 판단하고; 상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하고; 상기 사용자의도에 대응되는 제어와 관련된 추가 제어 항목이 존재하면, 상기 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제2제어 신호를 생성한다.
상기 사용자 의도에 대응되는 제어가 수행되는 중에 상기 제2제어 신호를 상기 디스플레이에 전송하는 것;을 더 포함할 수 있다.
상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화에 기초하여 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 생성하는 것;을 더 포함할 수 있다.
상기 사용자 의도를 판단하는 것은, 상기 발화 텍스트에 대응되는 도메인(Domain), 인텐트(Intent) 및 엔티티(Entity)의 값을 결정하는 것;을 포함할 수 있다.
상기 제2제어 신호를 생성하는 것은, 상기 발화 텍스트로부터 추출된 엔티티의 값이 변경 가능한 경우, 상기 변경 가능한 엔티티의 값에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 것;을 포함할 수 있다.
상기 제2제어 신호를 생성하는 것은, 상기 발화 텍스트로부터 추출된 인텐트의 타겟(target)이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 것;을 포함할 수 있다.
상기 제3제어 신호를 생성하는 것은, 상기 추가 사용자 발화에 상기 변경된 엔티티의 값이 포함되면, 상기 변경된 엔티티의 값에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 것;을 포함할 수 있다.
상기 제3제어 신호를 생성하는 것은, 상기 추가 사용자 발화에 상기 변경된 타겟이 포함되면, 상기 변경된 타겟에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 것;을 포함할 수 있다.
일 측면에 따른 대화 시스템, 차량 및 대화 시스템의 제어 방법에 의하면, 사용자 발화에 기초하여 사용자 의도에 대응되는 제어 및 이와 관련된 추가 제어 항목을 판단하고, 추가 제어 항목에 관한 정보를 시각적으로 출력함으로써, 사용자의 추가 발화를 용이하고 신속하게 유도하고 이를 통해 자연스러운 대화와 연속적인 제어를 가능하게 한다.
도 1 은 일 실시예에 따른 대화 시스템의 제어 블록도이다.
도 2는 일 실시예에 따른 차량의 내부 구성에 관한 예시를 나타낸 도면이다.
도 3은 일 실시예에 따른 대화 시스템이 원격의 서버로 구현되는 경우에 대화 시스템과 차량의 제어 블록도이고, 도 4는 일 실시예에 따른 대화 시스템과 차량이 주고 받는 신호의 예시를 나타낸 도면이다.
도 5는 사용자 발화에 대응되는 인텐트 별 추가 제어 항목의 예시를 나타낸 테이블이다.
도 6 내지 도 9는 일 실시예에 따른 대화 시스템과 차량이 추가 사용자 발화를 입력 받기 위해 수행하는 동작을 나타내는 도면이다.
도 10은 일 실시예에 따른 대화 시스템의 제어 방법에 관한 순서도이다.
도 11은 일 실시예에 따른 대화 시스템의 제어 방법에 관한 다른 순서도이다.
본 명세서에 기재된 실시예와 도면에 도시된 구성은 개시된 발명의 바람직한 일 예이며, 본 출원의 출원시점에 있어서 본 명세서의 실시예와 도면을 대체할 수 있는 다양한 변형 예들이 있을 수 있다.
또한, 본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다", "구비하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.
또한, "~부", "~기", "~블록", "~부재", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어, 상기 용어들은 FPGA(field-programmable gate array)/ASIC(application specific integrated circuit) 등 적어도 하나의 하드웨어, 메모리에 저장된 적어도 하나의 소프트웨어 또는 프로세서에 의하여 처리되는 적어도 하나의 프로세스를 의미할 수 있다.
또한, 본 명세서에서 설명되는 구성요소 앞에 사용되는 "제1~", "제2~"와 같은 서수는 구성요소들을 상호 구분하기 위해 사용되는 것일 뿐, 이들 구성요소들 사이의 연결 순서, 사용 순서, 우선 순위 등의 다른 의미를 갖는 것은 아니다.
각 단계들에 붙여지는 부호는 각 단계들을 식별하기 위해 사용되는 것으로 이들 부호는 각 단계들 상호 간의 순서를 나타내는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이하에서는 첨부된 도면을 참조하여 일 측면에 따른 대화 시스템, 차량 및 그 제어 방법에 관한 실시예를 상세하게 설명하도록 한다.
도 1 은 일 실시예에 따른 대화 시스템의 제어 블록도이다.
도 1을 참조하면, 일 실시예에 따른 대화 시스템(100)은 사용자 발화를 발화 텍스트로 변환하는 음성 인식기(110), 발화 텍스트에 대응되는 사용자 의도를 판단하는 자연어 이해기(120) 및 사용자 의도에 대응되는 제어를 수행하기 위한 제어 신호를 생성하는 제어부(130)를 포함한다.
음성 인식기(110)는 STT(Speech to Text) 엔진으로 구현될 수 있고, 사용자 발화에 음성 인식(speech recognition) 알고리즘을 적용하여 텍스트로 변환할 수 있다.
예를 들어, 음성 인식기(110)는 켑스트럼(Cepstrum), 선형 예측 코딩(Linear Predictive Coefficient: LPC), 멜프리퀀시켑스트럼(Mel Frequency Cepstral Coefficient: MFCC) 또는 필터 뱅크 에너지(Filter Bank Energy) 등의 특징 벡터 추출 기술을 적용하여 사용자 발화에서 특징 벡터를 추출할 수 있다.
그리고, 추출된 특징 벡터와 훈련된 기준 패턴과의 비교를 통하여 인식 결과를 얻을 수 있다. 이를 위해, 음성의 신호적인 특성을 모델링하여 비교하는 음향 모델(Acoustic Model) 또는 인식 어휘에 해당하는 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델(Language Model)이 사용될 수 있다.
또한, 음성 인식기(110)는 머신 러닝 또는 딥 러닝을 적용한 학습에 기반하여 사용자 발화를 발화 텍스트로 변환하는 것도 가능하다. 당해 실시예에서는 음성 인식기(110)가 사용자 발화를 발화 텍스트로 변환하는 방식에 대해서는 제한을 두지 않는바, 음성 인식기(110)는 전술한 방식 외에도 다양한 음성 인식 기술을 적용하여 사용자 발화를 발화 텍스트로 변환할 수 있다.
자연어 이해기(120)는 발화 텍스트에 포함된 사용자 의도를 판단하기 위해 자연어 이해(Natural Language Understanding: NLU) 기술을 적용할 수 있다. 따라서, 자연어 이해기(120)에는 입력 문장에 대해 NLU 기술을 적용하여 사용자 의도를 판단하는 NLU 엔진이 포함될 수 있다.
예를 들어, 자연어 이해기(120)는 발화 텍스트로부터 개체명을 인식할 수 있다. 개체명은 인명, 지명, 조직명, 시간, 날짜, 화폐 등의 고유 명사로서, 개체명 인식은 문장에서 개체명을 식별하고 식별된 개체명의 종류를 결정하는 작업이다. 개체명 인식을 통해 문장에서 중요한 키워드를 추출하여 문장의 의미를 파악할 수 있다.
또한, 자연어 이해기(120)는 발화 텍스트로부터 도메인을 결정할 수 있다. 도메인은 사용자 발화의 주제를 식별할 수 있는 것으로서, 예를 들어, 가전 기기 제어, 일정, 날씨 또는 교통 상황 등에 관한 정보 제공, 문자 송신, 내비게이션, 차량 제어 등의 다양한 주제를 나타내는 도메인이 발화 텍스트에 기초하여 결정될 수 있다.
또한, 자연어 이해기(120)는 발화 텍스트가 갖는 화행을 분석할 수 있다. 화행 분석은 발화의 의도를 분석하는 작업으로, 사용자가 질문을 하는 것인지, 요청을 하는 것인지, 응답을 하는 것인지, 단순한 감정 표현을 하는 것인지 등의 발화의 의도를 파악하는 것이다.
자연어 이해기(120)는 발화 텍스트로부터 추출된 도메인, 개체명, 화행 등의 정보에 기초하여 인텐트(intent) 및 해당 인텐트를 수행하는데 필요한 엔티티(entity)를 판단할 수 있다. 예를 들어, 발화 텍스트가 "에어컨 켜줘"인 경우 도메인은 [차량 제어]가 되고, 인텐트는 [turn on, air conditioner]가 될 수 있으며, 해당 인텐트에 대응되는 제어를 수행하기 위해 필요한 엔티티는 [온도, 풍량]이 될 수 있다.
인텐트는 액션과 타겟에 의해 결정될 수 있는바, 상기 예시에서 액션은 turn on이 되고, 타겟은 air conditioner가 된다. 다만, 대화 시스템마다 사용되는 용어는 달라질 수 있는바, 액션 대신 오퍼레이터, 타겟 대신 오브젝트라는 용어가 사용될 수도 있다. 사용되는 용어에 상관 없이, 사용자 발화에 대응되는 인텐트를 결정하거나 정의하는 것이면 당해 실시예에서의 액션 및 타겟의 범위(scope)에 포함될 수 있다.
사용자 발화에 따른 인텐트와 엔티티의 구분에 관한 내용은 뒤에서 더 자세히 설명하기로 한다.
사용자 의도는 발화 텍스트로부터 추출된 도메인, 인텐트 및 엔티티의 값에 정의될 수 있다. 따라서, 대화 시스템(100)이 사용자 발화에 포함된 사용자 의도를 정확히 파악하기 위해서는 도메인, 인텐트 및 엔티티의 값에 대한 정보가 필요하다.
제어부(130)는 사용자 의도에 대응되는 제어를 수행하기 위한 제어 신호를 생성하고, 해당 제어를 수행하는 객체에 생성된 제어 신호를 송신할 수 있다. 대화 시스템(100)의 구현에 따라 해당 제어를 수행하는 객체에 제어 신호를 직접 송신하는 것도 가능하고, 다른 구성요소를 통해 송신하는 것도 가능하다. 해당 제어를 수행하는 객체가 원격에 위치하는 경우에는 통신부를 통해 제어 신호를 송신할 수도 있다.
한편, 제어부(130)는 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목이 있는지 여부를 판단하고, 추가 제어 항목이 있으면 추가 제어 항목에 관한 정보를 디스플레이(20)에 표시하기 위한 제어 신호를 생성할 수 있다.
후술하는 실시예에서는 다양한 제어 신호들을 상호 구분하기 위하여, 앞서 사용자 의도에 대응되는 1차적인 제어를 수행하기 위한 제어 신호를 제1제어 신호라 하고, 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제어 신호를 제2제어 신호라 하기로 한다.
대화 시스템(100)에서 발화 텍스트로 변환되는 사용자 발화는 마이크(10)를 통해 입력될 수 있고, 추가 제어 항목에 관한 정보는 디스플레이(20)에 표시될 수 있다. 사용자 의도에 대응되는 제어는 제어부(80)에 의해 수행될 수 있다.
마이크(10)와 디스플레이(20)는 대화 시스템(100)이 생성한 제어 신호에 따라 제어를 수행하는 객체에 마련될 수 있다. 예를 들어, 제어를 수행하는 객체는 차량일 수도 있고, 냉장고나 TV와 같은 가전 기기일 수도 있다.
또는, 마이크(10)와 디스플레이(20)가 대화 시스템(100)과 제어를 수행하는 객체를 중계하는 게이트웨이에 마련될 수도 있다. 예를 들어, 게이트웨이는 휴대폰, 태블릿 PC 등과 같은 모바일 기기, AI 스피커 또는 랩탑 PC 등과 같은 사용자 단말기일 수 있다.
이하, 구체적인 설명을 위해 제어를 수행하는 객체가 차량인 경우를 예로 들어 설명하기로 한다.
도 2는 일 실시예에 따른 차량의 내부 구성에 관한 예시를 나타낸 도면이다.
도 2를 함께 참조하면, 차량(1)의 대시보드(10)의 일 영역에는 AVN 장치가 마련될 수 있고, AVN 장치는 오디오, 비디오 또는 내비게이션 기능을 수행하기 위한 필요한 정보를 표시하는 AVN디스플레이(21)를 포함할 수 있다. 대시보드(51)의 운전석(31L)에 대응되는 영역에는 차량(1)의 상태 또는 주행 관련 정보 등을 표시하는 클러스터 디스플레이(22)가 마련될 수 있다.
앞서 설명한 추가 제어 항목에 관한 정보를 표시하는 디스플레이(20)는 AVN 디스플레이(21)와 클러스터 디스플레이(22)를 포함할 수 있다. 따라서, 대화 시스템(100)의 제어부(130)가 생성한 제2제어 신호는 AVN 디스플레이(21) 또는 클러스터 디스플레이(22)에 송신될 수 있고, AVN 디스플레이(21) 또는 클러스터 디스플레이(22)는 송신된 제2신호에 따라 추가 제어 항목에 관한 정보를 표시할 수 있다.
또는, 제2제어 신호가 제어부(80)에 송신되고, 제어부(80)가 제2제어 신호에 기초하여 AVN 디스플레이(21) 또는 클러스터 디스플레이(22)를 제어함으로써 추가 제어 항목에 관한 정보를 표시하는 것도 가능하다.
다만, AVN 디스플레이(21)나 클러스터 디스플레이(22)는 차량(1)에 적용 가능한 예시에 불과하고, 운전자나 동승자를 포함하는 사용자에게 정보를 제공할 수만 있으면 디스플레이(20)의 위치에 대해서는 제한을 두지 않는다.
마이크(10)는 사용자 발화를 입력 받기 위해 차량(1) 내부에 마련될 수 있다. 마이크(10)는 차량 앞쪽의 헤드라이닝(52)에 마련될 수도 있고 스티어링 휠에 마련될 수도 있으며 룸미러(60)에 마련될 수도 있고 대시보드(51)에 마련될 수도 있다. 사용자 발화가 입력될 수만 있으면, 마이크(10)의 위치에 대해서도 제한을 두지 않는다.
일 실시예에 따른 대화 시스템(100)은 서버로 구현될 수 있다. 이 경우, 서버에 마련된 메모리와 프로세서에 의해 음성 인식기(110), 자연어 이해기(120) 및 제어부(130)가 구현될 수 있는바, 음성 인식기(110), 자연어 이해기(120) 및 제어부(130)가 메모리나 프로세서를 공유하는 것도 가능하고 별도의 메모리나 프로세서를 사용하는 것도 가능하다.
또는, 대화 시스템(100)의 동작 중 일부를 차량(1)에서 수행하는 것도 가능하다. 예를 들어, 음성 인식기(110)는 차량(1)에 마련되어 차량(1)에서 사용자 발화를 발화 텍스트로 변환하고, 변환된 발화 텍스트를 서버에 송신하는 것도 가능하다.
또는, 차량(1)에 대화 시스템(100)이 포함되는 것도 가능하다. 이 경우, 차량(1)에 마련된 메모리와 프로세서가 음성 인식기(110), 자연어 이해기(120) 및 제어부(130)의 동작을 수행할 수 있다.
후술하는 실시예에서는 구체적인 설명을 위해, 대화 시스템(100)이 별도의 서버로 구현되는 경우를 예로 들어 설명한다.
도 3은 일 실시예에 따른 대화 시스템이 원격의 서버로 구현되는 경우에 대화 시스템과 차량의 제어 블록도이고, 도 4는 일 실시예에 따른 대화 시스템과 차량이 주고 받는 신호의 예시를 나타낸 도면이다.
도 3을 참조하면, 일 실시예에 따른 대화 시스템(100)은 차량(1)과 신호를 주고 받는 통신부(140)를 더 포함할 수 있고, 일 실시예에 따른 차량(1) 은 대화 시스템(100)과 신호를 주고 받는 통신부(90)를 더 포함할 수 있다.
차량(1)의 제어부(80)는 차량(1)의 에어컨 제어, 열선 시트 제어, 시트(31L, 31R)의 위치 제어, 윈도우(41L, 41R) 제어 등을 수행할 수 있고, 마이크(10), 디스플레이(20) 및 스피커(70)와 같은 입출력 장치도 제어부(80)에 의해 제어될 수 있다.
차량(1)의 통신부(80)와 대화 시스템(100)의 통신부(140)의 통신 방식은 4G, 5G, wifi 등 다양한 무선 통신 방식 중 적어도 하나를 채용할 수 있다.
도 4를 함께 참조하면, 사용자가 차량(1)에 마련된 마이크(10)를 통해 사용자 발화를 입력하면, ① 차량(1)에 마련된 통신부(90)는 입력된 사용자 발화를 대화 시스템(100)에 송신할 수 있다. 여기서, 사용자 발화는 마이크(10)에서 음성 신호의 형태로 변환된 후 대화 시스템(100)에 송신될 수 있다.
대화 시스템(100)의 음성 인식기(110)가 사용자 발화를 발화 텍스트로 변환하고, 자연어 이해기(120)가 발화 텍스트에 포함된 사용자 의도를 파악할 수 있다. 전술한 바와 같이, 사용자 의도는 도메인, 인텐트 및 엔티티의 값에 의해 정의될 수 있다.
대화 시스템(100)의 제어부(130)는 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호 및 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목에 관한 정보를 표시하기 위한 제2제어 신호를 생성할 수 있다.
② 대화 시스템(100)의 통신부(140)는 생성된 제1제어 신호 및 제2제어 신호를 차량(1)에 송신할 수 있다.
차량(1)의 통신부(90)는 제1제어 신호 및 제2제어 신호를 수신할 수 있고, 제어부(80)가 제1제어 신호에 따른 제어를 수행함과 동시에 제2제어 신호에 따라 디스플레이(20)에 추가 제어 항목에 관한 정보를 표시할 수 있다.
사용자가 추가 제어를 수행하기 위해 마이크(10)에 추가 사용자 발화를 입력하면, ③ 차량(1)의 통신부(90)는 추가 사용자 발화를 대화 시스템(100)에 송신할 수 있다.
대화 시스템(100)의 통신부(140)는 추가 사용자 발화를 수신하고, 음성 인식기(110)가 추가 사용자 발화를 추가 발화 텍스트로 변환하면, 자연어 이해기(120)가 추가 발화 텍스트에 대응되는 사용자 의도를 판단한다.
대화 시스템(100)의 제어부(130)는 추가 제어를 수행하기 위한 제3제어 신호를 생성하고, ④ 대화 시스템(100)의 통신부(140)는 제3제어 신호를 차량(1)에 송신할 수 있다.
차량(1)의 통신부(90)는 제3제어 신호를 수신하고, 차량(1)의 제어부(80)는 제3제어 신호에 따른 추가 제어를 수행할 수 있다.
도면에 도시되지는 않았으나, 추가 사용자 발화의 수신 및 이에 대응되는 추가 제어는 횟수에 제한 없이 이루어질 수 있다. 구체적으로, 대화 시스템(100)은 추가 사용자 발화의 수신 이후에도 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목이 더 있는지 여부를 판단할 수 있다. 추가 제어 항목이 더 존재하면, 대화 시스템(100)은 제3제어 신호에 함께, 추가 제어 항목에 관한 정보를 표시하기 위한 제4제어 신호를 생성하여 차량(1)에 송신할 수 있다. 제4제어 신호에 따라 차량(1)이 추가 제어 항목에 관한 정보를 표시하면, 사용자가 추가 제어를 수행하기 위해 추가 발화를 입력할 수 있고, 입력된 추가 발화는 대화 시스템(100)에 송신될 수 있다. 이와 같은 일련의 동작들은 추가 제어 항목이 존재하지 않을 때까지 반복될 수 있다.
도 5는 사용자 발화에 대응되는 인텐트 별 추가 제어 항목의 예시를 나타낸 테이블이다.
전술한 바와 같이, 사용자 발화에 포함된 사용자 의도는 도메인, 인텐트 및 엔티티의 값에 의해 정의될 수 있고, 엔티티의 값은 변경 가능한 복수의 값을 가질 수 있다. 다만, 사용자 발화에 엔티티의 값이 포함되지 않은 경우도 있을 수 있다. 이러한 경우, 사용자 의도는 도메인 및 인텐트에 의해 정의될 수 있다.
도 5를 참조하면, 앞서 제시한 예시와 같이, 발화 텍스트가 "에어컨 켜줘"인 경우, 도메인은 [차량 제어]가 되고, 인텐트는 [turn on, air conditioner], 엔티티는 [온도, 풍량]이 될 수 있다. 엔티티의 값은 20도/ 21도/ 22도/ 23도/ 24도와 같은 온도 값을 포함할 수 있고, 약(mild)/ 중(medium)/ 강(strong)/ 터보(turbo)와 같은 풍량 값을 포함할 수 있다.
발화 텍스트가 "열선 시트 켜줘"인 경우, 도메인은 [차량 제어]가 되고, 인텐트는 [turn on, seat warmer], 엔티티는 [위치, 레벨]이 될 수 있다. 엔티티의 값은 좌측 뒷좌석/ 우측 뒷좌석/ 운전석/ 동승석과 같은 위치 값을 포함할 수 있고, 레벨 1/레벨 2/레벨 3과 같은 레벨 값을 포함할 수 있다.
발화 텍스트가 "날씨 알려줘"인 경우, 도메인은 [정보 제공]이 되고, 인텐트는 [ask, weather], 엔티티는 [지역, 날짜]가 될 수 있다. 엔티티 값은 의정부/강남역/대전과 같은 지역 값과 오늘/내일/이번 주말/다음주와 같은 날짜 값을 포함할 수 있다. 여기서, 지역 값은 사용자의 POI를 반영하여 정해질 수 있다. 예를 들어, 사용자의 집, 직장, 자주 방문하는 지역, 최근에 방문한 지역, 사용자가 저장한 지역 등이 변경 가능한 지역 값으로 정해질 수 있고, 사용자가 지역을 이미 발화한 경우에는 발화한 지역과 연관되거나 가까운 기역 등이 변경 가능한 지역 값으로 정해질 수도 있다.
전술한 발화 텍스트의 예시에는 각 인텐트에 대한 엔티티의 값이 포함되지 않았다. 사용자 발화에 엔티티의 값이 포함되지 않은 경우, 제어부(130)는 디폴트로 설정된 엔티티의 값에 기초하여 제3제어 신호를 생성할 수 있다. 또는, 자연어 이해기(120)가 디폴트로 설정된 엔티티의 값을 도메인, 인텐트와 함께 출력하는 것도 가능하다. 도 5의 테이블에 기재된 엔티티의 값들 중에서 강조 표시된 엔티티의 값이 각 인텐트에 대해 디폴트로 설정된 엔티티의 값이다.
여기서, 엔티티의 값의 변경이 추가 제어 항목이 될 수 있다. 예를 들어, 사용자 발화에 엔티티의 값이 포함되지 않은 경우에 사용자로부터 엔티티의 값을 포함하는 추가 사용자 발화를 입력 받고, 추가 사용자 발화에 포함된 엔티티의 값에 따라 추가 제어를 수행할 수 있다. 사용자 발화에 엔티티의 값이 포함된 경우에도, 다른 엔티티의 값으로 변경하기 위한 추가 제어를 수행할 수 있다.
이 때, 사용자가 전체 문장을 발화하지 않고 추가 제어 항목에 대응되는 발화만을 입력하더라도 대화 시스템(100)은 사용자 의도를 파악할 수 있다. 구체적으로, 사용자가 도메인, 인텐트 및 엔티티의 값을 모두 결정할 수 있는 전체 발화를 입력하지 않더라도, 추가 사용자 발화에 엔티티의 값만 포함되어 있으면 대화 시스템(100)이 사용자 의도를 파악할 수 있다.
예를 들어, 자연어 이해기(120)는 음성 인식기(110)에서 출력된 추가 발화 텍스트에 기초하여 엔티티의 값을 결정할 수 있다. 이 때, 자연어 이해기(120)나 제어부(130)는 도메인이나 인텐트에 관한 정보가 없더라도 현재 컨텍스트(context)에 기초하여 엔티티의 값을 결정하고, 사용자 의도에 맞는 추가 제어(이미 수행중인 제어에 관한 추가 제어)를 수행하기 위한 제어 신호(제3제어 신호)를 생성할 수 있다.
도 6 내지 도 9는 일 실시예에 따른 대화 시스템과 차량이 추가 사용자 발화를 입력 받기 위해 수행하는 동작을 나타내는 도면이다.
도 6은 사용자가 "에어컨 켜줘"라는 사용자 발화를 마이크(10)에 입력한 경우에 관한 예시이다. 대화 시스템(100)의 자연어 이해기(120)는 입력된 사용자 발화로부터 인텐트 [turn on, air conditioner]는 결정 가능하나, 엔티티의 값(온도 값)은 결정할 수 없다. 이 경우, 제어부(130)는 디폴트로 설정된 엔티티의 값(당해 예시에서는 22도)에 따라 제어를 수행하기 위한 제1제어 신호를 생성할 수 있다.
전술한 도 5를 참조하면, 에어컨의 온도 값은 변경이 가능하다. 즉, 에어컨의 온도는 추가 제어 항목에 해당하는바, 제어부(130)는 추가 제어 항목에 관한 정보를 디스플레이(20)에 표시하기 위한 제2제어 신호를 생성할 수 있다. 여기서, 제2제어 신호는 추가 제어 항목에 관한 정보를 디스플레이(20)에 표시하기 위한 명령까지 포함하는 것도 가능하고, 추가 제어 항목에 관한 정보만을 포함하는 것도 가능하다. 후자의 경우, 차량(1)의 제어부(80)가 추가 제어 항목에 관한 정보를 표시하기 위한 명령을 생성하여 디스플레이(20)에 전송할 수 있다.
생성된 제1제어 신호와 제2제어 신호는 차량(1)에 송신되고, 차량(1)의 제어부(80)는 제1제어 신호에 따른 제어, 즉 에어컨을 22도로 켜는 제어를 수행하고 디스플레이(20)는 도 6에 도시된 바와 같이 현재 제어 상황을 나타내는 정보인 "22도로 에어컨을 켰습니다"라는 텍스트를 표시할 수 있다.
이 때, 다양한 방식으로 추가 제어 항목에 관한 정보도 함께 표시할 수 있다. 예를 들면, 도 6에 도시된 바와 같이 온도를 나타내는 텍스트를 강조함으로써 사용자로 하여금 온도의 변경이 가능함을 인식하게 할 수 있다.
사용자는 디스플레이(20)를 보고 현재 설정 온도를 확인함과 동시에 온도의 변경이 가능함을 알 수 있다. 온도의 변경을 원하는 사용자는 마이크(10)를 통해 추가 사용자 발화를 입력할 수 있다.
사용자는 "에어컨을 20도로 켜줘"와 같이 에어컨의 온도를 변경하기 위한 전체 문장을 발화하지 않고, 추가 제어 항목에 관한 발화만을 입력해도 무방하다. 당해 예시에서는 변경하고자 하는 엔티티의 값인 온도 값 "20도"만 발화하더라도 대화 시스템(100)은 사용자 의도를 판단할 수 있고, 사용자 의도에 대응되는 추가 제어를 수행하기 위한 제3제어 신호를 생성하여 차량(1)에 전송할 수 있다.
차량(1)은 제3제어 신호에 따른 추가 제어를 수행할 수 있다. 즉, 에어컨의 온도를 20도로 변경할 수 있고, 이에 관한 정보를 디스플레이(20)에 표시할 수 있다.
도 7은 사용자가 "열선시트 켜줘"라는 사용자 발화를 마이크(10)에 입력한 경우에 관한 예시이다. 대화 시스템(100)의 자연어 이해기(120)는 입력된 사용자 발화로부터 인텐트 [turn on, seat warmer]는 결정 가능하나, 엔티티의 값(위치, 레벨)은 결정할 수 없다. 이 경우, 제어부(130)는 디폴트로 설정된 엔티티의 값(당해 예시에서는 운전석, 2단계)에 따라 제어를 수행하기 위한 제1제어 신호를 생성할 수 있다.
전술한 도 5를 참조하면, 열선 시트의 위치 및 레벨은 변경이 가능하다. 즉, 열선 시트의 위치와 레벨은 추가 제어 항목에 해당하는바, 제어부(130)는 추가 제어 항목에 관한 정보를 디스플레이(20)에 표시하기 위한 제2제어 신호를 생성할 수 있다.
생성된 제1제어 신호와 제2제어 신호는 차량(1)에 송신되고, 차량(1)의 제어부(80)는 제1제어 신호에 따른 제어, 즉 운전석의 열선시트를 2단계로 켜기 위한 제어를 수행하고 디스플레이(20)는 도 7에 도시된 바와 같이 현재 제어 상황을 나타내는 정보인 "운전석 열선시트를 2단계로 켰습니다"라는 텍스트를 표시할 수 있다.
이 때, 다양한 방식으로 추가 제어 항목에 관한 정보도 함께 표시할 수 있다. 예를 들면, 도 7에 도시된 바와 같이 열선 시트의 위치와 레벨을 나타내는 텍스트를 강조함으로써 사용자로 하여금 위치와 레벨의 변경이 가능함을 인식하게 할 수 있다.
또한, 디스플레이(20)에 변경 가능한 엔티티의 값을 나타내는 리스트를 더 표시하는 것도 가능하다. 예를 들면, 도 7에 도시된 바와 같이 변경 가능한 위치 값인 동승석, 좌측 뒷좌석, 우측 뒷좌석을 포함하는 리스트를 표시하고, 변경 가능한 레벨 값인 1단계, 3단계를 포함하는 리스트를 표시할 수 있다.
사용자는 디스플레이(20)를 보고 현재 설정 위치 및 레벨을 확인함과 동시에 위치와 레벨의 변경이 가능함을 알 수 있다. 위치와 레벨의 변경을 원하는 사용자는 마이크(10)를 통해 추가 사용자 발화를 입력할 수 있다.
사용자는 "동승석의 열선 시트를 2단계로 켜줘"와 같은 전체 문장을 발화하지 않고, 추가 제어 항목에 관한 발화만을 입력해도 무방하다. 당해 예시에서는 변경하고자 하는 엔티티의 값인 위치 값과 레벨 값 "동승석, 2단계"만 발화하더라도 대화 시스템(100)은 사용자 의도를 판단할 수 있고, 사용자 의도에 대응되는 추가 제어를 수행하기 위한 제3제어 신호를 생성하여 차량(1)에 전송할 수 있다.
차량(1)은 제3제어 신호에 따른 추가 제어를 수행할 수 있다. 즉, 동승석의 열선시트를 2단계로 켤 수 있고, 이에 관한 정보를 디스플레이(20)에 표시할 수 있다.
한편, 전술한 도 6의 예시와 달리 당해 예시는 제1제어 신호에 따른 제어와 제3제어 신호에 따른 추가 제어가 양립이 가능하다. 즉, 두 제어를 동시에 수행할 수 있다. 이러한 경우, 차량(1)은 제1제어 신호에 따른 제어를 취소하지 않고 제3제어 신호에 따른 추가 제어와 동시에 수행할 수 있다.
또한, 추가 사용자 발화에 따라 제1제어 신호에 따른 제어의 취소 여부를 결정하는 것도 가능하다. 일 예로, 추가 사용자 발화에 "아니"와 같이 부정적인 단어가 포함된 경우, 대화 시스템(100)의 제어부(80)는 제3제어 신호에 제1제어 신호에 따른 제어의 취소 명령을 포함시킬 수 있다. 반대로, 추가 사용자 발화에 부정적인 단어가 포함되지 않으면 제3제어 신호에 취소 명령을 포함시키지 않을 수 있다.
다른 예로, 추가 사용자 발화에 "그리고"와 같은 추가의 의미를 갖는 단어가 포함된 경우, 대화 시스템(100)의 제어부(80)는 제3제어 신호에 제1제어 신호에 따른 제어의 취소 명령을 포함시키지 않을 수 있다. 반대로, 추가 사용자 발화에 추가의 의미를 갖는 단어가 포함되지 않으면 제3제어 신호에 취소 명령을 포함시킬 수 있다.
도 8은 사용자가 "강남역 날씨 알려줘"라는 사용자 발화를 마이크(10)에 입력한 경우에 관한 예시이다. 대화 시스템(100)의 자연어 이해기(120)는 입력된 사용자 발화로부터 인텐트 [ask, weather]와 엔티티 값 중 지역 값은 결정 가능하나, 엔티티의 값 중 날짜 값은 결정할 수 없다. 이 경우, 제어부(130)는 디폴트로 설정된 엔티티의 값(당해 예시에서는 현재)에 따라 제어를 수행하기 위한 제1제어 신호를 생성할 수 있다.
전술한 도 5를 참조하면, 날씨 정보를 요청함에 있어서 지역과 날짜는 변경이 가능하다. 한편, 사용자 발화에 엔티티 값이 포함되어 있더라도 해당 엔티티 값을 변경할 수 있고, 이에 관한 정보를 사용자에게 제공할 수 있다. 즉, 지역 값과 날짜 값의 변경은 모두 추가 제어 항목에 해당하는바, 제어부(130)는 추가 제어 항목에 관한 정보를 디스플레이(20)에 표시하기 위한 제2제어 신호를 생성할 수 있다. 이 때, 대화 시스템(100)의 서버가 날씨 정보를 갖고 있지 않은 경우에는, 날씨 정보를 제공하는 서버로부터 날씨 정보를 가져올 수 있다.
생성된 제1제어 신호와 제2제어 신호는 차량(1)에 송신되고, 차량(1)의 제어부(80)는 제1제어 신호에 따른 제어, 즉 현재 강남역 날씨에 관한 정보를 디스플레이(20)에 표시할 수 있다.
이 때, 추가 제어 항목에 관한 정보도 함께 표시할 수 있다. 예를 들면, 도 8에 도시된 바와 같이 날짜와 지역을 나타내는 텍스트를 강조함으로써 사용자로 하여금 다른 날짜와 다른 지역의 날씨 정보를 요청할 수 있음을 인식하게 할 수 있다.
또한, 디스플레이(20)에 변경 가능한 엔티티의 값을 나타내는 리스트를 더 표시하는 것도 가능하다. 예를 들면, 도 8에 도시된 바와 같이 변경 가능한 날짜 값인 내일, 이번 주말, 다음주를 포함하는 리스트를 표시하고, 변경 가능한 지역 값인 의정부, 대전을 포함하는 리스트를 표시할 수 있다.
사용자는 디스플레이(20)를 보고 현재 강남역의 날씨를 확인함과 동시에 다른 지역과 다른 날짜의 날씨 정보에 대한 요청이 가능함을 알 수 있다. 지역 또는 날짜의 변경을 원하는 사용자는 마이크(10)를 통해 추가 사용자 발화를 입력할 수 있다.
사용자는 "내일 강남역 날씨 알려줘"와 같은 전체 문장을 발화하지 않고, 추가 제어 항목에 관한 발화만을 입력해도 무방하다. 당해 예시에서는 변경하고자 하는 엔티티의 값인 날짜 값 "내일은?"만 발화하더라도 대화 시스템(100)은 사용자 의도를 판단할 수 있고, 사용자 의도에 대응되는 추가 제어를 수행하기 위한 제3제어 신호를 생성하여 차량(1)에 전송할 수 있다.
차량(1)은 제3제어 신호에 따른 추가 제어를 수행할 수 있다. 즉, 내일 강남역 날씨에 관한 정보를 디스플레이(20)에 표시할 수 있다.
도 9 역시 사용자가 "강남역 날씨 알려줘"라는 사용자 발화를 마이크(10)에 입력한 경우에 관한 예시이다. 전술한 바와 같이 차량(1)의 디스플레이(20)는 현재 강남역 날씨에 관한 정보를 표시할 수 있다.
한편, 엔티티의 값 뿐만 아니라 인텐트의 타겟도 추가 제어 항목이 될 수 있다. 따라서, 인텐트의 타겟이 변경 가능한 경우, 대화 시스템(100)의 제어부(130)는 변경 가능한 타겟에 관한 정보를 디스플레이(20)에 표시하기 위한 제2제어 신호를 생성할 수 있다.
당해 예시에서는 인텐트의 타겟인 날씨를 기온, 미세먼지, 강수 확률 등의 다른 타겟으로 변경할 수 있다. 따라서, 도 9에 도시된 바와 같이, 디스플레이(20)는 날씨를 강조하여 표시하거나 변경 가능한 타겟을 나타내는 리스트를 표시하는 방법으로 추가 제어 항목에 관한 정보를 제공할 수 있다.
타겟을 미세먼지로 변경하고자 하는 사용자는 "내일 강남역 미세먼지 알려줘"와 같은 전체 문장을 발화하지 않고, 변경하고자 하는 타겟만을 포함하는 발화 "미세먼지는?"이라는 추가 사용자 발화를 마이크(10)에 입력할 수 있다. 대화 시스템(100)은 "미세먼지는?"이라는 추가 사용자 발화만을 이용하여 내일 강남역의 미세먼지에 관한 정보를 제공하기 위한 제3제어 신호를 생성하여 차량(1)에 전송할 수 있다.
차량(1)은 제3제어 신호에 따른 추가 제어를 수행할 수 있다. 즉, 내일 강남역의 미세먼지에 관한 정보를 디스플레이(20)에 표시할 수 있다.
전술한 예시와 같이, 추가 제어 항목에 관한 정보를 디스플레이에 표시하면, 사용자가 추가로 제어가 가능한 항목을 용이하게 파악하고 추가 제어를 위한 명령을 신속하게 입력함으로써 대화 시스템(100)과 사용자 모두 자연스러운 대화를 통해 원하는 작업을 위한 워크 플로우를 줄일 수 있다.
한편, 대화 시스템(100) 및 차량(1)의 다른 예시에서는 추가 제어를 위한 명령을 수동으로 입력하는 것도 가능하다. 예를 들어, 디스플레이(20)가 터치 스크린으로 구현되는 경우에, 사용자는 터치 스크린을 조작하여 엔티티 값 또는 타겟을 변경할 수 있다. 또는, 버튼이나 죠그셔틀과 같은 별도의 입력 장치를 조작하여 엔티티 값 또는 타겟을 변경하는 것도 가능하다.
이하, 일 실시예에 따른 대화 시스템의 제어 방법에 대해 설명한다. 일 실시예에 따른 대화 시스템의 제어 방법을 실시함에 있어서, 전술한 대화 시스템(100)이 사용될 수 있다. 따라서, 앞서 도 1 내지 도 9를 참조하여 설명한 내용은 별도의 언급이 없더라도 대화 시스템의 제어 방법에도 동일하게 적용될 수 있다.
도 10은 일 실시예에 따른 대화 시스템의 제어 방법에 관한 순서도이다.
도 10을 참조하면, 사용자 발화를 발화 텍스트로 변환하고(310), 발화 텍스트에 대응되는 사용자 의도를 판단하고(311), 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성한다(312).
사용자 발화는 마이크(10)를 통해 입력될 수 있고, 마이크(10)는 대화 시스템(100)이 생성한 제어 신호에 따라 제어를 수행하는 객체에 마련될 수 있다. 예를 들어, 제어를 수행하는 객체는 차량일 수도 있고, 냉장고나 TV와 같은 가전 기기일 수도 있다.
또는, 마이크(10)가 대화 시스템(100)과 제어를 수행하는 객체를 중계하는 게이트웨이에 마련될 수도 있다. 예를 들어, 게이트웨이는 휴대폰, 태블릿 PC 등과 같은 모바일 기기, AI 스피커 또는 랩탑 PC 등과 같은 사용자 단말기일 수 있다.
사용자 의도는 발화 텍스트에 기초하여 결정된 도메인, 인텐트 및 엔티티의 값에 의해 정의될 수 있다. 발화 텍스트에 엔티티의 값이 포함되지 않은 경우에는 디폴트로 설정된 값에 따라 제어를 수행하기 위한 제1제어 신호를 생성할 수 있다.
추가 제어 항목이 존재하면(313의 예), 추가 제어 항목에 관한 정보를 표시하기 위한 제2제어 신호를 생성한다(314). 대화 시스템(100)의 제어부(130)는 발화 텍스트에 대응되는 엔티티의 값이나 인텐트의 타겟이 변경 가능하면 추가 제어 항목이 존재하는 것으로 판단할 수 있다.
따라서, 제2제어 신호를 생성하는 것은, 변경 가능한 엔티티 값에 관한 정보 또는 변경 가능한 타겟에 관한 정보를 디스플레이(20)에 표시하기 위한 제어 신호를 생성하는 것을 포함할 수 있다.
대화 시스템(100)은 제1제어 신호와 제2제어 신호를 제어를 수행하는 객체에 송신할 수 있다. 이에 관한 내용은 도 11에서 설명하기로 한다.
추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면(315의 예), 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 생성한다(316). 추가 사용자 발화에 변경된 엔티티의 값이 포함되면, 변경된 엔티티의 값에 따라 제어를 수행하기 위한 제3제어 신호를 생성할 수 있고, 추가 사용자 발화에 변경된 타겟이 포함되면, 변경된 타겟에 따라 제어를 수행하기 위한 제3신호를 생성할 수 있다.
이하, 사용자 발화에 기초한 제어의 대상이 차량(1)인 경우에 대한 예시를 설명한다.
도 11은 일 실시예에 따른 대화 시스템의 제어 방법에 관한 다른 순서도이다.
도 11을 참조하면, 차량(1)에 마련된 마이크(10)에 사용자 발화가 입력되면(410), 차량(1)의 통신부(90)는 입력된 사용자 발화를 대화 시스템(100)에 송신한다(411).
대화 시스템(100)의 통신부(140)가 사용자 발화를 수신하면, 대화 시스템(100)의 음성 인식기(110)가 사용자 발화를 발화 텍스트로 변환하고(310), 대화 시스템(100)의 자연어 이해기(120)가 발화 텍스트에 대응되는 사용자 의도를 판단한다(311).
대화 시스템(100)의 제어부(130)는 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하고(312), 대화 시스템(100)의 통신부(140)는 제1제어 신호를 차량(1)에 송신한다(312-1).
차량(1)의 통신부(90)는 제1제어 신호를 수신하고, 차량(1)의 제어부(80)는 제1제어 신호에 대응되는 제어를 수행한다(412). 예를 들어, 제1제어 신호에 따라 에어컨 제어, 열선 시트 제어, 각종 정보 제공, 시트 위치 제어, 도어 제어 등을 수행할 수 있다.
대화 시스템(100)의 제어부(130)는 사용자 의도에 대응되는 제어에 관한 추가 제어 항목이 존재하면(313), 추가 제어 항목에 관한 정보를 표시하기 위한 제2제어 신호를 생성한다(314).
대화 시스템(100)의 통신부(140)는 제2제어 신호를 차량(1)에 송신하고(314-1), 차량(1)의 통신부(90)는 제2제어 신호를 수신한다.
차량(1)의 디스플레이(20)는 추가 제어 항목에 관한 정보를 표시한다(413). 추가 제어 항목에 관한 정보는 다양한 형태로 표시될 수 있는바, 예를 들어 전술한 도 6 내지 도 10에 도시된 바와 같이 제1제어 신호에 따른 제어 상황과 함께 추가 제어 가능한 인텐트나 엔티티를 식별 가능하게 표시할 수 있다.
구체적으로, 발화 텍스트로부터 추출된 엔티티의 값이 변경 가능한 경우, 변경 가능한 엔티티의 값에 관한 정보를 디스플레이(20)에 표시할 수 있고, 발화 텍스트로부터 추출된 인텐트의 타겟(target)이 변경 가능한 경우, 변경 가능한 타겟에 관한 정보를 디스플레이(20)에 표시할 수 있다.
또는, 변경 가능한 엔티티의 값이나 타겟의 종류를 나타내는 리스트를 표시하는 것도 가능하다.
마이크(10)에 추가 사용자 발화가 입력되면(414), 차량(1)의 통신부(90)는 추가 사용자 발화를 대화 시스템(100)에 송신한다(415).
대화 시스템(100)의 통신부(140)는 추가 사용자 발화를 수신하고, 대화 시스템(100)의 음성 인식기(110)는 추가 사용자 발화를 추가 발화 텍스트로 변환하고(316-1), 대화 시스템(100)의 자연어 이해기(120)는 추가 발화 텍스트에 대응되는 사용자 의도를 판단하며(316-2), 대화 시스템(100)의 제어부(130)는 추가 제어를 수행하기 위한 제3제어 신호를 생성할 수 있다(316-3).
추가 사용자 발화에 전체 문장이 포함되지 않고 추가 제어 항목에 대응되는 발화만이 포함되더라도 대화 시스템(100)은 사용자 의도를 파악할 수 있다. 구체적으로, 사용자가 도메인, 인텐트 및 엔티티의 값을 모두 결정할 수 있는 전체 발화를 입력하지 않더라도, 추가 사용자 발화에 엔티티의 값 또는 타겟만 포함되어 있으면 대화 시스템(100)이 사용자 의도를 파악할 수 있다.
예를 들어, 자연어 이해기(120)는 음성 인식기(110)에서 출력된 추가 발화 텍스트에 기초하여 엔티티의 값을 결정할 수 있다. 자연어 이해기(120)나 제어부(130)는 도메인이나 인텐트에 관한 정보가 없더라도 현재 컨텍스트(context)에 기초하여 엔티티의 값을 결정하고, 사용자 의도에 맞는 추가 제어(이미 수행중인 제어에 관한 추가 제어)를 수행하기 위한 제어 신호(제3제어 신호)를 생성할 수 있다.
대화 시스템(100)의 통신부(140)는 제3제어 신호를 차량(1)에 송신하고(316-4), 차량(1)의 통신부(90)는 제3제어 신호를 수신한다. 차량(1)의 제어부(80)는 수신된 제3제어 신호에 따른 추가 제어를 수행한다(415).
당해 순서도에서는 제1제어 신호를 먼저 송신한 이후에 제2제어 신호를 송신하는 것으로 도시하였으나, 대화 시스템의 실시예가 이에 한정되는 것은 아닌바, 제1제어 신호와 제2제어 신호를 동시에 송신하는 것도 가능하다. 제1제어 신호에 대응되는 제어가 수행되는 중에 추가 제어 항목에 관한 정보가 표시될 수만 있으면, 제2제어 신호의 송신 시점에 대해서는 제한을 두지 않는다.
전술한 실시예에 따르면, 사용자 발화에 기초하여 사용자 의도에 대응되는 제어 및 이와 관련된 추가 제어 항목을 판단하고, 추가 제어 항목에 관한 정보를 시각적으로 출력함으로써, 사용자의 추가 발화 또는 추가 제어 명령의 입력을 용이하고 신속하게 유도하고 이를 통해 자연스러운 대화와 연속적인 제어를 가능하게 한다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안된다.
100: 대화 시스템
110: 음성 인식기
120: 자연어 이해기
130: 제어부
140: 통신부
1: 차량
10: 마이크
20: 디스플레이
80: 제어부
90: 통신부
150: 저장부
160: 통신부

Claims (22)

  1. 사용자 발화를 발화 텍스트로 변환하는 음성 인식기;
    상기 발화 텍스트에 포함된 사용자 의도를 판단하는 자연어 이해기; 및
    상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하는 제어부;를 포함하고,
    상기 제어부는,
    상기 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목이 있는지 여부를 판단하고, 상기 추가 제어 항목이 있으면 상기 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제2제어 신호를 생성하는 대화 시스템.
  2. 제 1 항에 있어서,
    상기 제어부는,
    상기 사용자 의도에 대응되는 제어가 수행되는 중에 상기 제2 제어 신호를 상기 디스플레이에 전송하는 대화 시스템.
  3. 제 1 항에 있어서,
    상기 제어부는,
    상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화에 기초하여 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 생성하는 대화 시스템.
  4. 제 3 항에 있어서,
    상기 자연어 이해기는,
    상기 발화 텍스트에 대응되는 사용자 의도를 판단하기 위해, 상기 발화 텍스트로부터 도메인(Domain), 인텐트(Intent) 및 엔티티(Entity)의 값을 추출하는 대화 시스템.
  5. 제 4 항에 있어서,
    상기 제어부는,
    상기 엔티티의 값이 변경 가능한 경우, 상기 변경 가능한 엔티티의 값에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 대화 시스템.
  6. 제 4 항에 있어서,
    상기 제어부는,
    상기 인텐트의 타겟(target)이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 대화 시스템.
  7. 제 5 항에 있어서,
    상기 제어부는,
    상기 추가 사용자 발화에 상기 변경된 엔티티의 값이 포함되면, 상기 추가 사용자 발화에 포함된 변경된 엔티티의 값에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 대화 시스템.
  8. 제 6 항에 있어서,
    상기 제어부는,
    상기 추가 사용자 발화에 상기 변경된 타겟이 포함되면, 상기 추가 사용자 발화에 포함된 변경된 타겟에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 대화 시스템.
  9. 사용자 발화를 수신하는 마이크;
    상기 수신된 사용자 발화를 상기 사용자 발화에 대응되는 사용자 의도를 판단하는 대화 시스템에 송신하고, 상기 대화 시스템으로부터 상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 수신하는 통신부;
    상기 수신된 제1제어 신호에 따른 제어를 수행하는 제어부; 및
    상기 제1제어 신호에 따른 제어가 수행되는 중에, 상기 사용자 의도에 대응되는 제어와 관련된 추가 제어 항목에 관한 정보를 표시하는 디스플레이;를 포함하는 차량.
  10. 제 9 항에 있어서,
    상기 통신부는,
    상기 마이크에 상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화를 상기 대화 시스템에 송신하고, 상기 대화 시스템으로부터 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 수신하는 차량.
  11. 제 9 항에 있어서,
    상기 디스플레이는,
    상기 사용자 발화로부터 추출된 엔티티의 값이 변경 가능한 경우, 상기 변경 가능한 엔티티의 값에 관한 정보를 표시하는 차량.
  12. 제 11 항에 있어서,
    상기 디스플레이는,
    상기 변경 가능한 엔티티의 값을 나타내는 리스트를 표시하는 차량.
  13. 제 9 항에 있어서,
    상기 디스플레이는,
    상기 사용자 발화로부터 추출된 인텐트의 타겟이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 표시하는 차량.
  14. 제 13 항에 있어서,
    상기 디스플레이는,
    상기 변경 가능한 타겟의 종류를 나타내는 리스트를 표시하는 차량.
  15. 사용자 발화를 발화 텍스트로 변환하고;
    상기 발화 텍스트에 대응되는 사용자 의도를 판단하고;
    상기 사용자 의도에 대응되는 제어를 수행하기 위한 제1제어 신호를 생성하고;
    상기 사용자의도에 대응되는 제어와 관련된 추가 제어 항목이 존재하면, 상기 추가 제어 항목에 관한 정보를 디스플레이에 표시하기 위한 제2제어 신호를 생성하는 대화 시스템의 제어 방법.
  16. 제 15 항에 있어서,
    상기 사용자 의도에 대응되는 제어가 수행되는 중에 상기 제2제어 신호를 상기 디스플레이에 전송하는 것;을 더 포함하는 대화 시스템의 제어 방법.
  17. 제 15 항에 있어서,
    상기 추가 제어 항목에 대응되는 추가 사용자 발화가 입력되면, 상기 입력된 추가 사용자 발화에 기초하여 상기 추가 제어 항목에 대한 제어를 수행하기 위한 제3제어 신호를 생성하는 것;을 더 포함하는 대화 시스템의 제어 방법.
  18. 제 17 항에 있어서,
    상기 사용자 의도를 판단하는 것은,
    상기 발화 텍스트로부터 도메인(Domain), 인텐트(Intent) 및 엔티티(Entity)의 값을 추출하는 것;을 포함하는 대화 시스템의 제어 방법.
  19. 제 18 항에 있어서,
    상기 제2제어 신호를 생성하는 것은,
    상기 발화 텍스트로부터 추출된 엔티티의 값이 변경 가능한 경우, 상기 변경 가능한 엔티티의 값에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  20. 제 18 항에 있어서,
    상기 제2제어 신호를 생성하는 것은,
    상기 발화 텍스트로부터 추출된 인텐트의 타겟(target)이 변경 가능한 경우, 상기 변경 가능한 타겟에 관한 정보를 상기 디스플레이에 표시하기 위한 상기 제2제어 신호를 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  21. 제 19 항에 있어서,
    상기 제3제어 신호를 생성하는 것은,
    상기 추가 사용자 발화에 상기 변경된 엔티티의 값이 포함되면, 상기 변경된 엔티티의 값에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
  22. 제 20 항에 있어서,
    상기 제3제어 신호를 생성하는 것은,
    상기 추가 사용자 발화에 상기 변경된 타겟이 포함되면, 상기 변경된 타겟에 따라 제어를 수행하기 위한 상기 제3제어 신호를 생성하는 것;을 포함하는 대화 시스템의 제어 방법.
KR1020200161645A 2020-11-26 2020-11-26 대화 시스템, 차량 및 대화 시스템의 제어 방법 KR20220073513A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200161645A KR20220073513A (ko) 2020-11-26 2020-11-26 대화 시스템, 차량 및 대화 시스템의 제어 방법
US17/455,584 US20220165264A1 (en) 2020-11-26 2021-11-18 Dialogue system, vehicle, and method of controlling dialogue system
CN202111381901.6A CN114550713A (zh) 2020-11-26 2021-11-22 对话系统、车辆以及对话系统的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200161645A KR20220073513A (ko) 2020-11-26 2020-11-26 대화 시스템, 차량 및 대화 시스템의 제어 방법

Publications (1)

Publication Number Publication Date
KR20220073513A true KR20220073513A (ko) 2022-06-03

Family

ID=81657235

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200161645A KR20220073513A (ko) 2020-11-26 2020-11-26 대화 시스템, 차량 및 대화 시스템의 제어 방법

Country Status (3)

Country Link
US (1) US20220165264A1 (ko)
KR (1) KR20220073513A (ko)
CN (1) CN114550713A (ko)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9805020B2 (en) * 2009-04-23 2017-10-31 Deep Sky Concepts, Inc. In-context access of stored declarative knowledge using natural language expression
US20150199965A1 (en) * 2014-01-16 2015-07-16 CloudCar Inc. System and method for recognition and automatic correction of voice commands
US9633547B2 (en) * 2014-05-20 2017-04-25 Ooma, Inc. Security monitoring and control
US10691473B2 (en) * 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
KR102502220B1 (ko) * 2016-12-20 2023-02-22 삼성전자주식회사 전자 장치, 그의 사용자 발화 의도 판단 방법 및 비일시적 컴퓨터 판독가능 기록매체
KR102643501B1 (ko) * 2016-12-26 2024-03-06 현대자동차주식회사 대화 처리 장치, 이를 포함하는 차량 및 대화 처리 방법
KR102338990B1 (ko) * 2017-01-23 2021-12-14 현대자동차주식회사 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
US10685358B2 (en) * 2018-03-02 2020-06-16 Capital One Services, Llc Thoughtful gesture generation systems and methods
KR102562227B1 (ko) * 2018-06-12 2023-08-02 현대자동차주식회사 대화 시스템, 그를 가지는 차량 및 차량의 제어 방법
KR20200000155A (ko) * 2018-06-22 2020-01-02 현대자동차주식회사 대화 시스템 및 이를 이용한 차량
KR102346026B1 (ko) * 2019-02-11 2021-12-31 삼성전자주식회사 전자 장치 및 이의 제어 방법
US11749265B2 (en) * 2019-10-04 2023-09-05 Disney Enterprises, Inc. Techniques for incremental computer-based natural language understanding
US11580298B2 (en) * 2019-11-14 2023-02-14 Oracle International Corporation Detecting hypocrisy in text
US11551666B1 (en) * 2020-05-28 2023-01-10 Amazon Technologies, Inc. Natural language processing
KR20220094400A (ko) * 2020-12-29 2022-07-06 현대자동차주식회사 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법

Also Published As

Publication number Publication date
CN114550713A (zh) 2022-05-27
US20220165264A1 (en) 2022-05-26

Similar Documents

Publication Publication Date Title
US10854195B2 (en) Dialogue processing apparatus, a vehicle having same, and a dialogue processing method
JP2017090612A (ja) 音声認識制御システム
US20230014114A1 (en) Dialogue system and dialogue processing method
US20220198151A1 (en) Dialogue system, a vehicle having the same, and a method of controlling a dialogue system
JP2004301875A (ja) 音声認識装置
KR20220073513A (ko) 대화 시스템, 차량 및 대화 시스템의 제어 방법
KR20230142243A (ko) 대화 처리 방법, 사용자 단말 및 대화 시스템
US11542744B2 (en) Agent device, agent device control method, and storage medium
US20230238020A1 (en) Speech recognition system and a method for providing a speech recognition service
US20230298581A1 (en) Dialogue management method, user terminal and computer-readable recording medium
US20230267923A1 (en) Natural language processing apparatus and natural language processing method
JP2020152298A (ja) エージェント装置、エージェント装置の制御方法、およびプログラム
US20230252987A1 (en) Vehicle and control method thereof
KR20220129366A (ko) 음성 인식 시스템 및 그 제어 방법
JP2019191477A (ja) 音声認識装置及び音声認識方法
US20240127810A1 (en) Dialogue Management Method, Dialogue Management System, And Computer-Readable Recording Medium
JP7217209B2 (ja) 音声対話装置、音声対話方法、及びプログラム
US20210303263A1 (en) Dialogue system and vehicle having the same, and method of controlling dialogue system
US20230335120A1 (en) Method for processing dialogue and dialogue system
US20230206918A1 (en) Speech Recognition System and Method for Providing Speech Recognition Service
JP7280074B2 (ja) エージェント装置、エージェント装置の制御方法、およびプログラム
KR20220130952A (ko) 이모지 생성 장치, 차량 및 이모지 생성 방법
CN117133293A (zh) 对话系统及其控制方法