KR20230088086A - 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치 - Google Patents

오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR20230088086A
KR20230088086A KR1020210176941A KR20210176941A KR20230088086A KR 20230088086 A KR20230088086 A KR 20230088086A KR 1020210176941 A KR1020210176941 A KR 1020210176941A KR 20210176941 A KR20210176941 A KR 20210176941A KR 20230088086 A KR20230088086 A KR 20230088086A
Authority
KR
South Korea
Prior art keywords
voice signal
trigger word
electronic device
user
misrecognized
Prior art date
Application number
KR1020210176941A
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 KR1020210176941A priority Critical patent/KR20230088086A/ko
Priority to PCT/KR2022/018196 priority patent/WO2023106678A1/ko
Publication of KR20230088086A publication Critical patent/KR20230088086A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • 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
    • 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/01Assessment or evaluation of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • 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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Abstract

전자 장치에서 오인식된 음성 신호를 처리하는 방법이 개시된다. 구체적으로, 전자 장치에서 오인식된 음성 신호를 처리하는 방법에 있어서, 음성 신호(audio signal)를 수신하는 단계; 상기 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드(trigger word)가 포함되면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식(Misrecognition) 여부를 결정하는 단계; 상기 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하는 단계; 및 상기 요청에 대응하여 수신된 상기 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식(audio recognition)에 대응하는 기능을 실행하는 단계; 를 포함하는 전자 장치에서 오인식된 음성 신호를 처리하는 방법이 개시된다.

Description

