[go: up one dir, main page]

KR20210066647A - 전자 장치 및 이의 제어 방법 - Google Patents

전자 장치 및 이의 제어 방법 Download PDF

Info

Publication number
KR20210066647A
KR20210066647A KR1020190156146A KR20190156146A KR20210066647A KR 20210066647 A KR20210066647 A KR 20210066647A KR 1020190156146 A KR1020190156146 A KR 1020190156146A KR 20190156146 A KR20190156146 A KR 20190156146A KR 20210066647 A KR20210066647 A KR 20210066647A
Authority
KR
South Korea
Prior art keywords
keyword
user
voice
electronic device
recognition model
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020190156146A
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 KR1020190156146A priority Critical patent/KR20210066647A/ko
Priority to US17/003,176 priority patent/US11580964B2/en
Publication of KR20210066647A publication Critical patent/KR20210066647A/ko
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • 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/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/22Interactive procedures; Man-machine interfaces
    • G10L17/24Interactive procedures; Man-machine interfaces the user being prompted to utter a password or a predefined phrase
    • 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • 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
    • 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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building
    • 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/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/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/193Formal grammars, e.g. finite state automata, context free grammars or word networks
    • 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/08Speech classification or search
    • G10L2015/088Word spotting
    • 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/223Execution procedure of a spoken command
    • 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/225Feedback of the input speech
    • 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)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

전자 장치 및 이의 제어 방법이 제공된다. 본 전자 장치는 마이크, 복수의 키워드 인식 모델을 저장하는 메모리, 상기 마이크 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서를 포함하고, 상기 프로세서는, 상기 전자 장치의 동작 상태 정보를 바탕으로 상기 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행하고, 상기 마이크를 통해 제1 사용자 음성이 입력되면, 상기 실행된 키워드 인식 모델을 이용하여 상기 실행된 키워드 인식 모델에 대응하는 적어도 하나의 키워드가 상기 제1 사용자 음성에 포함되어 있는지를 확인하고, 상기 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 상기 적어도 하나의 키워드에 대응되는 상기 전자 장치의 동작을 수행할 수 있다.

Description

