KR20210120286A - 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법 - Google Patents

대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법 Download PDF

Info

Publication number
KR20210120286A
KR20210120286A KR1020200036791A KR20200036791A KR20210120286A KR 20210120286 A KR20210120286 A KR 20210120286A KR 1020200036791 A KR1020200036791 A KR 1020200036791A KR 20200036791 A KR20200036791 A KR 20200036791A KR 20210120286 A KR20210120286 A KR 20210120286A
Authority
KR
South Korea
Prior art keywords
text
user
action
information
determined
Prior art date
Application number
KR1020200036791A
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 KR1020200036791A priority Critical patent/KR20210120286A/ko
Priority to US17/087,114 priority patent/US20210303263A1/en
Publication of KR20210120286A publication Critical patent/KR20210120286A/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/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
    • G10L15/187Phonemic context, e.g. pronunciation rules, phonotactical constraints or phoneme n-grams
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • G10L17/22Interactive procedures; Man-machine interfaces
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Arrangement of adaptations of instruments
    • B60K35/22
    • B60K35/265
    • 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/023Electric 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 transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • 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/10Interpretation of driver requests or demands
    • 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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/005Language recognition
    • 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
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2370/00Details of arrangements or adaptations of instruments specially adapted for vehicles, not covered by groups B60K35/00, B60K37/00
    • B60K2370/15Output devices or features thereof
    • B60K2370/152Displays
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2370/00Details of arrangements or adaptations of instruments specially adapted for vehicles, not covered by groups B60K35/00, B60K37/00
    • B60K2370/15Output devices or features thereof
    • B60K2370/157Acoustic output
    • B60K2370/1575Voice
    • 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
    • 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
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/009Priority selection
    • B60W2050/0091Priority selection of control inputs
    • 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

Abstract

본 발명은 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법에 관한 것이다. 본 발명의 차량은, 음성 신호를 수신하는 제1입력 장치; 사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하는 제2입력 장치; 복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보를 저장하는 저장부; 및 저장부에 저장된 정보에 기초하여 수신된 음성 신호를 표준어의 텍스트로 변환하고 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 제2입력 장치에 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하고, 파악한 사용자의 발화 의도와 판단한 사용자의 상황에 대응하는 액션을 결정하고, 결정된 액션에 대응하는 응답을 생성하고 생성된 응답을 출력하는 대화 시스템을 포함하고, 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어의 텍스트, 비표준어의 텍스트 및 부정확한 발음의 언어의 텍스트를 포함한다.

Description