오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치{Device and method of handling misrecognized audio signal}
본 개시의 실시예들은 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치에 관한 것이다.
음성인식은 사용자의 음성을 입력 받아 자동으로 문자로 변환하여 인식하는 기술이다. 근래에 들어 스마트폰이나 TV 등에서 키보드 입력을 대체하기 위한 인터페이스 기술로써 음성 인식이 사용되고 있다.
음성인식을 시작하는 방법은 크게 두가지가 있다. 첫번째는 음성인식 시작을 위한 버튼 또는 별도의 장치를 활성화시킴으로써, 음성 인식에 대응하는 기능을 실행할 수 있다. 두번째는 트리거 워드를 사용자가 발화하여 이를 인식한 후 음성 인식에 대응하는 기능을 실행할 수 있다. 다만, 사용자의 발화가 트리거 워드인지를 판단함에 있어, 이를 오인식할 가능성이 있으며, 오인식 상황을 완전하게 방지할 수 없다는 문제점이 있다.
본 개시의 일 실시예는 음성 신호에 트리거 워드가 포함되는지를 판단한 후, 음성 신호에 포함된다고 판단된 트리거 워드에 오인식이 있는지 여부를 결정함으로써, 오인식 여부에 대한 결정에 기초하여 사용자에게 추가적인 입력을 요청함으로써 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치를 제공하는 것을 목적으로 한다.
본 개시의 제1 측면에 따른 오인식된 음성 신호를 처리하는 방법은 음성 신호(audio signal)를 수신하는 단계; 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드(trigger word)가 포함되면, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식(Misrecognition) 여부를 결정하는 단계; 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하는 단계; 및 요청에 대응하여 수신된 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식(audio recognition)에 대응하는 기능을 실행하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 기 설정된 제1 시간 내의 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 기능 실행 이력에 기초하여 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 제1 시간 내에 기능 실행 이력이 없으면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 수신된 음성 신호 및 전자 장치에서 출력되는 레퍼런스 음성 신호를 동기화 하는 단계; 및 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 제1 임계치 이상이면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 사용자에게 추가 입력을 요청하는 단계는 사용자에게 레퍼런스 음성 신호의 세기를 기 설정된 제2 임계치 이하로 조정하고, 결정된 트리거 워드에 대한 추가 입력을 요청하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 사용자에게 추가 입력을 요청하는 단계는, 사용자에게 적어도 하나의 입력 신호의 수행 여부와 관련된 추가 입력을 요청하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하는 단계; 복수개의 구간의 에너지 값들 및 복수개의 구간의 ZCR들(Zero-Crossing Rate) 중 적어도 하나에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도를 측정하는 단계; 및 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드가 음성 신호에 포함된다고 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드 중 측정된 유사도가 제4 임계치보다 작은 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 사용자에게 추가 입력을 요청하는 단계는, 식별된 적어도 하나의 트리거 워드와 다른 단어를 선택하는 단계; 및 사용자에게 선택된 단어를 추가 입력할 것을 요청하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법에 있어서, 사용자에게 추가 입력을 요청하는 단계는, 기 설정된 제2 시간 내에 사용자에게 추가 입력을 요청하는 단계; 를 포함할 수 있다.
본 개시의 일 실시예에 따른 방법은 오인식 여부에 대한 결정에 기초하여, 외부 디스플레이 장치에서 추가 입력과 관련된 UI(User Interface)를 출력하도록, 전자 장치의 통신부에서 외부 디스플레이 장치로 제어 신호를 송신하는 단계; 및
외부 디스플레이 장치로부터 제어 신호에 따른 사용자의 응답 신호를 수신하는 단계; 를 더 포함할 수 있다.
본 개시의 제2 측면에 따른 오인식된 음성 신호를 처리하기 위한 전자 장치는 하나 이상의 인스트럭션을 저장하는 메모리; 및 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서; 를 포함하며, 적어도 하나의 프로세서는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하고, 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하고, 및 요청에 대응하여 수신된 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 디스플레이부; 를 더 포함하고, 적어도 하나의 프로세서는 오인식 여부에 대한 결정에 기초하여, 상기 디스플레이부를 통해 상기 사용자에게 상기 추가 입력을 요청하도록 제어할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 수신부; 를 더 포함하고, 적어도 하나의 프로세서는 수신부를 통해 음성 신호를 수신하도록 제어할 수 있다.
본 개시의 일 실시예에 따른 전자 장치에 있어서, 통신부; 를 더 포함하고, 적어도 하나의 프로세서는 음성 신호를 수신한 외부 전자 장치로부터 통신부를 통해 음성 신호를 수신하도록 제어할 수 있다.
본 개시의 제3 측면에 따른 기록매체는 상기 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다.
본 개시의 일 실시예에 따르면, 음성 신호에 트리거 워드가 포함되는지를 판단한 후, 음성 신호에 포함된다고 판단된 트리거 워드에 오인식이 있는지 여부를 결정함으로써, 결정에 따라 사용자에게 추가적인 입력을 요청할 수 있다. 오인식과 관련된 추가 입력에 따른 사용자의 응답 및 수신된 음성 신호에 기초하여 음성 인식에 대응하는 기능을 실행하는 바, 오인식된 트리거 워드에 따른 불필요한 음성 인식의 개시를 방지할 수 있다.
도 1은 일 실시예에 따른 오인식된 음성 신호를 처리하는 방법을 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 전자 장치를 설명하기 위한 블록 구성도이다.
도 3은 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 전자 장치를 설명하기 위한 블록 구성도이다.
도 4는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 순서도이다.
도 5는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하는 방법을 구체적으로 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따른 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 방법 및 이에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
도 7은 본 개시의 일 실시예에 따른 수신부에서 수신된 음성 신호 및 전자 장치의 레퍼런스 음성 신호에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
도 8은 일 실시예에 따른 전자 장치의 레퍼런스 음성 신호에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
도 9는 도 8에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
도 10은 일 실시예에 따른 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
도 11은 일 실시예에 따른 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
도 12는 도 11에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
도 13은 일 실시예에 따른 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도에 기초하여, 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
도 14는 일 실시예에 따른 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도에 기초하여, 음성 신호에 포함되는 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
도 15는 도 14에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
본 개시에서 사용되는 용어에 대해 간략히 설명하고, 본 개시의 일 실시예에 대해 구체적으로 설명하기로 한다.
본 개시에서 사용되는 용어는 본 개시의 일 실시예에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 본 개시의 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시의 일 실시예는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 개시의 일 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 본 개시 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐만 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에서, '트리거 워드(Trigger Word)'는 음성 인식의 개시를 결정하기 위한 기준이 되는 단어를 의미할 수 있다. 트리거 워드 및 사용자 발화의 유사도에 기초하여, 사용자의 발화에 트리거 워드가 포함되는지 여부를 결정할 수 있다. 구체적으로, 음향 정보를 학습한 음향 모델에 기초하여, 전자 장치 또는 서버는 사용자의 발화와 음향 모델이 일치하는 정도에 대한 확률 정보를 바탕으로, 트리거 워드 및 사용자 발화의 유사도를 결정할 수 있다. 트리거 워드는 기 설정된 적어도 하나의 트리거 워드를 포함할 수 있다. 트리거 워드는 호출어 또는 음성 인식 시작 명령어일 수 있다. 본 명세서에서 호출어 또는 음성 인식 시작 명령어는 트리거 워드로 언급될 수도 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 오인식된 음성 신호를 처리하는 방법을 나타내는 도면이다.
도 1은 사용자(1100) 및 음성 인식이 가능한 전자 장치(1200)를 도시하고 있다. 구체적으로 전자 장치(1200)는 오인식된 음성 신호에 대응하여 추가 입력을 요청함으로써 오인식된 음성 신호를 처리하는 전자 장치일 수 있다.
본 개시의 일 실시예에 따른 사용자(1100)는 음성 인식이 가능한 전자 장치(1200) 주변에 위치할 수 있고, 음성 신호(1110)를 발화할 수 있다. 이때, 전자 장치(1200)는 수신된 음성 신호(1110)에 기 설정된 적어도 하나의 트리거 워드
사용자(1000)의 음성 신호(1110)에 적어도 하나의 트리거 워드가 포함된 경우, 전자 장치(1200)는 음성 인식에 대한 사용자의 의도와는 관계없이, 사용자(1100)의 음성 신호(1110)에 포함되는 적어도 하나의 트리거 워드를 결정할 수 있다. 또한, 전자 장치(1200)는 음성 신호(1100)에 적어도 하나의 트리거 워드가 포함된다고 결정한 경우, 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
예를 들어, 본 개시의 일 실시예에 따른 사용자(1100)는 "빅스비아이트(Bixbyite)가 뭐지?" 라는 음성 신호(1110)를 발화할 수 있다. 빅스비아이트는 지질학과 관련된 전문 용어를 의미할 수 있다. "빅스비아이트(Bixbyite)가 뭐지?" 라는 음성 신호(1110)와 관련된 사용자(1100)의 의도는 빅스비아이트의 화학식(1121)이 (Mn, Fe)2O3라는 정보, 빅스비아이트의 분자량(1122)이 158.78325라는 정보 및 빅스비아이트의 결정계(1123)이 입방 정계(Cubic)이라는 정보 중 적어도 하나를 포함하는 "지질학" 관련 정보(1120)일 수도 있다.
또한, 본 개시의 일 실시예에 따른 빅스비아이트와 전자 장치(1200)의 음성인식과 관련된 트리거 워드는 발음이 유사한 단어일 수 있다. 예를 들어, 전자 장치(1200)에 기 저장되어 있는 적어도 하나의 트리거워드는 빅스비를 포함할 수 있다. 따라서, 적어도 하나의 트리거 워드 중 빅스비와 빅스비아이트는 처음 3개의 음절(syllable)이 완전히 동일한 바, 전자 장치(1200)의 프로세서는 사용자(1100)의 발화인 "빅스비아이트가 뭐지?"(1110)를 '빅스비 아이가 뭐지"로 오인식할 수도 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 오인식 여부에 대한 결정에 기초하여, 사용자(1100)에 추가 입력을 요청할 수 있다. 구체적으로, 사용자(1100)의 음성 신호(1110)에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는 경우, 전자 장치(1200)는 음성 인식을 바로 개시하는 것이 아닌 사용자(1100)에게 오인식과 관련된 추가 입력을 요청함으로써, 불필요한 음성인식이 시작 또는 수행되는 상황을 방지할 수 있다.
예를 들어, "빅스비아이트가 뭐지?"라는 음성 신호(1110)를 '빅스비 아이가 뭐지"로 오인식 하였음에도, 전자 장치가 별도의 대처 동작을 하지 않는 경우, 전자 장치(1200)는 아이에 대한 정보(1140)를 전자 장치의 디스플레이부를 통해 출력하거나 아이에 대한 정보(1140)와 대응되는 음성 신호(1141)를 오디오 출력부를 통해 출력할 수도 있다. 이 경우, 트리거 워드인 빅스비의 오인식에 따라, 사용자(1100)는 얻고자 하는 지질학 관련 정보(1120)와 상이한 "아이"에 대한 정보(1140)를 수신할 수 있다. 즉, 이와 같은 경우, 사용자(1100)는 전자 장치(1200)로부터 획득하기를 원했던 정보인 "지질학" 관련 정보(1120)가 아닌 "아이"에 대한 정보(1140)를 얻게 될 수 있다.
예를 들어, 도1을 참조하여 설명된 예에서, 전자 장치(1200)는 트리거 워드의 오인식에 대응하여 사용자의 추가 입력(1150)을 별도로 요청하는 동작을 수행할 수도 있다. 구체적으로, 전자 장치(1200)는 디스플레이부를 통해, "추가 입력: 아이가 무엇인지를 질문하신 경우, 예스라고 대답해주세요"(1150)라는 텍스트를 추가적으로 출력함으로써, 빅스비의 오인식에 대응하여 사용자의 추가 입력을 요청하는 동작을 수행할 수 있다. 또한, 전자 장치(1200)는 "아이가 무엇인지를 질문하신 경우, 예스라고 대답해주세요"라는 음성 신호를 출력하여, 사용자의 추가 입력을 요청하는 동작을 수행할 수도 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 오인식 여부에 대한 결정에 기초하여, 사용자(1100)에 추가 입력을 요청할 수 있다. 전자 장치(1200)는 오인식 여부에 대한 결정에 기초하여, 기 설정된 시간 내에 사용자에게 추가 입력을 요청할 수 있다. 또한, 전자 장치(1200)는 요청에 대응하여 수신된 사용자의 적절한 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다. 또한, 요청에 대응하여 사용자의 적절한 추가 입력을 응답하지 않았거나 기 설정된 시간 내에 사용자가 추가 입력을 거부한 경우, 전자 장치(1200)는 음성 신호에 대한 음성 인식을 종료할 수 있다.
도1의 실시예에 따르면, 사용자(1100)는 전자 장치(1200)의 디스플레이부에 출력된 추가 입력(1150)에 대한 요청이 "빅스비아이트"에 대한 내용이 아닌 "아이가 무엇인지"에 관한 내용인 바, "예"라고 대답하지 않을 수 있다. 구체적으로, 사용자(1100)는 추가 입력에 대한 요청에 "아니오"라고 대답하거나 기 설정된 제1 시간 내에 응답을 거부할 수 있다. 사용자가 추가 입력에 대한 요청에 "아니오"라고 대답하거나 기 설정된 제1 시간 내에 응답을 거부하는 경우, 전자 장치(1200)는 발화(1110)에 대한 불필요한 음성 인식이 개시되는 상황을 종료할 수 있다. 이를 통해, 전자 장치(1200)는 불필요한 음성인식이 시작 또는 수행되는 상황을 방지할 수 있다.
도 2는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 전자 장치를 설명하기 위한 블록 구성도이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 대한 음성 인식을 수행할 수 있는 전자 장치로, 구체적으로 오인식된 음성 신호를 처리하기 위한 전자 장치일 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 메모리(1210) 및 프로세서(1220)를 포함할 수 있다. 이하 상기 구성요소들에 대해 차례로 살펴본다.
메모리(1210)는 프로세서(1220)의 처리 및 제어를 위한 프로그램을 저장할 수도 있다. 본 개시의 일 실시예에 따른 메모리(1210)는 하나 이상의 인스트럭션을 저장할 수 있다.
프로세서(1220)는 전자 장치(1200)의 전반적인 동작을 제어할 수 있고, 메모리(1210)에 저장된 하나 이상의 인스트럭션을 실행하여 전자 장치(1200)의 동작을 제어할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하고, 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하고, 및 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하고, 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하고, 및 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 기 설정된 제1 시간 내의 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 수신된 음성 신호 및 오디오 출력부(미도시)에서 출력되는 레퍼런스 음성 신호를 동기화하고, 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 제1 임계치 이상이면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220) 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하고, 복수개의 구간의 에너지 값들 및 복수개의 구간의 ZCR들(Zero-Crossing Rate) 중 적어도 하나에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하고, 복수개의 구간의 에너지 값들 및 복수개의 구간의 ZCR들중 적어도 하나에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식과 관련된 적어도 하나의 구간을 결정하고, 적어도 하나의 구간에 대응되는 적어도 하나의 입력 신호가 음성 신호에 포함된다고 결정하고 및
적어도 하나의 입력 신호가 음성 신호에 포함된다는 결정에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도를 측정하고, 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드가 음성 신호에 포함된다고 결정하고, 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드 중 측정된 유사도가 제4 임계치보다 작은 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 적어도 하나의 기 설정된 제2 시간 내에 사용자에게 추가 입력을 요청할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 오인식 여부에 대한 결정에 기초하여, 디스플레이부를 통해 사용자에게 추가 입력을 요청하도록 제어할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 수신부(미도시)를 통해 음성 신호를 수신하도록 제어할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써, 음성 신호를 수신한 외부 전자 장치로부터 통신부(미도시)를 통해 음성 신호를 수신하도록 제어할 수 있다.
그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 전자 장치(1200)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 전자 장치(1200)가 구현될 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 본 개시의 일 실시예에 따른 전자 장치(1200)는 메모리(1210), 프로세서(1220), 수신부(1230), 출력부(1240), 통신부(1250), 사용자 인터페이스부(1260) 및 외부기기 인터페이스부(1270)를 포함할 수 있다.
도 3은 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 전자 장치를 설명하기 위한 블록 구성도이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 대한 음성 인식을 수행할 수 있는 전자 장치로, 오인식된 음성 신호를 처리하기 위한 전자 장치일 수 있다. 전자 장치는 휴대폰, 태블릿 PC, PDA, MP3 플레이어, 키오스크, 전자 액자, 네비게이션 장치, 디지털 TV, 손목 시계(Wrist watch) 또는 HMD(Head-Mounted Display)와 같은 웨어러블 기기(Wearable device) 등과 같은 사용자가 사용할 수 있는 다양한 유형의 장치를 포함할 수 있다. 전자 장치(1200)는 하기의 도4 내지 도15의 전자 장치와 대응될 수 있으나, 이에 제한되는 것은 아니다.
또한, 전자 장치(1200)는 메모리(1210), 프로세서(1220) 이외에 수신부(1230), 출력부(1240), 통신부(1250), 사용자 인터페이스부(1260), 외부기기 인터페이스부(1270) 및 전원 공급부(미도시)를 더 포함할 수 있다. 이하 상기 구성요소들에 대해 차례로 살펴본다.
메모리(1210)는 프로세서(1220)의 처리 및 제어를 위한 프로그램을 저장할 수도 있다. 본 개시의 일 실시예에 따른 메모리(1210)는 하나 이상의 인스트럭션을 저장할 수 있다고, 내장 메모리(Internal Memory)(미도시) 및 외장 메모리(External Memory)(미도시) 중 적어도 하나를 포함할 수 있다. 메모리(1210)는 디바이스(1200)의 동작에 사용되는 각종 프로그램 및 데이터를 저장할 수 있다. 예를 들어, 메모리(1210)는 기 설정된 적어도 하나의 트리거 워드를 저장할 수 있고, 사용자의 발화와 기 설정된 적어도 하나의 트리거 워드의 유사성을 판단하기 위한 AI 모델이 저장될 수 있다. 또한, 추가적으로 입력되는 사용자의 발화는 AI 모델의 학습데이터로도 사용될 수 있으나, 이에 제한되는 것은 아니다.
내장 메모리는, 예를 들어, 휘발성 메모리(예를 들면, DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous Dynamic RAM) 등), 비휘발성 메모리(예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), Mask ROM, Flash ROM 등), 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 제어부(3470)는 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 제어부(1220)는 다른 구성요소로부터 수신하거나 생성된 데이터를 비휘발성 메모리에 보존할 수 있다.
외장 메모리는, 예를 들면, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 및 Memory Stick 중 적어도 하나를 포함할 수 있다.
프로세서(1220)는 전자 장치(1200)의 전반적인 동작을 제어할 수 있고, 메모리(1210)에 저장된 하나 이상의 인스트럭션을 실행하여 전자 장치(1200)의 동작을 제어할 수 있다. 예를 들어, 프로세서(1220)는, 메모리(1210)에 저장된 프로그램들을 실행함으로써, 메모리(1210), 수신부(1230), 출력부(1240), 통신부(1250), 사용자 인터페이스부(1260) 및 외부기기 인터페이스부(1270) 및 전원 공급부(미도시)등을 전반적으로 제어할 수 있다.
프로세서(1220)는 RAM, ROM, CPU, GPU 및 버스 중 적어도 하나를 포함할 수 있다. RAM, ROM, CPU 및 GPU 등은 버스를 통해 서로 연결될 수 있다. 본 개시의 일 실시예에 의하면, 프로세서(1130)는 학습 네트워크 모델을 생성하기 위한 AI 프로세서를 포함할 수 있으나, 이에 한정되는 것은 아니다. 본 개시의 일 실시예에 의하면, AI 프로세서는 프로세서(1130)와 별도의 칩으로 구현될 수도 있다. 본 개시의 일 실시예에 의하면, AI 프로세서는 범용 칩일 수도 있다.
본 개시의 일 실시예에 따른 프로세서(1220)는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하고, 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하고, 및 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다. 다만, 프로세서(1220)에서 수행되는 각각의 동작은 별도의 서버(미도시)를 통해 수행될 수도 있다. 예를 들어, 프로세서(1220)는 사용자의 발화에 기 설정된 적어도 하나의 트리거 워드가 포함되고, 트리거 워드에 별도의 오인식이 없다고 결정할 수 있다. 이때, 서버는 클라우드 기반의 서버를 나타낼 수도 있으나, 이에 한정되는 것은 아니다. 이 경우, 음성 인식의 개시는 서버에 있는 STT(Speech To Text) 엔진에서 수행될 수 있으나, 이에 한정되는 것은 아니고, 음성 인식에 대응하는 기능을 실행하는 동작 또한 전자 장치(1200)에서 수행될 수도 있다. 이에 대해서는 도5에서 자세히 살펴보기로 한다.
수신부(1230)는 전자 장치(1200) 자체에 내장되어 있거나 외부에 배치된 마이크로폰을 포함할 수 있고, 마이크부는 하나 이상의 마이크로폰 포함할 수 있다. 구체적으로, 프로세서(1220)는 수신부(1230)를 통해 사용자의 아날로그 음성 신호를 수신하도록 제어할 수 있다. 또한, 프로세서(1220)는 수신부(1230)를 통해 입력되는 사용자의 발화 또는 음성 신호에 메모리(1210)에 저장된 적어도 하나의 트리거 워드와 유사한지 여부를 판단할 수 있다. 전자 장치(1200)가 수신부(1230)를 통해 수신한 음성 신호는 디지털화되어 전자 장치(1200)의 프로세서(1220)로 송신될 수도 있다.
다만, 마이크로폰을 포함하는 별도의 외부 전자 장치 또는 마이크로폰을 포함하는 휴대용 단말을 통해 음성 신호가 수신될 수도 있다. 이 경우, 전자 장치(1200)는 수신부(1230)를 포함하지 않을 수 있다. 구체적으로, 외부 전자 장치 또는 휴대용 단말을 통해 수신된 아날로그 음성 신호는 디지털화되어 블루투스 등을 통해 전자 장치(1200)로 수신될 수도 있으나, 이에 제한되는 것은 아니다. 수신부(1230)와 관련된 내용은 도 5에서 자세히 살펴보기로 한다.
출력부(1240)는 디스플레이부(1241) 및 오디오 출력부(1242) 중 적어도 하나를 포함할 수 있다.
디스플레이부(1241)는 표시패널 및 표시 패널을 제어하는 컨트롤러(미도시)를 포함할 수 있고, 디스플레이부(1241)는 전자 장치(1200)에 내장된 디스플레이를 나타낼 수 있다. 표시패널에는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, AM-OLED(Active-Matrix Organic Light-Emitting Diode), PDP(Plasma Display Panel) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 표시패널은 유연하게(flexible), 투명하게(transparent) 또는 착용할 수 있게(wearable) 구현될 수 있다. 디스플레이부(1241)는 사용자 인터페이스 (1260)의 터치 패널과 결합되어 터치 스크린으로 제공될 수 있다. 예를 들어, 터치 스크린은 표시 패널과 터치 패널이 적층 구조로 결합된 일체형의 모듈을 포함할 수 있다.
일부 실시예에 의한 디스플레이부(1241)는 프로세서(1220)의 제어에 따라 트리거 워드 오인식 여부에 대응되는 추가 입력과 관련된 유저 인터페이스(User Interface)를 출력할 수도 있다. 다만, 전자 장치(1200)는 비디오 및 오디오 아웃풋 포트를 통해 외부 전자 장치의 디스플레이부에 오인식 여부에 대응되는 추가 입력과 관련된 유저 인터페이스를 출력할 수도 있다. 이 경우, 디스플레이부(1241)는 전자 장치(1200)에 포함될 수도 있으나, 이에 제한되는 것은 아니다.
오디오 출력부(1242)는 적어도 하나의 스피커로 구성된 출력부일 수 있다. 일부 실시예에 의한 프로세서(1220)는 오디오 출력부(1242)를 통해 트리거 워드 오인식 여부에 대응되는 추가 입력에 대응되는 오디오 신호를 출력하도록 제어할 수 있다.
통신부(1250)는 전자 장치(1200)와 전자 장치(1200) 주변에 위치한 복수의 디바이스들 간의 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 통신부(1250)는 전자 장치(1200)와 서버 간의 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 구체적으로, 통신부(1250)는 다양한 유형의 통신방식에 따라 다양한 유형의 외부 기기 또는 서버와 통신을 수행할 수 있다. 또한, 통신부(1250)는 근거리 통신부을 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(1111)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(와이파이 Direct) 통신부, UWB(Ultra Wideband) 통신부, Ant+ 통신부 이더넷 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
구체적으로, 프로세서(1220)에서 수행되는 각각의 동작이 서버(미도시)에서 수행되는 경우, 전자 장치(1200)는 통신부(1250)의 와이파이 모듈 또는 이더넷 모듈을 통해 서버와 연결될 수 있으나, 이에 제한되는 것은 아니다. 이때, 서버는 클라우드 기반의 서버를 나타낼 수도 있다. 또한, 전자 장치(12000)는 통신부(1250)의 블루투스 통신부를 통해 음성 신호를 수신하는 외부 전자 장치와 연결될 수 있으나, 이에 한정되는 것은 아니다. 예를 들어, 전자 장치(12000)는 통신부(1250)의 와이파이 모듈 및 이더넷 모듈 중 적어도 하나를 통해 음성 신호를 수신하는 외부 전자 장치와 연결될 수도 있다.
사용자 입력부(1260)는 사용자로부터 다양한 명령어를 입력 받을 수 있다.
사용자 입력부(1260)는 키, 터치 패널 및 펜 인식 패널 중 적어도 하나를 포함할 수 있다. 전자 장치(1200)는 키, 터치 패널 및 펜 인식 패널 중 적어도 하나로부터 수신된 사용자 입력에 따라서 다양한 컨텐츠 또는 사용자 인터페이스를 표시할 수 있다. 키는 전자 장치(1200)의 본체 외관의 전면부나 측면부, 배면부 등의 다양한 영역에 형성된 기계적 버튼, 휠 등과 같은 다양한 유형의 키를 포함할 수 있다 터치 패널은 사용자의 터치 입력을 감지하고, 감지된 터치 신호에 해당하는 터치 이벤트 값을 출력할 수 있다. 터치 패널이 표시 패널과 결합하여 터치 스크린(미도시)을 구성한 경우, 터치 스크린은 정전식이나, 감압식, 압전식 등과 같은 다양한 유형의 터치 센서로 구현될 수 있다. 본 개시의 일 실시예에 따른 음성 신호 및 기 설정된 적어도 하나의 트리거 워드의 유사도와 관련된 임계치는 사용자 입력부(1260)를 통해 적응적으로 조정될 수 있으나, 이에 제한되는 것은 아니다.
외부기기 인터페이스부(1270)는 전자 장치(1200)와 다양한 외부 디바이스 사이의 인터페이스 환경을 제공한다. 외부기기 인터페이스부(1270)은 A/V 입출력부를 포함할 수 있다. 외부기기 인터페이스부(1270)는 DVD(Digital Versatile Disk) 및 블루-레이(Blue-ray), 게임 디바이스, 카메라, 컴퓨터, 에어컨, 노트북, 데스크탑, 텔레비전, 디지털 디스플레이 디바이스 등과 같은 외부 디바이스 등과 유/무선으로 접속될 수 있다. 외부기기 인터페이스부(1270)는 연결된 외부기기를 통하여 입력되는 이미지, 영상 및 음성 신호를 전자 장치(1100)의 프로세서(1130)로 전달할 수 있다. 프로세서(1220)는 처리된 2D이미지, 3D 이미지, 영상, 음성 등의 데이터 신호를 연결된 외부 디바이스로 출력되도록 제어할 수 있다. A/V 입출력부는 외부 디바이스의 영상 및 음성 신호를 전자 장치(1200)로 입력할 수 있도록, USB 단자, CVBS(Composite Video Banking Sync) 단자, 컴포넌트 단자, S-비디오 단자(아날로그), DVI(Digital Visual Interface) 단자, HDMI(High Definition Multimedia Interface) 단자, DP(Display Port), 썬더볼트(Thunderbolt), RGB 단자, D-SUB 단자 등을 포함할 수 있다. 본 개시의 일 실시예에 따른 프로세서(1220)는 외부기기 인터페이스부(1270)의 HDMI 단자 등의 인터페이스를 통해 음성 신호를 수신하는 외부 전자 장치와 연결될 수 있다. 본 개시의 일 실시예에 따른 프로세서(1220)는 외부기기 인터페이스부(1270)의 HDMI 단자, DP 및 썬더 볼트 등의 인터페이스 중 적어도 하나를 통해 오인식 여부에 대응되는 추가 입력과 관련된 유저 인터페이스를 출력하는 외부 전자 장치와 연결될 수도 있으나, 이에 한정되는 것은 아니다.
전자 장치(1200)는 전원 공급부(미도시)를 더 포함할 수도 있다. 전원 공급부(미도시)는 프로세서(1220)의 제어에 의해 전자 장치(1200)의 구성 요소에게 전원을 공급할 수 있다. 전원 공급부(미도시)는 프로세서(1220)의 제어에 의해 전원 코드를 통해 외부의 전원 소스에서부터 입력되는 전원을 전자 장치(1200)의 각 구성 요소들에게 공급할 수 있다.
도 4는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하기 위한 순서도이다.
단계 S1410에서, 본 개시의 일 실시예에 따른 전자 장치는 음성 신호를 수신할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 전자 장치(1200)의 수신부(1230)를 통해 음성 신호를 수신할 수 있다. 구체적으로, 전자 장치(12000)는 수신부(1230)의 마이크로폰을 통해 음성 신호를 수신할 수 있다. 음성 신호는 음성 신호일 수 있으나, 이에 제한되는 것은 아니고, 다른 복수의 사람들의 대화와 관련된 음성 신호 또는 외부 전자 장치에서 출력되는 음성 신호를 포함할 수도 있다.
또한, 본 개시의 일 실시예에 따른 전자 장치(1200)는 수신부(1230)를 포함하지 않는 전자 장치일 수 있고, 이 경우 마이크로폰을 포함하는 외부 전자 장치 또는 휴대용 단말을 통해 음성 신호를 수신할 수 있다. 구체적으로, 사용자는 외부 제어 기기에 부착된 마이크로폰에 음성 신호를 입력할 수 있고, 입력된 음성 신호는 디지털화되어 전자 장치(1200)의 통신부로 송신될 수도 있다. 또한, 예를 들어, 사용자는 휴대용 단말의 App을 통해 음성 신호를 입력할 수 있고, 입력된 음성 신호는 와이파이, 블루투스 또는 적외선 등을 통해 전자 장치(1200)의 통신부로 송수신될 수 있으나, 이에 제한되는 것은 아니다.
단계 S1420에서, 본 개시의 일 실시예에 따른 전자 장치는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 적어도 하나의 트리거 워드는 음성 인식의 개시를 판단하기 위해서 사용되는 단어일 수 있다. 적어도 하나의 트리거 워드는 Wake-up Word Engine(WWE)을 통해 사용자의 발화와 유사성을 판단하는 대상으로 기 학습된 단어일 수도 있다. 또한, 적어도 하나의 트리거 워드는 복수개의 트리거 워드를 포함할 수도 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 WWE를 통해 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정할 수 있다. 구체적으로, WWE는 기 설정된 적어도 하나의 트리거 워드에 대한 음향 정보를 학습한 음향 모델을 기반으로, 사용자의 발화 또는 음성 신호와 적어도 하나의 트리거 워드의 유사도를 판단하는 모듈일 수 있다. WWE는 판단된 유사도에 대응되는 확률 정보에 기초하여, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정할 수 있다. WWE는 기 설정된 트리거 워드와 음성 신호의 유사도에 기초하여, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정하는 모듈인 바, 사용자의 발화(Speech)를 텍스트로 전환해주는 STT(Speech to Text) 엔진과 비교할 때, 저용량의 엔진일 수도 있다.
구체적으로, 프로세서(1220)는 WWE에서 측정된 유사도가 기 설정된 임계치 이상이면, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함된다고 결정할 수 있다. 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정하는 동작에 대해서는 도 13에서 자세히 살펴보기로 한다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되지 않는다고 결정할 수 있다. 예를 들어, 전자 장치(1200)는 음성 신호에 적어도 하나의 트리거 워드가 포함되지 않는 경우, 수신된 음성 신호에 대한 음성 인식 동작을 종료할 수 있다. 구체적으로, 프로세서(1220)는 WWE에서 측정된 유사도가 기 설정된 임계치 미만이면, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되지 않는다고 결정할 수 있다. 이때, 새로운 음성 신호가 수신되기 전까지, 전자 장치(1200)는 대기 모드로 동작할 수도 있다. 새로운 음성 신호가 수신되는 경우, 전자 장치(1200)는 수신된 새로운 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정할 수 있다.전자 장치(1200)는 기 설정된 적어도 하나의 트리거 워드 및 사용자의 발화 간의 유사도에 기초하여 음성 신호에 적어도 하나의 트리거 워드가 포함되는지 여부를 판단하는 바, 음성 신호에 포함되는 적어도 하나의 트리거 워드에도 오인식이 있을 수 있다. 여기서, 음성 신호에 포함되는 적어도 하나의 트리거 워드는 전자 장치(1200)의 프로세서(1220)에서 음성 신호에 포함된다고 결정된 적어도 하나의 트리거 워드를 나타낼 수도 있다. 하기에서는 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 판단하는 방법에 대해 살펴본다.
(1) 본 개시의 일 실시예에 따른 전자 장치(1200)는 기 설정된 제1 시간 내에 음성 인식에 대응하는 기능 실행 이력에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 사용자 또는 전자 장치의 음성 인식 기능 실행 이력은 특정 시간대(예를 들어, 오전 또는 오후) 또는 기 설정된 시간 내에 집중되는 경향성을 나타낼 수도 있다. 따라서, 기 설정된 제1 시간 내에 전자 장치를 통해 음성 인식을 실행한 기능 실행 이력이 없으면, 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식이 있다고 결정할 수 있다. 예를 들어, 특정 사용자는 매일 오전 8시쯤 음성 인식을 통해 "빅스비! 오늘 날씨는 어때?"라는 음성 신호를 발화하는 경향성을 나타낼 수 있다. 이때, 사용자가 발화한 오전 8시경의 음성 인식에 대해, 전자 장치(1200)는 기능 실행 이력을 고려하여 사용자에게 별도의 추가 입력을 요청하는 동작없이 음성 인식에 대응하는 기능을 실행하는 것이 더 적절할 수 있다. 또한, 예를 들어, 사용자가 발화한 오후 8시 경의 음성 인식에 대해, 전자 장치(1200)는 오후 8시 경의 음성 인식 기능 실행 이력이 없었다는 점을 고려하여, 사용자에게 별도의 추가 입력을 요청할 수도 있다.
기 설정된 시간은 사용자 입력부(1260)를 통해 조정될 수 있다. 또한, 기기 설정된 시간은 사용자의 음성 기능 실행 이력에 기초하여 적응적으로 조정되거나, 서버를 통해 조정될 수도 있으나, 이에 제한되는 것은 아니다. 음성 인식에 대응하는 기능 실행 이력에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 동작에 대해서는 도 6에서 자세히 살펴보기로 한다.
(2) 본 개시의 일 실시예에 따른 전자 장치(1200)는 전자 장치(1200)에서 출력되는 레퍼런스 음성 신호에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 오디오 출력부(1242)를 통해 레퍼런스 음성 신호를 출력할 수 있다. 본 명세서에서 레퍼런스 음성 신호는 전자 장치(1200) 자체에서 출력된 음성 신호를 나타낼 수 있고, 구체적으로는 전자 장치(1200)에서 출력되고 있는 콘텐트와 관련된 음성 신호일 수 있다. 레퍼런스 음성 신호는 기 설정된 적어도 하나의 트리거 워드와 유사한 발음 구조를 가진 단어를 포함하고 있을 수도 있다. 예를 들어, 전자 장치(1200)는 지질학과 관련된 콘텐트에서 광물의 종류인 '빅스비아이트'와 관련된 내용을 오디오 출력부를 통해 출력할 수 있고, 레퍼런스 음성 신호는 트리거 워드인 빅스비와 발음이 유사한 빅스비아이트를 포함할 수 있다. 따라서, 전자 장치(1200)의 수신부(1230)는 오디오 출력부(1241)에서 출력된 레퍼런스 음성 신호에 대응되는 음성 신호를 수신할 수 있고, 전자 장치(1200)는 수신부(1230)를 통해 수신된 음성 신호에 트리거 워드인 빅스비가 포함되어 있다고 오인식할 수도 있다.
이때, 전자 장치(1200)는 AEC(Acoustic Echo Cancellation)를 통해 출력된 레퍼런스 음성 신호가 전자 장치(1200)의 수신부(1230)로 수신됨에 따른 에코 현상을 방지할 수 있으나, 잔여 에코가 WWE에 유입될 수도 있는 바, 음성 신호에 오인식이 발생될 가능성은 여전히 존재한다. 따라서, 전자 장치(1200)는 전자 장치(1200)에서 출력되는 레퍼런스 음성 신호에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다. 수신부를 통해 수신된 음성 신호 및 전자 장치에서 출력되는 레퍼런스 음성 신호에 기초하여 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 구체적인 동작에 대해서는 도 7-9에서 자세히 살펴보기로 한다.
(3) 본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신할 수 있다. 일반적으로, 사용자(1100)는 적어도 트리거 워드 중 어느 하나를 먼저 발화한 후, 일정한 시간 간격을 두고 음성 인식과 관련된 명령어를 발화하는 경향이 있다. 하지만, 전자 장치(1200)는 기 설정된 트리거 워드와 함께 일상 대화, 외부 전자 장치에서 재생되는 소리 신호를 끊김없이 수신할 수도 있고, 사용자가 긴 문장의 음성 신호를 별도의 쉼 없이 빠르게 발화하는 경우도 있다. 이때, 전자 장치(1200)는 적어도 하나의 트리거 워드뿐만 아니라 별도의 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신할 수도 있다. 이때, 전자 장치(1200)는 적어도 하나의 트리거 워드뿐만 아니라 별도의 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신한 경우, 음성 신호에 오인식이 있다고 판단할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하고, 복수개의 구간의 에너지 값들 및 복수개의 구간의 ZCR들(Zero-Crossing Rate) 중 적어도 하나에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다. 구체적으로, 전자 장치(1200)는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하고, 복수개의 구간의 에너지 값들 및 ZCR들을 이용하여, 복수개의 구간 중 적어도 하나의 입력 신호가 있다고 판단되는 적어도 하나의 구간을 식별할 수 있다. 이때, 전자 장치(1200)는 음성 신호에 적어도 하나의 트리거 워드 이외의 적어도 하나의 입력 신호가 있다는 것을 고려하여, 음성 인식에 오인식이 있다고 결정할 수 있다. 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 상기 음성 신호에 포함되는지 여부에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다. 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 구체적인 동작에 대해서는 도 10-12에서 자세히 살펴보기로 한다.
(4) 본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드 및 음성 신호의 유사도에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 음성 신호에 포함되는 적어도 하나의 트리거 워드 및 음성 신호의 유사도는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 판단하는데 이용되는 유사도와 동일한 유사도일 수 있으나, 이에 제한되는 것은 아니다. 예를 들어, 음성 신호에 포함되는 적어도 하나의 트리거 워드 및 음성 신호의 유사도가 기 설정된 임계치보다 낮을 수도 있다. 이때, 프로세서(12220)는 측정된 유사도가 임계치보다 작은 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다. 음성 신호에 포함되는 적어도 하나의 트리거 워드 및 음성 신호의 유사도에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 동작에 대해서는 도13-15에서 자세히 살펴보기로 한다.
전자 장치(1200)는 전술한 방법 (1)-(4) 중 적어도 하나를 이용하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 판단할 수 있다. 전자 장치(1200)는 바람직하게는 방법 (1)을 가장 먼저 판단한 후, 방법(2)-(4) 중 적어도 하나를 통해, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 결정할 수 있지만, 이에 제한되는 것은 아니다. 전자 장치(1200)는 전술한 방법 (1)-(4) 중 적어도 하나를 이용하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정한 경우, 단계S1420에 따라 상기 이용된 방법에 대응되는 추가 입력을 사용자에게 요청할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 없는 경우, 사용자에게 별도의 추가 입력을 요청하지 않을 수 있다. 이때, 전자 장치(1200)는 사용자의 추가 입력 없이, 수신된 음성 신호에 대해 음성 인식에 대응하는 기능을 실행할 수도 있다.
단계 S1430에서, 본 개시의 일 실시예에 따른 전자 장치는 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 디스플레이부(1241)를 통해, 단계 S1420에서 이용된 방법(방법(1)-(4) 중 적어도 하나를 나타낼 수 있다.)에 대응되도록 유저 인터페이스(User-Interface)를 생성함으로써, 추가 입력을 요청할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)가 디스플레이부를 포함하지 않을 수도 있다. 이 경우, 전자 장치(1200)의 프로세서(1220)는 디스플레이부를 포함하는 외부 전자 장치를 통해 추가 입력을 포함하는 UI가 출력되도록 제어할 수 있다. 또한, 전자 장치(1200)가 외부기기 인터페이스부(1270)를 통해 디스플레이부를 포함하는 외부 전자 장치와 연결되어 있을 수도 있다. 이 경우, 프로세서(1220)는 디스플레이부를 포함하는 외부 전자 장치를 통해 추가 입력을 포함하는 UI가 출력되도록 비디오 신호를 제어할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 상기 전술한 방법 (1)-(4)에 대응되도록, 방법에 따라 상이한 추가 입력을 사용자에게 요청할 수 있다. 구체적으로, 방법 (2)와 관련된 추가 입력에 대해서는 도 9, 방법 (3)와 관련된 추가 입력에 대해서는 도 12 및 방법 (4)와 관련된 추가 입력에 대해서는 도 15에서 자세히 살펴보기로 한다.
단계 S1440에서, 본 개시의 일 실시예에 따른 전자 장치는 요청에 대응하여 수신된 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 기 설정된 시간 내에 사용자에게 추가 입력을 요청하고, 요청에 대응하여 사용자에게 적절한 응답이 온 경우, 수신된 음성 신호에 기초하여 음성 인식에 대응하는 기능을 실행할 수 있다.
예를 들어, 기 설정된 시간 내에 사용자가 응답하지 않은 경우 및 기 설정된 시간 내에 사용자가 추가 입력에 대한 요청을 거부한 경우 중 적어도 하나에 해당되는 경우, 전자 장치(1200)는 음성 신호에 대한 음성 인식을 종료할 수 있다. 반대로, 기 설정된 시간 내에 적절한 추가 입력을 사용자가 발화할 수도 있다. 이때, 사용자의 적절한 응답에 따라, 전자 장치(1200)는 음성 신호에 포함되는 트리거 워드에 오인식이 해결되었다고 판단하고, 수신된 음성 신호에 가초하여 음성 인식에 대응하는 기능을 실행할 수 있다.
본 개시의 일 실시예에 따른 음성 신호에 기초한 음성 인식에 대응하는 기능을 실행하는 동작은 STT(Speech to Text) 엔진에서 수행될 수 있다. STT 엔진은 고용량의 음향 데이터에 기초하여 학습된 엔진일 수 있고, 사용자의 발화를 낮은 오차율로 텍스트로 전환하는 모듈일 수 있다. STT엔진은 기 설정된 적어도 하나의 트리거 워드가 음성 신호에 포함되는지 여부를 판단하는 WWE엔진과 비교할 때, 고용량의 엔진일 수도 있다.
전자 장치(1200)는 음성 신호에서 트리거 워드에 오인식이 있는지 여부를 먼저 판단한 후, STT 엔진을 통해 정확하게 음성 인식을 수행하는 바, 1) 트리거 워드에 오인식이 발생하였다고 판단되는 경우, 음성 인식을 종료할 수 있고, 2) 트리거 워드에 오인식이 있는 경우, STT엔진을 통해 정확한 음성 인식을 수행하지 않음으로써 에너지를 효율적으로 사용할 수 있으며, 3) 사용자에게 예기치 못한 음성 인식의 개시를 미연에 방지할 수 있을 수 있다.
도 5는 본 개시의 일 실시예에 따른 오인식된 음성 신호를 처리하는 방법을 구체적으로 나타내는 도면이다.
본 개시의 일 실시예에 따른 전자 장치는 사용자(1100)의 "빅스비아이트가 뭐지" 라는 음성 신호(1500)를 수신부를 통해 수신할 수도 있다. 다만, 도5에서 볼 수 있듯이, 별도의 수신부를 포함하지 않는 전자 장치(1520)는 외부 전자 장치를 통해 음성 신호를 수신할 수 있다. 음성 신호를 수신하는 외부 전자 장치는 리모콘(1510), 휴대용 단말, AI 스피커(1515) 등을 포함할 수 있으나, 이에 제한되는 것은 아니다.
예를 들어, 외부 전자 장치는 마이크로폰이 구비된 리모컨(1510)일 수 있으나, 이에 제한되는 것은 아니다. 리모컨(1510)은 마이크로폰을 통해 아날로그 음성 신호를 수신할 수 있고, 수신된 아날로그 음성 신호는 디지털 음성 신호로 변환될 수 있다. 전자 장치(1520)는 통신부를 통해 블루투스 또는 와이파이 등 데이터 전송 통신을 통해 디지털 음성 신호를 수신할 수 있다. 전자 장치(1520)는 도2의 전자 장치(1200)일 수 있다.
또한, 예를 들어, 음성 신호를 수신하는 외부 전자 장치가 AI 스피커인 경우, AI 스피커(1515)에 리모컨 App을 설치하여, 아날로그 음성 신호를 수신하는 외부 전자 장치로 동작할 수 있다. 구체적으로, 전자 장치(1520)는 리모컨 App이 설치된 AI 스피커(1515)를 통해 사용자(1100)의 음성 신호(1500)를 수신할 수 있다. 전자 장치(1520)는 AI 스피커(1515)에서 수신한 음성 신호(1500)를 와이파이, 블루투스 적외선 통신을 통해 전자 장치(1520)의 통신부로 송수신하도록 제어할 수 있다. 본 명세서에서 전자 장치(1520)의 통신부는 상기 휴대용 단말 또는 AI 스피커(1515)를 제어할 수 있도록 구성된 통신부일 수 있으나, 이에 제한되는 것은 아니다. 또한, 도 5를 참조하면, 음성 신호를 수신하는 외부 전자 장치는 AI 스피커(1515)를 나타낼 수 있지만, 이에 한정되는 것은 아니고, 음성 신호를 수신하는 외부 전자 장치는 휴대용 단말, 태블릿 PC 등을 나타낼 수도 있다.
본 개시의 일 실시예에 따른 적어도 하나의 트리거 워드는 기 설정되어 전자 장치(1520)의 메모리에 저장되어 있을 수 있다. 예를 들어, 트리거 워드 리스트(1550)는 빅스비(1551), 하이 빅스비(1552) 및 새미(1553)를 포함할 수 있다. 각각의 트리거 워드 별로 트리거 워드가 사용자(1100)의 음성 신호(1500)에 포함되는지 판단하는데 사용되는 임계치는 다를 수 있다. 예를 들어, 음절이 짧은 새미(1553)의 경우, 음절이 긴 빅스비(1551) 또는 하이 빅스비(1552)보다 더 높은 임계치가 설정되어 있을 수 있고, 트리거 워드 리스트(1550)에 포함되는 적어도 하나의 트리거 워드의 임계치는 사용자가 조절할 수도 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른, 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정하는 동작, 음성 신호에 적어도 하나의 트리거 워드가 포함된다는 결정에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 동작, 오인식 여부에 대한 결정에 기초하여 사용자에게 추가 입력을 요청하는 동작 및 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행하는 동작은 전자 장치(1520) 및 서버(1530) 중 적어도 하나에서 선택적으로 수행될 수 있다.
예를 들어, 전자 장치(1520)에서 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정하는 동작, 음성 신호에 적어도 하나의 트리거 워드가 포함된다는 결정에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 동작, 오인식 여부에 대한 결정에 기초하여 사용자에게 추가 입력을 요청하는 동작이 수행되는 경우, 서버(15030)에서는 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행하는 동작이 개시될 수 있다. 또한, 전자 장치(1520)에서 결정된 트리거 워드에 오인식이 없다고 판단된 경우, 사용자에게 별도의 추가 입력을 요청하는 동작없이, 서버(1530)에서는 수신된 음성 신호에 기초한 음성 인식에 대응하는 기능을 실행하는 동작이 개시될 수도 있다. 이때, 서버(1530)는 음성 신호 관련 데이터를 적절한 텍스트로 변화하는 STT(Speech To Text) 서버로 동작하는 서버를 나타낼 수도 있다. 서버(1530)에서 처리된 데이터를 다시 전자 장치(1520)로 전송할 수도 있고, 다른 서버로 전송할 수도 있다.
또한, 본 개시의 일 실시예에 따른 서버(1530)는 음성 신호에 기초한 음성 인식에 대응하는 기능을 실행하는 동작뿐만 아니라 상기 동작들을 모두 수행하는 메인 서버일 수도 있다.이 경우, 전자 장치(1520)는 음성 신호를 수신하는 동작만을 수행하는 전자 장치일 수 있고, 서버(1530)는 음성 신호를 수신하는 동작 이외의 동작을 수행하는 메인 서버로 동작할 수 있으나, 이에 한정되는 것은 아니다. 반대로, 본원 명세서에서의전자 장치(1520)는 상기 동작들을 모두 수행하는 전자 장치일 수도 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 결정하는 동작, 음성 신호에 적어도 하나의 트리거 워드가 포함된다는 결정에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 동작, 오인식 여부에 대한 결정에 기초하여 사용자에게 추가 입력을 요청하는 동작 및 요청에 대응하여 수신된 사용자의 추가 입력 및 수신된 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행하는 동작이 전자 장치(1520) 및 서버(1530)에서 복합적으로 수행될 수도 있다. 전자 장치(1520)는 통신부의 와이파이 모듈 또는 이더넷 모듈 등을 통해, 서버(1530)와 통신함으로써 오인식된 음성 신호를 처리하는 전자 장치로 동작할 수 있다. 본 명세서에서 전자 장치(1200)의 통신부(1250)는 상기 동작들을 모두 수행할 수 있도록 와이파이 모듈 또는 이더넷 모듈을 포함할 수 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치는 디스플레이부를 반드시 포함하는 것은 아니며, 도 5의 전자 장치(1520)는 별도의 디스플레이부를 않는 셋톱박스 또는 알람 등을 위한 간단한 디스플레이부를 포함하는 전자 장치일 수 있다. 오인식 여부에 대한 결정에 기초하여 사용자에게 추가 입력을 요청하는 동작에 따라, 디스플레이부를 포함하는 외부 전자 장치(1540)는 디스플레이부를 통해 추가 입력과 관련된 UI를 출력할 수 있다. 예를 들어, 외부 전자 장치(1540)는 전자 장치와 외부기기 인터페이스부를 통해 연결되어 있는 바, 전자 장치(1520)로부터 추가 입력과 관련된 UI에 대한 신호를 수신할 수 있고, 외부 전자 장치(1540)는 추가 입력과 관련된 유저 인터페이스를 디스플레이부를 통해 출력할 수 있다. 구체적으로, 외부기기 인터페이스부는 HDMI, DP 및 썬더 볼트 중 적어도 하나를 포함할 수도 있으나, 이에 한정되는 것은 아니다. 또한, 예를 들어, 외부 전자 장치(1540)는 전자 장치와의 무선 통신에 기초하여, 전자 장치(1520)로부터 추가 입력과 관련된 UI에 대한 신호를 수신하여 디스플레이부를 통해 출력할 수 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치(1520) 또는 서버(1530)는 사용자(1100)의 음성 신호(1500)를 "빅스비! 아이가 뭐지"로 잘못 인식할 수도 있다. 이 때, 외부 전자 장치(1540)을 통해 출력되는 UI에는 "아이가 뭐지를 질문 하신 경우, 예스라고 대답해주세요"라는 추가 입력이 포함될 수도 있다.
도 6은 본 개시의 일 실시예에 따른 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 방법 및 이에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 사용자 또는 전자 장치의 음성 인식 기능 실행 이력은 특정 시간대(예를 들어, 오전 또는 오후) 또는 기 설정된 시간 내에 집중되는 경향성을 나타낼 수도 있다. 예를 들어, 사용자가 TV를 통해 영화를 시청하는 경우, 사용자는, 1) TV의 전원을 On하는 동작, 2) TV의 채널을 바꾸는 동작 및 3) TV의 볼륨을 조절하는 동작을 실행하기 위해, 연속적으로 복수 개의 명령어를 포함하는 문장들을 발화할 수 있다. 따라서, 예를 들어, 음성 신호를 수신하기 전 일정 시간 이내에 음성 기능 실행 이력이 있는 경우, 전자 장치(1200)는 사용자(1100)가 음성 인식을 실행하고자 하는 의도로 음성 신호를 발화하였다고 판단할 수 있다. 따라서, 음성 신호를 수신하기 전 일정 시간 이내에 음성 기능 실행 이력이 있는 경우, 사용자(1100)는 두번째 발화부터는 별도의 추가 입력 없이 음성 인식을 빠르게 실행할 수도 있다.
본 개시의 일 실시예에 따른 사용자(1100)는 오후 15시 15분(1611)에 "빅스비 절전 모드로 바꿔줘"라는 아날로그 음성 신호(1610)를 발화할 수 있고, 오후 16시 15분(1661)에 "빅스비아이트가 뭐지"라는 아날로그 음성 신호(1660)를 발화할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)의 메모리는 음성 인식에 대응하는 기능 실행 이력(1630)를 저장할 수 있다. 구체적으로, 기능 실행 이력(1630)는 음성 인식 내용 정보(1650) 및 시간 정보(1640)를 포함하는 데이터 테이블 형태로 메모리에 저장되어 있을 수 있다. 예를 들어, 기능 실행 이력(1630)은 15시 12분 5초에 실행된 "활성화 모드로 바꿔줘"라는 정보를 포함하는 음성 인식 이력 15시 12분 10초에 실행된 "9번 채널로 바꿔줘"라는 정보를 포함하는 음성 인식 이력 및 15시 12분 20초에 실행된 "볼륨을 올려줘"라는 정보를 포함하는 음성 인식 이력을 포함할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 기 설정된 시간 내에 음성 인식에 대응하는 기능 실행 이력에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다. 예를 들어, 전자 장치(1200)는 기 설정된 시간 내에 전자 장치를 통해 음성 인식에 대응하는 기능을 실행한 기능 실행 이력이 없으면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다. 구체적으로, 기 설정된 시간이 5분일 수도 있으나, 이에 제한되는 것은 아니다.
예를 들어, 전자 장치(1200)는 "빅스비 절전 모드로 바꿔줘"라는 음성 신호(1610)가 수신된 15시 15분(1611) 전 5분 동안 전자 장치(1200)의 음성 인식을 실행한 기능 실행 이력이 있다고 판단할 수 있다. 이에 따라, 전자 장치(1200)는 기능 실행 이력(1630)에 기초하여 "빅스비 절전 모드로 바꿔줘"(1610)라는 음성 신호에 대응되는 추가 입력은 불필요(1614)하다고 결정할 수 있다.
또한, 예를 들어, 전자 장치(1200)는 "빅스비아이트가 뭐지"(1660)라는 음성 신호를 "빅스비 아이가 뭐지"로 오인식할 수 있다. 다만, 전자 장치(1200)는 "빅스비아이트가 뭐지"(1660)라는 음성 신호가 수신된 16시 15분(1661) 전 5분 동안 전자 장치(1200)의 음성 인식을 실행한 기능 실행 이력이 없다고 판단할 수 있고, 전자 장치(1200)는 기능 실행 이력(1630)에 기초하여 빅스비아이트가 뭐지"(1660)라는 음성 신호에 대응되는 추가 입력은 필요(1664)하다고 결정할 수 있다.
또한 본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 인식 내용 정보(1650) 및 시간 정보(1640)을 종합적으로 고려하여, 사용자(1100)의 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다. 예를 들어, 음성 인식 내용 정보(1650)는 전자 장치(1200)의 동작 상태와 관련된 정보인 점도 함께 고려하여, "빅스비 절전 모드로 바꿔줘"(1610)라는 음성 신호에 대응되는 추가 입력은 불필요(1614)하다고 결정할 수 있으나, 이에 제한되는 것은 아니다.
도 7은 본 개시의 일 실시예에 따른 전자 장치의 수신부에서 수신된 음성 신호 및 레퍼런스 음성 신호에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
단계 S1710에서, 본 개시의 일 실시예에 따른 전자 장치는 수신된 음성 신호 및 전자 장치에서 출력되는 레퍼런스 음성 신호를 동기화할 수 있다.
본 명세서에서 레퍼런스 음성 신호는 전자 장치(1200) 자체에서 출력된 음성 신호를 나타낼 수 있고, 구체적으로는 전자 장치(1200)에서 출력되고 있는 콘텐트와 관련된 음성 신호일 수 있다. 레퍼런스 음성 신호는 기 설정된 적어도 하나의 트리거 워드와 유사한 발음 구조를 가진 단어를 포함하고 있을 수도 있다. 예를 들어, 전자 장치(1200)는 지질학과 관련된 콘텐트에서 광물의 종류인 빅스비아이트와 관련된 내용을 오디오 출력부를 통해 출력할 수 있고, 레퍼런스 음성 신호는 트리거 워드인 빅스비와 발음이 유사한 빅스비아이트를 포함할 수 있다. 따라서, 전자 장치(1200)의 수신부(1230)는 오디오 출력부(1241)에서 출력된 레퍼런스 음성 신호에 대응되는 음성 신호를 수신할 수 있고, 전자 장치(1200)는 수신부(1230)를 통해 수신된 음성 신호에 트리거 워드인 빅스비가 포함되어 있다고 오인식할 수도 있다. 전자 장치 (1200)에서 출력되는 출력 신호와 이 출력 신호를 수신한 신호를 구별하기 위해, 오디오 출력부(1241)에서 출력되는 신호를 레퍼런스 음성 신호로 언급하기로 하고, 이와 같이 출력된 레퍼런스 음성 신호를 수신부(1230)가 수신한 신호는 음성 신호로 언급하기로 한다. 구체적으로, 사용자가 음성 신호를 발화하지 않는 경우에도, 전자 장치(1200)의 오디오 출력부(1242)를 통해 출력된 레퍼런스 음성 신호에 기초하여 오인식이 발생할 수도 있다.
구체적으로, 본 개시의 일 실시예에 따른 전자 장치(1200)의 프로세서(1220)는 AEC(Acoustic Echo Cancellation)을 통해 수신부(1230)로 수신된 레퍼런스 음성 신호에 대응되는 음성 신호를 제거할 수 있으나, 상황에 따라 완전하게 제거되지 않아 잔여 에코(Residual Echo)는 수신부(1230)로 유입될 수도 있다. 이 때, 제거되지 않은 레퍼런스 음성 신호의 발음이 메모리(1210)에 기 저장된 적어도 하나의 트리거 워드와 유사한 경우, 프로세서(1220)은 트리거 워드가 음성 신호에 포함되어 있다고 오인식할 우려가 있을 수도 있다. 따라서, 수신된 음성 신호는 전자 장치의 출력부를 통해 출력된 음성 신호가 전자 장치의 수신부를 통해 수신된 음성 신호를 포함할 수도 있다.
따라서, 본 개시의 일 실시예에 따른 전자 장치(1200)는 오디오 출력부(1242)에서 출력되는 레퍼런스 음성 신호 및 오디오 수신부(1230) 등을 통해 수신되는 음성 신호를 동기화할 수 있다. 예를 들어, 전자 장치(1200)의 오디오 출력부(1242)를 통해 영화, 음악 등 콘텐트와 관련된 레퍼런스 음성 신호가 출력될 수 있고, 전자 장치(12000는 수신부(1230)를 통해 출력된 레퍼런스 음성 신호에 대응되는 음성 신호를 수신할 수 있다. 이때, 전자 장치(1200)는 수신된 음성 신호가 레퍼런스 음성 신호와 동일한 음성 신호인지를 결정하기 위해, 시간의 이격이 있는 수신된 음성 신호와 레퍼런스 음성 신호를 동기화할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)의 프로세서(1220)는 수신된 음성 신호 및 레퍼런스 음성 신호의 유사도를 비교하기 전에, 수신된 음성 신호 및 전자 장치에서 출력되는 레퍼런스 음성 신호를 동기화할 수 있다. 예를 들어, 레퍼런스 음성 신호가 출력되는 시간과 잔여 에코로 수신되는 시간 사이의 이격이 있을 수 있다. 따라서, 수신된 음성 신호 및 레퍼런스 음성 신호의 유사도를 판단하기 위해, 전자 장치(1200)는 수신된 음성 신호 및 전자 장치에서 출력되는 레퍼런스 음성 신호를 동기화할 수 있다.
단계 S1720에서, 본 개시의 일 실시예에 따른 전자 장치는 동기화된 음성 신호 및 동기화된 레퍼런스 신호의 유사도가 기 설정된 임계치 이상인지 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도를 측정할 수 있다. 전자 장치(1200)는 측정된 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도에 기초하여, 측정된 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호가 동일한 신호인지 여부를 결정할 수 있다.
구체적으로, 전자 장치(1200)는 동기화된 음성 신호의 피크 값의 크기 및 동기화된 레퍼런스 음성 신호의 피크 값의 크기를 비교함으로써, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호인지 여부를 결정할 수 있다. 또한, 예를 들어, 전자 장치(1200)는 동기화된 음성 신호의 분포 및 동기화된 레퍼런스 음성 신호의 분포를 비교함으로써, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호인지 여부를 결정할 수 있다. 또한, 예를 들어, 전자 장치(1200)는 동기화된 음성 신호의 주파수 대역별 에너지 크기 및 동기화된 레퍼런스 음성 신호의 주파수 대역별 에너지 크기를 비교함으로써, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호인지 여부를 결정할 수 있으나, 이에 한정되는 것은 아니다. 또한, 기 설정된 임계치는 사용자 입력부(1260)를 통해 사용자가 조정할 수 있고, 서버가 통신부(1250)를 통해 적응적으로 조정할 수 있으나, 이에 한정되는 것은 아니다. 또한, 기 설정된 임계치는 메모리(1210)에 저장되어 있을 수 있다.
단계 S1730에서, 본 개시의 일 실시예에 따른 전자 장치는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 임계치 이상이면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 임계치 이상이면, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호라고 결정할 수 있다. 따라서, 전자 장치는 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
단계 S1740에서, 본 개시의 일 실시예에 따른 전자 장치는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 임계치 미만이면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 없다고 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 임계치 미만이면, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 상이한 신호라고 결정할 수 있다. 이때, 전자 장치(1200)의 프로세서(1220)는 본원 명세서에 기재된 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 판단하는 다른 방법을 실행할 수도 있다. 또한, 전자 장치(1200)의 프로세서(1220)는 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 없다고 결정하고, 별도의 추가 입력을 요청하지 않고, 수신된 음성 신호에 대해 음성 인식에 대응하는 기능을 실행할 수도 있으나, 이에 한정되는 것은 아니다.
도 8은 일 실시예에 따른 전자 장치의 레퍼런스 음성 신호에 기초하여음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 좌-스피커(1820) 및 우-스피커(1821)로 구성된 오디오 출력부를 통해 레퍼런스 음성 신호(1830)를 출력할 수 있다. 이에 따라, 전자 장치(1200)는 출력된 "빅스비아이트는~"라는 레퍼런스 음성 신호(1830)에 대응되는 음성 신호(1840)를 전자 장치(1200)의 수신부(1230)를 통해 수신할 수 있다. 음성 신호(1840)는 출력된 레퍼런스 음성 신호(1830) 중 수신부(1230)로 유입된 음성 신호를 나타낼 수 있다. 레퍼런스 음성 신호(1830)은 전자 장치(1200)에서 출력되는 콘텐트(1810)에 기초하여 결정되는 음성 신호일 수 있으나, 이에 제한되는 것은 아니다. 따라서, 도 8에서 수신부(1230)를 통해 수신된 음성 신호는 사용자(1800)의 발화를 포함하지 않을 수 있고, 레퍼런스 음성 신호(1830)에 기초하여 적어도 하나의 트리거 워드인 빅스비와 관련된 오인식이 발생할 수도 있다.
본 개시의 일 실시예에 따른 도 8의 그래프(1860)의 x축은 시간(1861)을 나타내고, y축은 신호의 크기(1862)를 나타낼 수 있다. 그래프(1860)에서 볼 수 있듯이, 전자 장치(1200)는 동기화된 음성 신호(1870)의 피크 값의 크기(1871) 및 동기화된 레퍼런스 음성 신호(1880)의 피크 값의 크기(1881)를 비교함으로써, 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호라고 결정할 수 있다. 구체적으로, 피크 값의 크기(1871) 및 피크 값의 크기(1881)에 기초하여 결정된 유사도가 기 설정된 임계치 이상이면, 전자 장치(1200)는 수신된 음성 신호가 동기화된 레퍼런스 음성 신호와 동일한 신호라고 판단하고, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 잔여 에코에 의한 오인식이 있다고 결정할 수 있다. 다만, 도 7에서 살펴본 바와 같이, 음성 신호의 피크 값의 크기, 음성 신호의 분포 및 음성 신호의 주파수 대역별 에너지 크기 등에 기초하여, 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도를 결정할 수 있으나, 이에 한정되는 것은 아니다.
도 9는 도 8에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 동기화된 음성 신호 및 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 임계치 이상이면, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 판단에 대응하여, 사용자(1800)에게 추가 입력을 요청할 수 있다. 예를 들어, 프로세서(1220)는 잔여 에코에 의한 오인식이 있다고 결정함에 따라, 잔여 에코에 의한 오인식과 대응되는 추가 입력을 사용자(1800)에게 요청할 수 있다. 구체적으로, 추가 입력(1900)은 잔여 에코에 의한 오인식을 줄이기 위한 사용자(1800)의 입력을 요청하는 내용을 포함할 수 있다.
예를 들어, 좌-스피커(1820) 및 우-스피커(1821)를 통해 출력되는 레퍼런스(1830)의 볼륨을 작게 조정하는 경우, 음성 신호의 오인식이 발생될 가능성이 줄어들 수 있다. 따라서, 본 개시의 일 실시예에 따른 추가 입력(1900)은 '전자 장치의 볼륨을 5이하로 조정하고, 빅스비를 입력해주세요'라는 내용을 포함할 수 있다. 또한, 추가 입력(1900)의 내용은 '전자 장치의 볼륨을 5이하로 조정하고, 빅스비를 입력해주세요'에 한정되는 것은 아니고, '전자 장치의 볼륨을 음소거로 조정하고, 빅스비라고 발화해주세요'를 포함할 수도 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 따른 추가 입력(1900)은 '전자 장치의 볼륨을 5이하로 조정하고, 빅스비를 입력해주세요'라는 내용을 포함하는 추가 입력(1900)과 관련된 UI(1910)를 포함할 수도 있다. 전자 장치(1200)는 디스플레이부를 통해 추가 입력(1900)과 관련된 UI(1910)를 출력할 수 있다. 또한, 전자 장치(1200)는 외부 전자 장치의 디스플레이부를 통해 추가 입력(1900)과 관련된 UI(1910)를 출력하도록 제어 신호를 송신할 수 있으나, 이에 한정되는 것은 아니다. 또한, 추가 입력(1900)은 '전자 장치의 볼륨을 5이하로 조정하고, 빅스비를 입력해주세요'라는 내용을 포함하는 추가 입력(1900)과 관련된 음성 신호(1911)를 나타낼 수 있다. 전자 장치(1200)는 오디오 출력부를 통해 추가 입력(1900)과 관련된 음성 신호(1911)를 출력할 수 있으나, 이에 제한되는 것은 아니다.
도 10은 일 실시예에 따른 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신할 수도 있다. 일반적으로, 사용자(1100)는 적어도 트리거 워드 중 어느 하나를 먼저 발화한 후, 일정한 시간 간격을 두고 음성 인식과 관련된 명령어를 발화하는 경향이 있다. 하지만, 전자 장치(1200)는 기 설정된 트리거 워드와 함께 일상 대화, 외부 전자 장치에서 재생되는 소리 신호를 끊김없이 수신할 수도 있고, 사용자가 긴 문장의 음성 신호를 별도의 쉼 없이 빠르게 발화하는 경우도 있다. 이때, 전자 장치(1200)는 적어도 하나의 트리거 워드뿐만 아니라 별도의 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신할 수도 있다. 이때, 전자 장치(1200)는 적어도 하나의 트리거 워드뿐만 아니라 별도의 적어도 하나의 입력 신호를 포함하는 연속된 음성 신호를 수신함에 따라, 음성 신호에 포함되는 트리거 워드에 오인식이 있다고 판단할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 음성 신호에 포함되는 적어도 하나의 트리거 워드의 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 결정할 수 있다. 음성 신호에 포함되는 적어도 하나의 트리거 워드의 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 결정하는 동작은 단계 S2010의 동작을 포함하는 동작일 수 있다.
단계 S2010에서, 전자 장치는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하는 동작은 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간 앞, 뒤로 입력 신호가 있는지 여부를 추가로 검색하는 단계를 포함할 수 있다. 구체적으로, 전자 장치는 음성 신호를 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간 전에 해당하는 구간 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간 후에 해당하는 구간으로 분할할 수 있다.
단계 S2020에서, 전자 장치는 복수개의 구간의 에너지 값들 및 복수개의 구간의 ZCR들 중 적어도 하나에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 복수개의 구간의 에너지 값들에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식과 관련된 적어도 하나의 구간을 결정할 수 있다. 예를 들어, 전자 장치는 복수개의 구간의 에너지 값들 중 에너지 값이 기 결정된 임계치 이상인 적어도 하나의 구간을 오인식과 관련된 적어도 하나의 구간으로 결정할 수 있다. 결정된 적어도 하나의 구간은 에너지 값이 기 결정된 임계치 이상인 구간인 바, 전자 장치는 상기 결정된 적어도 하나의 구간에 트리거 워드를 제외한 입력 신호가 있다고 판단할 수 있다.
또한, 예를 들어, 전자 장치는 복수개의 구간의 ZCR들 중 ZCR이 기 결정된 임계치 이상인 적어도 하나의 구간을 결정할 수 있다. ZCR(Zero-Crossing Rate)은 신호가 0을 교차하는 시간 당 횟수를 나타낼 수 있다. 예를 들어, 전자 장치는 복수개의 구간의 ZCR들 중 ZCR이 기 결정된 임계치 이상인 적어도 하나의 구간을 오인식과 관련된 적어도 하나의 구간으로 결정할 수 있다. 결정된 적어도 하나의 구간은 ZCR이 기 결정된 임계치 이상인 구간인 바, 전자 장치는 상기 결정된 적어도 하나의 구간에 트리거 워드를 제외한 입력 신호가 있다고 판단할 수 있다.
다만, 본 명세서에서 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식과 관련된 적어도 하나의 구간을 결정하는 방법은 복수개의 구간의 에너지 값들 또는 복수개의 구간의 ZCR들을 이용하는 것에 한정되는 것이 아니다. 예를 들어, 복수개의 구간의 피크 값의 크기 등에 기초하여, 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식과 관련된 적어도 하나의 구간을 결정할 수도 있다.
본 개시의 일 실시예에 따른 전자 장치는 음성 신호에 트리거 워드를 제외한 입력 신호가 있다고 판단되는 경우, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다. 음성 신호에 포함된다고 판단되는 적어도 하나의 입력 신호는 음성 신호에 포함되는 트리거 워드 전 또는 후에 위치한 신호일 수 있는 바, 전자 장치(1200)의 프로세서(1220)는 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식에 대한 결정에 기초하여, 음성 신호에 포함되는 적어도 하나의 입력 신호의 수행 여부와 관련된 추가 입력을 요청할 수 있다. 도 10과 관련된 구체적인 추가 입력 요청 동작에 대해서는 도 11 및 12에서 살펴보기로 한다.
도 11은 일 실시예에 따른 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 음성 신호에 포함되는지 여부에 기초하여, 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
본 개시의 일 실시예에 따른 사용자(1100)는 트리거 워드인 빅스비를 포함하는 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"라는 음성 신호(2110)를 발화할 수 있다. 구체적으로, 사용자(1100)는 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"라는 음성 신호(2110)를 음절 단위 간 별도의 쉬는 시간 없이 연속적으로 발화할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 수신부를 통해 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"라는 음성 신호(2110)를 음성 인식에 대한 그래프(2120)와 같이 긴 문장으로 구성된 연속적인 음성 신호로 수신할 수 있다.
예를 들어, 전자 장치(1200)는 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"라는 음성 신호를 음성 신호에 포함되는 트리거 워드인 "빅스비"를 포함하는 구간(2132), "영화 그만 봐야지"를 포함하는 구간(2131) 및 "절전 모드로 바꿔줘"를 포함하는 구간(2133)으로 분할할 수 있다. "영화 그만 봐야지"를 포함하는 구간(2131)은 음성 신호(2110)에서 빅스비"를 포함하는 구간(2132) 전에 발화된 구간일 수 있다. 또한, "절전 모드로 바꿔줘"를 포함하는 구간(2133)은 음성 신호(2110)에서 빅스비"를 포함하는 구간(2132) 후에 발화된 구간일 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 "빅스비"를 포함하는 구간(2132) 및 "영화 그만 봐야지"를 포함하는 구간(2131) 사이의 시간 간격이 기 설정된 임계치 이하인 경우, "영화 그만봐야지 빅스비"를 연속적인 음성 신호를 판단할 수 있다. 또한, 전자 장치(1200)는 워드인 "빅스비"를 포함하는 구간(2132) 및 "절전 모드로 바꿔줘"를 포함하는 구간(2133) 사이의 시간 간격이 기 설정된 임계치 이하인 경우, "빅스비 절전 모드로 바꿔줘"를 연속적인 음성 신호로 판단할 수 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 "영화 그만 봐야지"를 포함하는 구간(2131) 의 ZCR 및 "절전 모드로 바꿔줘"를 포함하는 구간(2133)의 ZCR에 기초하여, 복수개의 구간 중 입력 신호가 있다고 판단되는 적어도 하나의 구간을 결정할 수 있다. 이에 따라, 전자 장치(1200)는 결정된 적어도 하나의 구간에 있는 입력 신호가 음성 신호에 포함된다고 판단할 수 있고, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
또한, 본 개시의 일 실시예에 따른 전자 장치(1200)는 "영화 그만 봐야지"를 포함하는 구간(2131)의 에너지 값 및 "절전 모드로 바꿔줘"를 포함하는 구간(2133)의 에너지 값에 기초하여, 복수개의 구간 중 입력 신호가 있다고 판단되는 적어도 하나의 구간을 결정할 수 있다. 이에 따라, 전자 장치(1200)는 결정된 적어도 하나의 구간에 있는 입력 신호가 음성 신호에 포함된다고 판단할 수 있고, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.
구체적으로, 도 11의 예시에 따르면, "영화 그만 봐야지"를 포함하는 구간(2131)의 ZCR 인 100 및 에너지 값인 E1은 기 설정된 임계치 이하인 바, 전자 장치(1200)는 "영화 그만 봐야지"를 오인식과 관련된 입력 신호라고 판단하지 않을 수 있다. 하지만, 전자 장치(1200)는 "절전 모드로 바꿔줘"를 포함하는 구간(2133)의 ZCR인 200 및 에너지 값 E2는 기 설정된 임계치 이상인 바, 절전 모드로 바꿔줘"를 오인식과 관련된 입력 신호라고 판단할 수 있다. 이 경우, "절전 모드로 바꿔줘"는 "영화 그만 봐야지"와 비교할 때, 에너지 값 또는 ZCR이 상대적으로 큰 신호에 해당될 수 있으나, 이에 제한되는 것은 아니다.
도 12는 도 11에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 음성 신호(2110)인 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"에 포함된다고 결정된 기 설정된 트리거 워드인 빅스비에 연속적인 음성 신호 수신에 따른 오인식이 있다고 결정할 수 있다. 이때, 전자 장치(1200)는 연속적인 음성 신호 수신함에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있고, 입력 신호의 수행 여부에 대한 추가 입력을 요청할 수 있다.
본 개시의 일 실시예에 따른 사용자(1100)의 음성 신호(2110)인 "영화 그만 봐야지 빅스비 절전 모드로 바꿔줘"에는 트리거 워드인 빅스비를 제외한 입력 신호인 "절전 모드로 바꿔줘"가 포함될 수 있다. 예를 들어, 도 11에서 살펴본 바와 같이, "절전 모드로 바꿔줘"를 포함하는 구간(2133)의 ZCR인 200 및 "절전 모드로 바꿔줘"를 포함하는 구간(2133)의 에너지 값이 E2에 기초하여, 전자 장치(1200)는 "절전 모드로 바꿔줘"를 입력 신호(2210)로 판단할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 입력 신호(2210)인 "절전 모드로 바꿔줘"의 수행 여부에 대한 추가 입력을 사용자(1100)에게 요청할 수 있다. 구체적으로, 전자 장치(1200)는 디스플레이부를 통해 "절전 모드로 바꿔줘를 질문한 경우, 예스라고 대답해주세요"라는 내용을 포함하는 추가 입력(2200)을 UI 형태로 출력할 수 있다. 또한, 전자 장치(1200)는 음성 출력부를 통해 "절전 모드로 바꿔줘를 질문한 경우, 예스라고 대답해주세요"라는 내용을 포함하는 추가 입력(2200)을 음성 신호의 형태로 출력할 수 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 추가 입력 요청에 대응하여 수신된 사용자의 추가 입력을 기 설정된 시간 내에 수신한 경우, 상기 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행할 수 있다. 예를 들어, 사용자(1100)가 "절전 모드로 바꿔줘를 질문한 경우, 예스라고 대답해주세요"라는 추가 입력 요청에 대응하여, 기 설정된 시간 내에 예스라고 응답하는 경우, 전자 장치(1200)는 사용자(1100)의 음성 신호(2110)에 포함되는 적어도 하나의 트리거 워드인 빅스비에 오인식이 없다고 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 "절전 모드로 바꿔줘"라는 입력 신호(2210)의 수행 여부에 대하여, 사용자(1100)의 승낙과 관련된 음성 신호인 예스를 수신할 수 있고,, 전자 장치(1200)는 STT 엔진을 통한 추가적인 음성 인식을 수행하는 동작 없이, 사용자의 명령인 "절전 모드로 바꿔줘"를 실행할 수 있으나, 이에 제한되는 것은 아니다. 예를 들어, 입력 신호가 명령과 관련된 음성 신호가 아닌 경우, 전자 장치(1200)는 요청에 대응하여 수신된 사용자의 추가 입력에 기초하여, 음성 신호에 대한 음성 인식의 개시를 수행할 수도 있다.
또한, 본 개시의 일 실시예에 따른 사용자(1100)가 "절전 모드로 바꿔줘를 질문한 경우, 예스라고 대답해주세요"라는 추가 입력 요청에 대응하여, 기 설정된 시간 내에 아니오라고 응답하거나 응답을 거부하는 경우, 전자 장치(1200)는 음성 신호(2110)에 대한 음성 인식을 종료시킬 수도 있다. 이때, 전자 장치(1200)는 새로운 음성 신호를 수신할 때까지, 대기 모드로 동작할 수도 있다.
도 13은 일 실시예에 따른 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도에 기초하여, 트리거 워드의 오인식 여부를 결정하기 위한 순서도이다.
단계 S2310에서, 본 개시의 일 실시예에 따른 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도를 측정할 수 있다.
단계 S2320에서, 본 개시의 일 실시예에 따른 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제3 임계치 이상인지 여부에 따라, 기 설정된 적어도 하나의 트리거 워드가 음성 신호에 포함되는지 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 WWE를 포함할 수 있고, WWE는 기 저장된 적어도 하나의 트리거 워드에 대한 음향 정보를 학습한 음향 모델에 기초하여, 사용자의 발화와 기 설정된 적어도 하나의 트리거 워드와의 유사도를 측정할 수 있다. 측정된 유사도는 확률 정보에 기반하여 결정되는 유사도일 수 있으며, 측정된 유사도가 기 설정된 제3 임계치 이상이면, 전자 장치(1200)는 사용자의 발화에 기 설정된 적어도 하나의 트리거 워드가 포함된다고 결정할 수 있다.(단계 S2330)
본 개시의 일 실시예에 따른 전자 장치(1200)는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제3 임계치 미만인 경우, 기 설정된 적어도 하나의 트리거 워드가 음성 신호에 포함되지 않는다고 결정할 수 있다.(단계 S2360) 이때, 전자 장치는 기 설정된 적어도 하나의 트리거 워드가 음성 신호에 포함되지 않는다고 결정에 따라, 음성 신호에 대한 음성 인식을 종료할 수 있다.(단계 S2390) 이때, 전자 장치는 새로운 음성 신호가 수신되기 전까지 대기 모드로 동작할 수 있다.
단계 S2340에서, 본 개시의 일 실시예에 따른 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 미만인지 여부에 따라, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있는지 여부를 결정할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 미만인 경우, 사용자에 대한 추가 입력 요청이 요구되는 정도의 유사도라고 판단할 수 있다. 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 미만인 적어도 하나의 트리거 워드에 오인식이 있다고 결정할 수 있다.(단계 S2350) 반대로, 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 이상인 적어도 하나의 트리거 워드에는 오인식이 없다고 결정할 수 있다. 구체적으로, 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 이상인 경우, 전자 장치(1200)는 사용자에 대한 추가 입력을 요구하지 않고, 음성 인식에 대응되는 기능을 실행해도 되는 정도의 유사도라고 판단할 수 있다. 따라서, 전자 장치는 사용자에게 별도의 추가 입력에 대한 요청 없이 음성 신호에 기초한 음성 인식에 대응하는 기능을 실행할 수 있다.(단계 S2370)
단계 S2380에서, 본 개시의 일 실시예에 따른 전자 장치는 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도가 제4 임계치 미만인 적어도 하나의 트리거 워드에 오인식이 있다고 결정함에 따라, 사용자에게 추가 입력을 요청할 수 있다. 전자 장치는 추가 입력 요청에 따른 기 설정된 시간 내에 사용자로부터 적절한 응답의 수신 여부에 기초하여, 음성 신호에 대해 음성 인식에 대응하는 기능을 실행할 수 있다.
본 개시의 일 실시예에 따른 전자 장치는 기 설정된 시간 내에 사용자에게 추가 입력을 요청할 수 있다. 예를 들어, 사용자가 요청에 따라 기 설정된 시간 내에 적절한 응답을 한 경우, 전자 장치(1200)는 음성 인식에 대응하는 기능을 실행할 수 있다. (단계 S2370) 반대로, 사용자가 요청에 따라 기 설정된 시간 내에 적절한 응답을 하지 않는 경우 또는 응답을 하지 않은 경우, 전자 장치(1200)는 음성 인식을 종료할 수 있다.(단계 S2390) 이때, 전자 장치는 새로운 음성 신호가 수신되기 전까지 대기 모드로 동작할 수 있다.
도 14는 일 실시예에 따른 기 설정된 적어도 하나의 트리거 워드 및 수신된 음성 신호의 유사도에 기초하여, 음성 신호에 포함되는 트리거 워드의 오인식 여부를 결정하는 방법에 대한 실시예를 설명하기 위한 도면이다.
본 개시의 일 실시예에 따른 사용자(1100)는 "비오나? 빅스비! 날씨 어때?"라는 음성 신호(2410)을 발화할 수 있다. 전자 장치(1200)는 수신부를 통해 사용자(1100)의 음성 신호(2410)를 수신할 수 있다. 도 14에서의 음성 신호(2410)는 "비오나", "빅스비" 및 "날씨 어때?" 사이에 시간 간격이 있어 도 11에서의 음성 신호(2110)와 달리 연속적인 음성 신호가 아닐 수도 있으나, 이에 제한되는 것은 아니다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 수신된 사용자(1100)의 음성 신호(2410)와 기 설정된 트리거 워드의 유사도를 측정할 수 있다. 예를 들어, 전자 장치(1200)에서 측정된 시간(2421)에 따른 수신된 사용자(1100)의 음성 신호(2410)와 기 설정된 트리거 워드의 유사도(2422)는 도 14의 그래프(2420)와 같이 구해질 수 있다. 수신된 사용자(1100)의 음성 신호(2410)와 기 설정된 트리거 워드의 유사도는 신호의 피크 값, 분포, 에너지 값 등을 고려하여 측정될 수 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 따른 그래프(2420)는 시간(2421)에 따른 사용자(1100)의 음성 신호(2410)와 기 설정된 트리거 워드의 유사도(2422)를 나타낼 수 있다. 또한, 시스템 임계 값(
Figure pat00001
)은 도 13에서의 제3 임계치에 대응되는 값일 수 있으며, 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되는지 여부를 판단하는데 사용될 수 있다. 또한, 추가 입력 요구 임계 값(
Figure pat00002
)은 도 13에서의 제4 임계치에 대응되는 값일 수 있으며, 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는데 사용될 수 있다. 시스템 임계 값(
Figure pat00003
) 및 추가 입력 요구 임계 값(
Figure pat00004
)은 기 설정된 임계 값들로 메모리에 저장되어 있을 수 있으며, 사용자(1100) 또는 서버(미도시)에 의해 적응적으로 조정될 수도 있다. 구체적으로, 그래프(2420)의 시스템 임계 값(
Figure pat00005
)은 0.28이고, 추가 입력 요구 임계 값(
Figure pat00006
)은 0.35로 기 설정되어 있을 수도 있으나, 이에 한정되는 것은 아니다.
본 개시의 일 실시예에 따른 음성 신호(2410)는 제1 구간(2451)인 "비오나?", 제2 구간(2452)인 "빅스비!" 및 제3 구간(2453)인 "날씨 어때?"을 포함할 수 있다.
예를 들어, 제1 구간(2451)인 "비오나?"의 경우, 트리거 워드인 빅스비와 글자수 및 첫번째 음절인 비와 빅이 유사한 바, "비오나?"와 기 설정된 트리거 워드의 유사도의 최대 값은 0.25로 측정될 수 있다. "비오나?"와 기 설정된 트리거 워드의 간의 유사도의 최대 값은 0.25로 시스템 임계 값(
Figure pat00007
)인 0.28보다 작을 수 있다. 따라서, 전자 장치(1200)는 "비오나?" 와 기 설정된 적어도 하나의 트리거 워드 중 빅스비를 상이한 단어로 판단할 수 있고, 제1 구간(2451)에 기 설정된 적어도 하나의 트리거 워드인 빅스비가 포함되지 않는다고 결정할 수 있다.
사용자(1100)의 발음, 주변 환경의 소리 정보 등에 따라, 기 설정된 적어도 하나의 트리거 워드를 발화한 경우에도, 추가 입력이 필요한 경우도 있을 수 있다. 예를 들어, 제2 구간(2452)인 "빅스비!"의 경우, 트리거 워드인 빅스비와 동일한 바, "빅스비!"과 기 설정된 트리거 워드인 "빅스비"의 유사도의 최대 값은 0.32로 측정될 수 있다. 다만, 제2 구간(2452)의 "빅스비"와 기 설정된 트리거 워드인 "빅스비"의 유사도 간의 최대 값은 0.32로 시스템 임계 값(
Figure pat00008
)보다는 크고, 추가 입력 요구 임계 값(
Figure pat00009
)보다는 작은 값으로 측정될 수도 있다. 따라서, 전자 장치(1200)는 음성 신호(2410)에 오인식이 있다고 결정할 수 있고, 사용자(1100)에게 추가 입력을 요청할 수 있다.
또한, 제3 구간(2453)인 "날씨 어때?"의 경우, 트리거 워드인 빅스비와 글자수도 상이하고 및 첫번째 음절인 날은 빅스비의 첫번째 음절인 빅과 상이한 바, "날씨 어때?"와 기 설정된 트리거 워드의 유사도의 최대 값은 0.15로 측정될 수 있다. "날씨 어때?"와 기 설정된 트리거 워드인 빅스비 간의 유사도의 최대 값은 0.15로 시스템 임계 값(
Figure pat00010
)인 0.28보다 작을 수 있다. 따라서, 전자 장치(1200)는 "날씨 어때?"와 기 설정된 적어도 하나의 트리거 워드 중 빅스비를 상이한 단어로 판단할 수 있고, 제1 구간(2451)에 기 설정된 적어도 하나의 트리거 워드인 빅스비가 포함되지 않는다고 결정할 수 있다.
따라서, 제2 구간(2452)의 "빅스비"와 기 설정된 트리거 워드인 "빅스비"의 유사도 간의 최대 값은 0.32가 시스템 임계 값(
Figure pat00011
)보다는 크고, 추가 입력 요구 임계 값(
Figure pat00012
)보다는 작은 값인 바, 전자 장치(1200)는 음성 신호(2410)에 오인식이 있다고 결정할 수 있고, 사용자(1100)에게 추가 입력을 요청할 수 있다.
도 15는 도 14에 따른 사용자의 추가 입력에 대한 실시예에 대한 도면이다.
본 개시의 일 실시예에 따른 전자 장치(1200)는 사용자(1100)의 음성 신호(2410)에 포함된다고 음성 신호에 포함되는 적어도 하나의 트리거 워드인 빅스비에 오인식이 있다는 결정에 기초하여, 사용자(1100)에게 추가 입력을 요청할 수 있다. 예를 들어, 전자 장치(1200)는 디스플레이부를 통해 추가 입력을 UI(미도시)로 출력할 수 있다.
본 개시의 일 실시예에 따른 추가 입력(2510)은 전자 장치(1200)의 임의 키워드 생성부(미도시)를 통해 생성된 임의의 키워드인 "갤럭시"를 포함하는 UI일 수 있다. 사용자(1100)는 기 설정된 적어도 하나의 키워드 중 빅스비에 대한 발음이 좋지 않을 수 있고, 주변 환경의 소음에 따라 전자 장치(1200)는 사용자(1100)의 음성 신호를 정확하게 수신하지 못할 수도 있다. 따라서, 전자 장치(1200)는 임의의 키워드를 생성함으로써 빅스비와 다른 단어인 "갤럭시"에 대한 사용자(1100)의 발화를 요청할 수 있다. 전자 장치(1200)는 디스플레이부 또는 오디오 출력부 중 적어도 하나를 통해 사용자에게 추가 입력(2510)에 대한 요청을 할 수도 있으나, 이에 제한되는 것은 아니다.
전자 장치(1200)는 임의로 생성된 "갤럭시"라는 단어를 기 설정된 시간 내에 발화할 것을 요청함으로써, 사용자(1100)의 음성 신호(2410)의 음성 인식할지 여부를 결정할 수 있다. 사용자(1100)가 기 설정된 시간 내에 갤럭시를 발화하는 경우, 전자 장치(1200)는 사용자(1100)의 음성 신호(2410)에 대한 음성 인식에 대응하는 기능을 실행할 수 있다. 반대로, 사용자(1100)가 기 설정된 제2 시간 내에 갤럭시를 발화하지 않거나 응답을 거부하는 경우, 전자 장치(1200)는 사용자(1100)의 음성 신호(2410)에 대한 음성 인식을 종료할 수 있다. 이때, 전자 장치(1200)는 새로운 음성 신호를 수신하기 전까지 대기 모드로 동작할 수 있다.
본 개시의 일 실시예에 따른 추가 입력(2520)은 전자 장치(1200)의 발음 키워드 생성부(미도시)를 통해 생성된 키워드인 "나무"를 포함하는 UI일 수 있다. 구체적으로, 전자 장치(1200)는 발음 키워드 생성부를 통해, 기 설정된 적어도 하나의 트리거 워드인 빅스비와 발음 구조 상 상이한 키워드인 "나무"를 선택할 수 있다. 전자 장치(1200)는 디스플레이부를 통해 선택된 키워드인 "나무"를 사용자가 추가 입력할 수 있도록 요청하는 추가 입력(2520)을 UI로 출력할 수 있다. 전자 장치(1200)는 디스플레이부 및 오디오 출력부 중 적어도 하나를 통해 사용자에게 추가 입력(2510)에 대한 요청을 할 수 있으나, 이에 제한되는 것은 아니다.
구체적으로, 전자 장치(1200)는 기 설정된 적어도 하나의 트리거 워드인 빅스비와 발음 구조 상 상이한 키워드인 "나무"를 선택하는데 있어, 발음 정보(2530)을 포함할 수 있다. 예를 들어, 빅스비의 자음은 마찰음(2532) 또는 파열음(2533)에 속하고, 나무의 자음은 모두 비음(2531)에 속해, 전자 장치(1200)는 나무 및 빅스비를 발음하는데 차이가 있는 키워드라고 판단할 수 있다.
전자 장치(1200) 선택된 키워드인 "나무"라는 단어를 기 설정된 시간 내에 발화할 것을 요청함으로써, 사용자(1100)의 음성 신호(2410)의 음성 인식할지 여부를 결정할 수 있다. 사용자(1100)가 기 설정된 시간 내에 나무를 발화하는 경우, 전자 장치(1200)는 사용자(1100)의 음성 신호(2410)에 대한 음성 인식에 대응하는 기능을 실행할 수 있다. 반대로, 사용자(1100)가 기 설정된 시간 내에 나무를 발화하지 않거나 응답을 거부하는 경우, 전자 장치(1200)는 사용자(1100)의 음성 신호(2410)에 대한 음성 인식을 종료할 수 있다. 이때, 전자 장치(1200)는 새로운 음성 신호를 수신하기 전까지 대기 모드로 동작할 수 있다.
본 명세서에서 일 실시예에 의한 방법은 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 개시의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.