전자 장치 및 이의 제어 방법{Electronic device and Method for controlling the electronic device thereof}
본 개시는 전자 장치 및 이의 제어 방법에 관한 것으로서, 더욱 상세하게는 사용자 음성에 포함된 키워드를 인식하고, 인식된 키워드를 바탕으로 동작을 수행하는 전자 장치 및 이의 제어 방법에 관한 것이다.
근래에는 인공 지능 시스템을 활용한 음성 인식 시스템이 다양한 분야에서 이용되고 있다. 인공 지능 시스템은 기존의 룰(rule) 기반 스마트 시스템과 달리 기계가 스스로 학습시키고 판단하며 똑똑해지는 시스템이다. 인공 지능 시스템은 사용할수록 인식률이 향상되고 사용자 취향을 보다 정확하게 이해할 수 있게 되어, 기존 룰 기반 스마트 시스템은 점차 딥러닝 기반 인공 지능 시스템으로 대체되고 있다.
인공 지능 기술은 기계학습(예로, 딥러닝) 및 기계학습을 활용한 요소 기술들로 구성된다.
기계학습은 입력 데이터들의 특징을 스스로 분류/학습시키는 알고리즘 기술이며, 요소기술은 딥러닝 등의 기계학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술로서, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기술 분야로 구성된다. 특히, 언어적 이해는 인간의 언어/문자를 인식하고 응용/처리하는 기술로서, 자연어 처리, 기계 번역, 대화시스템, 질의 응답, 음성 인식/합성 등을 포함한다.
한편, 기존의 음성 인식 시스템의 경우, 사용자 발화의 의도를 정확히 파악하지 못하고 잘못된 응답을 제공하는 동안 사용자는 동작의 중지를 요구하는 음성을 통해 음성 인식 시스템의 동작을 중지할 수 없다는 한계가 존재하였다.
본 개시는 상술한 문제점을 해결하기 위해 안출된 것으로, 본 개시의 목적은 전자 장치의 동작 상태 정보를 바탕으로 실행되는 적어도 하나의 키워드 인식 모델을 통해 키워드를 인식하고 인식된 키워드를 바탕으로 동작을 결정하는 전자 장치 및 이의 제어 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 개시의 일 실시예에 따른, 전자 장치는 마이크, 복수의 키워드 인식 모델을 저장하는 메모리, 상기 마이크 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서를 포함하고, 상기 프로세서는 상기 전자 장치의 동작 상태 정보를 바탕으로 상기 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행하고, 상기 마이크를 통해 제1 사용자 음성이 입력되면, 상기 실행된 키워드 인식 모델을 이용하여 상기 실행된 키워드 인식 모델에 대응하는 적어도 하나의 키워드가 제1 사용자 음성에 포함되어 있는지를 확인하고, 상기 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 상기 적어도 하나의 키워드에 대응하는 상기 전자 장치의 동작을 수행할 수 있다.
한편, 상술한 목적을 달성하기 위한 실시예에 따른 전자 장치의 제어 방법은 전자 장치의 제어 방법에 있어서, 상기 전자 장치의 동작 상태 정보를 바탕으로 상기 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행하는 단계, 마이크를 통해 제1 사용자 음성이 입력되면, 상기 실행된 키워드 인식 모델을 이용하여 상기 실행된 키워드 인식 모델에 대응되는 적어도 하나의 키워드가 상기 제1 사용자 음성에 포함되어 있는지를 확인하는 단계 및 상기 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 상기 적어도 하나의 키워드에 대응하는 상기 전자 장치의 동작을 수행하는 단계를 포함할 수 있다.
상술한 바와 같이 본 개시의 다양한 실시예에 의해, 전자 장치는 전자 장치의 상태 정보를 바탕으로 실행된 적어도 하나의 키워드 인식 모델을 통해 키워드를 인식하여 동작을 결정함으로써, 사용자는 대화 시스템을 보다 효율적으로 활용할 수 있다.
도 1a은 본 개시의 일 실시예에 따른, 전자 장치의 구성 및 동작을 설명하기 위한 도면,
도 1b는 본 개시의 일 실시예에 따른, 키워드 인식 모델의 구성 및 동작을 설명하기 위한 도면,
도 2는 본 개시의 일 실시예에 따른, 전자 장치의 제어 방법을 설명하기 위한 순서도,
도 3a 및 도 3b는 본 개시의 일 실시예에 따른, 제1 키워드 인식 모델이 실행될 때의 전자 장치의 동작을 설명하기 위한 도면,
도 4a, 도 4b 및 도 4c는 본 개시의 일 실시예에 따른, 제2 키워드 인식 모델이 실행될 때의 전자 장치의 동작을 설명하기 위한 도면,
도 5는 본 개시의 일 실시예예 따른, 전자 장치가 키워드를 등록하는 과정을 설명하기 위한 도면,
도 6은 본 개시의 일 실시예에 따른, 전자 장치의 구성을 상세히 도시한 블록도이다.
이하에서는 첨부한 도면을 참고하여 본 개시에 따른 실시 예에 대하여, 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.
도 1a는 본 개시의 일 실시예에 따른, 전자 장치의 구성 및 동작을 설명하기 위한 도면이다. 도 1a에 도시된 바와 같이 전자 장치(100)는 마이크(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 다만, 도 1a에 도시된 구성은 본 개시의 실시예들을 구현하기 위한 예시도이며, 통상의 기술자에게 자명한 수준의 적절한 하드웨어 및 소프트웨어 구성들이 전자 장치(100)에 추가적으로 포함될 수 있다.
마이크(110)는 사용자 음성을 입력받을 수 있다. 특히, 마이크(110)는 다양한 동작을 요청하는 키워드가 포함된 사용자 음성을 입력받을 수 있다. 또한, 마이크(110)는 특정 정보를 요청하는 사용자 질의를 입력받을 수 있다.
한편, 마이크(110)는 전자 장치(100) 내부에 구비될 수 있으나, 외부에 구비되어 전자 장치(100)와 전기적으로 연결될 수 있다. 또한, 마이크(110)가 외부에 구비된 경우, 마이크(110)는 유/무선 인터페이스(예를 들어, Wi-Fi, 블루투스)을 통해 생성된 사용자 음성 신호를 프로세서(130)에 전송할 수 있다.
메모리(120)는 전자 장치(100)의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 저장할 수 있다. 특히, 메모리(120)는 비휘발성 메모리(예를 들어, RAM(Dynamic Random-Access Memory) 및 SRAM(Static RAM), 휘발성 메모리(플래시 메모리(Flash Memory), PROM(Programmable Read-Only Memory), MRAM(Magnetoresistive Random-Access Memory) 및 RRAM(Resistive RAM)), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등으로 구현될 수 있다.
한편, 휘발성 메모리는 저장된 정보를 유지하기 위해서는 지속적인 전력 공급이 필요한 메모리를 말한다. 휘발성 메모리는 프로세서(130)와 연동될 수 있는 프로세서(130)와 별개의 구성 요소로 구현될 수 있으나 이는 일 실시예에 불과하며, 휘발성 메모리는 프로세서(140)의 일 구성요소로서 프로세서(130)에 포함된 형태로 구현될 수 있다. 그리고, 비휘발성 메모리는 전력 공급이 중단되더라도 저장된 정보를 유지할 수 있는 메모리를 말한다.
메모리(120)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다. 본 개시에서 메모리라는 용어는 메모리(120), 프로세서(130) 내 롬(미도시), 램(미도시) 또는 전자 장치(100)에 장착되는 메모리 카드(미도시)(예를 들어, micro SD 카드, 메모리 스틱)를 포함할 수 있다. 또한, 메모리(120)에는 디스플레이의 디스플레이 영역에 표시될 각종 화면을 구성하기 위한 프로그램 및 데이터 등이 저장될 수 있다.
특히, 메모리(120)는 키워드 인식 모델(10) 및 대화 시스템(20)을 저장할 수 있다. 이하 본 개시를 설명함에 있어서 키워드 인식 모델(10) 및 대화 시스템(20)은 구별되는 별개의 구성임을 전제로 설명할 것이지만, 이는 본 개시에 따른 전자 장치(100)의 동작을 명확하게 설명하기 위한 것일 뿐이며, 키워드 인식 모델(10)은 대화 시스템(20)의 일 구성요소로 포함된 형태로 구현될 수도 있다.
그리고, 메모리(120)는 키워드 인식 모델(10) 및 대화 시스템(20)을 실행하기 위한 프로그램을 저장할 수 있다. 또한, 메모리(120)는 대화 시스템(20)과 관련된 대화 히스토리 정보를 획득하기 위한 프로그램을 저장할 수 있다. 그리고, 메모리(120)는 대화 시스템(20)이 실행되는 동안 대화 히스토리를 저장할 수 있고, 대화 시스템(20)의 수행이 종료될 때 기저장된 대화 히스토리 정보를 삭제할 수 있다.
한편, 키워드 인식 모델(10)은 비휘발성 메모리에 저장되어 있다가 프로세서(130) 제어에 의해 휘발성 메모리로 로딩될 수 있다. 프로세서(130)가 키워드 인식 모델(10)을 비휘발성 메모리에서 휘발성 메모리로 로딩하는 과정은 추후 설명하도록 한다.
키워드 인식 모델(10)은 마이크(110)를 통해 입력된 사용자 음성의 신호 패턴이 특정 키워드에 대응되는 신호의 패턴과 유사 또는 일치하는 지를 판단하여, 입력된 사용자 음성에 특정 키워드가 포함되어 있는지를 인식하는 모델이다. 키워드 인식 모델(10)은 입력된 사용자 음성에 특정 키워드가 포함되어 있는 것으로 인식하면, 전자 장치(100)는 특정 키워드에 대응되는 동작을 수행하도록 제어될 수 있다. 키워드 인식 모델(10)은 복수 개의 키워드 각각에 대응되는 복수 개의 키워드 인식 모델을 포함할 수 있다. 물론, 하나의 키워드 인식 모델은 복수 개의 키워드를 인식하도록 구성될 수 있다. 즉, 도 1a에 도시된 바와 같이, 키워드 인식 모델(10)은 제1 및 제2 키워드 인식 모델(10-1, 10-2)을 포함할 수 있다. 다만, 이는 일 실시예에 불과하며 키워드 인식 모델(10)은 하나 또는 3개 이상의 키워드 인식 모델을 포함할 수 있으며 사용자 명령에 의해 추가, 삭제 또는 변경될 수 있다. 키워드 인식 모델의 구성 및 동작은 도 1b를 참조하여 구체적으로 설명하도록 한다.
한편, 키워드란 특정 기능을 실행 시키기 위한 적어도 하나의 단어이며, 키워드는 트리거(trigger) 워드, 웨이크 업(wake-up) 워드 또는 기능(function) 워드라고 표현될 수 있다. 그리고, 키워드는 전자 장치(100)가 제작할 때 기등록되어 있을 수 있으며 사용자에 의해 추가/변경/삭제할 수 있다. 사용자에 의해 키워드가 추가/변경/삭제되는 실시예는 도 5를 참조하여 구체적으로 설명하도록 한다.
대화 시스템(Dialogue system)(20)은 마이크(110)를 통해 입력된 사용자 음성에 대해 음성 인식 및 언어 분석을 수행하여 응답을 제공하는 인공 지능 모델(Artificial Intelligence Model)을 포함할 수 있다. 대화 시스템(20)은 다양한 소프트웨어 모듈을 포함할 수 있으며 각 소프트웨어 모듈은 프로세서(130)에 의해 제어될 수 있다. 각 소프트웨어 모듈에 관한 설명은 도 6을 참조하여 설명하도록 한다.
한편, 메모리(120)는 동작 상태 데이터 베이스(미도시)를 저장할 수 있다. 동작 상태 데이터 베이스는 각 전자 장치의 동작 상태에 따라 실행될 키워드 인식 모델에 대한 정보를 포함할 수 있다. 예를 들면, 동작 상태 데이터 베이스는 전자 장치의 상태가 제1 동작 상태인 경우, 복수의 키워드 인식 모델 중 제1 키워드 인식 모델이 프로세서(130)에 의해 실행된다는 정보를 포함할 수 있다. 동작 상태 데이터 베이스는 하기 표 1과 같이 관계형 데이터 베이스의 테이블 형태로 구축될 수 있으나 이는 일 실시예에 불과하며 다양한 형태로 구축될 수 있다. 다만, 표 1에 기재된 상태 및 상태에 대응되는 모델은 동작 상태 데이터 베이스를 설명하기 위한 일 실시예에 불과하며 다양하게 구현될 수 있다. 또한, 동작 상태 데이터 베이스는 사용자 명령에 의해 변경/추가/삭제 될 수 있음은 물론이다.
동작 상태의 종류 실행될 키워드 인식 모델
제1 동작 상태 제1 키워드 인식 모델
제2 동작 상태 제2 키워드 인식 모델
제3 동작 상태 키워드 인식 모델 미실행
한편, 프로세서(130)는 메모리(120)와 전기적으로 연결되어 전자 장치(100)의 전반적인 동작 및 기능을 제어할 수 있다. 특히, 프로세서(130)는 전자 장치(100)의 동작 상태 정보를 바탕으로 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행할 수 있다. 한편, 프로세서(130)가 적어도 하나의 키워드 인식 모델이 실행하는 동작은 비휘발성 메모리에서 저장된 키워드 인식 모델이 프로세서(130) 제어에 의해 휘발성 메모리(예를 들어, DRAM(Dynamic Random-Access Memory) 및 SRAM(Static RAM) 등)로 로딩되는 동작을 포함할 수 있다.
구체적으로, 프로세서(130)는 메모리(120)에 저장된 대화 시스템(20)이 비활성화되었는지 여부에 따라 전자 장치(100)의 동작 상태를 식별할 수 있다. 예를 들면, 대화 시스템(20)이 비활성화된 경우, 프로세서(130)는 전자 장치(100)가 제1 동작 상태로 동작하고 있음을 식별할 수 있다. 또 다른 예로, 대화 시스템(20)이 활성화되어 사용자 음성에 대응되는 텍스트를 처리하는 경우, 프로세서(130)는 전자 장치(100)가 제2 동작 상태로 동작하고 있음을 식별할 수 있다. 또 다른 예로, 대화 시스템(20)이 활성화되어 사용자 음성을 대화 시스템의 ASR 모듈을 통해 인식하는 경우, 프로세서(130)는 전자 장치(100)가 제3 동작 상태로 동작한다고 식별할 수 있다.
그리고, 프로세서(130)는 메모리(120)에 저장된 동작 상태 데이터베이스를 통해 식별된 전자 장치(100)의 동작 상태에 따라 실행될 키워드 인식 모델을 식별하고, 식별된 키워드 인식 모델을 비휘발성 메모리에서 휘발성 메모리로 로딩할 수 있다. 즉, 프로세서(130)는 식별된 전자 장치(100)의 동작 상태에 대응되는 키워드 인식 모델을 실행할 수 있다. 예를 들어, 전자 장치(100)가 제1 동작 상태로 동작한다고 식별되면, 프로세서(130)는 메모리(120)에 저장된 동작 상태 데이터베이스를 통해 복수의 키워드 인식 모델 중 제1 동작 상태에 대응되는 키워드 인식 모델은 제1 키워드 인식 모델(10-1)임을 식별할 수 있다. 그리고, 프로세서(130)는 식별된 제1 키워드 인식 모델(10-1)을 실행할 수 있다. 또 다른 예로, 전자 장치(100)가 제2 동작 상태로 동작한다고 식별되면, 프로세서(130)는 동작 상태 데이터베이스를 통해 복수의 키워드 인식 모델 중 제2 동작 상태에 대응되는 키워드 인식 모델은 제2 키워드 인식 모델(10-2)이라고 식별할 수 있다. 그리고, 프로세서(130)는 식별된 제2 키워드 인식 모델(10-2)을 실행할 수 있다. 또 다른 예로, 전자 장치(100)가 제3 동작 상태로 동작한다고 식별되면, 프로세서(130)는 동작 상태 데이터 베이스를 통해 실행될 키워드 인식 모델이 없음을 식별할 수 있다. 따라서, 프로세서(130)는 비휘발성 메모리에 저장된 키워드 인식 모델을 휘발성 메모리로 로딩하지 않고, ASR 모듈(20-1)을 통해 사용자 음성에 대응되는 텍스트를 획득할 수 있다.
한편, 대화 시스템(20)이 비활성화된 경우는 대화 시스템(20)에 포함된 복수의 소프트웨어 모듈이 동작하지 않는 경우를 포함할 수 있다. 그리고, 대화 시스템(20)이 활성화되어 사용자 음성에 대응되는 텍스트를 처리하는 경우는 대화 시스템(20)에 포함된 복수의 소프트웨어 모듈 중 ASR 모듈을 제외한 모듈이 동작중인 경우를 포함할 수 있다.
그리고, 마이크(110)를 통해 제1 사용자 음성이 입력되면, 프로세서(140)는 실행된 키워드 인식 모델을 이용하여 실행된 키워드 인식 모델에 대응하는 적어도 하나의 키워드가 제1 사용자 음성에 포함되어 있는지를 확인할 수 있다. 그리고, 프로세서(130)는 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로 적어도 하나의 키워드에 대응되는 전자 장치(100)의 동작을 수행할 수 있다.
구체적으로, 전자 장치(100)가 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 제1 사용자 음성에 기정의된 동작을 요청하는 의미가 포함된 적어도 하나의 키워드가 포함된 것으로 확인되면, 프로세서(130)는 기정의된 동작을 수행하도록 제어할 수 있다. 기정의된 동작은 사용자에 의해 추가 또는 삭제될 수 있으며 이는 도 5를 참조하여 구체적으로 설명하도록 한다.
한편, 전자 장치(100)가 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델(10-1)을 이용하여 제1 사용자 음성에 다음 또는 이전 동작을 요청하는 의미가 포함된 키워드가 포함된 것으로 확인되면, 프로세서(130)는 대화 히스토리 저장부에 저장된 대화 히스토리 정보를 바탕으로 제1 키워드 인식 모델(10-1)이 키워드가 제1 사용자 음성에 포함되는지 확인하기 전 대화 시스템(20)에 의해 전자 장치가 수행한 동작을 식별할 수 있다. 그리고, 프로세서(130)는 식별된 전자 장치(100)가 수행한 동작의 다음 또는 이전 동작에 대응되는 동작을 수행하도록 제어할 수 있다. 예를 들면, 제1 키워드 인식 모델(10-1)을 이용하여 다음 동작을 요청하는 의미가 포함된 키워드가 제1 사용자 음성에 포함된 것으로 확인되면, 프로세서(130)는 대화 히스토리 정보를 통해 제1 키워드 인식 모델(10-1)이 키워드가 제1 사용자 음성에 포함된 것을 확인하기 전 전자 장치(100)가 대화 시스템(20)을 통해 음악 어플리케이션을 실행하여 음악을 재생하고 있다는 것을 식별할 수 있다. 그리고, 프로세서(140)는 식별된 동작의 다음 동작에 대응되는 동작으로서 현재 재생하고 있는 곡에 다음 곡을 재생하도록 제어할 수 있다.
한편, 전자 장치(100)가 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델(10-2)을 이용하여 동작을 중지하라는 의미가 포함된 키워드가 제1 사용자 음성에 포함된 것으로 확인되면, 프로세서(140)는 대화 시스템(20)의 제2 사용자 음성에 대응되는 텍스트에 대한 처리를 중지하도록 제어할 수 있다. 예를 들면, 대화 시스템(20)에 의해 제2 사용자 음성에 대한 응답 문장이 음성 형태로 출력되는 동안 제2 키워드 인식 모델(10-2)을 이용하여 동작을 중지하라는 의미가 포함된 키워드가 제1 사용자 음성에 포함된 것으로 확인되면, 프로세서(130)는 대화 시스템(20)의 TTS 모듈이 음성 형태로 응답 문장을 출력하는 동작을 중지하도록 제어할 수 있다.
한편, 전자 장치(100)가 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델(10-2)을 이용하여 동작을 반복하라는 의미가 포함된 키워드가 제1 사용자 음성에 포함된 것으로 확인되면, 프로세서(130)는 대화 시스템(20)이 수행하는 제2 사용자 음성에 대응되는 텍스트의 처리를 중단하고, 대화 히스토리 정보를 바탕으로 대화 시스템(20)의 텍스트의 처리를 반복하도록 제어할 수 있다. 예를 들어, 대화 시스템(20)이 오늘 날씨에 대한 정보를 요청하는 사용자 음성에 대한 응답 문장을 음성 형태로 출력하는 동안 제2 키워드 인식 모델(10-2)을 이용하여 동작을 반복하라는 의미가 포함된 키워드(예를 들어, '다시')가 제1 사용자 음성에 포함된 것으로 확인하면, 프로세서(130)는 대화 시스템(20)의 TTS 모듈이 응답 문장을 음성 형태로 출력하는 동작을 중지하도록 제어할 수 있다. 그리고, 프로세서(130)는 대화 히스토리 정보를 통해 오늘 날씨에 대한 응답 문장에 대한 정보를 식별하고, 식별된 정보를 이용하여 대화 시스템(20)을 통해 오늘 날씨에 대한 응답 문장을 음성 형태로 다시 출력하도록 제어할 수 있다.
한편, 전자 장치(100)가 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델(10-2)을 이용하여 제1 사용자 음성에 키워드가 포함된 것을 확인하지 못한 경우, 프로세서(130)는 키워드가 포함된 제1 사용자 음성을 대화 시스템(20)의 ASR 모듈(20-1)에 입력하여 제1 사용자 음성에 대응되는 텍스트를 획득할 수 있다. 즉, 키워드 인식 모델을 이용하여 제1 사용자 음성에 키워드가 포함되지 않는다고 판단되면, 프로세서(130)는 제1 사용자 음성을 대화 시스템(20)에 입력하여 사용자 음성에 대해 자연어 처리를 수행할 수 있다. 즉, 키워드 인식 모델이 사용자 음성에 포함된 키워드를 인식하지 못한 경우, 프로세서(130)는 사용자 음성을 대화 시스템에 입력하여 사용자 음성에 대한 응답을 획득함으로써 사용자와 보다 자연스러운 대화를 진행할 수 있다.
한편, 본 개시에 따른 인공지능과 관련된 기능은 프로세서(130)와 메모리(120)를 통해 동작된다.
프로세서(130)는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서(130)는 CPU(Central Processing Unit), AP(Application Processor) 등과 같은 범용 프로세서, GPU(graphics-processing Unit), VPU (Visual Processing Unit) 등과 같은 그래픽 전용 프로세서 또는 NPU(Neural Processing Unit)와 같은 인공지능 전용 프로세서일 수 있다.
하나 또는 복수의 프로세서는, 메모리(120)에 저장된 기정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 기정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다.
여기서, 학습을 통해 만들어진다는 것은, 다수의 학습 데이터들에 학습 알고리즘을 적용함으로써, 원하는 특성의 기정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버/시스템을 통해 이루어 질 수도 있다.
인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 각 레이어는 복수의 가중치(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치의 연산을 통해 레이어의 연산을 수행한다. 신경망의 예로는, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 및 심층 Q-네트워크 (Deep Q-Networks)이 있으며, 본 개시에서의 신경망은 명시한 경우를 제외하고 전술한 예에 한정되지 않는다.
학습 알고리즘은, 다수의 학습 데이터들을 이용하여 소정의 대상 기기(예컨대, 로봇)을 훈련시켜 소정의 대상 기기 스스로 결정을 내리거나 예측을 할 수 있도록 하는 방법이다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으며, 본 개시에서의 학습 알고리즘은 명시한 경우를 제외하고 전술한 예에 한정되지 않는다.
도 1b는 본 개시의 일 실시예에 따른, 키워드 인식 모델(30)의 구성 및 동작을 설명하기 위한 도면이다.
도 1b에 도시된 바와 같이, 적어도 하나의 키워드 인식 모델 각각은 키워드를 인식하기 위한 키워드 데이터 베이스(50)를 포함할 수 있다. 다만, 이는 일 실시예에 불과하며, 키워드 인식 모델(10)은 적어도 하나의 키워드 인식 모델 모두에 공통되는 키워드 데이터 베이스(50)를 포함할 수 있다.
키워드 데이터 베이스(50)는 키워드에 대응되는 신호 패턴 및 각 키워드에 대응되는 동작에 대한 정보(예를 들어, 키워드에 대응되는 동작을 수행하기 위한 명령어)를 저장할 수 있다. 키워드에 대응되는 동작에 대한 정보는 표 2와 같이 관계형 데이터 베이스의 테이블의 형태로 저장하여 구축될 수 있다. 다만, 이는 일 실시예에 불과하며 키워드에 대응되는 동작에 대한 정보는 다양한 형태로 구축될 수 있다.
키워드의 종류 키워드에 대응되는 동작을 수행하기 위한 명령어
취소 Stop_Processing or Stop_Speaking
그만 Stop_Speaking
다음 Next_Action
이전 Previous_Action
한편, 표 2에 도시된 키워드의 종류 및 키워드에 대응되는 동작을 수행하기 위한 명령어는 본 개시를 구체적으로 설명하기 위한 일 실시예에 불과하며, 전자 장치(100)의 유형에 의해 다양하게 구현될 수 있으며 사용자에 의해 변경/추가/삭제될 수 있음은 물론이다.한편, 키워드 데이터 베이스(50)에 저장된 키워드에 대응되는 신호 패턴 및 각 키워드에 대응되는 동작에 대한 정보는 사용자에 의해 추가 또는 삭제될 수 있다. 사용자에 의해 키워드가 추가/삭제되는 실시예는 도 5를 참조하여 구체적으로 설명하도록 한다.
사용자 음성(40)이 입력되면, 키워드 인식 모델(30)은 사용자 음성(40)에 키워드 인식 모델(30) 대응되는 키워드가 포함되어 있는지 여부를 확인할 수 있다. 일 실시예로, 키워드 인식 모델(30)은 키워드 스파팅(keyword spotting) 기술을 활용하여 사용자 음성(40)에 키워드가 포함되어 있는지 여부를 확인할 수 있다. 구체적으로, 사용자 음성(40)이 입력되면, 키워드 인식 모델(30)은 사용자 음성(40)의 신호 패턴을 추출할 수 있다. 그리고, 키워드 인식 모델(30)은 추출한 사용자 음성(40)의 신호 패턴과 키워드에 대응되는 신호 패턴을 비교 및 매칭하여 신호 패턴 간의 유사도 값을 출력할 수 있다. 그리고, 사용자 음성(40)의 신호 패턴 구간 중 키워드에 대응되는 신호 패턴간의 유사도 값이 임계값을 초과한 부분(또는, 구간)이 있는 경우, 프로세서(130)는 사용자 음성(40)에 키워드 인식 모델(30)에 대응되는 키워드가 포함되었다고 확인할 수 있다. 그리고, 사용자 음성(40)의 신호 패턴 구간 중 키워드에 대응되는 신호 패턴간의 유사도 값이 임계값 을 초과하는 부분(또는, 구간)이 없는 경우, 프로세서(130)는 사용자 음성(40)에 키워드 인식 모델(30)에 대응되는 키워드가 포함되지 않았다고 판단할 수 있다. 한편, 임계값은 실험 결과 등을 통하여 기설정된 값일 수 있으며 사용자 명령에 의해 변경될 수 있음은 물론이다.
그리고, 일 실시예로, 키워드 인식 모델(30)에 대응되는 키워드가 사용자 음성(40)에 포함되지 않았다고 확인되면, 프로세서(130)는 사용자 음성(40)을 대화 시스템(20)에 입력할 수 있다. 또 다른 실시예로, 프로세서(130)는 사용자 음성(40)에 키워드가 포함되지 않았다는 메시지를 표시하도록 디스플레이(140)를 제어하거나 메시지를 음성 형태로 출력하도록 스피커(150)를 제어할 수 있다.
그리고, 키워드 인식 모델(30)은 사용자(40) 음성에 포함된 키워드에 대응되는 동작에 대한 정보를 키워드 데이터 베이스(50)를 통해 식별하고, 식별된 정보를 바탕으로 동작 신호(60)를 출력할 수 있다. 따라서, 프로세서(140)는 동작 신호(60)를 바탕으로 전자 장치(100)의 동작을 수행하도록 제어할 수 있다. 예를 들면, 전자 장치(100)가 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델은 '그만'이라는 키워드를 인식할 수 있다. 그리고, 제2 키워드 인식 모델은 키워드 데이터 베이스(50)를 통해 '그만'이라는 키워드에 대응되는 동작을 수행하기 위한 명령어는 'Stop_Speaking'임을 식별할 수 있다. 그리고, 제2 키워드 인식 모델은 식별된 명령어가 포함된 동작 신호를 출력할 수 있다. 따라서, 프로세서(140)는 제2 키워드 인식 모델을 통해 획득된 동작 신호를 바탕으로 대화 시스템을 통해 수행되는 사용자 음성에 대응되는 텍스트에 대한 처리 동작이 중지되도록 제어할 수 있다.
또 다른 예로, 전자 장치(100)가 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델은 '다음'이라는 키워드를 인식할 수 있다. 그리고, 제1 키워드 인식 모델은 키워드 데이터 베이스(50)를 통해 '다음'이라는 키워드에 대응되는 동작을 수행하기 위한 명령어가 'Next_Action'임을 식별하고, 식별된 명령어를 포함한 동작 신호(60)를 출력할 수 있다. 따라서, 프로세서(130)는 획득된 동작 신호(60) 및 대화 히스토리 정보를 바탕으로 제1 키워드 인식 모델이 키워드를 인식하기 전 대화 시스템(20)에 의해 전자 장치가 수행한 동작의 다음 동작에 대응되는 동작을 수행하도록 제어할 수 있다.
한편, 전자 장치(100)가 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델을 이용하여 키워드를 인식하지 못한 경우, 프로세서(130)는 키워드가 포함된 제1 사용자 음성을 대화 시스템(20)의 ASR 모듈에 입력하여 제1 사용자 음성에 대응되는 텍스트를 획득하고, 텍스트를 바탕으로 사용자 음성에 대한 응답(70)을 획득할 수 있다. 즉, 키워드 인식 모델을 이용하여 키워드를 인식하지 못한 경우, 프로세서(130)는 키워드가 포함된 사용자 음성을 대화 시스템(20)에 입력하여 사용자 음성에 대한 응답을 획득함으로써 사용자에게 보다 자연스러운 응답을 제공할 수 있다.
도 2는 본 개시의 일 실시예에 따른, 전자 장치(100)의 제어 방법을 설명하기 위한 도면이다.
우선, 전자 장치(100)는 전자 장치(100)의 동작 상태 정보를 바탕으로 복수의 키워드 인식 모델 중 사용자 음성을 인식할 적어도 하나의 키워드 인식 모델을 선택적으로 실행할 수 있다(S210). 예를 들면, 대화 시스템이 비활성화된 제1 동작 상태로 전자 장치(100)가 동작하는 경우, 전자 장치(100)는 복수의 키워드 인식 모델 중 제1 상태에 대응되는 제1 키워드 인식 모델을 실행할 수 있다. 또 다른 예로, 대화 시스템이 활성화되어 입력된 제2 사용자 음성에 대응되는 텍스트를 처리하는 제2 동작 상태로 전자 장치(100)가 동작하는 경우, 전자 장치(100)는 복수의 키워드 인식 모델 중 제2 상태에 대응되는 제2 키워드 인식 모델을 실행할 수 있다. 또 다른 예로, 대화 시스템이 활성화되어 입력된 제2 사용자 음성을 대화 시스템의 ASR 모듈을 통해 인식하는 제3 동작 상태로 전자 장치(100)가 동작하는 경우, 전자 장치(100)는 복수의 키워드 인식 모델의 동작을 중지하고, ASR 모듈을 통해 제2 사용자 음성에 대응되는 텍스트를 획득할 수 있다.
그리고, 마이크(110)를 통해 제1 사용자 음성이 입력되면, 전자 장치(100)는 실행된 키워드 인식 모델을 이용하여 실행된 키워드 인식 모델에 대응되는 적어도 하나의 키워드가 제1 사용자 음성에 포함되어 있는지를 확인할 수 있다(S220). 그리고, 전자 장치(100)는 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 적어도 하나의 키워드에 대응되는 동작을 수행할 수 있다(S230).
일 실시예로, 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 제1 사용자 음성에 기정의된 동작을 요청하는 의미가 포함된 키워드가 포함되었다고 확인되면, 전자 장치(100)는 기정의된 동작을 수행할 수 있다. 해당 실시예는 도 3a를 참조하여 구체적으로 설명하도록 한다.
또 다른 실시예로, 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 제1 사용자 음성에 다음 또는 이전 동작을 요청하는 의미가 포함된 키워드가 포함되었다고 확인하면, 전자 장치(100)는 대화 히스토리 정보를 바탕으로 제1 키워드 인식 모델이 제1 사용자 음성에 포함된 키워드를 인식하기 전 대화 시스템에 의해 전자 장치가 수행한 동작을 식별할 수 있다. 그리고, 전자 장치(100)는 식별된 대화 시스템에 의해 수행된 동작의 다음 또는 이전 동작에 대응되는 동작을 수행할 수 있다. 해당 실시예는 도 3b를 참조하여 구체적으로 설명하도록 한다.
또 다른 실시예로, 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델을 이용하여 제1 사용자 음성에 동작을 중지 또는 반복하라는 의미가 포함된 키워드가 포함되었다고 확인하면, 전자 장치(100)는 대화 시스템에 의한 제2 사용자 음성에 대응되는 텍스트에 대한 처리를 중지하거나 처음부터 다시 수행할 수 있다. 해당 실시예는 도 4a 및 도 4c를 참조하여 구체적으로 설명하도록 한다.
또 다른 실시예로, 제2 동작 상태로 동작하는 동안 실행된 키워드 인식 모델을 이용하여 제1 사용자 음성에 키워드가 포함되지 않았다고 판단되면, 전자 장치(100)는 사용자 음성을 대화 시스템에 입력하여 사용자 음성에 대한 자연어 처리를 수행할 수 있다. 해당 실시예는 도 4b를 참조하여 구체적으로 설명하도록 한다.
도 3a 및 도 3b는 본 개시의 일 실시예에 따른, 전자 장치(100)가 제1 키워드 인식 모델을 이용하여 제1 사용자 음성에 키워드 인식 모델에 대응되는 키워드가 포함되어 있음을 확인하고, 확인된 키워드를 바탕으로 동작을 수행하는 과정을 설명하기 위한 도면이다.
대화 시스템이 비활성화된 제1 동작 상태로 전자 장치(100)가 동작하는 경우, 전자 장치(100)는 복수의 키워드 인식 모델 중 제1 키워드 인식 모델을 실행할 수 있다. 그리고, 제1 키워드 인식 모델을 이용하여 제1 사용자 음성에 기정의된 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 전자 장치(100)는 기정의된 동작을 수행할 수 있다.
예를 들면, 제1 키워드 인식 모델에 포함된 키워드 데이터 베이스에는 '날씨'라는 키워드와 매칭되는 신호 패턴 및 '날씨'라는 키워드에 대응되는 동작은 날씨 어플리케이션을 실행하고 오늘의 날씨에 대한 정보를 음성의 형태로 출력하는 동작이라는 정보가 기저장되어 있을 수 있다. 전자 장치(100)에 기저장된 '날씨'라는 키워드에 대응되는 동작은 사용자에 의해 변경될 수 있음은 물론이다.
도 3a에 도시된 바와 같이, 기저장된 키워드 중 하나인 “날씨”라는 키워드가 포함된 사용자 음성(300)이 입력되면, 전자 장치(100)는 실행된 제1 키워드 인식 모델을 이용하여 사용자 음성(300)의 신호 패턴과 기저장된 키워드에 대응되는 신호 패턴을 비교 및 매칭하여 신호 패턴간의 유사도 값을 획득할 수 있다. 사용자 음성(300)에 대응되는 신호 패턴 구간 중 “날씨”에 매칭되는 신호 패턴과의 유사도 값이 임계값을 초과하는 구간이 있다고 식별되면, 전자 장치(100)는 사용자 음성(300)에 “날씨'라는 키워드가 포함되어 있음을 확인할 수 있다.
그리고, 제1 인식 키워드 모델은 키워드 데이터 베이스를 바탕으로 날씨 어플리케이션을 실행하고 오늘의 날씨에 대한 정보를 음성의 형태로 출력하는 동작을 수행하라는 명령어가 포함된 동작 신호를 출력할 수 있다. 따라서, 도 3b에 도시된 바와 같이, 전자 장치(100)는 제1 인식 키워드 모델이 출력한 동작 신호를 바탕으로 날씨 어플리케이션을 실행한 화면(310-1)을 표시하고, 오늘의 날씨에 대한 정보를 음성의 형태(310-2)로 출력할 수 있다.
한편, 일 실시예로, 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 사용자 음성에 다음 또는 이전 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 전자 장치(100)는 대화 히스토리 정보를 바탕으로 제1 키워드 인식 모델이 키워드를 인식하기 전 대화 시스템에 의해 수행된 동작을 식별할 수 있다.
예를 들면, 사용자로부터 음악 재생을 요청하는 사용자 음성(320)이 입력되면, 전자 장치(100)는 대화 시스템을 통해 사용자 음성(320)에 대한 응답을 획득할 수 있다. 도 3b에 도시된 바와 같이, 전자 장치(100)는 대화 시스템을 통해 획득된 사용자 음성(320)에 대한 응답으로 음악을 재생하는 어플리케이션을 실행하고, 어플리케이션 실행 화면(330)을 표시하는 동안 음악을 재생할 수 있다. 그리고, 전자 장치(100)에 저장된 대화 시스템은 비활성화되어 있으므로 전자 장치(100)가 제1 동작 상태로 동작하므로, 전자 장치(100)는 제1 키워드 인식 모델을 실행시킬 수 있다. 이 때, 전자 장치(100)에 저장된 대화 히스토리 정보에는 사용자 음성(320)에 대한 응답으로 실행시킨 어플리케이션의 종류, 어플리케이션을 통해 수행되고 있는 동작에 대한 정보 등이 포함될 수 있다.
그리고, 사용자로부터 다음 동작을 요청하는 의미가 포함된 키워드(340)(예를 들어, '다음')가 입력되면, 전자 장치(100)는 실행된 제1 키워드 인식 모델을 통해 입력된 사용자 음성에 '다음'이라는 키워드를 포함되어 있음을 확인할 수 있다. 그리고, 전자 장치(100)는 저장된 대화 히스토리 정보를 통해 키워드(340)가 입력되기 전에 대화 시스템에 의해 현재 전자 장치(100)가 음악 어플리케이션을 실행하여 음악을 재생하고 있음을 식별할 수 있다. 그리고, 대화 히스토리 정보를 바탕으로 전자 장치가 수행한 동작을 식별하는 동안, 전자 장치(100)는 제1 키워드 인식 모델을 통해 다음 동작을 수행하라는 명령어가 포함된 동작 신호를 획득할 수 있다. 그리고, 전자 장치(100)는 획득된 동작 신호를 바탕으로 식별된 동작에 다음 동작에 대응되는 동작으로서 현재 실행되고 있는 어플리케이션에서 다음 곡을 재생하고, 다음 곡의 재생 화면(350)를 표시할 수 있다.
도 4a는 본 개시의 일 실시예에 따른, 전자 장치(100)가 제2 키워드 인식 모델을 통해 사용자 음성에 키워드가 포함되어 있음을 확인하고, 확인된 키워드를 바탕으로 동작을 수행하는 과정을 설명하기 위한 도면이다.
전자 장치(100)는 대화 시스템이 활성화되어 입력된 사용자 음성에 대응되는 텍스트를 처리하는 제2 동작 상태에는 복수의 키워드 인식 모델 중 제2 키워드 인식 모델을 실행할 수 있다. 예를 들면, 도 4a에 도시된 바와 같이, 날씨에 대한 정보를 요청하는 사용자 음성이 입력되면, 전자 장치(100)는 대화 시스템을 통해 획득된 사용자 음성에 대한 응답으로서 날씨 어플리케이션을 실행하고, 오늘 날씨에 대한 정보(400)를 음성 형태로 출력할 수 있다. 대화 시스템의 TTS 모듈을 통해 날씨 정보를 요청하는 사용자 음성에 대한 응답 문장을 음성 형태로 출력하고 있으므로, 전자 장치(100)는 복수의 키워드 모델 중 제2 동작 상태에 대응되는 제2 키워드 인식 모델을 실행할 수 있다.
그리고, 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델을 이용하여 동작을 중지하라는 의미가 포함된 키워드(예를 들어, “그만”)가 사용자 음성(410)에 포함되어 있음을 확인하면, 전자 장치(100)는 대화 시스템에 의한 제2 사용자 음성에 대응되는 텍스트에 대한 처리를 중지할 수 있다. 예를 들면, 전자 장치(100)는 날씨 정보를 요청하는 사용자 음성에 대한 응답 문장을 음성 형태로 출력하는 동안 제2 키워드 인식 모델을 통해 사용자 음성에 동작을 중지하라는 의미가 포함된 키워드를 포함되어 있음을 확인할 수 있다. 그리고, 전자 장치(100)는 제2 키워드 인식 모델을 통해 대화 시스템의 동작을 중지하라는 명령어가 포함된 동작 신호를 획득할 수 있다. 전자 장치(100)는 획득된 동작 신호를 바탕으로 대화 시스템이 수행하는 텍스트의 처리(예를 들어, 대화 시스템이 TTS 모듈을 통해 날씨를 요청하는 사용자 음성에 대한 응답 문장을 음성 형태로 출력하는 동작)를 중단할 수 있다. 따라서, 도 4a에 도시된 바와 같이, 대화 시스템을 통해 사용자 음성에 대한 응답 문장(400)을 음성 형태로 출력하는 동안 동작을 중지하라는 키워드가 포함된 사용자 음성이 입력되면, 전자 장치(100)는 대화 시스템의 동작을 중지할 수 있다.
한편, 대화 시스템을 통해 사용자 음성에 대한 응답 문장을 음성 형태로 출력하는 동안 사용자 음성(410)에 동작을 중지하라는 의미가 포함된 키워드를 제2 키워드 인식 모델을 통해 확인하지 못하면, 전자 장치(100)는 사용자 음성(410)을 대화 시스템에 입력하여 사용자 음성(410)에 대응되는 텍스트를 획득할 수 있다. 일 실시예로, 주변 환경의 소음, 사용자 목소리 일시적 변화 등으로 인해, 전자 장치(100)는 제2 키워드 인식 모델을 이용하여 임계값 이하의 사용자 음성(410)에 대응되는 신호 패턴과 키워드에 대응되는 신호 패턴 간의 유사도 값을 획득할 수 있다. 또 다른 예로, 사용자의 착오로 인해 기저장된 키워드와 다른 키워드가 포함된 사용자 음성이 전자 장치(100)에 입력되어, 전자 장치(100)는 제2 키워드 인식 모델을 통해 임계값 이하의 유사도 값을 획득할 수 있다. 이 때, 전자 장치(100)는 사용자로부터 입력된 음성을 대화 시스템에 입력하여 사용자 음성에 대응되는 텍스트를 획득할 수 있다. 그리고, 전자 장치(100)는 획득된 텍스트를 바탕으로 사용자 음성에 대한 응답을 획득할 수 있다.
예를 들면, 날씨를 요청하는 사용자 음성에 대한 응답 문장이 음성 형태로 출력되는 동안 사용자 음성(410)에 동작을 중지하라는 의미가 포함된 키워드가 포함되어 있음을 확인하지 못한 경우, 전자 장치(100)는 사용자 음성(410)을 대화 시스템에 입력할 수 있다. 그리고, 도 4b에 도시된 바와 같이, 전자 장치(100)는 사용자 음성(410)에 대한 응답으로 '그만 말씀드릴까요?'(420)라는 음성을 출력할 수 있다. 또 다른 예로, 전자 장치(100)는 대화 히스토리 정보를 바탕으로 대화 시스템에 의해 수행되고 있는 동작(예를 들면, 날씨 어플리케이션의 실행)을 중지할 수 있다. 즉, 전자 장치(100)는 제2 키워드 인식 모델을 통해 키워드를 인식하지 못하더라도 키워드가 포함된 사용자 음성을 대화 시스템에 입력하여 응답을 획득함으로써 사용자와 자연스러운 대화를 수행할 수 있다.
한편, 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델을 이용하여 사용자 음성에 동작을 반복하라는 의미가 포함된 키워드가 포함되어 있음을 확인하면, 전자 장치(100)는 대화 시스템이 수행하는 사용자 음성에 대응되는 텍스트의 처리를 중단하고, 대화 히스토리 정보를 바탕으로 텍스트의 처리를 다시 수행할 수 있다.
예를 들면, 도 4b에 도시된 바와 같이, 환율 정보를 요청하는 사용자 음성에 대한 응답 문장(430)을 음성 형태로 출력하고 있는 경우, 전자 장치(100)는 복수의 키워드 인식 모델 중 제2 동작 상태에 대응되는 제2 키워드 인식 모델을 실행할 수 있다. 그리고, 제2 동작 상태로 동작하는 동안 실행된 제2 키워드 인식 모델을 이용하여 사용자 음성에 동작을 반복하라는 의미가 포함된 키워드(예를 들면, '다시”)(440)가 포함되어 있음을 확인하면, 전자 장치(100)는 대화 시스템이 수행하는 사용자 음성에 대응되는 텍스트의 처리(예를 들어, 대화 시스템이 TTS 모듈을 통해 환율 정보를 요청하는 사용자 음성에 대한 응답 문장(430)을 음성 형태로 출력하는 동작)를 중단할 수 있다.
그리고, 전자 장치(100)는 대화 히스토리 정보를 바탕으로 사용자 음성에 대응되는 텍스트의 처리를 다시 수행할 수 있다. 예를 들어, 전자 장치(100)는 대화 히스토리 정보를 통해 환율 정보를 요청하는 사용자 음성에 대한 응답 문장을 식별하고, 대화 시스템을 통해 식별된 응답 문장(450)을 음성 형태로 출력할 수 있다.
도 5는 본 개시의 일 실시예에 따른, 전자 장치가 키워드를 등록하는 과정을 설명하기 위한 도면이다. 일 실시예로, 키워드를 등록하기 위한 사용자 명령이 입력되면, 전자 장치(100)는 키워드를 등록할 수 있는 UI(500)를 표시할 수 있다. 도 5의 (a)에 도시된 바와 같이, 키워드를 등록할 수 있는 UI(500)에는 사용자에게 등록할 키워드를 발화하라는 메시지를 포함할 수 있으나 이는 일 실시예에 불과하며, UI(500)는 전자 장치(100)의 유형 또는 사용자 명령에 의해 다양하게 구현될 수 있다.
사용자로부터 키워드(예를 들어, '키워드')(510)에 대응되는 음성이 입력되면, 전자 장치(100)는 입력된 음성에 대응되는 신호 패턴을 획득하고 저장할 수 있다. 일 실시예로, 전자 장치(100)는 음성에 대응되는 신호 패턴을 키워드 데이터 베이스 상에 저장할 수 있다. 한편, 전자 장치(100)는 키워드에 대응되는 신호 패턴의 정확도를 위하여 키워드의 발화를 기설정된 횟수만큼 요구하는 메시지를 표시할 수 있다.
그리고, 도 5의 (b)에 도시된 바와 같이, 사용자로부터 키워드에 대응되는 신호 패턴을 획득하면, 전자 장치(100)는 키워드 발화시 수행할 동작에 대한 정보를 요구하는 UI(520)를 표시할 수 있다. 그리고, 사용자로부터 키워드 발화시 수행될 동작에 대한 정보가 포함된 사용자 음성(예를 들면, '환율 어플리케이션 실행 해줘')(510)가 입력되면, 전자 장치(100)는 대화 시스템을 통해 사용자 음성(510)에 대한 응답(예를 들어, 환율 어플리케이션을 실행하는 동작)을 획득하고, 획득된 정보를 키워드에 대응되는 동작에 대한 정보로 식별할 수 있다. 그리고, 전자 장치(100)는 키워드에 대응되는 신호 패턴 및 식별된 키워드에 대응되는 동작에 대한 정보를 매칭하여 저장할 수 있다. 도 1b를 참조하여 설명한 바와 같이, 전자 장치(100)는 식별된 키워드에 대응되는 동작에 대한 정보 및 키워드를 관계형 데이터 베이스의 테이블의 형태로 구축하여 저장할 수 있다. 다만, 이는 일 실시예에 불과하며, 전자 장치(100)는 사용자로부터 키워드 발화시 실행될 어플리케이션, 재생할 컨텐츠에 대한 정보를 음성뿐만 아니라 다양한 입력 수단을 통해 입력받을 수 있다. 예를 들어, 키워드 발화시 실행할 컨텐츠 또는 어플리케이션의 아이콘에 대한 사용자 터치가 입력되면, 전자 장치(100)는 터치가 입력된 컨텐츠 또는 어플리케이션 실행하는 동작을 키워드에 대응되는 신호 패턴과 매칭하여 저장할 수 있다.
도 6은 본 개시의 일 실시예에 따른, 전자 장치(100)의 구성을 상세히 도시한 블록도이다. 도 6에 도시된 바와 같이, 전자 장치(100)는 마이크(110), 메모리(120), 프로세서(130), 디스플레이(140), 스피커(150), 입력부(160) 및 통신부(170)를 포함할 수 있다. 다만, 마이크(110), 메모리(120), 프로세서(130)에 대해서는 도 1을 참조하여 구체적으로 설명하였으므로 중복되는 설명은 생략하도록 한다.
메모리(120)에는 대화 시스템(20)을 저장할 수 있다. 그리고, 대화 시스템(20)은 도 6에 도시된 바와 같이 프로세서(130)에 의해 제어될 수 있는 복수의 소프트웨어 모듈을 포함할 수 있다. 사용자로부터 대화 시스템(20)을 활성화시키기 위한 트리거 음성이 마이크(110)를 통해 입력되거나 대화 시스템을 활성화시킬 수 있는 입력부(예를 들어, 인공지능 에이전트 버튼 등)를 통해 사용자 명령이 입력되면, 대화 시스템(20)의 ASR 모듈(20-1)이 활성화될 수 있다.
ASR 모듈(Automatic Speech Recognition)(20-1)은 마이크(110)를 통해 입력된 사용자 음성에 대한 음성 인식을 수행하고, 인식된 음성에 대응되는 텍스트를 출력할 수 있다. 예를 들어, “오늘 날씨 어때”라는 사용자 음성이 입력되면, ASR 모듈(20-1)은 사용자 음성을 인식하고, 인식된 음성에 대응되는 텍스트인 '오늘 날씨 어때'를 출력할 수 있다.
NLU(Natural Language Understanding) 모듈(20-2)은 ASR 모듈(20-1)을 통해 획득된 음성 인식 결과를 바탕으로 사용자 음성의 도메인, 의도(Intent)를 파악하는데 필요한 파라미터(parameter)(또는, 슬롯(slot))으로 나누어진 매칭 규칙을 이용하여 사용자의 의도 및 파라미터를 결정할 수 있다. 구체적으로, 하나의 도메인(예: 알람)은 복수의 의도(예: 알람 설정, 알람 해제)를 포함할 수 있고, 하나의 의도는 복수의 파라미터(예: 시간, 반복 횟수, 알림음 등)을 포함할 수 있다. 그리고, 매칭 규칙은 NLU database(미도시)에 저장될 수 있다. 그리고, NLU 모듈(20-2)은 형태소, 구 등의 언어적 특징(예: 문법적 요소)를 이용하여 사용자 입력으로부터 추출된 단어의 의미를 파악하고, 파악된 단어의 의미를 도메인 및 의도에 매칭시켜 사용자의 의도를 결정할 수 있다.
예를 들어, ASR 모듈(20-1)을 통해 획득된 사용자 음성에 대응되는 텍스트가 '오늘 날씨 어때'인 경우, NLU 모듈(20-2)은 '오늘 날씨', '어때'등의 단어의 의미를 파악하여 텍스트의 도메인은 '날씨'라고 분류하고, 오늘 날씨에 대한 정보를 요구하는 사용자의 의도를 획득할 수 있다.
DM(Dialogue Management) 모듈(20-3)은 NLU 모듈(20-2)에 의해 파악된 사용자의 의도가 명확한지 여부를 판단할 수 있다. 예를 들어, DM 모듈(20-3)은 파라미터의 정보가 충분한지 여부에 기초하여 사용자의 의도가 명확한지 여부를 판단할 수 있다.
그리고, DM 모듈(20-3)은 NLU 모듈(20-2)에서 파악된 의도 및 파라미터에 기초하여 사용자 입력에 대응되는 태스크를 수행한 결과를 생성할 수 있다. 즉, DM 모듈(20-3)은 NLU 모듈(20-2)을 통해 파악된 사용자 음성의 의도와 KB(Knowledge Base)(또는, 지식 베이스)(20-6)에 저장된 데이터 또는 외부 서버로부터 수신된 정보를 바탕으로 응답 문장을 생성하기 위한 정보를 획득할 수 있다. 예를 들어, NLU 모듈(20-2)에서 사용자는 '오늘 날씨'에 대한 정보를 요구한다는 의도를 획득한 경우, DM 모듈(20-3)은 지식 베이스(20-6)에 저장된 데이터를 바탕으로 오늘 날씨와 관련된 정보를 포함하는 응답 정보를 획득할 수 있다.
NLG(Natural Language Generator) 모듈(20-4)은 DM 모듈(20-3)을 통해 획득한 응답 정보 및 대화 히스토리 저장부(20-7)에 저장된 대화 히스토리 정보를 바탕으로 자연어 발화 형태인 텍스트 형태로 사용자 음성에 대한 응답 문장을 출력할 수 있다.
TTS(Text to Speech) 모듈(20-5)은 생성된 응답 문장을 음성으로 변환할 수 있다. 특히, TTS 모듈(20-5)은 NLG 모듈(20-4)를 통해 획득된 텍스트를 음성으로 변환할 수 있다. 이에 의해, 대화 시스템(20)은 사용자 음성에 대한 응답 문장을 음성으로서 제공할 수 있다.
지식 베이스(Knowledge Base)(20-6)는 개인화된 응답을 위한 정보를 저장할 수 있다. 특히, 지식 베이스(20-6)에 저장되는 정보는 다양할 수 있다. 예를 들어, 지식 베이스(20-6)에는 전자 장치(100)에 입력된 사용자 명령과 관련된 정보, 전자 장치(100)에 포함된 어플리케이션 또는 컨텐츠에 대한 정보 등을 저장할 수 있다.
대화 히스토리 저장부(20-7)는 대화 히스토리 정보를 저장할 수 있다. 대화 히스토리 정보는 마이크(110)를 통해 입력된 사용자 음성과 관련되며, 사용자 음성이 입력되기 이전에 획득된 음성 인식 결과, 언어 분석 결과 및 대화 시스템(20)이 출력한 응답에 대한 정보를 포함할 수 있다. 또한, 대화 히스토리 정보는 사용자 음성이 입력되기 이전에 전자 장치(100)가 수행했던 작업에 대한 정보를 저장할 수 있다.
디스플레이(140)는 프로세서(130)의 제어에 따라 다양한 정보를 표시할 수 있다. 특히, 디스플레이(140)는 키워드를 등록할 수 있는 UI 또는 키워드 발화시 수행될 동작에 대한 정보를 요청하는 UI를 표시할 수 있다. 또한, 디스플레이(140)는 각 키워드 인식 모델이 키워드를 인식하지 못하였다는 메시지를 표시할 수 있다.
그리고, 디스플레이(140)는 터치 패널과 함께 터치 스크린으로 구현될 수 있으나 이는 일 실시예에 불과하며 전자 장치(100)의 유형에 따라 다양하게 구현될 수 있다.
스피커(150)는 오디오 처리부에 의해 디코딩이나 증폭, 노이즈 필터링과 같은 다양한 처리 작업이 수행된 각종 오디오 데이터뿐만 아니라 각종 알림 음이나 음성 메시지를 출력하는 구성이다. 특히, 스피커(150)는 대화 시스템을 통해 획득된 사용자 음성에 대한 응답을 자연어 형태의 음성 메시지로 출력할 수 있다. 한편, 오디오를 출력하기 위한 구성은 스피커로 구현될 수 있으나, 이는 일 실시 예에 불과할 뿐, 오디오 데이터를 출력할 수 있는 출력 단자로 구현될 수 있다.
입력부(160)는 전자 장치(100)를 제어하기 위한 사용자 입력을 수신할 수 있다. 특히, 입력부(160)는 사용자 손 또는 스타일러스 펜 등을 이용한 사용자 터치를 입력받기 위한 터치 패널, 사용자 조작을 입력받기 위한 버튼 등이 포함될 수 있다. 그 밖에, 입력부(160)는 다른 입력 장치(예로, 키보드, 마우스, 모션 입력부 등)로 구현될 수 있다. 특히, 입력부(160)는 사용자로부터 키워드에 대응되는 동작에 대한 정보를 입력받을 수 있다.
통신부(170)는 외부 장치와 통신을 수행할 수 있다. 이때, 통신부(140)가 외부 장치와 통신 연결되는 것은 제3 기기(예로, 중계기, 허브, 엑세스 포인트, 서버 또는 게이트웨이 등)를 거쳐서 통신하는 것을 포함할 수 있다. 특히, 통신부(170)는 외부 서버로부터 컨텐츠 또는 어플리케이션과 관련된 정보를 수신할 수 있다.
한편, 통신부(170)는 외부 장치와 통신을 수행하기 위해 다양한 통신 모듈을 포함할 수 있다. 일 예로, 통신부(170)는 무선 통신 모듈을 포함할 수 있으며, 예를 들면, LTE, LTE-A(LTE Advance), 5G(5th Generation) CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), 또는 GSM(Global System for Mobile Communications) 등 중 적어도 하나를 사용하는 셀룰러 통신 모듈을 포함할 수 있다. 또 다른 예로, 무선 통신 모듈은, 예를 들면, WiFi(wireless fidelity), 블루투스, 블루투스 저전력(BLE), 지그비(Zigbee), NFC(near field communication), 자력 시큐어 트랜스미션(Magnetic Secure Transmission), 라디오 프리퀀시(RF), 또는 보디 에어리어 네트워크(BAN) 중 적어도 하나를 포함할 수 있다.
한편, 본 개시에 첨부된 도면은 본 개시에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 개시에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 개시에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 개시에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 개시에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 부프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 개시의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰, 태블릿 PC, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 서버, PDA, 의료기기, 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 어떤 실시 예들에서, 전자 장치는, 예를 들면, 텔레비전, 냉장고, 에어컨, 공기 청정기, 셋톱 박스, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM) 중 적어도 하나를 포함할 수 있다.
한편, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다. 이하에서는 도면을 참조하여 본 개시에 대해 더욱 상세히 설명하도록 한다.
본 개시의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(100))를 포함할 수 있다. 상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시 예에 따르면, 본 개시에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예를 들어, 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
110: 마이크 120: 메모리
130: 프로세서

Claims (18)

  1. 전자 장치에 있어서,
    마이크;
    복수의 키워드 인식 모델을 저장하는 메모리;
    상기 마이크 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서;를 포함하고,
    상기 프로세서는,
    상기 전자 장치의 동작 상태 정보를 바탕으로 상기 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행하고,
    상기 마이크를 통해 제1 사용자 음성이 입력되면, 상기 실행된 키워드 인식 모델을 이용하여 상기 실행된 키워드 인식 모델에 대응하는 적어도 하나의 키워드가 상기 제1 사용자 음성에 포함되어 있는 지를 확인하고,
    상기 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 상기 적어도 하나의 키워드에 대응하는 상기 전자 장치의 동작을 수행하는 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 실행된 키워드 인식 모델을 통해 상기 적어도 하나의 키워드의 신호 패턴과 상기 제1 사용자 음성의 신호 패턴 간의 유사도 값을 획득하고,
    상기 제1 사용자 음성의 신호 패턴 구간 중 상기 적어도 하나의 키워드의 신호 패턴과의 유사도 값이 임계값을 초과하는 구간이 있는 경우, 상기 제1 사용자 음성에 상기 적어도 하나의 키워드가 포함되어 있다고 식별하는 전자 장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 전자 장치에 저장된 대화 시스템이 비활성화된 제1 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델 중 상기 제1 상태에 대응되는 제1 키워드 인식 모델을 실행하고,
    상기 대화 시스템이 활성화되어 상기 마이크를 통해 입력된 제2 사용자 음성에 대응되는 텍스트를 처리하는 제2 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델 중 상기 제2 상태에 대응되는 제2 키워드 인식 모델을 실행하는 전자 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 키워드를 인식하지 못한 경우, 상기 제1 사용자 음성을 상기 대화 시스템의 ASR 모듈에 입력하여 상기 제1 사용자 음성에 대응되는 텍스트를 획득하고,
    상기 제1 사용자 음성에 대응되는 텍스트를 바탕으로 상기 제1 사용자 음성에 대한 응답을 제공하는 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 대화 시스템이 활성화되어 상기 마이크를 통해 입력된 제2 사용자 음성을 상기 대화 시스템의 ASR 모듈을 통해 인식하는 제3 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델의 실행을 중지하고 상기 ASR 모듈을 통해 상기 제2 사용자 음성에 대응되는 텍스트를 획득하는 전자 장치.
  6. 제3항에 있어서,
    상기 프로세서는,
    상기 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 기정의된 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 상기 기정의된 동작을 수행하도록 제어하는 전자 장치.
  7. 제3항에 있어서,
    상기 프로세서는,
    상기 제1 동작 상태로 동작하는 동안 실행된 상기 제1 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 다음 또는 이전 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 대화 히스토리 정보를 바탕으로 상기 제1 키워드 인식 모델이 상기 키워드가 상기 제1 사용자 음성에 포함되어 있다고 확인하기 전 상기 대화 시스템에 의해 상기 전자 장치가 수행한 동작을 식별하고,
    상기 식별된 전자 장치가 수행한 동작의 다음 또는 이전 동작에 대응되는 동작을 수행하도록 제어하는 전자 장치.
  8. 제3항에 있어서,
    상기 프로세서는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 동작을 중지하라는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 상기 대화 시스템에 의한 상기 제2 사용자 음성에 대응되는 텍스트에 대한 처리를 중지하도록 제어하는 전자 장치.
  9. 제3항에 있어서,
    상기 프로세서는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 동작을 반복하라는 의미가 포함된 키워드가 포함되어 있다고 확인되하면, 상기 대화 시스템이 수행하는 상기 제2 사용자 음성에 대응되는 텍스트의 처리를 중단하고 대화 히스토리 정보를 바탕으로 상기 텍스트의 처리를 반복하도록 제어하는 전자 장치.
  10. 전자 장치의 제어 방법에 있어서,
    상기 전자 장치의 동작 상태 정보를 바탕으로 상기 복수의 키워드 인식 모델 중 적어도 하나의 키워드 인식 모델을 선택적으로 실행하는 단계;
    마이크를 통해 제1 사용자 음성이 입력되면, 상기 실행된 키워드 인식 모델을 이용하여 상기 실행된 키워드 인식 모델에 대응되는 적어도 하나의 키워드가 상기 제1 사용자 음성에 포함되어 있는지를 확인하는 단계; 및
    상기 제1 사용자 음성에 포함된 것으로 확인된 적어도 하나의 키워드를 바탕으로, 상기 적어도 하나의 키워드에 대응하는 상기 전자 장치의 동작을 수행하는 단계;를 포함하는 전자 장치의 제어 방법.
  11. 제10항에 있어서,
    상기 인식하는 단계는,
    상기 실행된 키워드 인식 모델을 통해 상기 적어도 하나의 키워드의 신호 패턴과 상기 제1 사용자 음성의 신호 패턴 간의 유사도 값을 획득하는 단계; 및
    상기 제1 사용자 음성의 신호 패턴 구간 중 상기 적어도 하나의 키워드의 신호 패턴과의 유사도 값이 임계값을 초과하는 구간이 있는 경우, 상기 제1 사용자 음성에 상기 적어도 하나의 키워드가 포함되어 있다고 식별하는 단계;를 포함하는 전자 장치의 제어 방법.
  12. 제10항에 있어서,
    상기 실행하는 단계는,
    상기 전자 장치에 저장된 대화 시스템이 비활성화된 제1 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델 중 상기 제1 상태에 대응되는 제1 키워드 인식 모델을 실행하고,
    상기 대화 시스템이 활성화되어 상기 마이크를 통해 입력된 제2 사용자 음성에 대응되는 텍스트를 처리하는 제2 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델 중 상기 제2 상태에 대응되는 제2 키워드 인식 모델을 실행하는 단계;를 포함하는 전자 장치의 제어 방법.
  13. 제12항에 있어서,
    상기 인식하는 단계는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 키워드를 인식하지 못한 경우, 상기 키워드가 포함된 제1 사용자 음성을 상기 대화 시스템의 ASR 모듈에 입력하여 상기 제1 사용자 음성에 대응되는 텍스트를 획득하는 단계; 및
    상기 제1 사용자 음성에 대응되는 텍스트를 바탕으로 상기 제1 사용자 음성에 대한 응답을 제공하는 단계;를 포함하는 전자 장치의 제어 방법.
  14. 제10항에 있어서,
    상기 실행하는 단계는,
    상기 대화 시스템이 활성화되어 상기 마이크를 통해 입력된 제2 사용자 음성을 상기 대화 시스템의 ASR 모듈을 통해 인식하는 제3 동작 상태로 상기 전자 장치가 동작하는 경우, 상기 복수의 키워드 인식 모델의 실행을 중지하고 상기 ASR 모듈을 통해 상기 제2 사용자 음성에 대응되는 텍스트를 획득하는 단계;를 포함하는 전자 장치의 제어 방법.
  15. 제12항에 있어서,
    상기 수행하는 단계는,
    상기 제1 동작 상태로 동작하는 동안 실행된 제1 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 기정의된 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되하면, 상기 기정의된 동작을 수행하는 단계;를 포함하는 전자 장치의 제어 방법.
  16. 제12항에 있어서,
    상기 수행하는 단계는,
    상기 제1 동작 상태로 동작하는 동안 실행된 상기 제1 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 다음 또는 이전 동작을 요청하는 의미가 포함된 키워드가 포함되어 있다고 확인되하면, 대화 히스토리 정보를 바탕으로 상기 제1 키워드 인식 모델이 상기 키워드가 상기 제1 사용자 음성에 포함되어 있다고 확인하기 전 상기 대화 시스템에 의해 상기 전자 장치가 수행한 동작을 식별하는 단계; 및
    상기 식별된 전자 장치가 수행한 동작의 다음 또는 이전 동작에 대응되는 동작을 수행하는 단계;를 포함하는 전자 장치의 제어 방법.
  17. 제12항에 있어서,
    상기 수행하는 단계는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 동작을 중지하라는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 상기 대화 시스템에 의한 상기 제2 사용자 음성에 대응되는 텍스트에 대한 처리를 중지하는 단계;를 포함하는 전자 장치의 제어 방법.
  18. 제12항에 있어서,
    상기 수행하는 단계는,
    상기 제2 동작 상태로 동작하는 동안 실행된 상기 제2 키워드 인식 모델을 이용하여 상기 제1 사용자 음성에 동작을 반복하라는 의미가 포함된 키워드가 포함되어 있다고 확인되면, 상기 대화 시스템이 수행하는 상기 제2 사용자 음성에 대응되는 텍스트의 처리를 중단하고 대화 히스토리 정보를 바탕으로 상기 텍스트의 처리를 반복하는 단계;를 포함하는 전자 장치의 제어 방법.
KR1020190156146A 2019-11-28 2019-11-28 전자 장치 및 이의 제어 방법 Pending KR20210066647A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190156146A KR20210066647A (ko) 2019-11-28 2019-11-28 전자 장치 및 이의 제어 방법
US17/003,176 US11580964B2 (en) 2019-11-28 2020-08-26 Electronic apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190156146A KR20210066647A (ko) 2019-11-28 2019-11-28 전자 장치 및 이의 제어 방법

Publications (1)

Publication Number Publication Date
KR20210066647A true KR20210066647A (ko) 2021-06-07

Family

ID=76091864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190156146A Pending KR20210066647A (ko) 2019-11-28 2019-11-28 전자 장치 및 이의 제어 방법

Country Status (2)

Country Link
US (1) US11580964B2 (ko)
KR (1) KR20210066647A (ko)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10743101B2 (en) 2016-02-22 2020-08-11 Sonos, Inc. Content mixing
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US9811314B2 (en) 2016-02-22 2017-11-07 Sonos, Inc. Metadata exchange involving a networked playback system and a networked microphone system
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US9965247B2 (en) 2016-02-22 2018-05-08 Sonos, Inc. Voice controlled media playback system based on user profile
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
US10134399B2 (en) 2016-07-15 2018-11-20 Sonos, Inc. Contextualization of voice inputs
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US10181323B2 (en) 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US11183181B2 (en) 2017-03-27 2021-11-23 Sonos, Inc. Systems and methods of multiple voice services
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
US10531157B1 (en) * 2017-09-21 2020-01-07 Amazon Technologies, Inc. Presentation and management of audio and visual content across devices
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10051366B1 (en) 2017-09-28 2018-08-14 Sonos, Inc. Three-dimensional beam forming with a microphone array
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10880650B2 (en) 2017-12-10 2020-12-29 Sonos, Inc. Network microphone devices with automatic do not disturb actuation capabilities
US10818290B2 (en) 2017-12-11 2020-10-27 Sonos, Inc. Home graph
US11343614B2 (en) 2018-01-31 2022-05-24 Sonos, Inc. Device designation of playback and network microphone device arrangements
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US10811015B2 (en) 2018-09-25 2020-10-20 Sonos, Inc. Voice detection optimization based on selected voice assistant service
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US10692518B2 (en) 2018-09-29 2020-06-23 Sonos, Inc. Linear filtering for noise-suppressed speech detection via multiple network microphone devices
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
US11315556B2 (en) 2019-02-08 2022-04-26 Sonos, Inc. Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US11361756B2 (en) 2019-06-12 2022-06-14 Sonos, Inc. Conditional wake word eventing based on environment
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11138969B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11556307B2 (en) 2020-01-31 2023-01-17 Sonos, Inc. Local voice data processing
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11727919B2 (en) 2020-05-20 2023-08-15 Sonos, Inc. Memory allocation for keyword spotting engines
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
US11308962B2 (en) * 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US12283269B2 (en) 2020-10-16 2025-04-22 Sonos, Inc. Intent inference in audiovisual communication sessions
US11984123B2 (en) 2020-11-12 2024-05-14 Sonos, Inc. Network device interaction by range
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
CN113851117B (zh) * 2021-09-27 2025-02-25 苏州科达科技股份有限公司 语音关键词识别方法、系统、设备及存储介质
EP4409933A1 (en) 2021-09-30 2024-08-07 Sonos, Inc. Enabling and disabling microphones and voice assistants
WO2023056258A1 (en) 2021-09-30 2023-04-06 Sonos, Inc. Conflict management for wake-word detection processes
US12327549B2 (en) 2022-02-09 2025-06-10 Sonos, Inc. Gatekeeping for voice intent processing
KR102581221B1 (ko) * 2023-05-10 2023-09-21 주식회사 솔트룩스 재생 중인 응답 발화를 제어 및 사용자 의도를 예측하는 방법, 장치 및 컴퓨터-판독 가능 기록 매체
CN118981644B (zh) * 2024-10-18 2025-05-27 每日互动股份有限公司 一种目标用户的识别方法、装置、设备及介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101990037B1 (ko) 2012-11-13 2019-06-18 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
WO2015030474A1 (ko) * 2013-08-26 2015-03-05 삼성전자 주식회사 음성 인식을 위한 전자 장치 및 방법
EP3067884B1 (en) 2015-03-13 2019-05-08 Samsung Electronics Co., Ltd. Speech recognition system and speech recognition method thereof
US10175933B1 (en) * 2015-12-28 2019-01-08 Amazon Technologies, Inc. Interactive personalized audio
US10311875B2 (en) 2016-12-22 2019-06-04 Soundhound, Inc. Full-duplex utterance processing in a natural language virtual assistant
KR102643501B1 (ko) 2016-12-26 2024-03-06 현대자동차주식회사 대화 처리 장치, 이를 포함하는 차량 및 대화 처리 방법
US10431217B2 (en) * 2017-02-15 2019-10-01 Amazon Technologies, Inc. Audio playback device that dynamically switches between receiving audio data from a soft access point and receiving audio data from a local access point
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
KR102203720B1 (ko) 2017-06-26 2021-01-15 에스케이텔레콤 주식회사 음성 인식 방법 및 장치
US11423879B2 (en) * 2017-07-18 2022-08-23 Disney Enterprises, Inc. Verbal cues for high-speed control of a voice-enabled device
TW201908920A (zh) 2017-07-21 2019-03-01 致伸科技股份有限公司 數位語音助理之操作系統
GB2577879B (en) * 2018-10-08 2022-08-24 B & W Group Ltd Content playback system
US11232788B2 (en) * 2018-12-10 2022-01-25 Amazon Technologies, Inc. Wakeword detection
US10861446B2 (en) * 2018-12-10 2020-12-08 Amazon Technologies, Inc. Generating input alternatives
JP7358407B2 (ja) * 2019-02-27 2023-10-10 グーグル エルエルシー コンピューティングデバイスとの継続的な会話の検出
US11094324B2 (en) * 2019-05-14 2021-08-17 Motorola Mobility Llc Accumulative multi-cue activation of domain-specific automatic speech recognition engine
US11158308B1 (en) * 2019-11-27 2021-10-26 Amazon Technologies, Inc. Configuring natural language system

Also Published As

Publication number Publication date
US20210166680A1 (en) 2021-06-03
US11580964B2 (en) 2023-02-14

Similar Documents

Publication Publication Date Title
US11580964B2 (en) Electronic apparatus and control method thereof
JP6980119B2 (ja) 音声認識方法、並びにその装置、デバイス、記憶媒体及びプログラム
US11790912B2 (en) Phoneme recognizer customizable keyword spotting system with keyword adaptation
CN110998716B (zh) 经由教师-学生学习在话音识别中进行的域自适应
US11842735B2 (en) Electronic apparatus and control method thereof
US11631400B2 (en) Electronic apparatus and controlling method thereof
KR102790926B1 (ko) 페르소나 챗봇 제어 방법 및 시스템
EP3966809B1 (en) Wake word selection assistance architectures and methods
CN114270361B (zh) 用于注册用于语音助理服务的设备的系统和方法
US9466286B1 (en) Transitioning an electronic device between device states
US20200143809A1 (en) Electronic apparatus and control method thereof
US11468892B2 (en) Electronic apparatus and method for controlling electronic apparatus
US11705110B2 (en) Electronic device and controlling the electronic device
US20210110816A1 (en) Electronic apparatus and method of providing sentence thereof
KR20200132673A (ko) 전자 장치 및 이의 제어 방법
KR102684936B1 (ko) 전자 장치 및 이의 제어 방법
US10952075B2 (en) Electronic apparatus and WiFi connecting method thereof
US20210241771A1 (en) Electronic device and method for controlling the electronic device thereof
EP3736685B1 (en) Display apparatus and method for controlling thereof
KR102836970B1 (ko) 전자 장치 및 이의 제어 방법
KR20210065698A (ko) 전자 장치 및 이의 제어 방법
KR20210014053A (ko) 보이스 어시스턴트 서비스를 위한 디바이스를 등록하는 시스템 및 방법
KR102811886B1 (ko) 전자 장치 및 이의 제어 방법
US20240119960A1 (en) Electronic device and method of recognizing voice
US20240194187A1 (en) Electronic device for performing speech recognition and a control method thereof

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20191128

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20221109

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20191128

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20250702

Patent event code: PE09021S01D