대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법 {Dialogue system, Vehicle and method for controlling the dialogue system}
본 발명은 사용자와의 대화를 통해 사용자의 의도를 파악하고 사용자에게 필요한 정보나 서비스를 제공하는 대화 시스템, 차량 및 대화 시스템의 제어 방법에 관한 것이다.
차량용 AVN, 차량 내 공기조화기나 대부분의 모바일 기기는 작은 화면 및 작은 버튼으로 인해, 사용자에게 시각적인 정보를 제공하거나 사용자의 입력을 수신함에 있어 불편함이 발생할 수 있다.
특히, 사용자가 운전 중 시각적인 정보를 확인하거나 기기를 조작하기 위해, 시선을 이동시키고 스티어링 휠에서 손을 떼는 것은 안전 운전에 위협이 되는 요소로 작용한다.
따라서, 사용자와의 대화를 통해 사용자의 의도를 파악하고, 사용자에게 필요한 서비스를 제공하는 대화 시스템이 차량에 적용될 경우 보다 안전하고 편리하게 서비스를 제공할 수 있을 것으로 기대된다.
일 측면은 사용자의 의도 및 음성을 인식하고 인식된 사용자의 의도 및 음성에 기초하여 부정확한 발음의 음성을 정확한 발음의 음성으로 인식하고 인식된 음성에 기초하여 적어도 하나의 기기의 동작을 제어하도록 하는 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법을 제공한다.
다른 측면은 사용자의 의도 및 음성을 인식하고 인식된 사용자의 의도 및 음성에 기초하여 비표준어를 표준어로 인식하는 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법을 제공한다.
일 측면에 따른 대화 시스템은, 비표준어에 대응하는 표준어와, 부정확한 발음의 언어에 대응하는 표준어에 대한 정보를 저장하는 저장부; 음성 신호를 수신하고 수신된 음성 신호를 텍스트로 변환하고 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어라고 판단되면 저장부에 저장된 정보에 기초하여 변환된 텍스트를 표준어의 텍스트로 보정하는 음성 인식기; 및 음성 인식기에서 보정된 텍스트에 대응하는 응답을 생성하고 생성된 응답의 출력을 제어하는 결과 처리기를 포함한다.
일 측면에 따른 대화 시스템은, 음성 신호를 수신하는 제1입력 장치를 더 포함하고, 저장부는 복수 개의 음성 신호에 각각 대응하는 텍스트에 대한 정보를 저장하고, 음성 인식기는 저장부에 저장된 정보에 기초하여 수신된 음성 신호를 텍스트로 변환한다.
일 측면에 따른 대화 시스템은, 음성 인식기에서 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고, 음성 인식기는 자연어 이해기에서 액션이 결정되지 않았다고 판단되면 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인한다.
일 측면에 따른 대화 시스템은, 음성 인식기에서 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어이해기를 더 포함하고, 음성 인식기는 자연어 이해기에서 액션이 결정되지 않았다고 판단되면 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고 확인된 유사도 중 유사도가 가장 높은 음성 신호에 대응하는 텍스트를 확인한다.
일 측면에 따른 대화 시스템은, 음성 인식기에서 보정된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고, 결과 처리기는 결정된 액션에 대응하는 응답을 생성하고 생성된 응답에 대응하는 텍스트를 음성 신호로 변환한다.
일 측면에 따른 대화 시스템은, 사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하는 제2입력 장치; 제2입력 장치에 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하는 상황정보처리기; 및 음성 인식기에서 보정된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 파악한 사용자의 발화 의도와 사용자의 상황에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고, 결과 처리기는 결정된 액션에 대응하는 응답을 생성하고 생성된 응답에 대응하는 텍스트를 음성 신호로 변환한다.
일 측면에 따른 대화 시스템의 음성 인식기는, 파악한 사용자의 발화 의도와 사용자의 상황에 기초하여 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어에 대한 텍스트인지를 판단한다.
또 다른 측면에 따른 차량은, 음성 신호를 수신하는 제1입력 장치; 사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하는 제2입력 장치; 복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보를 저장하는 저장부; 및 저장부에 저장된 정보에 기초하여 수신된 음성 신호를 표준어의 텍스트로 변환하고 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 제2입력 장치에 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하고, 파악한 사용자의 발화 의도와 판단한 사용자의 상황에 대응하는 액션을 결정하고, 결정된 액션에 대응하는 응답을 생성하고 생성된 응답을 출력하는 대화 시스템을 포함하고, 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어의 텍스트, 비표준어의 텍스트 및 부정확한 발음의 언어의 텍스트를 포함한다.
차량은 생성된 응답을 이미지로 출력하는 디스플레이; 및 생성된 응답을 오디오로 출력하는 스피커 중 적어도 하나를 포함한다.
차량은 대화 시스템에서 출력한 응답에 대응하여 공기 조화기, 윈도우, 도어, 시트, 오디오/비디오/내비게이션(AVN), 히터, 와이퍼, 사이드 미러, 내부의 램프 및 외부의 램프 중 적어도 하나를 제어하는 제어기를 더 포함한다.
차량의 대화 시스템은, 액션이 결정되지 않았다고 판단되면 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고, 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인하고 확인한 텍스트에 대한 액션을 결정한다.
차량의 대화 시스템은, 확인한 텍스트에 대한 액션이 결정되면 결정된 액션과 확인한 텍스트에 대한 정보를 저장부에 저장하도록 한다.
차량의 대화 시스템은, 변환된 텍스트에 대한 액션이 결정되면 결정된 액션과 변환된 텍스트에 대한 정보를 저장부에 저장하도록 한다.
또 다른 측면에 따른 대화 시스템의 제어 방법은, 음성 신호를 수신하고, 저장부에 저장된 정보에 기초하여 수신된 음성 신호를 표준어의 텍스트로 변환하고, 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고, 파악한 사용자의 발화 의도와 변환된 텍스트에 대응하는 액션을 결정하고, 결정된 액션에 대응하는 응답을 생성하고, 생성된 응답을 음성 신호로 출력하고, 저장부에 저장된 정보는, 복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보이고, 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어의 텍스트, 비표준어의 텍스트 및 부정확한 발음의 언어의 텍스트를 포함한다.
액션을 결정하는 것은, 사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하고, 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하고, 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고, 파악한 사용자의 발화 의도와 판단한 사용자의 상황에 대응하는 액션을 결정하는 것을 포함한다.
대화 시스템의 제어 방법은, 액션이 결정되지 않았다고 판단되면 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고, 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인하고, 확인한 텍스트에 대한 액션을 결정하고, 확인한 텍스트에 대한 액션이 결정되면 결정된 액션과 확인한 텍스트에 대한 정보를 저장부에 저장하도록 하는 것을 더 포함한다.
응답을 생성하는 것은, 차량에 마련된 공기 조화기, 윈도우, 도어, 시트, 오디오/비디오/내비게이션(AVN), 히터, 와이퍼, 사이드 미러, 내부의 램프 및 외부의 램프 중 적어도 하나를 제어하기 위한 응답을 생성하는 것을 포함한다.
본 발명은 차량 주행 환경에서 사용자와의 대화 및 차량 상태 정보, 주행 환경 정보, 사용자 정보 등의 다양한 정보를 바탕으로 사용자의 의도를 정확하게 파악함으로써, 음성 인식의 인식률을 향상시킬 수 있고, 이에 따라 사용자의 실제 의도에 부합되는 서비스 또는 사용자에게 가장 필요한 서비스를 제공할 수 있다.
본 발명은 대화시스템에 최적화된 STT(Speech To Text)를 통해 부정확한 발화나 사투리와 같은 비표준어의 발화를 대화시스템에 적합한 어휘로 변경해줌으로써 대화시스템의 정확도를 향상시킬 수 있다.
본 발명은 부정확한 발화에 대한 음성 인식 및 사투리와 같은 비표준어의 발화에 대한 음성 인식을 통해 대화를 진행하며 차량에 마련된 복수 개의 기능 중 적어도 하나의 기능 제어를 제안할 수 있고, 시스템과 복수의 화자 간의 원활한 대화가 이루어지도록 할 수 있다.
본 발명은 대화 기능을 가진 차량의 품질을 향상시킬 수 있어 상품성을 증대시킬 수 있고, 나아가 사용자의 만족도를 높일 수 있으며 사용자의 편리성 및 차량의 안전성을 향상시킬 수 있다.
도 1은 실시 예에 따른 대화 시스템이 마련된 차량의 내부 예시도이다.
도 2는 실시 예에 따른 대화 시스템이 마련된 차량의 제어 구성도이다.
도 3은 실시 예에 따른 대화 시스템의 상세 구성도이다.
도 4는 실시 예에 따른 대화 시스템의 입력 처리기의 상세 구성도이다.
도 5는 실시 예에 따른 대화 시스템의 대화 관리기의 상세 구성도이다.
도 6은 실시 예에 따른 대화 시스템의 결과 처리기의 상세 구성도이다.
도 7은 실시 예에 따른 대화 시스템의 제어 순서도이다.
도 8은 실시 예에 따른 대화 시스템의 학습 제어 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명에 대해 상세히 설명한다.
도 1은 실시 예에 따른 차량의 내부 예시도이다.
차량(1)은 내장과 외장을 갖는 차체(Body)와, 차체를 제외한 나머지 부분으로 주행에 필요한 기계 장치가 설치되는 차대(Chassis)를 포함한다.
도 1 에 도시된 바와 같이, 차체의 외장은 트렁크와, 전후좌우 도어(101)와, 전후좌우 도어(101)에 각각 설치된 윈도우 글라스(102, 또는 윈도우)와, 운전자에게 차량(1) 후방의 시야를 제공하는 사이드 미러(103)를 포함한다.
차체의 내장은 탑승자가 앉는 시트(104)와, 대시 보드(105)와, 대시 보드 상에 배치되고 타코미터, 속도계, 냉각수 온도계, 연료계, 방향전환 지시등, 상향등 표시등, 경고등, 안전벨트 경고등, 주행 거리계, 주행 기록계, 자동변속 선택레버 표시등, 도어 열림 경고등, 엔진 오일 경고등, 연료부족 경고등이 배치된 계기판(즉 클러스터, 106)과, 오디오, 히터 공기조화기의 조절판이 있는 센터 페시아(107)를 포함한다.
센터 페시아(107)에는 송풍구, 시거잭, 오디오/비디오/내비게이션 장치(AVN: 108) 등이 설치될 수 있다.
오디오/비디오/내비게이션 장치(AVN: 108)는 복수의 위성에서 제공된 위치 정보에 기초하여 차량의 현재 위치를 계산하고, 현재 위치를 지도에 매칭시켜 표시한다.
또한 오디오/비디오/내비게이션 장치(AVN: 108)는 사용자로부터 목적지를 입력받고 경로탐색 알고리즘에 기초하여 현재 위치부터 목적지까지의 경로탐색을 수행하고, 탐색된 경로를 지도에 매칭시켜 표시하고, 경로를 따라 사용자를 목적지까지 안내할 수 있다.
오디오/비디오/내비게이션 장치(AVN: 108)는 음성 인식을 통해 동작 명령을 입력받거나, 음성 인식을 통해 목적지까지의 주소를 입력받으며, 음성 인식을 통해 미리 저장된 복수의 주소 중 어느 하나 주소를 선택받는 것도 가능하다.
차량의 차대는 동력 발생 장치, 동력 전달 장치, 주행 장치, 조향 장치, 제동 장치, 현가 장치, 변속 장치, 연료 장치, 전후좌우 차륜 등을 포함한다.
또한 차량에는 운전자 및 탑승자의 안전을 위하여 여러 가지 안전장치들이 마련되어 있다. 차량의 안정장치로는 차량 충돌 시 운전자 등 탑승자의 안전을 목적으로 하는 에어백 제어 장치와, 차량의 가속 또는 코너링 시 차량의 자세를 제어하는 차량자세 안정 제어 장치(ESC: Electronic Stability Control) 등 여러 종류의 안전장치들이 있다.
이외에도 차량(1)은 후방 또는 측방의 장애물 내지 다른 차량을 감지하는 근접 센서, 강수 여부 및 강수량을 감지하는 레인 센서 등의 감지 장치를 더 포함하는 것도 가능하다.
또한 차량(1)은 운전자의 편의를 위해 설치된 핸즈프리 장치, GPS, 오디오 기기 및 블루투스 장치, 후방 카메라, 단말기 충전 장치, 하이패스 장치 등의 전자 장치를 더 포함하는 것도 가능하다. 이러한 전자 장치는, 음성 인식을 통해 동작 명령을 입력받을 수 있다.
도 2는 실시 예에 따른 대화 시스템이 마련된 차량의 제어 구성도이고, 도 3은 실시 예에 따른 대화 시스템의 구성도이며, 도 4는 실시 예에 따른 대화 시스템의 입력 처리기의 상세 구성도이고, 도 5는 실시 예에 따른 대화 시스템의 대화 관리기의 상세 구성도이며, 도 6은 실시 예에 따른 대화 시스템의 결과 처리기의 상세 구성도이다.
도 2에 도시된 바와 같이, 차량(1)은 제1입력장치(110), 제2입력 장치(120), 대화 시스템(130), 출력장치(140), 제어기(150), 감지부(160), 통신 장치(170) 및 복수 개의 전자 장치(101, 102, 104, 108, 109)를 포함한다.
제1입력장치(110)는 사용자의 명령을 음성으로 입력 받을 수 있다. 제1입력장치(110)는 음향을 입력 받아 전기적인 신호로 변환하여 출력하는 마이크로폰을 포함할 수 있다.
효과적인 음성의 입력을 위하여 제1입력장치(110)는 차량의 내장의 헤드라이닝에 마련될 수 있으나, 대시보드(105) 위에 마련되거나 스티어링 휠에 마련되는 것도 가능하다. 이 외에도 사용자의 음성을 입력 받기에 적합한 위치이면 어디든 제한이 없다.
제2입력 장치(120)는 사용자의 조작을 통해 사용자 명령을 입력 받는다. 이러한 제2입력 장치(120)는 버튼, 키, 스위치, 터치 패드, 페달 및 레버 중 적어도 하나를 포함할 수 있다.
제2입력 장치(120)는 사용자를 촬영하는 카메라를 포함하는 것도 가능하다. 카메라로 촬영한 영상을 통해, 명령 입력의 일 수단으로 사용되는 사용자의 제스처, 표정 또는 시선 방향을 인식할 수 있다. 또는, 카메라로 촬영한 영상을 통해 사용자의 상태(졸음 상태 등)를 파악하는 것도 가능하다.
이러한 제2입력 장치(120)는 터치 패널로 구현 가능하고, 출력 장치의 디스플레이(141)는 LCD 등의 평판 표시 패널로 구현 가능하다. 즉 제2입력 장치(120)와 출력 장치(140)의 디스플레이(141)는 터치 패널과 평판 표시 패널이 일체로 형성된 터치 스크린으로 구현 가능하다.
제2입력 장치(120)는 디스플레이(142)에 표시된 커서의 이동 명령 및 선택 명령 등을 입력하기 위한 조그 다이얼(미도시)을 더 포함하는 것도 가능하다.
제2입력 장치(120)는 사용자에 의해 조작된 버튼이나 조그 다이얼에 대한 신호를 제어기(150)에 전송하고, 또한 터치 패널에 터치된 위치의 신호를 제어기(150)에 전송한다.
대화 시스템(130)은 제1 입력 장치(110)를 통해 입력된 사용자 음성, 제2입력 장치(120)를 통해 입력된 사용자의 음성 외 입력, 제어기(150)를 통해 입력된 각종 정보를 이용하여 사용자의 의도와 상황을 파악하고, 사용자의 의도에 대응되는 액션을 수행하기 위한 응답을 출력한다.
대화 시스템(130)은 제1 입력 장치(110)를 통해 입력된 사용자 음성을 텍스트로 변환하고, 변환된 텍스트, 사용자의 의도 및 상황에 기초하여 변환된 텍스트가 부정확한 발음에 대한 텍스트인지, 비표준어에 대한 텍스트인지를 판단한다.
대화 시스템(130)은 변환된 텍스트가 부정확한 발음에 대한 텍스트라고 판단되면 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 정확한 발음에 대한 텍스트로 보정하고, 변환된 텍스트가 비표준어에 대한 텍스트라고 판단되면 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 표준어에 대한 텍스트로 보정한다.
대화 시스템(130)은 보정된 텍스트, 사용자의 의도 및 상황에 기초하여 보정된 텍스트에 대한 액션을 수행하기 위한 응답을 출력한다.
제어기(150)를 통해 입력된 차량 정보는 차량(1)에 마련된 감지부의 각종 센서를 통해 획득된 차량 상태 정보 또는 주변 상황 정보를 포함할 수 있고, 차량의 유종과 같이 차량(1)에 기본적으로 저장된 정보도 포함할 수 있다.
대화 시스템(130)은 미리 획득한 정보를 이용하여 사용자가 발화하지 않은 내용까지 고려함으로써, 사용자의 실제 의도를 파악하고 그에 대응되는 정보를 선제적으로 제공할 수 있다. 이를 통해 사용자가 원하는 서비스를 제공하기까지의 대화 단계와 시간을 단축할 수 있다.
도 3에 도시된 바와 같이, 대화 시스템(100)은 입력 처리기(131), 대화 관리기(132), 결과 처리기(133) 및 저장부(134)를 포함한다.
입력 처리기(131)는 사용자의 음성 및 음성 외 입력을 포함하는 사용자 입력이나 차량과 관련된 정보 또는 사용자와 관련된 정보를 포함하는 입력을 처리한다.
입력 처리기(131)는 사용자 음성과 음성 외 입력, 두 가지 종류의 입력을 수신할 수 있다. 음성 외 입력은 사용자의 제스처 인식이나, 입력 장치의 조작을 통해 입력되는 사용자의 음성 외 입력, 차량의 상태를 나타내는 차량 상태 정보, 차량의 주행 환경과 관련된 주행 환경 정보, 사용자의 상태를 나타내는 사용자 정보 등을 포함할 수 있다. 이러한 정보들 외에도 차량과 사용자와 관련된 정보로서, 사용자의 의도를 파악하거나 사용자 또는 차량에 필요한 서비스를 제공하기 위해 사용될 수 있는 정보이면, 모두 입력 처리기(110)의 입력이 될 수 있다. 사용자는 운전자와 탑승자를 모두 포함할 수 있다.
입력 처리기(131)는 입력된 사용자 음성을 인식하여 텍스트 형태의 발화문으로 변환하고, 사용자의 발화문에 자연어 이해(Natural Language Understanding) 알고리즘을 적용하여 사용자의 의도를 파악한다.
또한, 입력 처리기(131)는 사용자 음성 외에 차량의 상태나 주행 환경과 관련된 정보를 수집하고, 수집된 정보를 이용하여 상황을 이해한다.
입력 처리기(131)는 자연어 이해를 통해 파악한 사용자의 의도와 상황에 관련된 정보 등을 대화 관리기(132)로 전달한다.
대화 관리기(132)는 입력 처리기(131)의 처리 결과를 이용하여 사용자의 의도 또는 차량의 상태를 파악하고, 사용자의 의도나 차량의 상태에 대응되는 액션을 결정한다.
대화 관리기(132)는 입력 처리기(131)로부터 전달된 사용자의 의도, 상황에 관련된 정보 등에 기초하여 사용자의 의도나 현재 상황에 대응되는 액션을 결정하고, 해당 액션을 수행하기 위해 필요한 인자들을 관리한다.
당해 실시예에서 액션은 특정 서비스를 제공하기 위해 수행되는 모든 동작을 의미할 수 있으며, 액션의 종류는 미리 정의될 수 있다.
대화 관리기(132)는 결정된 액션에 관한 정보를 결과 처리기(133)로 전달한다.
결과 처리기(133)는 대화 관리기(132)의 출력 결과에 따라 특정 서비스를 제공하거나 대화를 계속 이어 나가기 위한 시스템 발화를 출력한다.
결과 처리기(133)는 전달된 액션을 수행하기 위해 필요한 대화 응답 및 명령어를 생성하여 출력한다. 대화 응답은 텍스트, 이미지 또는 오디오로 출력될 수 있고, 명령어가 출력되면 출력된 명령어에 대응되는 차량 제어, 외부 컨텐츠 제공 등의 서비스가 수행될 수 있다.
저장부(134)는 대화 시스템(130)이 각종 동작을 수행하기 위해 필요한 각종 정보를 저장한다.
저장부(134)는 대화 처리 및 서비스 제공에 필요한 각종 정보를 저장한다. 예를 들어, 자연어 이해에 사용되는 도메인, 액션, 화행, 개체명과 관련된 정보를 미리 저장할 수 있고, 입력된 정보로부터 상황을 이해하기 위해 사용되는 상황 이해 테이블을 저장할 수도 있으며, 차량에 마련된 센서가 감지한 데이터, 사용자와 관련된 정보, 액션 수행을 위해 필요한 정보를 미리 저장할 수도 있다.
저장부(134)는 STT DB, 도메인/액션 추론 규칙 DB를 포함할 수 있고, 도메인/액션 추론 규칙 DB는 길 안내, 차량 상태 점검, 주유소 추천 등과 같은 액션이 미리 정의될 수 있고, 저장된 추론 규칙에 따라 사용자의 발화에 대응되는 액션, 즉 사용자가 의도하는 액션을 미리 정의된 액션 중에서 추출할 수 있다.
또한, 저장부(134)는 차량에 발생한 이벤트와 연관된 액션을 저장하는 연관 액션 DB를 포함할 수 있다.
전술한 바와 같이, 대화 시스템(130)은 차량 환경에 특화된 대화 처리 기술을 제공한다. 대화 시스템(130)의 구성요소가 전부 차량에 포함될 수도 있고, 일부만 포함될 수도 있다.
본 실시 예에 따른 대화 시스템(130)과 같이 차량 환경에 특화된 대화 처리 기술을 적용할 경우, 운전자의 직접 주행 상황에서, 주요 상황(Context)에 대한 인지 및 대응이 용이하다. 유량 부족, 졸음 운전 등 주행에 영향을 미치는 요소에 가중치를 부여하여 서비스를 제공할 수 있고, 대부분의 경우 목적지로 이동 중인 조건을 기반으로 주행 시간, 목적지 정보 등 서비스 제공을 위해 필요한 정보를 용이하게 획득할 수 있다.
이러한 대화 시스템(130)의 구체적 구성에 대해 도 4, 도 5 및 도 6을 참조하여 추후 설명한다.
출력장치(140)는 대화자에게 시각적, 청각적 또는 촉각적인 출력을 제공하는 장치로서, 차량(1)에 마련된 디스플레이(141)와 스피커(142)를 포함할 수 있다.
디스플레이(141) 및 스피커(142)는 사용자의 발화에 대한 응답, 사용자에 대한 질의, 또는 사용자가 요청한 정보를 시각적 또는 청각적으로 출력할 수 있다. 또는, 스티어링 휠에 진동기를 장착하여 진동을 출력하는 것도 가능하다.
디스플레이(141)는 LCD(Liquid Crystal Display), LED(Light Emitting Diode), PDP(Plasma Display Panel), OLED(Organic Light Emitting Diode), CRT(Cathode Ray Tube) 등의 다양한 디스플레이 장치 중 하나로 구현될 수 있다.
디스플레이(141)는 제어기(150)의 지시에 따라 주행 정보, 도로의 환경 정보, 경로 안내 정보와 관련된 지도를 표시한다. 즉 디스플레이(141)는 차량의 현재 위치가 매칭된 지도, 동작 상태 및 그 외 부가정보들을 표시한다.
디스플레이(141)는 전화 통화와 관련된 정보를 표시하거나, 음악 재생과 관련된 정보를 표시하는 것도 가능하고 외부의 방송 신호를 영상으로 표시하는 것도 가능하다.
디스플레이(141)는 대화 모드 시 대화 화면을 표시하는 것도 가능하다.
스피커(142)는 차량(1) 내부에는 사용자와 대화를 수행하거나, 사용자가 원하는 서비스를 제공하기 위해 필요한 음향을 출력한다.
스피커(142)는 내비게이션 경로 안내를 위한 음성, 오디오/비디오 컨텐츠에 포함되는 음향 또는 음성, 사용자가 원하는 정보나 서비스를 제공하기 위한 음성, 사용자의 발화에 대한 응답으로서 생성된 시스템 발화 등을 출력할 수 있다.
제어기(150)는 대화 시스템(130)으로부터 출력되는 응답에 따라, 사용자의 의도나 현재 상황에 대응되는 액션을 수행하기 위해 차량(1)을 제어할 수 있다.
한편, 차량(1)은 차량(1)에 마련된 감지부(160)를 통해 획득된 데이터뿐만 아니라, 통신 장치(170)를 통해 외부 컨텐츠 서버 또는 외부 기기로부터 획득된 정보, 예를 들어 교통 상황, 날씨, 온도, 동승자 정보, 운전자 개인 정보 등의 주행 환경 정보와 사용자 정보도 수집하여 대화 시스템(130)에 전달할 수 있다.
잔유량, 강우량, 강우 속도, 주변 장애물 정보, 속도, 엔진 온도, 타이어 공기압, 현재 위치 등과 같이 차량에 마련된 감지부(160)로부터 획득되는 정보는 제어기(150)를 통해 대화 시스템(130)에 입력될 수 있다.
또한, 제어기(150)는 대화 시스템(130)이 출력한 응답에 따라 차량(1)에 마련된 공기 조화기(109), 윈도우(202), 도어(101), 시트(104) 또는 AVN(108) 등을 제어할 수 있다. 그 외에도 제어기(150)는 대화 시스템(130)이 출력한 응답에 따라 오디오, 히터, 와이퍼, 사이드 미러 및 내외부의 램프 중 적어도 하나를 제어할 수 있다.
제어기(150)는 전술한 동작과 후술하는 동작을 수행하기 위한 프로그램이 저장되는 메모리 및 저장된 프로그램을 실행시키는 프로세서를 포함할 수 있다. 메모리와 프로세서는 각각 적어도 하나 마련될 수 있고, 복수 개 마련되는 경우에는 이들이 하나의 칩 상에 집적될 수도 있고 물리적으로 분리될 수도 있다.
감지부(160)는 복수 개의 센서들을 포함하고, 복수 개의 센서들에서 감지한 잔유량, 강우량, 강우 속도, 주변 장애물 정보, 타이어 공기압, 현재 위치, 엔진 온도, 차량 속도 등과 같은 차량 상태 정보 또는 주행 환경 정보를 제어기(150)에 전송한다.
통신 장치(170)는 차량의 내부 장치 및 외부 장치와 통신을 가능하게 하는 하나 이상의 통신 모듈을 포함할 수 있으며, 예를 들어 근거리 통신 모듈, 유선 통신 모듈 및 무선 통신 모듈를 포함할 수 있다.
근거리 통신 모듈은 블루투스 모듈, 적외선 통신 모듈, RFID(Radio Frequency Identification) 통신 모듈, WLAN(Wireless Local Access Network) 통신 모듈, NFC 통신 모듈, 직비(Zigbee) 통신 모듈 등 근거리에서 무선 통신망을 이용하여 신호를 송수신하는 다양한 근거리 통신 모듈 중 적어도 하나를 포함할 수 있다.
유선 통신 모듈은 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈 중 적어도 하나를 포함할 수 있다.
무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(Global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(Universal Mobile Telecommunications System), TDMA(Time Division Multiple Access), LTE(Long Term Evolution), 4G, 5G 등 무선 통신 방식으로 인터넷망과 연결될 수 있는 다양한 무선 통신 모듈 중 적어도 하나를 포함할 수 있다.
한편, 통신 장치(170)는 차량(1) 내부의 전자 장치들 사이의 통신을 위한 내부 통신 모듈(미도시)을 더 포함할 수도 있다. 차량(1)의 내부 통신 프로토콜로는 CAN(Controller Area Network), LIN(Local Interconnection Network), 플렉스레이(FlexRay), 이더넷(Ethernet) 등을 사용할 수 있다.
도 4에 도시된 바와 같이, 입력 처리기(131)는 음성 입력 처리기(131a)와 상황정보 처리기(131b)를 포함한다.
음성 입력 처리기(131a)는 음성 인식기(a11), 자연어 이해기(a12) 및 대화 입력 관리기(a13)를 포함한다.
음성 인식기(a11)는 입력된 사용자 음성을 인식하여 텍스트 형태의 발화문으로 출력한다. 음성 인식기(a11)는 음성 인식 엔진(speech recognition engine)을 포함하고, 음성 인식 엔진은 입력된 음성에 음성 인식 알고리즘을 적용하여 사용자가 발화한 음성을 인식하고, 인식 결과를 생성할 수 있다.
이 때, 입력된 음성은 음성 인식을 위한 더 유용한 형태로 변환될 수 있는바, 음성 신호로부터 시작 지점과 끝 지점을 검출하여 입력된 음성에 포함된 실제 음성 구간을 검출한다. 이를 EPD(End Point Detection)이라 한다.
그리고, 검출된 구간 내에서 켑스트럼(Cepstrum), 선형 예측 코딩(Linear Predictive Coefficient: LPC), 멜프리퀀시켑스트럼(Mel Frequency Cepstral Coefficient: MFCC) 또는 필터 뱅크 에너지(Filter Bank Energy) 등의 특징 벡터 추출 기술을 적용하여 입력된 음성의 특징 벡터를 추출할 수 있다.
그리고, 추출된 특징 벡터와 훈련된 기준 패턴과의 비교를 통하여 인식 결과를 얻을 수 있다. 이를 위해, 음성의 신호적인 특성을 모델링하여 비교하는 음향 모델(Acoustic Model) 과 인식 어휘에 해당하는 발화문이나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델(Language Model)이 사용될 수 있다. 이를 위해, 저장부(134)에는 음향 모델/언어 모델 DB가 저장될 수 있다.
음향 모델은 다시 인식 대상을 특징 벡터 모델로 설정하고 이를 음성 데이터의 특징 벡터와 비교하는 직접 비교 방법과 인식 대상의 특징 벡터를 통계적으로 처리하여 이용하는 통계 방법을 나뉠 수 있다.
음성 인식기(a11)는 음성을 인식함에 있어 상술한 방식 중 어느 방식을 사용해도 무방하다. 예를 들어, 히든 마르코프 모델이 적용된 음향 모델을 사용할 수도 있고, 음향 모델과 음성 모델을 통합한 N-best 탐색법을 사용할 수 있다. N-best 탐색법은 음향 모델과 언어 모델을 이용하여 N개까지의 인식 결과 후보를 선택한 후, 이들 후보의 순위를 재평가함으로써 인식 성능을 향상시킬 수 있다.
음성 인식기(a11)는 인식 결과의 신뢰성을 확보하기 위해 신뢰값(confidence value)을 계산할 수 있다. 신뢰값은 음성 인식 결과에 대해서 그 결과를 얼마나 믿을 만한 것인가를 나타내는 척도이다. 일 예로, 인식된 결과인 음소나 발화문에 대해서, 그 외의 다른 음소나 발화문으로부터 그 말이 발화되었을 확률에 대한 상대값으로 정의할 수 있다. 따라서, 신뢰값은 0 에서 1 사이의 값으로 표현할 수도 있고, 0 에서 100 사이의 값으로 표현할 수도 있다.
신뢰값이 미리 설정된 임계값(threshold)을 초과하는 경우에는 인식 결과를 출력하여 인식 결과에 대응되는 동작이 수행되도록 할 수 있고, 신뢰값이 임계값 이하인 경우에는 인식 결과를 거절(rejection)할 수 있다.
음성 인식기(a11)는 음성 인식기(a11)에서 변환된 텍스트 형태의 발화문을 그대로 이해하기 보다, STT DB(음성-텍스트 변환 데이터베이스, 134a)에 저장된 정보에 기초하여 사용자의 의도와 상황에 대응하는 텍스트 형태의 발화문으로 보정할 수 있다.
여기서 STT DB(음성-텍스트 변환 데이터베이스, 134a)는 저장부(134)에 마련될 수 있다.
STT DB(134a)는 복수 개의 음성 신호에 각각 매칭된 텍스트에 대한 정보를 저장할 수 있다. 텍스트는 표준어, 비표준어 및 부정확한 발음의 언어를 포함할 수 있다.
부정확한 발음의 언어는 표준어나 비표준어는 아니지만 많은 사람들이 일반적으로 잘못 사용하고 있는 언어일 수 있다. 예를 들어, 부정확한 발음의 언어는 뇌졸증(뇌졸중이 맞는 언어), 돈나물(돌나물이 맞는 언어), 맨날(만날이 맞는 언어), 아둥바둥(아등바등이 맞는 언어) 등이 있다.
부정확한 발음의 언어는 유사한 자음이나 유사한 모음으로 발음된 언어를 포함할 수 있고, 연음 법칙, 절음 법칙이나 두음 법칙으로 발음된 언어를 포함할 수 있다.
유사한 자음은 'ㄴ'과 'ㄹ', 'ㅂ'과 'ㅍ'을 포함할 수 있고, 유사한 모음은 'ㅔ'와 'ㅐ','ㅖ'와 'ㅒ'를 포함할 수 있다.
부정확한 발음의 언어는 허두숨(헛웃음-연음법칙), 꼬다래(꽃아래-절음법칙), 연세(년세-두음법칙) 및 양심(량심-두음법칙) 등이 있다.
STT DB(음성-텍스트 변환 데이터베이스, 134a)는 동일한 의미를 가진 텍스트에 대응하는 적어도 하나 이상의 음성 신호를 저장할 수 있다.
예를 들어, 표준어 하나에 대한 표준어의 음성 신호와, 비표준어의 음성 신호, 부정확한 발음의 음성 신호를 저장할 수 있다. 예를 들어, 표준어 '켜다'에 대해 표준어 '켜다'의 음성 신호, 비표준어 '캐다'와 '키다'의 음성 신호를 저장할 수 있다.
STT DB(음성-텍스트 변환 데이터베이스, 134a)에는 비표준어에 대응하는 표준어가 매칭되어 저장되어 있을 수도 있고, 부정확한 발음의 언어에 대응하는 표준어가 매칭되어 저장되어 있을 수도 있다. 예를 들어, 표준어 '켜다'에 대해 비표준어 '캐다'와 '키다'가 저장되어 있을 수 있다.
STT DB(134a)는 복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보를 저장할 수 있다. 이 경우, 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어에 대한 텍스트, 비표준어에 대한 텍스트, 부정확한 발음의 텍스트를 포함할 수 있다.
음성 인식기(a11)는 변환된 텍스트, 사용자의 의도 및 상황에 기초하여 변환된 텍스트가 부정확한 발음에 대한 텍스트인지, 비표준어에 대한 텍스트인지를 판단하고 변환된 텍스트가 부정확한 발음에 대한 텍스트라고 판단되면 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 정확한 발음에 대한 텍스트로 보정하고, 변환된 텍스트가 비표준어에 대한 텍스트라고 판단되면 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 표준어에 대한 텍스트로 보정하는 것도 가능하다.
이러한 음성 인식기(a11)는 액션을 정확하게 인식할 수 있도록 하는 STT(Speech To Text) 모듈을 포함할 수 있다.
음성 인식기(a11)는 음성을 텍스트로 변환하기 위한 STT DB(134a)로부터 정보를 수신하고, 음성 인식 결과에 기초하여 STT DB(134a)에 저장된 정보를 업데이트할 수 있다.
음성 인식기(a11)는STT DB(134a) 내 음성 신호와 수신된 음성 신호와의 유사도를 확인하고 확인된 유사도 중 일정 유사도 이상의 유사도를 가지는 적어도 하나 이상의 음성 신호를 확인하고 확인된 적어도 하나 이상의 음성 신호에 대응하는 텍스트들을 확인한다.
음성 인식기(a11)는 확인된 텍스트들 중 사용자의 의도와 상황에 대응하는 하나의 텍스트를 선택할 수 있다.
음성 인식기(a11)는 음성 신호를 수신하고 수신된 음성 신호를 텍스트로 변환하고 변환된 텍스트가 표준어가 아니라고 판단되면 변환된 텍스트에 대응하는 비표준어 또는 부정확한 발음의 언어를 확인하고, 저장부 중 STT DB(134a)에 저장된 정보에 기초하여 비표준어 또는 부정확한 발음의 언어에 대응하는 표준어를 확인하고 변환된 텍스트를 확인된 표준어의 텍스트로 보정한다.
음성 인식기(a11)는 변환된 텍스트에 대응하는 액션이 검출되지 않으면 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어라고 판단하는 것도 가능하다.
음성 인식기(a11)는 변환된 텍스트가 사용자의 의도 및 상황에 어긋나면 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어라고 판단하는 것도 가능하다.
음성 인식기(a11)는 음성의 인식 결과에 기초하여 STT 학습을 수행하고 학습 결과에 기초하여 STT DB(134a) 내 정보들을 업데이트할 수 있다.
음성 인식기(a11)는 사용자의 의도나 상황이 분석되지 않은 상태에서 음성 인식 결과에 기초하여 STT(음성-텍스터 변환) 파라미터를 새롭게 설정하고, 설정된 STT 파라미터를 STT DB(134a)에 저장하도록 하는 것도 가능하다.
음성 인식기(a11)를 통해 사용자가 발화한 음성에 대한 어휘 이해도를 향상시킬 수 있고, 사용자의 의도를 정확하게 파악할 수 있다.
음성 인식기(a11)의 인식 결과인 텍스트 형태의 발화문은 자연어 이해기(a12)로 입력된다.
자연어 이해기(a12)는 발화문에 대해 자연어 이해 기술(Natural Language Understanding)을 적용하여 발화문이 내포하는 사용자의 의도를 파악한다.
자연어 이해기(a12)는 자연어 이해 기술을 적용하여 발화문에 내포된 사용자의 의도를 파악할 수 있다. 따라서, 사용자는 자연스러운 대화(Dialogue)를 통해 명령을 입력할 수 있고, 대화 시스템(130) 역시 대화를 통해 명령의 입력을 유도하거나 사용자가 필요로 하는 서비스를 제공할 수 있다.
먼저, 자연어 이해기(a12)는 텍스트 형태의 발화문에 대해 형태소 분석을 수행한다. 형태소는 의미의 최소 단위로써, 더 이상 세분화할 수 없는 가장 작은 의미 요소를 나타낸다. 따라서, 형태소 분석은 자연어 이해의 첫 단계로서, 입력 문자열을 형태소열로 바꿔준다.
자연어 이해기(a12)는 형태소 분석 결과에 기초하여 발화문으로부터 도메인을 추출한다. 도메인은 사용자가 발화한 언어의 주제를 식별할 수 있는 것으로서, 예를 들어, 경로 안내, 날씨 검색, 교통 검색, 일정 관리, 주유 안내, 공조 제어 등의 다양한 주제를 나타내는 도메인이 데이터베이스화 되어 있다.
자연어 이해기(a12)는 발화문으로부터 개체명을 인식할 수 있다. 개체명은 인명, 지명, 조직명, 시간, 날짜, 화폐 등의 고유 명사로서, 개체명 인식은 문장에서 개체명을 식별하고 식별된 개체명의 종류를 결정하는 작업이다. 개체명 인식을 통해 문장에서 중요한 키워드를 추출하여 문장의 의미를 파악할 수 있다.
자연어 이해기(a12)는 발화문이 갖는 화행을 분석할 수 있다. 화행 분석은 사용자 발화에 대한 의도를 분석하는 작업으로, 사용자가 질문을 하는 것인지, 요청을 하는 것인지, 응답을 하는 것인지, 단순한 감정 표현을 하는 것인지 등에 관한 발화의 의도를 파악하는 것이다.
자연어 이해기(a12)는 사용자의 발화 의도에 대응하는 액션을 추출한다. 발화문에 대응되는 도메인, 개체명, 화행 등의 정보에 기초하여 사용자의 발화 의도를 파악하고, 발화 의도에 대응되는 액션을 추출할 수 있다. 액션은 오브젝트(Object)와 오퍼레이터(Operator)에 의해 정의될 수 있다.
또한, 자연어 이해기(a12)는 액션 수행과 관련된 인자를 추출하는 것도 가능하다. 액션 수행과 관련된 인자는 액션을 수행하는데 직접적으로 필요한 유효 인자일 수도 있고, 이러한 유효 인자를 추출하기 위해 사용되는 비유효 인자일 수도 있다.
또한, 자연어 이해기(a12)는 파스트리(Parse-tree)와 같이 발화문과 발화문, 문장과 문장의 수식 관계를 표현할 수 있는 수단도 추출할 수 있다.
자연어 이해기(a12)의 처리 결과인, 형태소 분석 결과, 도메인 정보, 액션 정보, 화행 정보, 추출된 인자 정보, 개체명 정보, 파스트리 등은 대화 입력 관리기(a13)로 전달된다.
대화 입력 관리기(a13)는 자연어 이해 결과와 상황 정보를 대화 관리기(120)로 전달한다.
상황정보 처리기(131b)는 상황 정보 수집기(a21), 상황 정보 수집 관리기(a22) 및 상황 이해기(a23)를 포함한다.
상황 정보 수집기(a21)는 제2 입력 장치(120)와 제어기(150)로부터 정보를 수집한다.
상황 정보 수집기(a21)는 주기적으로 데이터를 수집할 수도 있고, 특정 이벤트 발생 시에 수집할 수도 있으며, 주기적으로 수집하다가 특정 이벤트 발생 시에 추가적으로 더 수집할 수도 있다. 또한, 상황 정보 수집 관리기(a22)로부터 데이터 수집 요청이 입력되는 경우에 데이터를 수집할 수도 있다.
제2 입력 장치(120)의 음성 외 입력은 모두 상황 정보에 포함될 수 있다. 즉, 상황 정보는 차량 상태 정보, 주행 환경 정보, 사용자 정보를 포함할 수 있다.
차량 상태 정보는 차량(1)에 마련된 센서에 의해 획득된 정보로서 차량의 상태를 나타내는 정보를 포함할 수도 있고, 차량의 유종과 같이 차량에 관련된 정보로서 차량에 저장되어 있는 정보 등을 포함할 수도 있다.
주행 환경 정보는 차량(1)에 마련된 센서에 의해 획득된 정보로서 전방 카메라, 후방 카메라 또는 스테레오 카메라가 획득한 영상 정보, 레이더(radar), 라이다(Lidar), 초음파 센서 등의 센서가 획득한 장애물 정보, 강우 센서가 획득한 강우량/강우속도 정보 등을 포함할 수 있다.
또한, 주행 환경 정보는 V2X를 통해 획득된 정보로서 교통 상황 정보, 신호등 정보, 주변 차량의 접근 또는 추돌 가능성 정보 등을 더 포함할 수 있다.
사용자 정보는 차량에 마련된 카메라 또는 생체 신호 측정 장치를 통해 측정한 사용자의 상태와 관련된 정보, 사용자가 차량에 마련된 입력 장치를 이용하여 직접 입력한 사용자와 관련된 정보, 외부 컨텐츠 서버(미도시)에 저장된 사용자와 관련된 정보, 차량에 연결된 모바일 기기(미도시)에 저장된 정보 등을 포함할 수 있다.
상황 정보 수집 관리기(a22)는 상황 정보의 수집을 관리한다.
상황 정보 수집 관리기(a22)는 상황 정보 수집기(a21)를 통해 필요한 상황 정보를 수집하고, 상황 이해기(a23)에 확인 신호를 전송한다.
상황 정보 수집 관리기(a22)는 상황 정보 수집기(a21)가 수집한 데이터가 미리 설정된 조건을 만족하여 특정 이벤트가 발생한 것으로 판단하면 상황 이해기(a23)에 액션 트리거 신호를 전송할 수 있다.
상황 이해기(a23)는 자연어 이해 결과와 수집된 상황 정보에 기초하여 상황을 이해한다.
상황 이해기(a23)는 상황 이해 테이블을 검색하여 해당 이벤트와 관련된 상황 정보를 검색하고, 검색된 상황 정보가 저장되어 있지 않으면 다시 상황 정보 수집 관리기(a22)에 상황 정보의 요청 신호를 전송한다.
상황 이해기(a23)는 상황 이해 테이블(미도시)에 저장된 액션 별 상황 정보를 참조하여, 사용자의 발화 의도에 대응되는 액션 수행과 관련된 상황 정보가 무엇인지 판단할 수 있다.
도 5에 도시된 바와 같이, 대화 관리기(132)는 대화 흐름 관리기(132a), 대화 액션 관리기(132b), 모호성 해결기(132c), 인자 관리기(132d), 액션 순위 결정기(132e) 및 외부 정보 관리기(132f)를 포함한다.
대화 흐름 관리기(132a)는 대화 또는 액션을 생성/삭제/업데이트하도록 요청한다.
좀 더 구체적으로, 대화 입력 관리기(a13)로부터의 입력에 대응되는 대화 태스크 또는 액션 태스크가 대화/액션 DB에 존재하는지 검색한다.
여기서 대화/액션 DB는 대화의 상태와 액션의 상태를 관리하기 위한 저장 공간으로서, 현재 진행 중인 대화, 액션들과 앞으로 진행할 예비 액션들에 대한 대화 상태 및 액션 상태를 저장할 수 있다. 예를 들어, 종료된 대화/액션, 정지된 대화/액션, 진행 중인 대화/액션, 진행될 대화/액션의 상태가 저장될 수 있다.
사용자 발화에 대응되는 도메인과 액션이 추출되지 않은 경우에는, 대화/액션 DB는 임의의 태스크를 생성하거나, 가장 최근에 저장된 태스크를 참조하도록 대화 액션 관리기(132b)에 요청할 수 있다.
대화/액션 DB에 입력 처리기(131)의 출력에 대응되는 대화 태스크 또는 액션 태스크가 존재하지 않으면, 대화 흐름 관리기(132a)는 대화 액션 관리기(132b)에 새로운 대화 태스크와 액션 태스크를 생성하도록 요청한다.
대화 흐름 관리기(132a)는 대화의 흐름을 관리할 때, 대화 정책 DB를 참조할 수 있다.
여기서 대화 정책 DB는 대화를 전개하기 위한 정책을 저장하며, 구체적으로 대화를 선택/시작/제안/정지/종료하기 위한 정책을 저장한다.
또한, 대화 정책 DB는 시스템이 응답을 출력하는 시점과 방법론에 대한 정책도 저장할 수 있으며, 다수의 서비스를 연계하여 응답을 만드는 정책과 기존의 액션을 삭제하고 다른 액션으로 교체하기 위한 정책을 저장할 수 있다.
대화/액션 DB에 입력 처리기(131)의 출력에 대응되는 대화 태스크와 액션 태스크가 존재하면, 대화 흐름 관리기(132a)는 대화 액션 관리기(132b)가 해당 대화 태스크와 액션 태스크를 참조하도록 요청한다.
대화 액션 관리기(132b)는 대화 흐름 관리기(132a)의 요청에 따라 대화 또는 액션을 생성/삭제/업데이트한다.
대화 액션 관리기(132b)는 대화/액션 DB에 저장 공간을 할당하여, 입력 처리기(131)의 출력에 대응되는 대화 태스크와 액션 태스크를 생성한다.
한편, 사용자의 발화로부터 도메인과 액션을 추출할 수 없는 경우, 대화 액션 관리기(132b)는 임의의 대화 상태를 생성할 수 있다. 이 경우, 모호성 해결기(132c)는 사용자의 발화 내용, 주변 상황, 차량 상태, 사용자 정보 등에 기초하여 사용자의 의도를 파악하고 이에 대응되는 적절한 액션을 판단할 수 있다.
모호성 해결기(132c)는 상황에 대한 모호성과 대화에 대한 모호성을 해결하여 궁극적으로 사용자의 의도를 명확히 한다. 즉 모호성 해결기(132c)는 대화에 대한 모호성 또는 상황에 대한 모호성을 해결한다. 예를 들어, 대화에 그 사람, 어제 거기, 아빠, 엄마, 할머니, 며느리 등과 같은 조응어가 포함되어 무엇을 지칭하는지 모호한 경우에 모호성 해결기(132c)는 상황 정보 DB, 장기 메모기 또는 단기 메모리를 참조하여 이러한 모호성을 해결하거나 이를 해결하기 위한 가이드를 제시할 수 있다.
모호성 해결기(132c)는 사용자의 발화나 상황에 모호성이 있는 경우이더라도 주변 상황 정보와 차량 상태 정보를 사용자의 발화와 함께 통합적으로 고려함으로써 사용자가 실제로 원하는 액션 또는 사용자에게 실제로 필요한 액션을 정확하게 파악하여 제공할 수 있다.
모호성 해결기(132c)는 판단한 액션에 관한 정보를 대화 액션 관리기(132b)로 전달할 수 있다. 이 경우, 대화 액션 관리기(132b)는 전달된 정보에 기초하여 대화/액션 DB(를 업데이트할 수 있다.
인자 관리기(132d)는 액션 수행에 필요한 인자를 관리한다.
인자 관리기(132d)는 액션 인자 DB에서 각 후보 액션을 수행하는데 사용되는 인자(이하, 액션 인자라 한다.)를 검색할 수 있다.
인자 관리기(132d)는 획득한 인자 값을 대화 액션 관리기(132b)로 전달한다. 이 경우, 대화 액션 관리기(132b)는 각 후보 액션 별 인자 값을 액션 상태에 추가하여 대화/액션 상태 DB를 업데이트 한다.
인자 관리기(132d)는 모든 후보 액션의 인자 값을 획득하는 것도 가능하고, 액션 우선순위 결정기(132e)에서 수행이 가능한 것으로 판단된 후보 액션의 인자 값만 획득하는 것도 가능하다.
또한, 인자 관리기(132d)는 동일한 정보를 나타내는 다양한 종류의 인자 값을 선택적으로 사용할 수 있다. 예를 들어, 길안내 액션을 수행하는데 사용되는 필수 인자는 현재 위치와 목적지를 포함할 수 있고, 선택 인자는 경로 타입을 포함할 수 있다. 선택 인자의 초기값으로 빠른 경로가 저장될 수 있다.
액션 우선순위 결정기(132e)는 복수의 후보 액션들에 대해 액션 수행 가부를 판단하고, 이들의 우선 순위를 결정한다.
액션 우선순위 결정기(132e)는 연관 액션 DB에서 입력 처리기(131)의 출력에 포함된 액션 또는 이벤트와 연관된 액션 목록을 검색하여 후보 액션을 추출한다.
여기서 연관 액션 DB는 상호 연관된 액션들과 그들 사이의 관계 및 이벤트와 연관된 액션과 그들 사이의 관계를 나타낼 수 있다. 예를 들어, 길안내, 차량 상태 점검, 주유소 추천과 같은 액션이 연관된 액션으로 분류될 수 있고, 이들의 관계는 상호 연계에 해당할 수 있다.
추출된 후보 액션 목록은 대화 액션 관리기(132b)로 전달되고, 대화 액션 관리기(132b)는 후보 액션 목록을 추가하여 대화/액션 상태 DB의 액션 상태를 업데이트한다.
액션 우선순위 결정기(132e)는 액션 수행 조건DB에서 각각의 후보 액션을 수행하기 위한 조건을 검색한다.
액션 우선순위 결정기(132e)는 후보 액션의 수행 조건을 대화 액션 관리기(132b)로 전달하고, 대화 액션 관리기(132b)는 각 후보 액션 별 액션 수행 조건을 추가하여 대화/액션 상태 DB의 액션 상태를 업데이트한다.
액션 우선순위 결정기(132e)는 상황 정보 DB, 장기 메모리, 단기 메모리 또는 대화/액션 상태 DB에서 액션 수행 조건 판단을 위해 필요한 인자(이하, 조건 판단 인자라 한다)를 검색하고, 검색된 인자를 이용하여 각 후보 액션의 수행 가부를 판단할 수 있다
액션 우선순위 결정기(132e)는 액션 수행 조건 판단을 위해 필요한 인자를 이용하여 각 후보 액션의 수행 가부를 판단할 수 있다. 또한, 각 후보 액션의 수행 가부 및 대화 정책 DB에 저장된 우선 순위 결정 규칙에 기초하여 각 후보 액션의 우선 순위를 결정할 수 있다.
액션 우선순위 결정기(132e)가 사용자의 발화나 상황 정보에 직접적으로 관련된 액션뿐만 아니라 이와 연관된 액션 목록까지 검색하고 이들 사이의 우선 순위를 결정함으로써 사용자에게 가장 필요한 서비스를 제공할 수 있게 된다.
액션 우선순위 결정기(132e)는 각 후보 액션의 수행 가부 및 우선 순위를 대화 액션 관리기(132b)로 전달하고, 대화 액션 관리기(132b)는 전달된 정보를 추가하여 대화/액션 상태 DB의 액션 상태를 업데이트한다.
외부 정보 관리기(132f)는 외부 컨텐츠 목록 및 관련 정보를 관리하고 외부 컨텐츠 쿼리에 필요한 인자 정보를 관리한다.
도 6에 도시된 바와 같이, 결과 처리기(133)는 응답 생성 관리기(133a), 대화 응답 생성기(133b), 출력 관리기(133c), 서비스 편집기(133d), 메모리 관리기(133e) 및 명령어 생성기(133f)를 포함한다.
사용자의 발화나 상황에 대응하여 출력되는 응답은 대화 응답, 차량 제어, 외부 컨텐츠 제공 등을 포함할 수 있다. 대화 응답은 초기 대화, 질의, 정보 제공을 포함하는 답변 등의 형식을 가질 수 있고 응답 템플릿에 데이터베이스화되어 저장될 수 있다.
응답 생성 관리기(133a)는 대화 응답 생성기(133b)와 명령어 생성기(133f)에 대화 관리기(132)에서 결정된 액션을 수행하기 위해 필요한 응답의 생성을 요청한다.
이를 위해, 수행될 액션에 관한 정보를 대화 응답 생성기(133b)와 명령어 생성기(133f)에 전송할 수 있고, 수행될 액션에 관한 정보는 액션명, 인자 값 등을 포함할 수 있다. 응답을 생성함에 있어, 대화 응답 생성기(133b)와 명령어 생성기(133f)는 현재 대화 상태와 액션 상태를 참조할 수 있다.
응답 생성 관리기(133a)는 대화 응답 생성기(133b)로부터 전달받은 대화 응답을 출력 관리기(133c)에 전달한다.
응답 생성 관리기(133a)는 대화 응답 생성기(133b), 명령어 생성기(133f) 또는 서비스 편집기(133d)로부터 전달받은 응답을 출력 관리기(133c)에 전달한다.
대화 응답 생성기(133b)는 응답 생성 관리기(133a)의 요청에 따라 텍스트 응답, 이미지 응답 또는 오디오 응답을 생성한다.
대화 응답 생성기(133b)는 응답 템플릿을 검색하여 대화 응답 서식을 추출할 수 있고, 추출된 대화 응답 서식에 필요한 인자 값을 채워 대화 응답을 생성한다. 생성된 대화 응답은 응답 생성 관리기(133a)로 전달된다.
출력 관리기(133c)는 생성된 텍스트 응답, 이미지 응답 또는 오디오 응답을 출력하거나 명령어 생성기(133f)가 생성한 명령어를 출력하고, 출력이 복수인 경우에는 출력 순서를 결정한다.
출력 관리기(133c)는 대화 응답 생성기(133b)가 생성한 대화 응답과 명령어 생성기(133f)가 생성한 명령어의 출력 타이밍, 출력 순서, 출력 위치 등을 결정한다.
출력 관리기(133c)는 응답 생성기(133b)가 생성한 대화 응답과 명령어 생성기(133f)가 생성한 명령어를 적절한 타이밍에 적절한 순서로 적절한 출력 위치에 전송하여 응답을 출력한다.
TTS(Text to Speech) 응답은 스피커(142)를 통해 출력할 수 있고, 텍스트 응답은 디스플레이(141)를 통해 출력할 수 있다. 대화 응답을 TTS 형태로 출력하는 경우에는 차량(1)에 마련된 TTS 모듈을 이용하거나 출력 관리기(133c)가 TTS 모듈을 포함할 수도 있다.
출력 관리기(133c)는 대화 응답 생성기(133b)가 생성한 대화 응답을 스피커(141)를 통해 출력할 수 있다.
명령어는 그 제어 대상에 따라 제어기(150)로 전송될 수도 있고, 외부 컨텐츠 서버와 통신하기 위한 통신 장치(170)로 전송될 수도 있다.
서비스 편집기(133d)는 사용자가 원하는 서비스를 제공하기 위해 다수의 서비스를 순차적 또는 산발적으로 실행하고 결과값을 취합해준다.
메모리 관리기(133e)는 응답 생성 관리기(133a) 및 출력 관리기(133c)로부터 전달받은 내용에 기초하여 장기 메모리와 단기 메모리를 관리한다.
명령어 생성기(133f)는 응답 생성 관리기(133a)의 요청에 따라 차량 제어를 위한 명령어 또는 외부 컨텐츠를 이용한 서비스를 제공하기 위한 명령어를 생성한다.
명령어 생성기(133f)는 사용자의 발화나 상황에 대한 응답이 차량 제어 또는 외부 컨텐츠 제공을 포함하는 경우, 이를 실행하기 위한 명령어를 생성한다. 예를 들어, 대화 관리기(132)에서 결정된 액션이 공조 장치, 윈도우, 시트, AVN 등의 제어인 경우에 해당 제어를 실행하기 위한 명령어를 생성하여 응답 생성 관리기(133a)에 전달한다.
명령어 생성기(133f)에서 생성한 명령어가 복수인 경우, 서비스 편집기(133d)가 복수의 명령어를 실행하는 방법과 순서를 결정하여 응답 생성 관리기(133a)에 전달한다.
또한, 사용자가 감정을 표현하는 발화를 입력한 경우, 사용자의 발화로부터 특정 도메인이나 액션은 추출할 수 없지만 대화 시스템(130)은 주변 상황 정보, 차량 상태 정보, 사용자 상태 정보 등을 이용하여 사용자의 의도를 파악하고 대화를 전개할 수 있다.
도 7은 실시 예에 따른 대화 시스템의 제어 순서도이다.
대화 시스템은 마이크로폰을 통해 사용자의 명령을 음성으로 입력 받을 수 있다(201). 이 경우, 대화 시스템은 음향을 입력 받아 전기적인 신호(즉 음성 신호)로 변환할 수 있다.
대화 시스템은 음성 신호에 기초하여 사용자 음성을 인식(202)한다.
이때 대화 시스템은 음성 신호를 텍스트 형태의 발화문으로 변환하고, 사용자의 발화문에 자연어 이해(Natural Language Understanding) 알고리즘을 적용하여 사용자의 의도를 파악한다.
좀 더 구체적으로, 대화 시스템은 음성 신호를 텍스트 형태의 발화문을 변환할 때, 그대로 변환하기 보다 사용자의 의도와 상황에 맞는 텍스트 형태의 발화문으로 보정할 수 있다.
예를 들어, 사용자가 '달이야, 에어컨 키라'라고 발화한 경우, 대화 시스템은 '달이야, 에어컨 키라'라는 텍스트로 그대로 변환하지 않고, STT DB(134a)에 저장된 정보를 기반으로, 대화 시스템에서 이해할 수 있는 '달이야, 에어컨 켜라'라는 텍스트로 보정할 수 있다.
즉 대화 시스템은 확인된 적어도 하나 또는 둘 이상의 음성 신호들 중 유사도가 가장 높은 음성 신호를 선택하고 선택된 음성 신호와 매칭된 텍스트를 확인한다.
아울러 대화 시스템은STT DB(134a) 내 음성 신호 중 인식된 음성 신호와 일정 유사도 이상의 유사도를 가지는 적어도 하나 또는 둘 이상의 음성 신호들을 확인하고 확인된 적어도 하나 또는 둘 이상의 음성 신호들에 대응하는 텍스트들을 확인한 후 확인된 텍스트들 중 사용자의 의도와 상황에 대응하는 하나의 텍스트를 선택할 수 있다.
이와 같이, 대화 시스템은 STT DB(134a) 내 음성 신호와 음성 인식된 음성 신호를 비교함으로써 부정확한 발음의 음성을 정확한 발음의 음성에 대한 텍스트로 정확하게 보정할 수 있고, 비표준어에 대한 텍스트를 표준어에 대한 텍스트로 보정할 수 있다.
또한 대화 시스템은 사용자의 의도 및 상황에 기초하여 변환된 텍스트가 부정확한 발음에 대한 텍스트인지를 판단하고 변환된 텍스트가 부정확한 발음에 대한 텍스트라고 판단되면 STT DB(134a)의 정보, 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 정확한 발음에 대한 텍스트로 보정할 수 있다.
또한 대화 시스템은 사용자의 의도 및 상황에 기초하여 변환된 텍스트가 비표준어에 대한 텍스트인지를 판단하고 변환된 텍스트가 비표준어에 대한 텍스트라고 판단되면 STT DB(134a)의 정보, 사용자의 의도 및 상황에 기초하여 변환된 텍스트를 표준어에 대한 텍스트로 보정할 수 있다.
예를 들어, 사용자가 '달이야, 에어컨 키라'라고 발화한 경우, 대화 시스템은 '달이야, 에어컨 키라'라는 텍스트로 그대로 변환하지 않고, STT DB(134a)에 저장된 정보와, 날씨 상황, 에어컨의 조작 상황을 기반으로, 대화 시스템에서 이해할 수 있는 '달이야, 에어컨 켜라'라는 텍스트로 보정할 수 있다.
대화 시스템은 발화문에 대해 자연어 이해 기술(Natural Language Understanding)을 적용하여 발화문이 내포하는 사용자의 의도를 파악하고, 텍스트 형태의 발화문에 대해 형태소 분석을 수행한 후 형태소 분석 결과에 기초하여 발화문으로부터 도메인을 추출한다. 즉 대화 시스템은 자연어 이해를 수행한다(203).
대화 시스템은 사용자 발화에 대한 의도를 분석하기 위해 발화문이 갖는 화행을 분석하고, 발화문에 대응되는 도메인, 개체명, 화행 등의 정보에 기초하여 사용자의 발화 의도를 파악하고, 발화 의도에 대응되는 액션을 결정할 수 있다.
대화 시스템은 사용자의 조작을 통해 수신된 사용자 명령, 카메라에 의해 촬영된 사용자의 영상을 수신하고, 차량의 상태 정보를 수신하여 사용자의 의도나 상황을 파악하는 것도 가능하다. 즉 대화 시스템은 사용자 음성 외에 차량의 상태나 주행 환경과 관련된 정보를 수집하고, 수집된 정보를 이용하여 상황을 이해한다(204).
대화 시스템은 결정된 액션을 수행하기 위해 필요한 응답을 생성한다(205). 이 경우 대화 시스템은 응답 템플릿을 검색하여 대화 응답 서식을 추출할 수 있고, 추출된 대화 응답 서식에 필요한 인자 값을 채워 대화 응답을 생성할 수 있다.
이때 응답은 텍스트 응답, 이미지 응답 또는 오디오 응답으로 생성할 수 있다.
대화 시스템은 TTS(Text to Speech) 응답을 스피커(142)를 통해 출력할 수 있다(206).
도 8은 실시 예에 따른 대화 시스템의 학습 제어 순서도로, 학습이 가능한 대화 시스템에서의 제어 순서도이다.
대화 시스템은 마이크로폰을 통해 사용자의 명령을 음성으로 입력 받을 수 있다. 이 경우, 대화 시스템은 음향을 입력 받아 전기적인 신호(즉 음성 신호)로 변환할 수 있다.
대화 시스템은 음성 신호에 기초하여 사용자 음성을 인식(211)한다.
이때 대화 시스템은 인식된 음성에 대한 음성 신호를 텍스트 형태의 발화문으로 변환하고, 사용자의 발화문에 자연어 이해(Natural Language Understanding) 알고리즘을 적용하여 사용자의 의도를 파악한다.
좀 더 구체적으로, 대화 시스템은 텍스트 형태의 발화문을 변환할 때, 그대로 이해하기 보다 사용자의 의도와 상황에 맞는 텍스트 형태의 발화문으로 보정할 수 있다.
즉 대화 시스템은 확인된 적어도 하나 또는 둘 이상의 음성 신호들 중 유사도가 가장 높은 음성 신호를 선택하고 선택된 음성 신호와 매칭된 텍스트를 확인한 후 확인된 텍스트를 기반으로 발화문을 보정할 수 있다.
아울러 대화 시스템은 STT DB(134a)에 저장된 정보를 바탕으로 수신된 음성 신호에 대응하는 텍스트를 확인하는 것도 가능하다. 이 경우, 대화 시스템은 확인된 텍스트가 비표준어나 부정확한 발음의 언어에 대한 텍스트라고 판단되면 확인된 텍스트에 대응하는 표준어를 확인하는 동작을 더 수행할 수 있다.
예를 들어, 사용자가 '메시지 넹기라'라고 발화한 경우, 대화 시스템은 '메시지 넹기라'라는 텍스트로 그대로 변환하지 않고, STT DB(134a)에 저장된 정보를 기반으로, 대화 시스템에서 이해할 수 있는 '메시지 남겨라'라는 텍스트로 보정할 수 있다.
대화 시스템은 발화문에 대해 자연어 이해 기술(Natural Language Understanding)을 적용하여 발화문이 내포하는 사용자의 의도를 파악하고, 텍스트 형태의 발화문에 대해 형태소 분석을 수행한 후 형태소 분석 결과에 기초하여 발화문으로부터 도메인을 추출한다. 즉 대화 시스템은 자연어 이해를 수행한다(212).
대화 시스템은 사용자 발화에 대한 의도를 분석하기 위해 발화문이 갖는 화행을 분석하고, 발화문에 대응되는 도메인, 개체명, 화행 등의 정보에 기초하여 사용자의 발화 의도를 파악하고, 발화 의도에 대응되는 액션 검출에 성공하였는지를 판단(213)한다.
대화 시스템은 액션 검출에 성공하였다고 판단되면 검출된 액션을 수행하기 위해 필요한 응답을 생성한다. 이 경우 대화 시스템은 응답 템플릿을 검색하여 대화 응답 서식을 추출할 수 있고, 추출된 대화 응답 서식에 필요한 인자 값을 채워 대화 응답을 생성할 수 있다.
액션 검출에 성공하였다고 판단되는 것은, 비표준어나 부정확한 음성에 대한 텍스트의 정보가 STT DB(134a)에 저장되어 있어, 보정된 텍스트에 대응하는 액션이 검출에 성공하였음을 의미한다.
대화 시스템은 TTS(Text to Speech) 응답을 스피커(142)를 통해 출력할 수 있다.
그리고 대화 시스템은 음성 인식 결과에 기초하여 STT DB(134a)에 저장된 정보를 업데이트할 수 있다. 즉 대화 시스템은 인식된 음성에 대한 음성 신호와 선택된 텍스트를 추가로 STT DB(134a)에 저장할 수 있다. 이와 같이 대화 시스템은 인식된 음성 신호에 대한 텍스트의 보정 학습을 수행할 수 있다.
대화 시스템은 인식된 음성에 대한 음성 신호와 선택된 텍스트를 추가로 STT DB(134a)에 저장하되 검출된 액션에 대한 정보를 함께 저장할 수 있다.
만약, 대화 시스템은 액션 검출에 실패하였다고 판단되면 STT DB(134a) 내 음성 신호 중 유사도가 가장 높은 음성 신호를 선택하고 선택된 음성 신호에 매칭된 텍스트를 확인하고 확인된 텍스트와 음성 신호를 함께 STT DB(134a)에 저장하도록 한다.
액션 검출에 실패하였다고 판단되는 것은, 비표준어나 부정확한 음성에 대한 텍스트의 정보가 STT DB(134a)에 저장되어 있지 않아, 보정된 텍스트에 대응하는 액션이 검출에 실패하였음을 의미한다.
또한 차대화 시스템은 액션 검출에 실패하였다고 판단되면 STT DB(134a) 내 음성 신호와 텍스트에 대한 파라미터를 재설정하고 재설정된 음성 신호와 텍스트를 STT DB(134a)에 저장하도록 하는 것도 가능하다(215).
여기서 음성 신호와 텍스트에 대한 파라미터를 재설정하는 것은, 음성 신호에 대응하는 텍스트를 제2입력 장치를 통해 사용자로부터 수신받는 것을 포함하고, 발화한 음성의 정확한 발음 또는 발화한 음성의 표준어를 제1입력 장치를 통해 2차적으로 음성으로 수신하는 것을 포함할 수 있다.
대화 시스템은 STT DB(134a)에 저장된 정보를 변경, 삭제, 추가하는 동작을 통해 부정확한 발음에 대한 음성과 비표준어에 대한 음성을 텍스트로 변환하는 학습을 수행할 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다.본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
1: 차량 110: 제1입력장치
120: 제2입력장치 130: 대화 시스템
140: 출력장치 150: 제어기
160: 감지부 170: 통신 장치

Claims (17)

  1. 비표준어에 대응하는 표준어와, 부정확한 발음의 언어에 대응하는 표준어에 대한 정보를 저장하는 저장부;
    음성 신호를 수신하고 상기 수신된 음성 신호를 텍스트로 변환하고 상기 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어라고 판단되면 상기 저장부에 저장된 정보에 기초하여 상기 변환된 텍스트를 표준어의 텍스트로 보정하는 음성 인식기; 및
    상기 음성 인식기에서 보정된 텍스트에 대응하는 응답을 생성하고 상기 생성된 응답의 출력을 제어하는 결과 처리기를 포함하는 대화 시스템.
  2. 제 1 항에 있어서,
    음성 신호를 수신하는 제1입력 장치를 더 포함하고,
    상기 저장부는, 복수 개의 음성 신호에 각각 대응하는 텍스트에 대한 정보를 저장하고,
    상기 음성 인식기는, 상기 저장부에 저장된 정보에 기초하여 상기 수신된 음성 신호를 텍스트로 변환하는 대화 시스템.
  3. 제 2 항에 있어서,
    상기 음성 인식기에서 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 상기 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고,
    상기 음성 인식기는, 상기 자연어 이해기에서 액션이 결정되지 않았다고 판단되면 상기 수신된 음성 신호와 상기 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고 상기 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인하는 대화 시스템.
  4. 제 2 항에 있어서,
    상기 음성 인식기에서 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 상기 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어이해기를 더 포함하고,
    상기 음성 인식기는, 상기 자연어 이해기에서 액션이 결정되지 않았다고 판단되면 상기 수신된 음성 신호와 상기 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고 상기 확인된 유사도 중 유사도가 가장 높은 음성 신호에 대응하는 텍스트를 확인하는 대화 시스템.
  5. 제 1 항에 있어서,
    상기 음성 인식기에서 보정된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 상기 파악한 사용자의 발화 의도에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고,
    상기 결과 처리기는, 상기 결정된 액션에 대응하는 응답을 생성하고 상기 생성된 응답에 대응하는 텍스트를 음성 신호로 변환하는 대화 시스템.
  6. 제 1 항에 있어서,
    사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하는 제2입력 장치;
    상기 제2입력 장치에 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하는 상황정보처리기; 및
    상기 음성 인식기에서 보정된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 상기 파악한 사용자의 발화 의도와 상기 사용자의 상황에 대응하는 액션을 결정하는 자연어 이해기를 더 포함하고,
    상기 결과 처리기는, 상기 결정된 액션에 대응하는 응답을 생성하고 상기 생성된 응답에 대응하는 텍스트를 음성 신호로 변환하는 대화 시스템.
  7. 제 6 항에 있어서, 상기 음성 인식기는,
    상기 파악한 사용자의 발화 의도와 상기 사용자의 상황에 기초하여 상기 변환된 텍스트가 비표준어 또는 부정확한 발음의 언어에 대한 텍스트인지를 판단하는 대화 시스템.
  8. 음성 신호를 수신하는 제1입력 장치;
    사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하는 제2입력 장치;
    복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보를 저장하는 저장부; 및
    상기 저장부에 저장된 정보에 기초하여 상기 수신된 음성 신호를 표준어의 텍스트로 변환하고 상기 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고 상기 제2입력 장치에 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하고, 상기 파악한 사용자의 발화 의도와 상기 판단한 사용자의 상황에 대응하는 액션을 결정하고, 상기 결정된 액션에 대응하는 응답을 생성하고 상기 생성된 응답을 출력하는 대화 시스템을 포함하고,
    상기 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어의 텍스트, 비표준어의 텍스트 및 부정확한 발음의 언어의 텍스트를 포함하는 차량.
  9. 제 8 항에 있어서,
    상기 생성된 응답을 이미지로 출력하는 디스플레이; 및
    상기 생성된 응답을 오디오로 출력하는 스피커 중 적어도 하나를 포함하는 차량.
  10. 제 8 항에 있어서,
    상기 대화 시스템에서 출력한 응답에 대응하여 공기 조화기, 윈도우, 도어, 시트, 오디오/비디오/내비게이션(AVN), 히터, 와이퍼, 사이드 미러, 내부의 램프 및 외부의 램프 중 적어도 하나를 제어하는 제어기를 더 포함하는 차량.
  11. 제 8 항에 있어서, 상기 대화 시스템은,
    상기 액션이 결정되지 않았다고 판단되면 상기 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고, 상기 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인하고 상기 확인한 텍스트에 대한 액션을 결정하는 차량.
  12. 제 11항에 있어서, 상기 대화 시스템은,
    상기 확인한 텍스트에 대한 액션이 결정되면 상기 결정된 액션과 상기 확인한 텍스트에 대한 정보를 상기 저장부에 저장하도록 하는 차량.
  13. 제 8 항에 있어서, 상기 대화 시스템은,
    상기 변환된 텍스트에 대한 액션이 결정되면 상기 결정된 액션과 상기 변환된 텍스트에 대한 정보를 상기 저장부에 저장하도록 하는 차량.
  14. 음성 신호를 수신하고,
    저장부에 저장된 정보에 기초하여 상기 수신된 음성 신호를 표준어의 텍스트로 변환하고,
    상기 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고,
    상기 파악한 사용자의 발화 의도와 상기 변환된 텍스트에 대응하는 액션을 결정하고,
    상기 결정된 액션에 대응하는 응답을 생성하고,
    상기 생성된 응답을 음성 신호로 출력하고,
    상기 저장부에 저장된 정보는, 복수 개의 음성 신호에 각각 대응하는 텍스트와, 각 텍스트에 대응하는 표준어에 대한 정보이고,
    상기 복수 개의 음성 신호에 각각 대응하는 텍스트는, 표준어의 텍스트, 비표준어의 텍스트 및 부정확한 발음의 언어의 텍스트를 포함하는 대화 시스템의 제어 방법.
  15. 제 14 항에 있어서, 상기 액션을 결정하는 것은,
    사용자 입력, 차량의 상태 정보, 주행 환경 정보 및 사용자 정보 중 적어도 하나의 정보를 수신하고,
    상기 수신된 적어도 하나의 정보에 기초하여 사용자의 상황을 판단하고,
    상기 변환된 텍스트에 기초하여 사용자의 발화 의도를 파악하고,
    상기 파악한 사용자의 발화 의도와 상기 판단한 사용자의 상황에 대응하는 액션을 결정하는 것을 포함하는 대화 시스템의 제어 방법.
  16. 제 14 항에 있어서,
    상기 액션이 결정되지 않았다고 판단되면 상기 수신된 음성 신호와 저장부에 저장된 복수 개의 음성 신호와의 유사도를 각각 확인하고,
    상기 확인된 유사도 중 일정 유사도 이상으로 높은 음성 신호에 대응하는 텍스트를 확인하고,
    상기 확인한 텍스트에 대한 액션을 결정하고,
    상기 확인한 텍스트에 대한 액션이 결정되면 상기 결정된 액션과 상기 확인한 텍스트에 대한 정보를 상기 저장부에 저장하도록 하는 것을 더 포함하는 대화 시스템의 제어 방법.
  17. 제 14 항에 있어서, 상기 응답을 생성하는 것은,
    차량에 마련된 공기 조화기, 윈도우, 도어, 시트, 오디오/비디오/내비게이션(AVN), 히터, 와이퍼, 사이드 미러, 내부의 램프 및 외부의 램프 중 적어도 하나를 제어하기 위한 응답을 생성하는 것을 포함하는 대화 시스템의 제어 방법.
KR1020200036791A 2020-03-26 2020-03-26 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법 KR20210120286A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200036791A KR20210120286A (ko) 2020-03-26 2020-03-26 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법
US17/087,114 US20210303263A1 (en) 2020-03-26 2020-11-02 Dialogue system and vehicle having the same, and method of controlling dialogue system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200036791A KR20210120286A (ko) 2020-03-26 2020-03-26 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법

Publications (1)

Publication Number Publication Date
KR20210120286A true KR20210120286A (ko) 2021-10-07

Family

ID=77855944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200036791A KR20210120286A (ko) 2020-03-26 2020-03-26 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법

Country Status (2)

Country Link
US (1) US20210303263A1 (ko)
KR (1) KR20210120286A (ko)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6605995B2 (ja) * 2016-03-16 2019-11-13 株式会社東芝 音声認識誤り修正装置、方法及びプログラム
KR102580904B1 (ko) * 2016-09-26 2023-09-20 삼성전자주식회사 음성 신호를 번역하는 방법 및 그에 따른 전자 디바이스
KR102426171B1 (ko) * 2017-10-13 2022-07-29 현대자동차주식회사 대화 시스템, 이를 포함하는 차량 및 대화 서비스 처리 방법

Also Published As

Publication number Publication date
US20210303263A1 (en) 2021-09-30

Similar Documents

Publication Publication Date Title
US10839797B2 (en) Dialogue system, vehicle having the same and dialogue processing method
KR102426171B1 (ko) 대화 시스템, 이를 포함하는 차량 및 대화 서비스 처리 방법
KR102414456B1 (ko) 대화 시스템, 이를 포함하는 차량 및 유고 정보 처리 방법
US10950233B2 (en) Dialogue system, vehicle having the same and dialogue processing method
KR20180075050A (ko) 대화 처리 장치, 이를 포함하는 차량 및 대화 처리 방법
US10997974B2 (en) Dialogue system, and dialogue processing method
US10861460B2 (en) Dialogue system, vehicle having the same and dialogue processing method
US11508367B2 (en) Dialogue system and dialogue processing method
KR20200000155A (ko) 대화 시스템 및 이를 이용한 차량
US11004450B2 (en) Dialogue system and dialogue processing method
US20220198151A1 (en) Dialogue system, a vehicle having the same, and a method of controlling a dialogue system
US11783806B2 (en) Dialogue system and dialogue processing method
KR102487669B1 (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
KR20210120286A (ko) 대화 시스템, 그를 가지는 차량 및 대화 시스템의 제어 방법
KR102448719B1 (ko) 대화 시스템과 이를 포함하는 차량 및 모바일 기기와 대화 처리 방법
KR20200095636A (ko) 대화 시스템이 구비된 차량 및 그 제어 방법
CN110562260A (zh) 对话系统和对话处理方法
KR20200123495A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
KR20220073513A (ko) 대화 시스템, 차량 및 대화 시스템의 제어 방법
KR20190135676A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법

Legal Events

Date Code Title Description
A201 Request for examination