Claims (20)

  1. 전자 장치에서 오인식된 음성 신호를 처리하는 방법에 있어서,
    음성 신호(audio signal)를 수신하는 단계;
    상기 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드(trigger word)가 포함되면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식(Misrecognition) 여부를 결정하는 단계;
    상기 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하는 단계; 및
    상기 요청에 대응하여 수신된 상기 사용자의 추가 입력 및 음성 신호에 기초하여, 음성 인식(audio recognition)에 대응하는 기능을 실행하는 단계; 를 포함하는 방법.
  2. 제 1항에 있어서, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    기 설정된 제1 시간 내의 음성 인식에 대응하는 기능 실행 이력에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함하는 방법.
  3. 제 2항에 있어서, 상기 기능 실행 이력에 기초하여 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 제1 시간 내에 상기 기능 실행 이력이 없으면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함하는 방법.
  4. 제 1항에 있어서, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 수신된 음성 신호 및 상기 전자 장치에서 출력되는 레퍼런스 음성 신호를 동기화 하는 단계; 및
    상기 동기화된 음성 신호 및 상기 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 제1 임계치 이상이면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함하는 방법.
  5. 제 4항에 있어서, 상기 사용자에게 상기 추가 입력을 요청하는 단계는,
    상기 사용자에게 상기 레퍼런스 음성 신호의 세기를 기 설정된 제2 임계치 이하로 조정하고, 상기 결정된 트리거 워드에 대한 추가 입력을 요청하는 단계; 를 포함하는 방법.
  6. 제 1항에 있어서, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 상기 음성 신호에 포함되는지 여부에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함하는 방법.
  7. 제 6항에 있어서, 상기 사용자에게 상기 추가 입력을 요청하는 단계는,
    상기 사용자에게 상기 음성 신호에 포함되는 상기 적어도 하나의 입력 신호의 수행 여부와 관련된 추가 입력을 요청하는 단계; 를 포함하는 방법.
  8. 제 6항에 있어서, 상기 적어도 하나의 입력 신호가 상기 음성 신호에 포함되는지 여부에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 음성 신호를 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하는 단계;
    상기 복수개의 구간의 에너지 값들 및 상기 복수개의 구간의 ZCR들(Zero-Crossing Rate) 중 적어도 하나에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계; 를 포함하는 방법.
  9. 제 1항에 있어서, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 기 설정된 적어도 하나의 트리거 워드 및 상기 수신된 음성 신호의 유사도를 측정하는 단계; 및
    상기 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드가 상기 음성 신호에 포함된다고 결정하는 단계; 를 포함하는 방법.
  10. 제 9항에 있어서, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는 단계는,
    상기 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드 중 상기 측정된 유사도가 제4 임계치보다 작은 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는 단계; 를 포함하는 방법.
  11. 오인식된 음성 신호를 처리하기 위한 전자 장치 있어서,
    하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서; 를 포함하며,
    상기 적어도 하나의 프로세서는 수신된 음성 신호에 기 설정된 적어도 하나의 트리거 워드가 포함되면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하고,
    상기 오인식 여부에 대한 결정에 기초하여, 사용자에게 추가 입력을 요청하고, 및
    상기 요청에 대응하여 수신된 사용자의 추가 입력 및 상기 음성 신호에 기초하여, 음성 인식에 대응하는 기능을 실행하는, 전자 장치.
  12. 제 11항에 있어서,
    상기 적어도 하나의 프로세서는 기 설정된 제1 시간 내의 음성 인식에 대응하는 기능 실행 이력에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는, 전자 장치.
  13. 제 11항에 있어서,
    오디오 출력부 및 수신부; 를 더 포함하고,
    상기 적어도 하나의 프로세서는 상기 수신된 음성 신호 및 상기 오디오 출력부에서 출력되는 레퍼런스 음성 신호를 동기화하고,
    상기 동기화된 음성 신호 및 상기 동기화된 레퍼런스 음성 신호의 유사도가 기 설정된 제1 임계치 이상이면, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는, 전자 장치.
  14. 제 11항에 있어서,
    상기 적어도 하나의 프로세서는 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드 이외에 적어도 하나의 입력 신호가 상기 음성 신호에 포함되는지 여부에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는, 전자 장치.
  15. 제 14항에 있어서,
    상기 적어도 하나의 프로세서는 상기 음성 신호를 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드에 대응되는 구간을 제외한 복수개의 구간으로 분할하고,
    상기 복수개의 구간의 에너지 값들 및 상기 복수개의 구간의 ZCR들(Zero-Crossing Rate) 중 적어도 하나에 기초하여, 상기 음성 신호에 포함되는 적어도 하나의 트리거 워드의 오인식 여부를 결정하는, 전자 장치.
  16. 제 11항에 있어서,
    상기 적어도 하나의 프로세서는 상기 기 설정된 적어도 하나의 트리거 워드 및 상기 수신된 음성 신호의 유사도를 측정하고,
    상기 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드가 상기 음성 신호에 포함된다고 결정하고,
    상기 측정된 유사도가 제3 임계치 이상인 적어도 하나의 트리거 워드 중 상기 측정된 유사도가 제4 임계치보다 작은 적어도 하나의 트리거 워드에 오인식이 있다고 결정하는, 전자 장치.
    .
  17. 제 11항에 있어서,
    디스플레이부; 를 더 포함하고,
    상기 적어도 하나의 프로세서는 상기 오인식 여부에 대한 결정에 기초하여, 상기 디스플레이부를 통해 상기 사용자에게 상기 추가 입력을 요청하도록 제어하는, 전자 장치.
  18. 제 11항에 있어서,
    수신부; 를 더 포함하고,
    상기 적어도 하나의 프로세서는 상기 수신부를 통해 상기 음성 신호를 수신하도록 제어하는, 전자 장치.
  19. 제 11항에 있어서,
    통신부; 를 더 포함하고,
    상기 적어도 하나의 프로세서는 상기 음성 신호를 수신한 외부 전자 장치로부터 상기 통신부를 통해 상기 음성 신호를 수신하도록 제어하는, 전자 장치.
  20. 제1항 내지 제10항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020210176941A 2021-12-10 2021-12-10 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치 KR20230088086A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210176941A KR20230088086A (ko) 2021-12-10 2021-12-10 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치
PCT/KR2022/018196 WO2023106678A1 (ko) 2021-12-10 2022-11-17 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210176941A KR20230088086A (ko) 2021-12-10 2021-12-10 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치

Publications (1)

Publication Number Publication Date
KR20230088086A true KR20230088086A (ko) 2023-06-19

Family

ID=86730755

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210176941A KR20230088086A (ko) 2021-12-10 2021-12-10 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치

Country Status (2)

Country Link
KR (1) KR20230088086A (ko)
WO (1) WO2023106678A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4802522B2 (ja) * 2005-03-10 2011-10-26 日産自動車株式会社 音声入力装置および音声入力方法
KR101196976B1 (ko) * 2011-03-29 2012-11-02 포항공과대학교 산학협력단 확인 대화가 가능한 확률 및 예제 기반의 음성 대화 시스템
KR20200063521A (ko) * 2018-11-28 2020-06-05 삼성전자주식회사 전자 장치 및 이의 제어 방법
KR102402465B1 (ko) * 2019-06-10 2022-05-26 주식회사 케이티 호출어에 대한 오인식 방지를 위한 장치 및 방법
KR20210130465A (ko) * 2020-04-22 2021-11-01 현대자동차주식회사 대화 시스템 및 그 제어 방법

Also Published As

Publication number Publication date
WO2023106678A1 (ko) 2023-06-15

Similar Documents

Publication Publication Date Title
US20210210071A1 (en) Methods and devices for selectively ignoring captured audio data
US11470382B2 (en) Methods and systems for detecting audio output of associated device
US11942084B2 (en) Post-speech recognition request surplus detection and prevention
US9990921B2 (en) User focus activated voice recognition
US9508342B2 (en) Initiating actions based on partial hotwords
US9728188B1 (en) Methods and devices for ignoring similar audio being received by a system
KR102623272B1 (ko) 전자 장치 및 이의 제어 방법
US9880808B2 (en) Display apparatus and method of controlling a display apparatus in a voice recognition system
US10079021B1 (en) Low latency audio interface
KR102193029B1 (ko) 디스플레이 장치 및 그의 화상 통화 수행 방법
KR102488285B1 (ko) 디지털 어시스턴트를 이용한 오디오 정보 제공
KR102360589B1 (ko) 관련 출력 디바이스에 컨텐츠를 라우팅하기 위한 시스템 및 방법
US20200075008A1 (en) Voice data processing method and electronic device for supporting same
US20230335129A1 (en) Method and device for processing voice input of user
KR20230088086A (ko) 오인식된 음성 신호를 처리하는 방법 및 이를 위한 장치
US20160343370A1 (en) Speech feedback system
KR20200042627A (ko) 전자 장치 및 그 제어 방법
US11948569B2 (en) Electronic apparatus and controlling method thereof
KR102045539B1 (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법
KR102051480B1 (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법
KR20240059350A (ko) 음성 신호 비식별화 처리 방법 및 그 전자 장치
KR20210109722A (ko) 사용자의 발화 상태에 기초하여 제어 정보를 생성하는 디바이스 및 그 제어 방법
KR20230138821A (ko) 전자 장치의 동작 방법 및 이를 위한 장치
KR20230077513A (ko) 전자 장치에서 출력되는 오디오 신호의 음량을 조절하는 방법 및 이를 위한 장치
KR20190128615A (ko) 디스플레이 장치, 및 이의 제어 방법, 그리고 음성 인식 시스템의 디스플레이 장치 제어 방법