KR20240033006A - 소프트 핫워드로 자동 스피치 인식 - Google Patents

소프트 핫워드로 자동 스피치 인식 Download PDF

Info

Publication number
KR20240033006A
KR20240033006A KR1020247004678A KR20247004678A KR20240033006A KR 20240033006 A KR20240033006 A KR 20240033006A KR 1020247004678 A KR1020247004678 A KR 1020247004678A KR 20247004678 A KR20247004678 A KR 20247004678A KR 20240033006 A KR20240033006 A KR 20240033006A
Authority
KR
South Korea
Prior art keywords
user
user device
input indication
notification
action
Prior art date
Application number
KR1020247004678A
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 구글 엘엘씨
Publication of KR20240033006A publication Critical patent/KR20240033006A/ko

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)

Abstract

핫워드(24)의 소프트 수용을 위한 방법(300)은 사용자 디바이스(110)에 의해 캡처된 스트리밍 오디오(12)에서 핫워드 검출기(200)에 의해 검출된 소프트 핫워드 이벤트(202)를 나타내는 오디오 데이터(14)를 수신한다. 상기 방법은 오디오 데이터가 사용자 디바이스에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 결정하기 위해 오디오 데이터를 프로세싱한다. 사용자 디바이스에서 액션의 수행을 트리거하지 않고, 상기 방법은 사용자 디바이스로부터의 출력을 위한 알림(204)을 제공하며, 알림은 사용자 디바이스와 연관된 사용자(10)에게 사용자 디바이스에 대한 액션의 수행을 트리거하기 위해 긍정적인 입력 표시(16)를 제공하도록 프롬프트하며 및 사용자가 긍정적인 입력 표시를 제공하지 않는 경우, 사용자 디바이스에게 쿼리에 의해 특정된 액션을 수행하지 않도록 지시한다.

Description

소프트 핫워드로 자동 스피치 인식
본 출원은 정도별 핫워딩(hotwoding by degree)에 관한 것이다.
음성-지원 환경(예: 가정, 직장, 학교, 자동차 등)은 사용자가 쿼리를 입력하고 응답하는 컴퓨터 기반 시스템에 큰 소리로 쿼리 또는 명령을 말할 수 있게 하고 및/또는 명령에 기초하여 기능을 수행한다. 스피치 지원 환경은 상기 환경의 다양한 방 또는 영역에 분산되어 있는 연결된 마이크로폰 디바이스들의 네트워크를 사용하여 구현될 수 있다. 이러한 디바이스는 핫워드를 사용하여 주어진 발화가 환경에 있는 다른 개인을 향한 발화가 아니라 시스템을 향하는 경우를 식별하는데 도움을 줄 수 있다. 따라서 디바이스는 슬립 상태 또는 하이버네이션 상태로 동작하다가 검출된 발화에 핫워드를 포함하는 경우에만 웨이크업할 수 있다. 깨어나면, 디바이스는 전체 온-디바이스 ASR(자동 스피치 인식) 또는 서버 기반 ASR과 같은 더 비싼 프로세싱을 계속 수행할 수 있다.
본 개시의 한 양태는 핫워드의 소프트 수용을 위한 컴퓨터로 구현되는 방법을 제공한다. 데이터 프로세싱 하드웨어에 의해 실행될 때 컴퓨터로 구현되는 방법은 상기 데이터 프로세싱 하드웨어로 하여금 동작들을 수행하게 한다. 동작들은 사용자 디바이스에 의해 캡처된 스트리밍 오디오에서 핫워드 검출기에 의해 검출된 소프트 핫워드 이벤트를 나타내는 오디오 데이터를 수신하는 동작을 포함한다. 또한 동작들은 오디오 데이터가 사용자 디바이스에서 수행할 액션을 특정하는 쿼리에 대응하는지 결정하기 위해 오디오 데이터를 프로세싱하는 동작을 포함한다. 사용자 디바이스 또는 다른 디바이스에서 액션의 수행을 트리거하지 않고, 상기 동작들은 사용자 디바이스로부터의 출력을 위한 알림을 제공하는 동작을 포함하고, 알림은 사용자 디바이스와 연관된 사용자에게 사용자 디바이스 또는 다른 디바이스에 대한 액션의 수행을 트리거하기 위해 긍정적인 입력 표시를 제공하도록 프롬프트하며 및 사용자가 긍정적인 입력 표시를 제공하지 않는 경우, 사용자 디바이스 또는 다른 디바이스에게 쿼리에 의해 특정된 액션을 수행하지 않도록 지시하는 동작을 포함한다.
본 개시의 다른 양태는 핫워드의 소프트 수용을 위한 시스템을 제공한다. 시스템은 데이터 프로세싱 하드웨어와 상기 데이터 프로세싱 하드웨어와 통신하는 메모리 하드웨어를 포함한다. 메모리 하드웨어는 데이터 프로세싱 하드웨어에서 실행될 때 상기 데이터 프로세싱 하드웨어로 하여금 동작들을 수행하게 하는 명령어를 저장한다. 동작들은 사용자 디바이스에 의해 캡처된 스트리밍 오디오에서 핫워드 검출기에 의해 검출된 소프트 핫워드 이벤트를 나타내는 오디오 데이터를 수신하는 동작을 포함한다. 또한 동작들은 오디오 데이터가 사용자 디바이스에서 수행할 액션을 특정하는 쿼리에 대응하는지 결정하기 위해 오디오 데이터를 프로세싱하는 동작을 포함한다. 사용자 디바이스 또는 다른 디바이스에서 액션의 수행을 트리거하지 않고, 상기 동작들은 사용자 디바이스로부터의 출력을 위한 알림을 제공하는 동작을 포함하고, 알림은 사용자 디바이스와 연관된 사용자에게 사용자 디바이스 또는 다른 디바이스에 대한 액션의 수행을 트리거하기 위해 긍정적인 입력 표시를 제공하도록 프롬프트하며 및 사용자가 긍정적인 입력 표시를 제공하지 않는 경우, 사용자 디바이스 또는 다른 디바이스에게 쿼리에 의해 특정된 액션을 수행하지 않도록 지시하는 동작을 포함한다.
방법 또는 시스템의 구현예는 다음 선택적 구성들 중 하나 이상을 포함할 수 있다. 일부 구현예에서, 핫워드 검출기는 사용자 디바이스에 상주하고, 신뢰 점수가 사용자 디바이스에 의해 캡처된 오디오 스트림이 핫워드의 존재를 포함할 가능성이 제1 임계 점수를 만족하고 제2 임계 점수를 만족하지 않음을 나타내는 경우 소프트 핫워드 이벤트를 검출하도록 구성된다. 일부 예에서, 상기 동작들은 사용자 디바이스로부터의 출력을 위한 알림을 제공한 이후 미리 결정된 기간 내에 긍정적인 입력 표시가 수신되는지 여부를 결정하는 동작; 및 긍정적인 입력 표시가 미리 결정된 기간 내에 수신되지 않은 경우 사용자가 긍정적인 입력 표시를 제공하지 않은 것으로 결정하는 동작을 더 포함한다. 일부 구성에서, 상기 동작들은 사용자가 사용자 디바이스 또는 다른 디바이스가 쿼리에 의해 특정된 액션을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시를 수신하는 동작; 및 부정적인 입력 표시를 수신한 것에 응답하여 사용자가 긍정적인 입력 표시를 제공하지 않았다고 결정하는 동작을 더 포함한다. 여기서, 사용자 디바이스로부터의 출력을 위한 알림은 사용자가 사용자 디바이스 또는 다른 디바이스가 쿼리에 의해 특정된 액션을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시를 제공하도록 사용자에게 프롬프트한다. 일부 구현예에서, 사용자 디바이스로부터의 출력을 위한 알림을 제공하는 동작은 사용자 디바이스에서 실행되는 그래픽 사용자 인터페이스에 상기 알림을 사용자 디바이스의 화면에 디스플레이하기 위한 시각적 알림으로서 렌더링하도록 지시하는 동작을 포함한다. 이러한 구현예에서, 상기 동작들은 사용자가 긍정적인 입력 표시를 제공하지 않은 경우, 사용자 디바이스의 화면에 디스플레이된 시각적 알림을 제거하도록 그래픽 사용자 인터페이스에 지시하는 동작을 더 포함한다. 사용자 디바이스로부터의 출력을 위한 알림을 제공하는 동작은 상기 알림을 사용자 디바이스의 스피커로부터의 청각적 알림으로 출력하도록 사용자 디바이스에 지시하는 동작을 포함할 수 있다.
방법 또는 시스템은 또한 사용자로부터 긍정적인 표시를 수신하고, 긍정적인 입력 표시 수신에 응답하여 사용자 디바이스 또는 다른 디바이스에서 쿼리에 의해 특정된 액션의 수행을 트리거하는 동작을 포함할 수 있다. 사용자로부터 긍정적인 입력 표시를 수신하는 것은 사용자로부터 스피치 입력을 수신하는 동작; 및 상기 스피치 입력이 사용자 디바이스 또는 다른 디바이스가 쿼리에 의해 특정된 액션을 수행하려는 의도를 나타내는 하나 이상의 용어를 포함한다고 결정하는 동작을 포함한다. 일부 예시에서, 사용자로부터 긍정적인 입력 표시를 수신하는 동작은 사용자 디바이스의 화면에 디스플레이된 긍정적인 그래픽 엘리먼트의 선택을 나타내는 사용자 입력 표시를 수신하는 동작을 포함한다.
방법 또는 시스템의 일부 구성은 사용자 디바이스로부터의 출력을 위한 알림을 제공한 후, 스피치 인식을 수행하지 않고 긍정적인 입력 표시를 나타내는 하나 이상의 발화된 용어; 또는 부정적인 입력 표시를 나타내는 하는 하나 이상의 다른 발화된 용어 중 적어도 하나의 존재를 검출하도록 구성된 웜 모델을 활성화하는 동작을 포함하며, 상기 부정적인 입력 표시는 사용자가 사용자 디바이스 또는 다른 디바이스가 쿼리에 의해 특정된 액션을 수행하는 것을 원하지 않음을 나타낸다. 일부 예에서, 상기 동작들은 사용자 디바이스로부터의 출력을 위한 알림을 제공한 후, 데이터 프로세싱 하드웨어와 통신하는 자동 스피치 인식기에 긍정적인 입력 표시를 나타내는 하나 이상의 발화된 용어; 또는 부정적인 입력 표시를 나타내는 하는 하나 이상의 다른 발화된 용어 중 적어도 하나를 인식하기에 충분한 축소된 기능으로 동작하도록 지시하는 동작을 더 포함하며, 상기 부정적인 입력 표시는 사용자가 사용자 디바이스 또는 다른 디바이스가 쿼리에 의해 특정된 액션을 수행하는 것을 원하지 않음을 나타낸다. 추가적으로 또는 대안적으로, 사용자가 긍정적인 입력 표시를 제공하지 않은 경우, 수신된 오디오 세그먼트의 임의의 스토리지를 삭제하는 동작을 더 포함할 수 있다.
본 개시의 하나 이상의 구현예의 세부 내용이 첨부 도면과 아래의 설명에서 기술된다. 다른 양태, 구성, 객체 및 이점은 아래의 설명, 도면 및 청구항으로부터 명백해질 것이다.
도 1a는 예시적 스피치 환경의 개략도이다.
도 1b~1d는 예시적 스피치 환경의 사시도이다.
도 2는 도 1a의 예시적 소프트 수용기의 개략도이다.
도 3은 핫워드를 소프트 수용하는 방법의 예시적 동작 구성의 흐름도이다.
도 4는 본 명세서에 기술된 시스템 및 방법을 구현하는데 사용될 수 있는 예시적 컴퓨팅 디바이스의 개략도이다.
다양한 도면들에서 기호들은 동일한 엘리먼트를 표시한다.
음성-지원 디바이스(예: 음성 어시스턴트를 실행하는 사용자 디바이스)는 사용자가 쿼리 또는 명령을 말하게 하고 쿼리에 대한 답변을 산출하고 및/또는 명령에 기초하여 기능을 수행한다. 음성 지원 디바이스에 대한 어텐션을 불러일으키기 위해 말하는 미리 결정된 용어/문구가 합의에 의해 예약되어 있는 "핫워드"("키워드", "어텐션 단어", "웨이크업 문구/단어", "트리거 문구", "호출 문구" 또는 "음성 액션 개시 명령"이라고도 함)를 사용하여, 음성 지원 디바이스는 시스템에 대한 발화(즉, 발화에서 핫워드에 후속하는 하나 이상의 용어를 프로세싱하기 위한 웨이크업 프로세스를 개시하기 위해)와 환경에서 다른 사람에 대한 발화를 구분할 수 있다. 일반적으로, 음성 지원 디바이스는 배터리 전원을 절약하기 위해 슬립 상태에서 작동하며, 입력 오디오 데이터가 발화된 핫워드에 후속하지 않는 한 입력 오디오 데이터를 프로세싱하지 않는다. 예를 들어, 슬립 상태에 있는 동안, 음성 지원 디바이스는 마이크를 통해 입력 오디오를 캡처하고, 입력 오디오에서 핫워드의 존재를 검출하도록 트레이닝된 핫워드 검출기를 사용한다. 입력 오디오에서 핫워드가 검출되면, 음성 지원 디바이스는 핫워드 및/또는 핫워드에 후속하는 입력 오디오의 다른 용어를 프로세싱하기 위한 웨이크업 프로세스를 개시한다.
핫워드 검출기는 스트리밍 오디오를 지속적으로 청취해야 하고, 스트리밍 오디오에서 핫워드의 존재가 검출되면 정확하게 즉시 트리거되어야 하기 때문에 핫워드 검출은 건초 더미에서 바늘을 찾는 것과 유사하다. 즉, 핫워드 검출기는 핫워드의 존재가 검출되지 않는 한 스트리밍 오디오를 무시한다. 신경망은 연속적인 오디오 스트림에서 핫워드 존재를 검출하는 복잡성을 해결하기 위해 핫워드 검출기에 일반적으로 사용된다. 핫워드 검출기는 일반적으로 사용자 디바이스의 마이크에서 캡처한 원시 오디오 신호를 신경망에서 프로세싱하기 위해 포맷팅된 하나 이상의 오디오 피처로 변환하는 컴포넌트를 포함한다. 신경망은 핫워드를 포함하는 오디오 시퀀스를 인식하도록 트레이닝된다.
음성 지원 디바이스가 증가함에 따라, 일반적으로 이러한 디바이스가 스피치 프로세싱(예: 스피치 인식 또는 텍스트-투-스피치 변환)에 효과적일 필요가 있다. 스피치 프로세싱은 핫워드가 검출될 때 스피치 프로세싱을 안정적으로 개시하는 핫워드 검출기의 기능에 달려 있으므로, 핫워드 검출기에서 수신된 스피치에서 핫워드가 검출되는지 여부에 대한 결정은 음성 지원 디바이스에 대한 사용자 경험에 영향을 미칠 수 있다. 즉, 사용자가 핫워드를 말한 후 음성 지원 디바이스가 수행하도록 요청된 액션(예: "Hey Google, play my summer 2021 playlist")을 말했지만 핫워드 검출기가 핫워드의 존재를 검출하지 못하는 경우, 요청된 액션을 이해하고 이행하기 위한 스피치 프로세싱은 발생하지 않는다. 이러한 상황으로 인해 사용자는 자신이 한 말을 반복하게 되고 사용자에게 좌절감을 안겨줄 수 있다. 이 오류로 인해 사용자는 음성 지원 디바이스의 기능에 대한 신뢰를 잃을 수 있다. 안타깝게도, 사용자의 신뢰가 없으면, 음성 지원 디바이스의 활용도가 낮아질 수 있다.
핫워드 검출과 관련된 현재 문제 중 하나는 프로세스가 일반적으로 이진적이라는 것이다. 즉, 핫워드 검출기는 오디오 스트림을 듣고 오디오 스트림을 스피치 프로세싱에 적용하거나 오디오 스트림을 스피치 프로세싱에 적용하지 않는다. 적용 여부에 따라 핫워드 검출기는 본질적으로 핫워드가 오디오 스트림에 존재하는지 또는 핫워드가 오디오 스트림에 존재하지 않는지 인식한다는 것을 전달한다. 그러나 실제로 핫워드 검출기는 음성 발화에 대응하는 오디오 스트림의 각 사운드 바이트 또는 오디오 세그먼트에 점수를 매긴다. 여기서, 점수는 오디오 데이터에 핫워드가 존재할 확률 또는 가능성을 나타낸다. 이로 인해 기울기의 한쪽 끝은 핫워드가 오디오 데이터에 존재하는 가장 높은 신뢰도이고 다른 쪽 끝은 핫워드가 오디오 데이터에 존재하는 가장 낮은 신뢰도인 신뢰도 기울기가 발생한다. 현재 이진 접근 방식을 사용하면 신뢰도 기울기는 신뢰도 점수에 기초하여 두 가지 결과 카테고리, 즉 핫워드 수용의 제1 결과 또는 핫워드 거부의 제2 결과로 나뉜다.
불행하게도, 두 가지 가능한 핫워드 결과(예: 수용 결과 및 거부 결과)만 있으면 본질적으로 오디오 데이터가 핫워드의 존재를 포함하는지 여부에 대한 신뢰도에 반드시 맞춰지지 않는 응답을 발생하게 한다. 즉, 핫워드 검출기가 오디오 세그먼트가 핫워드를 포함한다는 55% 신뢰도를 나타내기 위해 핫워드 검출 점수 55%로 오디오 데이터의 오디오 세그먼트에 점수를 매기는 경우, 핫워드 시스템은 55% 신뢰도를 반영하기 위한 후속 액션을 수행하지 않는다. 오히려, 55% 신뢰도는 핫워드 검출기가 핫워드가 존재하지 않는 것보다 존재한다는 것을 더 확신한다는 것을 나타내기 때문에, 이진 접근 방식에서 55% 신뢰도를 갖는 오디오 세그먼트는 단순히 핫워드 수용으로 카테고리화되거나 분류된다. 이진 접근 방식을 사용하면, 신뢰도 기울기의 중간(예: 40~60% 신뢰도)에 더 가까운 신뢰도 점수가 실제 신뢰도 수준을 잘못 분류할 수 있는 응답 카테고리로 분류된다. 즉, 핫워드 시스템이 특정 오디오 세그먼트에 핫워드가 존재한다고 51% 확신한다면, 핫워드 시스템은 핫워드가 존재한다는 99% 신뢰도를 갖는 다른 오디오 세그먼트와 동일한 방식으로 이 신뢰도를 수용 결과로 분류할 수 있다. 따라서, 이진 접근 방식의 본질적인 불일치로 인해 핫워드 검출기가 오디오 세그먼트를 수용하거나 거부할 때 오류가 발생할 가능성이 높아진다. 다르게 말하면, 이진 핫워드 검출기는 잘못된 수용(즉, 핫워드가 존재하지 않음에도 수용 결과로 분류됨) 또는 잘못된 거부(즉, 핫워드가 존재함에도 거부 결과로 분류됨) 오류를 발생시킬 수 있다.
이진 접근 방식에서, 핫워드 검출기는 거부 결과와 수용 결과를 구분하는 임계 신뢰도로 구성된다. 예를 들어, 임계 신뢰도는 50% 신뢰도보다 큰 오디오 세그먼트는 수용되고 신뢰도 50% 미만인 오디오 세그먼트는 거부되도록 50% 신뢰도로 설정될 수 있다. 일부 예에서, 임계값은 수용 포함적이어서, 정확히 50% 신뢰도를 갖는 오디오 세그먼트가 수용된다. 다른 예에서는 임계값은 거부 포함적어어서, 정확히 50% 신뢰도를 갖는 오디오 세그먼트가 거부된다. 종종 이진 핫워드 검출기에 대한 임계값 신뢰도는 양쪽 오류의 균형을 맞추려고 시도한다. 즉, 임계값 신뢰도를 거짓 수용 및 거짓 거부의 수를 최소화하는 신뢰도로 설정한다. 임계값은 오류(예: 거짓 수용 및 거짓 거부)를 최소화하도록 조정되므로 임계값 신뢰도를 어느 방향으로 이동해도 오류 비율이 감소하지 않는다. 즉, 임계값을 50% 신뢰도에서 55% 신뢰도로 이동하면 거짓 수용으로 인한 오류는 줄어들지만 거짓 거부로 인한 오류는 더 많아질 수 있다. 반면 임계값을 50% 신뢰도에서 45% 신뢰도로 이동하면 거짓 거부로 인한 오류는 줄어들 수 있지만 거짓 수용으로 인한 오류는 더 많아질 수 있다.
임계값 신뢰도를 이동하면 전체 오류 수를 줄이는 대신 단순히 오류를 상쇄하므로 경계선 신뢰 사례를 고려하는 접근 방식이 필요하다. 이러한 문제 중 일부를 해결하기 위해 여기에 설명된 접근 방식은 소프트 수용이라고 하는 결과 카테고리를 도입하는 비이진적 접근 방식이다. 이 결과 카테고리는 수용 및 거부의 결과 카테고리에 추가될 수 있다. 소프트 수용은 오디오 스트림에 포함된 요청 또는 쿼리에 대한 응답(예: 응답 액션)이 적어도 초기에 제한되는 조건에서 핫워드 검출기가 오디오 세그먼트에 핫워드의 존재를 포함한다는 것을 수용하는 결과를 의미한다. 예를 들어, 소프트 수용에서 해당 액션이 긍정적으로 승인될 때까지 쿼리(즉, 요청 또는 명령)를 이행하는 액션을 수행되지 않도록 요구한다. 해당 액션이 긍정적으로 승인되면 이후에 해당 액션이 실행된다.
일반적으로 스피치 프로세싱 시스템의 핫워드 검출기가 오디오 스트림에 핫워드가 존재한다는 것을 수용하면, 핫워드 검출기는 전체 스피치 프로세싱을 위해 오디오 스트림을 커밋한다. 전체 음성 프로세싱은 오디오 스트림이 음성 지원 디바이스로부터 특정 응답(예: 응답 액션)을 요청하는지 여부를 결정한다. 오디오 스트림이 특정 응답을 요청하면 음성 지원 디바이스의 시스템은 일반적으로 응답을 자동으로 프로세싱 및/또는 수행하도록 구성된다. 예를 들어, 사용자가 "Hey Google"이라는 핫워드를 말한 후 "play my summer 2021 playlist"라는 요청된 액션이 뒤따르는 경우(즉, 도 1a에 도시된 바와 같이 "Hey Google, play my summer 2021 playlist"라는 발화), 음성 지원 디바이스는 핫워드를 인식하고(예: 핫워드 검출기로) "summer 2021 playlist"을 포함하는 음악 재생 애플리케이션을 열고 음악 재생 애플리케이션(예: Google Play 뮤직)을 사용하여 "summer 2021 playlist"를 재생한다. 반면, 소프트 수용의 경우, 사용자가 핫워드인 'Hey Google'을 명확하게 말하지 않았을 수 있다. 이러한 명확성 부족으로 인해 핫워드 검출기는 "Hey Google"에 대응하는 오디오 세그먼트가 소프트 수용 결과 카테고리에 대응하는 핫워드 신뢰도를 가지고 있음을 나타낼 수 있다. 소프트 수용 결과 카테고리를 통해 핫워드 검출기는 "play my summer 2021 playlist" 오디오도 전체 스피치 프로세싱에 커밋한다. 이 소프트 수용 예에서, 시스템은 "summer 2021 playlist"를 재생하는 응답을 생성(예: 자동 생성)하는 대신, 제한된 응답(또는 소프트 응답)으로 응답한다. 예를 들어, 제한된 응답은 발화에 대한 시스템의 해석된 응답을 음성 지원 디바이스를 통해 사용자에게 알리는 응답이다. 일부 예에서, 이 소프트 응답은 시스템의 해석된 응답을 계속 진행하기 위해 사용자 권한을 요청하는 알림이다. 예를 들어, 시스템은 음성 지원 디바이스에 "would you like to play your summer 2021 playlist on Google Play Music?"라는 시각적 응답(예: 프롬프트)을 생성한다. 여기서 시스템은 사용자가 해석된 응답에 대한 권한을 부여할 때까지(예: 시각적 응답을 긍정적으로 승인하는 인터렉션 수행) 해석된 응답(예: Google Play 뮤직에서 2021년 여름 재생목록 재생)을 생성하지 않는다.
시스템의 초기 응답을 제한된 응답으로 제한함으로써(예: 액션을 수행하기 전에 쿼리로부터 액션에 대한 긍정적인 승인을 요청), 소프트 수용 결과는 핫워드 신뢰도가 낮을수록 잘못된 전체 응답보다 사용자에게 덜 눈에 띄는 제한적인 응답이 발생하도록 위험을 분산한다. 이러한 의미에서, 시스템은 핫워드 신뢰도를 반영하는 응답을 생성한다. "Hey Google, play my summer 2021 playlist"라는 예에서, 사용자는 실제로 음성 지원 디바이스의 가청 범위 내의 다른 사람에게 말하면서 "I should add, ‘hey beautiful’ to my summer 2021 playlist"라고 말했을 수도 있다(즉, 발화는 실제로 후속 스피치가 아닌 부수적 스피치였음). "Hey Google, play my summer 2021 playlist"을 시스템이 잘못 해석하면 사용자에게 다소 거슬리는 반응을 보일 수 있다. 즉, 음성 지원 디바이스는 사용자가 나누는 대화 중에 갑자기 재생 목록의 음악을 재생하기 시작할 수 있다(예: 도 1b에 도시된 바와 같이). 그러나 "I should add, ‘hey beautiful’ to my summer 2021 playlist"라는 실제 발화가 소프트 수용 결과를 초래하는 핫워드 신뢰도를 갖는 경우, 결과는 단순히 음성 지원 디바이스가 "Do you want to play your summer 2021 playlist?"라는 눈에 띄지 않는 프롬프트를 음성 지원 디바이스의 디스플레이에 생성하는 것일 수 있고, 여기서 사용자는 프롬프트를 무시하거나 부정적으로 확인하는 인터렉션을 수행할 수 있다(예: 도 1c에 도시된 바와 같이).
일부 예에서, 해석된 전체 응답(즉, 쿼리에 의해 요청된 액션)이 가청 응답일지라도 제한된 응답은 시각적 응답이다. 이는 시각적 응답과 청각적 응답 사이에 종종 비대칭성이 있다는 원리를 따른다. 일반적으로, 시각적 응답은 사용자가 시각적 응답을 표시하는 디스플레이를 보고 있는 경우에만 파괴적인 반면, 청각적 응답은 사용자가 청각적 응답을 들을 수 있을 때 파괴적이다. 즉, 청각적 응답은 인간의 감각 인식으로 인해 시각적 응답보다 자연스럽게 더 파괴적일 수 있다. 즉, 많은 사용자는 무언가를 보기 위한 감각 영역보다 무언가를 듣기 위한 더 큰 감각 영역을 가진다(예: 귀에 들리지만 시야에는 없음). 따라서, 알림이나 작은 팝업 창과 같은 시각적 응답은 음성 지원 디바이스의 전체 창을 변경하거나 사용자에게 "play the summer 2021 playlist"할지 청각적으로 묻는 것에 비해 덜 방해적인 응답일 수 있다.
소프트 수용 결과는 음성 지원 디바이스와 연관된 스피치 프로세싱 시스템에 대한 피드백 역할도 할 수 있다. 예를 들어, 제한된 응답은 사용자에게 요청이나 쿼리에 대한 응답 생성을 계속할지 여부에 대한 허가를 요청할 수 있으므로, 사용자의 허가 부여 또는 허가 거부는 핫워드 검출기에 의미 있는 피드백을 제공할 수 있다. 즉, 제한된 응답과 사용자의 인터렉션은 핫워드가 존재하는지 여부를 나타낸다. 다르게 말하면, 음성 지원 디바이스의 사용자는 자신이 처음에 요청하지 않은 응답을 생성하도록 권한을 부여할 가능성이 없다. 이와 관련하여 사용자가 응답 생성 권한을 부여하는 경우 시스템에서는 권한 부여를 위한 인터렉션을 긍정적인 핫워드 예로 해석할 수 있다. 그런 다음, 시스템은 핫워드 검출기에 입력된 오디오 데이터에 핫워드가 존재할 확률을 예측하기 위해 핫워드 검출기에 의해 사용되는 모델(예를 들어, 기계 학습 모델)에 대한 향후 트레이닝 예시로서 기능하도록 긍정적인 핫워드 예시를 저장할 수 있다. 이러한 의미에서, 사용자의 인터렉션은 핫워드 검출기에 대한 지도된 핫워드 트레이닝 예시를 생성하기 위해(예를 들어, 핫워드 검출기의 기능을 개선하거나 업데이트하기 위해) 핫워드 예를 긍정적인 핫워드 예시로서 라벨링할 수 있다. 일부 예에서, 이러한 긍정적인 핫워드 예시는 넓은 의미에서 핫워드 검출기에 대한 핫워드 트레이닝 예시로서 기능하지 않고, 오히려 보다 정확한 소프트 수용을 수행하도록 핫워드 검출기를 트레이닝하는 기능(즉, 소프트 수용 트레이닝 예시로서의 기능)을 수행한다.
추가적으로 또는 대안적으로, 소프트 수용 출력은 핫워드 검출기와 연관된 핫워드 감도를 미세 조정하는데 있어 사용자 디바이스를 보조하기 위한 피드백일 수 있다. 예를 들어, 핫워드 검출기는 소프트 수용 결과 중 얼마나 많은 소프트 수용 결과가 적법한 쿼리로 식별되었는지, 더 나아가 얼마나 많은 적법한 쿼리가 사용자의 긍정적인 승인으로 이어졌는지와 비교하여 소프트 수용 결과의 빈도를 평가할 수 있다. 즉, 스피치 프로세싱 시스템이 소프트 수용 결과와 연관된 쿼리를 특정 백분율(예: 임계값 백분율)로 식별하지 못한 경우, 핫워드 검출기는 소프트 수용 신뢰도 임계값을 해당 백분율을 최소화하거나 감소시키도록 변경하도록 구성될 수 있음을 의미한다. 즉, 소프트 핫워드를 포함하는 오디오 데이터에 쿼리가 없을 때 소프트 수용 결과가 발생하는 것처럼 보인다. 이 상황에서, 사용자가 쿼리 호출 문구로서 핫워드를 사용하여 쿼리를 개시했기 때문에 오디오 데이터에 핫워드가 존재하지 않았을 가능성이 높다. 쿼리가 없으면, 핫워드가 존재할 가능성이 낮으므로 이 상황은 소프트 수용 결과가 지나치게 포괄적(즉, 거짓 수용 포함)임을 핫워드 검출기에 가르치는 피드백 역할을 할 수 있다. 유사한 측면에서, 사용자가 소프트 수용 결과에 대응하는 쿼리를 긍정적으로 승인하지 않는 경우(또는 부정적인 승인을 수행하는 경우), 이 상황은 사용자 디바이스가 실제로 사용자 디바이스로 향하는 스피치가 아닌 부수적 스피치를 선택했음을 나타낼 수 있다. 따라서, 핫워드 검출기는 소프트 수용 결과로부터 발생하는 액션에 대한 긍정적인 승인 부족 발생 빈도에 기초하여 소프트 수용 결과에 대응하는 하나 이상의 신뢰도 임계값을 조정할 수 있다.
도 1a 내지 도 1d를 참조하면, 일부 예에서 스피치 환경(즉, 시스템)(100)은 디지털 어시스턴트 인터페이스(120)를 실행하는 음성 지원 디바이스(110)(디바이스(110) 또는 사용자 디바이스(110)라고도 함)의 가청 범위 내에서 발화(20)를 하는 사용자(10)를 포함한다. 여기서, 사용자(10)가 말한 발화(20)는 스트리밍 오디오(12)에서 디바이스(110)에 의해 캡처될 수 있고, 액션을 수행하기 위한 쿼리(22), 또는 보다 구체적으로 디지털 어시스턴트 인터페이스(120)가 액션을 수행하게 하기 위한 쿼리(22)에 대응할 수 있다. 사용자(10)는 슬립 또는 최대 절전 모드에 있는 동안 디바이스(110)에서 실행되는 핫워드 검출기(예를 들어, 소프트 수용기(200))에 의해 스트리밍 오디오(12)에서 핫워드(24)가 검출될 때 슬립 또는 최대 절전 상태로부터 디바이스(110)를 트리거하기 위해 핫워드(24)(예를 들어, 호출 문구)를 쿼리(22)에 접두어로 붙일 수 있다. 액션은 동작 또는 작업이라고도 한다. 이러한 의미에서, 사용자(10)는 컴퓨팅 활동을 수행하거나 질문에 대한 답변을 찾기 위해 음성 지원 디바이스(110)에서 실행되는 디지털 어시스턴트 인터페이스(120)와 대화 인터렉션을 할 수 있다.
디바이스(110)는 사용자(10)와 연관되고 환경(100)으로부터 오디오를 캡처할 수 있는 임의의 컴퓨팅 디바이스에 대응할 수 있다. 일부 예시에서, 사용자 디바이스(110)는 모바일 디바이스(예를 들어, 모바일폰, 태블릿, 랩톱, 전자책 리더기 등), 컴퓨터, 웨어러블 디바이스(예를 들어, 스마트 워치), 음악 플레이어, 캐스팅 디바이스, 스마트 기기(예: 스마트 TV) 및 사물 인터넷(IoT), 리모콘, 스마트 스피커 등을 포함하지만 이에 한정되지 않는다. 디바이스(110)는 데이터 프로세싱 하드웨어(112) 및 상기 데이터 프로세싱 하드웨어(112)와 통신하고 명령어를 저장하는 메모리 하드웨어(114)를 포함하며, 상기 명령어는 상기 데이터 프로세싱 하드웨어(112)에 의해 실행될 때 상기 데이터 프로세싱 하드웨어(112)로 하여금 스피치 프로세싱과 관련된 하나 이상의 동작들을 수행하게 한다.
디바이스(110)는 스피치 환경(100) 내의 오디오를 캡처하고 전기 신호(예: 오디오 데이터(14)로 변환하기 위한 오디오 캡처 디바이스(예를 들어, 하나 이상의 마이크로폰의 어레이)를 갖춘 오디오 서브시스템(116)을 더 포함한다. 도시된 예에서 디바이스(110)는 오디오 캡처 디바이스(116)(일반적으로 마이크(116)라고도 함)를 구현하지만, 오디오 캡처 디바이스(116)는 디바이스(110)에 물리적으로 상주하지 않고, 오디오 서브시스템(예: 예를 들어, 디바이스(110)의 주변기기)과 통신할 수 있다. 예를 들어, 디바이스(110)는 차량 전체에 포지셔닝된 마이크들의 어레이를 활용하는 차량 인포테인먼트 시스템에 대응할 수 있다. 다른 예에서, 오디오 캡처 디바이스(116a)는 액션을 수행할 사용자 디바이스(110)와 통신하는 다른 디바이스에 상주할 수 있다. 추가적으로, 오디오 서브시스템(116)은 사용자 디바이스(110)에 의해 생성된 오디오(예를 들어, 합성 오디오 또는 합성 스피치)를 재생하기 위한 재생 디바이스(예를 들어, 하나 이상의 스피커)를 포함할 수 있다.
디바이스(110)는 또한 그래픽 사용자 인터페이스(GUI) 엘리먼트(예를 들어, 창, 스크린, 아이콘, 메뉴 등) 및/또는 그래픽 콘텐츠를 표시하는 디스플레이(118)를 포함할 수 있다. 예를 들어, 디바이스(110)는 디스플레이(118)를 위한 GUI 엘리먼트 또는 기타 그래픽 콘텐츠를 생성하는 애플리케이션(로컬 또는 원격 애플리케이션)을 로드하거나 시작할 수 있다. 더욱이, 디스플레이(118)에서 생성된 엘리먼트는 사용자(10)에 의해 선택 가능할 수 있고 또한 디바이스(110)에서 발생하는 프로세싱 활동 및/또는 동작에 대한 일종의 시각적 피드백을 제공하는 역할을 할 수도 있다. 또한, 디바이스(110)는 음성 지원 디바이스(110)이기 때문에, 사용자(10)는 다양한 음성 명령을 사용하여 디스플레이(118) 상에 생성된 엘리먼트와 인터렉션할 수 있다. 예를 들어, 디스플레이(118)는 특정 애플리케이션에 대한 옵션 메뉴를 도시할 수 있고, 사용자(10)는 스피치를 통해 옵션을 선택하기 위해 인터페이스(120)를 사용할 수 있다.
스피치-지원 인터페이스(예를 들어, 디지털 어시스턴트 인터페이스)(120)는 디바이스(110)에 의해 캡처된 음성 발화(20)에 전달된 쿼리(22) 또는 명령을 입력할 수 있다. 스피치-지원 인터페이스(120)(인터페이스(120) 또는 어시스턴트 인터페이스(120)라고도 함)는 일반적으로 발화(20)에 대응하는 오디오 데이터(14)를 수신하고, 오디오 데이터(14)에 대한 스피치 프로세싱 또는 발화(122)에서 유래하는 다른 활동을 조정한다. 인터페이스(120)는 디바이스(110)의 데이터 프로세싱 하드웨어(112) 상에서 실행될 수 있다. 인터페이스(120)는 발화(20)를 포함하는 오디오 데이터(14)를 스피치 프로세싱 또는 쿼리 이행과 관련된 다양한 시스템으로 채널링할 수 있다.
또한, 디바이스(110)는 네트워크(130)를 통해 원격 시스템(140)과 통신하도록 구성된다. 원격 시스템(140)은 원격 데이터 프로세싱 하드웨어(144)(예를 들어, 원격 서버 또는 CPU) 및/또는 원격 메모리 하드웨어(146)(예를 들어, 원격 데이터베이스 또는 기타 저장 하드웨어)와 같은 확장가능한 원격 리소스(142)를 포함할 수 있다. 디바이스(110)는 스피치 프로세싱(예를 들어, 스피치 프로세싱 시스템(150)에 의한) 및/또는 소프트 수용(예를 들어, 소프트 수용기(200)에 의한)과 관련된 다양한 기능을 수행하기 위해 원격 리소스(142)를 활용할 수 있다. 예를 들어, 디바이스(110)는 스피치 인식 시스템(152)을 사용하여 스피치 인식 및/또는 스피치 해석기(154)를 사용하여 스피치 해석을 수행하도록 구성된다. 일부 예에서, 도시되지는 않았지만, 디바이스(110)는 추가적으로 TTS 시스템을 사용하여 스피치 프로세싱 동안 텍스트를 스피치로(TTS) 변환할 수 있다.
시스템(150, 200)은 디바이스(110)에 상주하거나(온-디바이스 시스템으로 지칭됨) 또는 원격으로 상주하지만(예를 들어, 원격 시스템(140)에 상주) 디바이스(110)와 통신할 수 있다. 일부 예에서, 이러한 시스템(150, 200) 중 일부는 로컬로 또는 온-디바이스에 상주하는 반면 다른 시스템은 원격에 상주한다. 즉, 이러한 시스템(150, 200) 중 임의의 시스템은 임의의 조합으로 로컬 또는 원격일 수 있다. 예를 들어, 시스템(150, 200)의 크기나 프로세싱 요구사항이 다소 큰 경우 시스템(150, 200)은 원격 시스템(140)에 상주할 수 있다. 그러나 디바이스(110)가 하나 이상의 시스템(150, 200)의 크기 또는 프로세싱 요구사항을 지원할 수 있는 경우, 하나 이상의 시스템(150, 200)은 데이터 프로세싱 하드웨어(112) 및/또는 메모리 하드웨어(114)를 사용하여 디바이스(110)에 상주할 수 있다. 선택적으로, 시스템(150, 200) 중 하나 이상은 로컬/온-디바이스 및 원격 모두에 상주할 수 있다. 예를 들어, 시스템(150, 200) 중 하나 이상은 디바이스(110)와 원격 시스템(140) 사이의 네트워크(130)에 대한 연결이 사용 가능한 경우 원격 시스템(140)에서 기본적으로 실행될 수 있고, 연결이 끊어지거나 네트워크(130)가 사용불가능한 경우 시스템(150, 200)은 대신 디바이스(110)에서 로컬로 실행된다.
디바이스(110)는 또한 스피치 프로세싱 시스템(150)과 통신하도록 구성된다. 스피치 프로세싱 시스템(150)은 일반적으로 스피치 인식 및 스피치 해석(쿼리 해석으로도 알려짐)과 같은 스피치 프로세싱과 관련된 다양한 기능을 수행할 수 있다. 예를 들어, 도 1a의 스피치 프로세싱 시스템(150)은 자동 스피치 인식(ASR)을 수행하는 스피치 인식기(152), 인식된 스피치의 의미를 결정하는(즉, 스피치를 이해하기 위한) 스피치 해석기(154) 및 인식된 스피치에서 식별된 쿼리에 응답하여 임의의 검색 결과를 검색하는 검색 엔진(156)을 포함하는 것으로 도시된다. 소프트 수용기(200)가 소프트 핫워드 이벤트(202)를 검출하면, 소프트 수용기(200)는 오디오 데이터(14)를 스피치 프로세싱 시스템(150)에 전달한다. 소프트 핫워드 이벤트(202)는 소프트 수용기(200)가 오디오 데이터(14)의 일부(예를 들어, 제1 오디오 세그먼트)를 핫워드(24)로서 수용한다는 것을 나타낸다. 핫워드(24)로 식별된 오디오 데이터(14)의 일부를 사용하여, 소프트 수용기(200)는 스피치 프로세싱 시스템(150)이 오디오 데이터(14)에 대해 스피치 프로세싱을 수행할 수 있도록 오디오 데이터(14)를 소프트 핫워드 이벤트(202)로 전달한다. 오디오 데이터(14)에 대해 스피치 프로세싱을 수행함으로써, 스피치 인식기(152)는 스피치 해석기(154)와 결합하여 오디오 데이터(14)의 제2 오디오 세그먼트(예를 들어, 쿼리(22)로 표시됨)가 음성 쿼리-유형 발언을 나타내는지 여부를 결정할 수 있다.
스피치 인식기(152)는 소프트 핫워드 이벤트(202)에 대응하는 오디오 데이터(14)를 입력으로 수신하고 오디오 데이터(41)를 스피치 인식 결과 R이라고 하는 출력으로서의 전사로 전사한다. 일반적으로 말하면, 오디오 데이터(14)를 전사로 변환함으로써, 스피치 인식기(152)는 디바이스(110)가 사용자(10)로부터의 음성 발화(20)가 쿼리(22)(또는 명령) 또는 다른 형태의 오디오 통신에 대응하는 때를 인식하게 할 수 있다. 전사는 디바이스(110)(예: 어시스턴트 인터페이스(120) 또는 스피치 프로세싱 시스템(150))가 쿼리 또는 명령에 대한 응답을 생성하기 위해 사용할 수 있는 텍스트의 시퀀스를 지칭한다. 스피치 인식기(152) 및/또는 인터페이스(120)는 스피치 인식 결과 R을 스피치 해석기(154)(예를 들어, 자연어 이해(NLU) 모듈)에 제공하여, 결과 R에 대한 의미론적 해석을 수행하여 오디오 데이터(14)가 수행될 특정 액션(148)을 요청하는 쿼리(22)를 포함하는지 여부를 결정할 수 있다. 즉, 스피치 해석기(154)는 오디오 데이터(14)의 쿼리(22) 또는 명령을 식별하고 스피치 프로세싱 시스템(150)이 쿼리(22)에 의해 호출된 대응 액션(158)으로 쿼리(22)에 응답하게 하기 위해 결과 R의 해석 I를 생성한다. 예를 들어, 쿼리(22)가 음악을 재생하는 명령인 경우, 쿼리(22)에 의해 호출되는 대응 액션(158)은 음악을 재생하는 것이다(예를 들어, 음악을 재생할 수 있는 애플리케이션을 실행함으로써). 일부 예에서, 스피치 프로세싱 시스템(150)은 스피치 프로세싱 시스템(150)이 쿼리(22)에 응답(즉, 쿼리(22)를 이행)할 수 있게 하는 검색 결과를 검색하기 위해 검색 엔진(156)을 사용한다.
소프트 수용기(200)는 일반적으로 일종의 핫워드 검출기 역할을 한다. 즉, 소프트 수용기(200)는 스트리밍 오디오(12)에서 핫워드(24)의 존재를 검출하도록 구성된다. 소프트 수용기(200)는 핫워드의 존재를 검출하기 위해 "상시 켜짐"이도록 구성될 수 있다. 소프트 수용기(200)는 스피치 인식이나 의미론적 분석을 수행하지 않고 핫워드(24)를 나타내는 음향 피처를 검출하도록 구성된 신경망 기반 모델과 같은 핫워드 검출 모델을 포함할 수 있다. 소프트 수용기(200)를 사용함으로써, 핫워드(24)의 검출은 디지털 신호 프로세서(DSP) 칩과 같은 저전력 하드웨어에서 발생할 수 있으며, 이는 디바이스의 컴퓨팅 프로세싱 디바이스(CPU)(예: 데이터 프로세싱 하드웨어(112)와 연관됨)의 소비를 방지한다. 일부 예에서, 소프트 수용기(200)의 기능은 핫워드 검출의 하나 이상의 스테이지로 분할될 수 있다. 예를 들어, 후보 핫워드를 초기적으로 검출하는 제1 스테이지와 후보 핫워드를 핫워드로 확인하는 제2 스테이지가 있다. 다수의 스테이지에서도, 검출기가 핫워드(24)를 검출하는 경우, 핫워드(24)는 디바이스를 깨우고 더 비싼 프로세싱(예를 들어 ASR 및 자연어 이해(NLU))를 요구하는 스피치 인식을 개시하도록 트리거할 수 있다. 여기서, 디바이스는 데이터 프로세싱 하드웨어(112)(예를 들어, CPU)에서 스피치 인식기(152)를 실행함으로써 온-디바이스 ASR을 수행할 수 있다. 선택적으로, 디바이스(110)는 서버(예를 들어, 도 1a의 원격 시스템(140))와의 네트워크 연결을 설정하고, 오디오 데이터(14)를 서버에 제공하여 오디오 데이터(14)에 대해 서버측 ASR 및/또는 NLU를 수행한다.
그러나 소프트 수용기(200)는 핫워드 검출 결과를 소프트 수용 결과, 더 구체적으로는 소프트 핫워드 이벤트(202)로 분류할 수 있다는 점에서 기존의 핫워드 검출기와 다르다. 여기서, 소프트 핫워드 이벤트(202)는 소프트 수용기(200)가 오디오 데이터(14)에 핫워드(24)가 포함되어 있다고 결정하였지만, 핫워드 검출의 신뢰도로 인해 소프트 수용기(200)가 핫워드 검출을 완전 수용이 아닌 소프트 수용인 것으로 지정하게 되는 상황을 말한다. 완전 수용 또는 소프트 수용 중 하나를 사용하여, 소프트 수용기(200)는 오디오 데이터(14)가 디바이스(110)가 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 여부를 결정하기 위해 시스템(150)이 프로세싱하도록 스트리밍 오디오(12)로부터 오디오 데이터(14)를 스피치 프로세싱 시스템(150)으로 전달한다. 완전 수용과 소프트 수용 사이의 차이점은 일반적으로 디바이스(110)가 완전히 수용된 핫워드와 연관된 쿼리(22)에 의해 특정된 액션(148)을 수행하도록 허용하는 반면(예를 들어 자동으로 액션을 수행함), 소프트 수용에서는, 디바이스(110)에서 액션(148)의 수행을 트리거하기 위해 디바이스(110)와 연관된 사용자(10)에게 긍정적인 입력 표시(16)를 제공하도록(즉, 알림을 긍정적으로 승인하도록 프롬프트하는) 알림(204)을 소프트 수용기(200)가 생성할 때까지 디바이스(110)는 소프트 수용과 연관된 쿼리(22)에 의해 특정된 액션(148)을 수행할 수 없다. 그러므로, 소프트 핫워드 이벤트(202)로, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않으면 액션(148)이 발생하지 않는다.
도 1b-1d는 기존의 핫워드 검출(예: 도 1b) 간의 일부 차이점 및 소프트 수용기(200)를 사용한 핫워드 검출(예를 들어, 도 1c 및 도 1d)을 도시한다. 도 1b에서, 제1 사용자(10, 10a)는 두 사용자(10)가 테이블에 앉아 있는 동안 제2 사용자(10, 10b)와 대화를 나누고 있다. 사용자 디바이스(110)는 사용자들(10) 간의 대화를 들을 수 있는 범위 내의 사이드보드에 상주한다. 대화 중, 제1 사용자(10a)는 ''I started rewatching ‘How I Met Your Mother.’ All of the actors look so young"이라는 제1 발화(20, 20a)를 한다. 제1 사용자(10a)의 이 말에 대해 제2 사용자(10b)는 "Oh I should definitely add the song ‘Hey Beautiful’ to my summer 2021 playlist"라는 제2 발화(20, 20b)를 한다. 제1 사용자(10a)는 "How I Met Your Mother"라는 프로그램을 언급함으로써 제2 사용자(10b)에게 제2 사용자(10b)가 자신의 2021년 여름 재생 목록에 "How I Met Your Mother" 주제가를 추가해야 함을 상기시킨다. 불행하게도 이 시나리오에서, 사용자 디바이스(110)와 연관된 핫워드 검출기가 "Hey Beautiful"이라는 용어를 핫워드 "Hey Google"로 착각한다. 도 1b의 디바이스(110)의 핫워드 검출기는 소프트 수용이 없는 이진 핫워드 검출기일 뿐이므로, 일단 핫워드가 검출되면, 디바이스(110)의 스피치 프로세싱 시스템은 검출된 핫워드와 연관된 액션(148)을 자동으로 수행할 것이다. 여기서, 디바이스(110)는 액션(148)을 디바이스(110)가 "summer 2021 playlist"을 재생해야 한다는 것으로 해석한다. 그러면 디바이스(110)와 페어링된 스피커는 "summer 2021 playlist"의 음악을 재생하기 시작한다. 불행하게도, 제1 사용자(10a)와 제2 사용자(10b) 모두 어떤 음악도 듣고 싶지 않았고 이제 그들의 대화는 원치 않는 음악과 경쟁하고 있다.
대조적으로, 도 1c 및 1d는 동일한 대화를 하는 사용자(10a-b)를 도시하지만, 디바이스(110)가 액션(148)(즉, 음악 재생)을 자동으로 수행하는 대신, 디바이스(110)는 액션(148)이 발생해야 하는지 묻는 알림(204) "Do you want to play your ‘summer 2021 playlist?"을 디스플레이한다. 사용자(10)가 재생 목록을 요청하지 않았기 때문에, 사용자(10)는 디바이스(110) 상의 알림(204)을 무시하거나 액션(148)을 원하지 않음을 나타내는 입력(16)(즉, 부정적인 입력)을 사용자 디바이스(110)에 제공할 수 있다. 일부 예에서, 알림(204)이 무시되면, 알림(204)은 특정 시간 후에 디바이스(110)의 디스플레이(118)에서 자동으로 제거될 것이다. 즉, 디바이스(110)는 액션(148)을 수행하기 위해 알림(204)을 긍정적으로 확인(즉, 수용 또는 승인)할 수 있는 유한한 시간 윈도우를 사용자(10)에게 제공한다. 그렇지 않으면 어떠한 확인도 없이 액션(148)이 잊혀질 수 있다(예를 들어, 메모리에서 제거됨). 이러한 의미에서, 사용자(10a-b)가 자신의 대화에 몰입되어 있고 액션(148)을 생성할 의도가 없었을 때, 디바이스(110)는 방해하지 않고 시간 윈도우가 만료되면 사라지는 눈에 띄지 않는 알림(204)을 생성한다. 일부 예에서, 시간 윈도우는 사용자의 현재 상태에 따라 시간 윈도우가 연장되거나 단축되도록 동적일 수 있다. 예를 들어, 디바이스(110)가 알림(204)을 긍정적으로 확인하기 위해 사용자(10)가 디바이스(110)에 접근하고 있음을 검출하면, 디바이스(110)는 시간 윈도우를 확장할 수 있다.
도 1d는 알림(204)의 그래픽 크기가 변할 수 있다는 것을 도시한다. 예를 들어, 알림(204)의 크기는 소프트 수용기(200)에 의해 결정된 핫워드 신뢰도에 비례할 수 있다. 예를 들어, 알림(204)이 차지하는 픽셀의 수는 핫워드 신뢰도에 비례할 수 있다. 도 1d에서, 액션(148)에 대한 제1 알림(204, 204a)은 다소 작으며 단순히 잠재적인 액션(148)이 대기 중임을 시각적으로 식별하는 방법으로 기능하는 것으로 도시되어 있다. 일부 구현예에서, 사용자(10)는 알림(204)이 변경되도록(예를 들어, 인터렉션 가능한 아이콘/버튼을 확대하거나 개발) 알림(204)을 선택할 수 있다. 예를 들어, 도 1d에서, 제1 알림(204, 204a)은 작은 모서리 그래픽 사용자 인터페이스(GUI) 엘리먼트이다. 이 예에서, 사용자(10)는 작은 모서리 GUI 엘리먼트를 선택(예를 들어, 손 아이콘으로 표시)하여, 사용자(10)가 사용자 디바이스(110)가 "play the summer 2021 playlist"하기를 원하는지 묻는 프롬프트를 갖는 팝업창인 제2 알림(204, 204b)을 디바이스(110)가 디스플레이하게 한다. 여기서, 제2 사용자 입력(16, 16A2)이 제2 알림(204, 204b) 내의 "예" 아이콘을 선택하면, 디바이스(110)는 사용자 선택 입력(16)에 응답하여 액션(148)을 실행할 것이다.
도 2를 참조하면, 일부 구현예에서, 소프트 수용기(200)는 점수화기(210) 및 활성화기(220)를 포함한다. 소프트 수용기(200)가 발화(20)에 대응하는 오디오 데이터(14)를 수신할 때, 점수화기(210)는 오디오 데이터(14)의 일부(예를 들어, 오디오 데이터(14)의 제1 오디오 세그먼트)에 대한 신뢰 점수(212)를 생성하도록 구성된다. 신뢰 점수(212)는 오디오 데이터(14)가 핫워드(24)의 존재를 포함할 가능성을 나타낸다. 일부 예에서, 점수화기(210)는 입력으로서 오디오 데이터(14)를 수신하고 출력으로서 오디오 데이터(14)의 일부가 핫워드(24)를 포함하는지 여부를 예측하는 확률을 생성하도록 트레이닝된 핫워드 검출기 모델(예를 들어, 신경망)에 대응한다. 이는, 도 2에 도시된 바와 같이, 오디오 데이터(14)가 핫워드(24)를 포함한다는 100% 신뢰도부터 오디오 데이터(14)가 핫워드(24)를 포함한다는 0% 신뢰도 범위의 신뢰도 기울기를 따라 개별 신뢰도 점수(212)가 존재한다는 것을 알 수 있다. 그러면 점수화기(210)는 이 기울기를 다른 결과 카테고리로 나눌 수 있다. 예를 들어, 도 2는 3개의 결과 카테고리, 즉 수용, 소프트 수용 및 거부를 갖는 점수화기(210)의 신뢰도 기울기를 도시한다. 여기서, 이들 결과 카테고리 각각은 신뢰도 임계값(214, 216)으로 나누어진다. 신뢰도 임계값(214, 216)은 하나의 결과 카테고리를 다른 결과 카테고리로부터 묘사하는 신뢰도 점수(212)를 지칭한다. 제1 신뢰도 임계값(214)은 핫워드(24)가 오디오 데이터(14)에 존재한다는 것을 점수화기(210)가 수용하는 때와 핫워드(24)가 오디오 데이터(14)에 존재하는 것을 점수화기(210)가 소프트 수용하는 때를 기술하는 신뢰 점수(212)를 지칭한다. 예를 들어, 오디오 데이터(14)의 오디오 세그먼트에 대한 신뢰도 점수(212)가 제1 신뢰도 임계값(214)보다 크면, 점수화기(210)는 오디오 데이터(14)를 스피치 프로세싱 시스템(150)에 전달하여 오디오 데이터(14)가 사용자 디바이스(110)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 여부를 결정한다. 오디오 데이터(14)가 액션(148)을 특정하는 쿼리(22)에 대응하는 경우, 소프트 수용기(200)는 신뢰 점수(212)가 제1 신뢰도 임계값(214)보다 크고 수용 결과 카테고리에 대응하는 신뢰도 점수(212)의 범위에 있기 때문에 액션(148)이 자동으로 수행되도록 한다.
반면에, 제2 신뢰도 임계값(216)은 핫워드(24)가 오디오 데이터(14)에 존재한다는 것을 점수화기(210)가 거부하는 때와 핫워드(24)가 오디오 데이터(14)에 존재하는 것을 점수화기(210)가 소프트 수용하는 때를 기술하는 신뢰 점수(212)를 지칭한다. 예를 들어, 오디오 데이터(14)의 오디오 세그먼트에 대한 신뢰 점수(212)가 제2 신뢰도 임계값(216)보다 작다면, 점수화기(210)는 이 신뢰도 점수(212)를 거부 결과 카테고리로 해석하기 때문에 즉 오디오 데이터(14)가 핫워드(24)의 존재를 포함할 가능성이 없다는 것을 의미하므로, 점수화기(210)는 오디오 데이터(14)를 스피치 프로세싱 시스템(150)에 전달하지 않는다. 따라서 제1 신뢰도 임계값(214) 및 제2 신뢰도 임계값(216)은 소프트 수용 결과 카테고리를 정의하는 신뢰도 점수 범위에 대한 상한 및 하한의 역할을 한다. 즉, 점수화기(210)가 신뢰도 점수(212)가 제1 신뢰도 임계값(214)과 제2 신뢰도 임계값(21) 사이에 있다고 결정할 때, 점수화기(210)는 오디오 데이터(14)가 소프트 핫워드 이벤트(202)를 나타낸다고 결정한다. 점수화기(210)는 신뢰 점수(212)가 제2 신뢰도 임계값(216)을 만족하고(예를 들어, 제2 신뢰도 임계값(216)을 초과함) 제1 신뢰도 임계값(214)을 만족하지 않을 때(예를 들어, 제1 신뢰도 임계값(214)을 초과하지 못하는 경우) 신뢰 점수(212)가 소프트 핫워드 이벤트(202)에 대응한다고 결정한다. 수용 결과 카테고리와 마찬가지로 소프트 신뢰도 이벤트(202)를 통해 점수화기(210)는 오디오 데이터(14)가 사용자 디바이스(10)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 여부를 결정하기 위해 스피치 프로세싱 시스템(150)에 오디오 데이터(14)를 전달한다.
선택적으로, 제1 신뢰도 임계값(214) 및 제2 신뢰도 임계값(216)은 본질적으로 동적일 수 있다. 예를 들어, 점수화기(210)는 디바이스(110)에 인접한 근처의 현재 음향에 기초하여 이러한 신뢰도 임계값(214, 216)을 조정한다. 예시를 위해, 사용자(10)는 대규모 칵테일 파티를 주최하고 있을 수 있다. 일반적으로, 소프트 수용 결과의 경계를 지시하는 제1 및 제2 신뢰도 임계값(214, 216)은 사용자 정의, 관리자 정의 또는 피드백 정의된다. 배경 소음이 큰 대규모 칵테일 파티의 상황에서는 의도한 핫워드(24) 및 쿼리(22)를 왜곡하는 주변 소음의 양이 증가하거나, 대응 쿼리(22)가 없는 소프트 핫워드 이벤트(202)를 유발하는 대화의 양이 증가할 수 있다. 이러한 상황으로 인해, 소프트 수용기(200)는 배경 음향을 고려하기 위해 신뢰도 임계값(214, 216)을 동적으로 조정하도록 구성될 수 있다. 예를 들어, 제1 신뢰도 임계값(214) 및 제2 신뢰도 임계값(216)은 더 큰 거부 결과 범위를 초래하도록 증가된다.
일부 예에서, 소프트 수용기(200)가 오디오 데이터(14)가 핫워드(24)의 존재를 포함한다는 것을 표시하는 스피치 프로세싱 시스템(150)에 오디오 데이터(14)를 전달하더라도, 스피치 프로세싱 시스템(150)(예를 들어, 스피치 해석기(154))은 그럼에도 불구하고 쿼리(22)가 오디오 데이터(14)에 존재하지 않는다는 것을 결정한다. 예를 들어, 도 1b-1d에 도시된 것과 반대로, 스피치 프로세싱 시스템(150)은 "I should definitely add the song ‘Hey Beautiful’ to my summer 2021 playlist"라는 발화(20)가 액션(148)을 포함하지 않는다고 결정할 수 있다. 이러한 상황에서, 스피치 프로세싱 시스템(150)은 액션(148)을 식별하지 않기 때문에, 소프트 수용기(200)는 그에 따라 알림(204)을 생성하지 않는다. 일반적으로 말하면, 소프트 수용기(200)는 오디오 데이터(14)가 액션(148)에 대응할 때 소프트 핫워드 이벤트(202)를 갖는 것을 선호할 수 있다. 이를 염두에 두고, 소프트 수용기(200)는 소프트 핫워드 이벤트(202)를 지정할 때 발생을 수집할 수 있지만, 스피치 프로세싱 시스템(150)은 소프트 핫워드 이벤트(202)에 대응하는 액션(148)을 식별하지 못한다. 수집된 발생은 피드백으로서 소프트 수용기(200)에 제공될 수 있다. 예를 들어, 각 발생은 핫워드 검출 모델을 업데이트하기 위한 트레이닝 예시가 된다. 일부 구성에서, 트레이닝 예시로 핫워드 검출 모델을 트레이닝하는 것은 제1 신뢰도 임계값(214) 또는 제2 신뢰도 임계값(216) 중 하나 이상을 조정한다. 이들 임계값(214, 216)을 조정함으로써, 소프트 수용기(200)는 소프트 수락 결과 카테고리에 대응하는 신뢰 점수(212)의 범위를 제한하거나 감소시키도록 구성될 수 있다.
음성 프로세싱 시스템(150)이 오디오 데이터(14)가 사용자 디바이스(110)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응한다고 결정하면, 스피치 프로세싱 시스템(150)은 액션(148)을 소프트 수용기(200)의 활성화기(220)에 전달한다. 액션(148)을 수신하면, 활성화기(220)는 액션(148)의 수행을 트리거하지 않고, 오히려 사용자 디바이스(110)의 사용자(10)에 대한 알림(204)을 생성한다. 알림(204)은 액션(148)의 수행을 트리거하거나 액션(148)의 수행을 방지하기 위해 일부 사용자 입력 표시(16)를 제공하도록 사용자(10)에게 프롬프트한다. 알림(204)은 다양한 형태로 발생할 수 있다. 일부 구현예에서, 알림(204)은 사용자 디바이스(110)의 디스플레이(118) 상에 표시되는 시각적 알림이다. 일부 예에서, 알림(204)은 부정적인 입력 표시(16N)와 긍정적인 입력 표시(16A) 모두를 허용하는 GUI 엘리먼트를 갖는 사용자 프롬프트이다. 예를 들어, 도 1c 및 도 1d는 사용자(10)에 의해 선택될 때 긍정적인 입력 표시(16A)를 나타내는 "예" 버튼과 사용자(10)에 의해 선택될 때 부정적인 입력 표시(16B)를 나타내는 "아니오" 버튼을 갖는 알림을 도시한다. 다른 구현예에서, 알림(204)은 디바이스(110)와 연관된 스피커로부터의 신호음 또는 차임(예를 들어, 비연속적인 신호음 또는 차임)과 같은 청각적 알림이다. 예를 들어, 사용자(10) 또는 디바이스 관리자는 소프트 수용기(200)에 고유한 음향을 설정한다. 고유한 소리이기 때문에 사용자(10)는 소리를 들으면 그것이 무엇을 의미하는지 알 수 있을 뿐만 아니라 필요한 경우 청각적 알림을 무시할 수도 있다.
알림(204)에 응답하여, 활성화기(220)는 사용자(10)에 의한 표시(16)가 알림(204)을 긍정적으로 확인하기 위한 긍정적인 입력 표시(16, 16A)에 대응하는지(즉, 액션(148)의 수행을 트리거링) 또는 사용자(10)가 사용자 디바이스(110)가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시(16, 16N)인지 여부를 결정하도록 구성된다. 일부 구성에서, 활성화기(220)가 긍정적인 입력 표시(16A)를 수신하면, 활성화기(220)는 활성화기(220)가 미리 결정된 기간 내에 긍정적인 입력 표시(16A)를 수신했는지 여부를 결정하도록 추가로 구성된다. 여기서, 미리 결정된 기간은 활성화기(220)가 알림(204)을 사용자 디바이스(110)에 전달할 때 시작하여 지정된 종료 시간(예를 들어, 20초)에 종료되는 시간 윈도우에 대응한다. 기간이 만료되면, 활성화기(220)는 알림(204)을 제거하고 및/또는 액션(148)을 삭제할 수 있다(예를 들어, 액션(148)을 초래한 음성 발화(20)와 같은 액션(148)과 연관된 임의의 다른 데이터와 함께). 이와 관련하여, 사용자(10)가 미리 결정된 기간 내에 긍정적인 입력 표시(16A)를 제공하지 않는 경우, 활성화기(220)는 액션(148)을 수행하지 않는다. 대조적으로, 활성화기(220)가 미리 결정된 기간 내에 긍정적인 입력 표시(16A)를 수신하는 경우, 활성화기(220)는 액션(148)이 발생하게 한다.
일부 구현예에서, 긍정적인 입력 표시(16A) 또는 부정적인 입력 표시(16N)는 사용자(10)로부터의 청각적 명령(예를 들어, 촉각적 입력이 아닌)이다. 이러한 구현예에서, 활성화기(220)가 사용자(10)로부터 스피치 입력을 수신할 때, 활성화기(220)는 스피치 입력이 사용자 디바이스(110)가 쿼리(22)에 의해 특정된 액션(148)을 수행하거나 수행하지 않으려는 의도를 나타내는 하나 이상의 용어를 포함하는지 여부를 결정한다. 알림(204)에 응답하여 청각적 명령의 수신을 돕기 위해, 활성화기(220)는 스피치 인식을 수행하지 않고 웜 워드 모델을 활성화할 수 있다. 여기서, 웜 워드 모델은 긍정적인 입력 표시(16A)를 나타내는 하나 이상의 하나 이상의 음성 용어 또는 부정적인 입력 표시(16N)를 나타내는 하나 이상의 다른 음성 용어 중 하나의 존재를 검출하도록 구성된다. 대안적으로, 활성화기(220)는 스피치 인식기(152)를 사용하여 청각적 명령의 수신을 프로세싱할 수 있다. 스피치 인식기(152)를 사용하는 경우, 스피치 인식기(152)는 축소된 기능으로 동작할 수 있다. 이러한 점에서, 축소된 기능은 긍정적인 입력 표시(16A)를 나타내는 하나 이상의 하나 이상의 음성 용어 또는 부정적인 입력 표시(16N)를 나타내는 하나 이상의 다른 음성 용어를 인식하기에 적어도 충분한 스피치 인식기(152)를 지칭한다.
도 3은 핫워드(24)를 소프트 수용하는 방법(300)의 예시적 동작 구성의 흐름도이다. 동작(302)에서, 방법(300)은 사용자 디바이스(110)에 의해 캡처된 스트리밍 오디오(12)에서 핫워드 검출기(200)에 의해 검출된 소프트 핫워드 이벤트(202)를 나타내는 오디오 데이터(14)를 수신한다. 동작(304)에서, 방법(300)은 오디오 데이터(14)를 프로세싱하여, 오디오 데이터(14)가 사용자 디바이스(110)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 결정한다. 사용자 디바이스(110)에서 액션(148)의 수행을 트리거하지 않고, 방법(300)은 동작(306)에서 두 개의 하위 동작(306, 306a-b)을 수행한다. 동작(306a)에서, 방법(300)은 사용자 디바이스로부터의 출력을 위한 알림(204)을 제공하며, 알림(204)은 사용자 디바이스와 연관된 사용자(10)에게 사용자 디바이스(110)에 대한 액션의 수행을 트리거하기 위해 긍정적인 입력 표시(16)를 제공하도록 프롬프트한다. 동작(306b)에서, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 경우, 방법(300)은 쿼리(22)에 의해 특정된 액션(148)을 수행하지 않도록 사용자 디바이스(110)에 지시한다.
도 4는 본 문서에 기술된 시스템(예: 어시스턴트 인터페이스(120), 스피치 프로세싱 시스템(150), 원격 시스템(140) 및 소프트 수용기(200)) 및 방법(예: 방법(300))을 구현하는데 사용될 수 있는 예시적 컴퓨팅 디바이스(400)의 개략도이다. 컴퓨팅 디바이스(400)는 랩톱, 데스크톱, 워크 스테이션, 개인 휴대 정보 단말기, 서버, 블레이드 서버, 메인 프레임 및 다른 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터들을 나타내기 위한 것이다. 여기에 도시된 컴포넌트들, 그들의 연결 및 관계, 및 그들의 기능은 단지 예시적인 것을 의미하며, 본 명세서에 기술된 및/또는 청구된 발명의 구현을 제한하는 것을 의미하지는 않는다.
컴퓨팅 디바이스(400)는 프로세서(410)(예: 데이터 프로세싱 하드웨어(112, 134)), 메모리(420)(예: 메모리 하드웨어(114, 136)), 저장 디바이스(430), 메모리(420) 및 고속 확장 포트(450)에 연결되는 고속 인터페이스/제어기(440) 및 저속 버스(470) 및 저장 디바이스(430)에 연결되는 저속 인터페이스/제어기(460)를 포함한다. 컴포넌트들(410, 420, 430, 440, 450 및 460) 각각은 다양한 버스들을 사용하여 상호 연결되고, 공통 마더 보드 상에 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(410)는 메모리(420) 또는 저장 디바이스(430)에 저장된 명령어들을 포함하는, 컴퓨팅 디바이스(400) 내에서 실행하기 위한 명령어들을 프로세싱하여, 고속 인터페이스(440)에 연결된 디스플레이(480)와 같은 외부 입/출력 디바이스상에 그래픽 사용자 인터페이스(GUI)에 대한 그래픽 정보를 디스플레이할 수 있다. 다른 구현예에서, 다수의 프로세서들 및/또는 다수의 버스들이 다수의 메모리들 및 다수의 유형의 메모리와 함께, 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 디바이스들(400)은 필요한 동작의 부분들을 제공하는 각 디바이스와 연결될 수 있다(예를 들어, 서버 뱅크, 블레이드 서버 그룹 또는 멀티 프로세서 시스템).
메모리(420)는 컴퓨팅 디바이스(400) 내에 비일시적으로 정보를 저장한다. 메모리(420)는 컴퓨터 판독가능 매체, 휘발성 메모리 유닛(들), 비휘발성 메모리 유닛(들)일 수 있다. 비일시적 메모리(420)는 컴퓨팅 디바이스(400)에 의해 사용하기 위해 일시적 또는 영구적으로 프로그램(예를 들어, 명령어 시퀀스) 또는 데이터(예를 들어, 프로그램 상태 정보)를 저장하는데 사용되는 물리적 디바이스일 수 있다. 비휘발성 메모리의 예는 플래시 메모리 및 읽기 전용 메모리(ROM)/프로그래밍 가능한 읽기 전용 메모리(PROM)/지울 수 있는 프로그램 가능한 읽기 전용 메모리(EPROM)/전자적으로 지울 수 있는 프로그래밍 가능한 읽기 전용 메모리(EEPROM)(예: 일반적으로 부팅 프로그램과 같은 펌웨어에 사용됨)를 포함하지만, 이에 한정되지 않는다. 휘발성 메모리의 예는 RAM(Random Access Memory), DRAM(Dynamic Random Access Memory), SRAM(Static Random Access Memory), PCM(Phase Change Memory), 디스크 또는 테이프 등을 포함하지만, 이에 한정되지 않는다.
저장 디바이스(430)는 컴퓨팅 디바이스(400)에 대한 대형 스토리지를 제공할 수 있다. 일부 구현예에서, 저장 디바이스(430)는 컴퓨터 판독가능 매체이다. 다양한 상이한 구현예에서, 저장 디바이스(430)는 플로피 디스크 디바이스, 하드 디스크 디바이스, 광 디스크 디바이스 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 디바이스, 또는 저장 영역 네트워크 또는 다른 구성의 디바이스를 포함하는 디바이스의 어레이일 수 있다. 일 구현예에서, 컴퓨터 프로그램 제품은 정보 캐리어에 유형적으로 수록된다. 컴퓨터 프로그램 제품은 또한 실행될 때 상기 기술된 바와 같은 하나 이상의 방법을 수행하는 명령어들을 포함한다. 정보 캐리어는 메모리(420), 저장 디바이스(430) 또는 프로세서(410)상의 메모리와 같은 컴퓨터 또는 기계 판독가능 매체이다.
고속 제어기(440)는 컴퓨팅 디바이스(400)에 대한 대역폭 집중 동작들을 관리하는 반면, 저속 제어기(460)는 낮은 대역폭 집중 동작들을 관리한다. 이러한 기능들의 할당은 단지 예시적인 것이다. 일부 구현예에서, 고속 제어기(440)는 메모리(420), 디스플레이(480)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(도시되지 않음)를 수용할 수 있는 고속 확장 포트(450)에 연결된다. 일부 구현예에서, 저속 제어기(460)는 저장 디바이스(430) 및 저속 확장 포트(490)에 연결된다. 다양한 통신 포트(예를 들어, USB, 블루투스, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 확장 포트(490)는 키보드, 포인팅 디바이스, 스캐너와 같은 하나 이상의 입력/출력 디바이스 또는 예를 들어 네트워크 어댑터를 통해 스위치 또는 라우터와 같은 네트워킹 디바이스에 결합될 수 있다.
컴퓨팅 디바이스(400)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 표준 서버(400a)로서 또는 그러한 서버(400a)의 그룹에서 여러 번, 랩톱 컴퓨터(400b)로서 또는 랙 서버 시스템(400c)의 일부로서 구현될 수 있다.
본 명세서에 기술된 시스템들 및 기법들의 다양한 구현예들은 디지털 전자 및/또는 광학 회로, 집적 회로, 특수하게 설계된 ASIC들(application specific integrated circuits), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 구현될 수 있다. 이들 다양한 구현예들은 적어도 하나의 프로그래머블 프로세서를 포함하는 프로그래머블 시스템 상에서 실행가능하고 및/또는 인터프리트가능한 하나 이상의 컴퓨터 프로그램들에서의 구현예를 포함할 수 있고, 이는 전용 또는 범용일 수 있고, 저장 시스템, 적어도 하나의 입력 디바이스 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령어들을 수신하고 그에 데이터 및 명령어들을 전송하기 위해 연결될 수 있다.
이들 컴퓨터 프로그램들(프로그램, 소프트웨어, 소프트웨어 애플리케이션 또는 코드로도 알려짐)은 프로그래머블 프로세서에 대한 기계 명령어들을 포함하며, 하이레벨 절차어 및/또는 객체 지향 프로그래밍 언어 및/또는 어셈블리/기계어에서 구현될 수 있다. 본 명세서에서 사용된 바와 같이, 용어 "기계 판독가능 매체", "컴퓨터 판독가능 매체"는 기계 판독가능 신호로서 기계 명령어들을 수신하는 기계 판독가능 매체를 포함하여, 기계 명령어들 및/또는 데이터를 프로그래머블 프로세서에 제공하는데 사용되는 임의의 컴퓨터 프로그램 물, 장치 및/또는 디바이스 예를 들어, 자기 디스크, 광학 디스크, 메모리, 비일시적 컴퓨터 판독가능 매체, 프로그래머블 로직 디바이스(PLD)를 지칭한다. 용어 "기계 판독가능 신호"는 기계 명령어들 및/또는 데이터를 프로그래머블 프로세서에 제공하는데 사용되는 임의의 신호를 지칭한다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 동작하고 출력을 생성함으로써 기능들을 수행하기 위해 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래머블 프로세서들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름들은 또한 FPGA 또는 ASIC와 같은 특수 목적 논리 회로에 의해 수행될 수 있다. 컴퓨터 프로그램의 실행에 적절한 프로세서들은, 예시로서, 범용 및 전용 마이크로프로세서들과 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 읽기-전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 엘리먼트들은 명령어들을 수행하기 위한 프로세서 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 일반적으로, 컴퓨터는 데이터를 저장하기 위한 하나 이상의 대형 저장 디바이스들 예를 들면, 자기적, 자기-광학 디스크들 또는 광학적 디스크들 또한 포함하거나 또는 그로부터 데이터를 수신하거나 그에 데이터를 전송하기 위해 동작적으로 결합될 수 있다. 그러나, 컴퓨터는 상기 디바이스들을 반드시 가져야 하는 것은 아니다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 컴퓨터 판독가능 매체는 예를 들어, EPROM, EEPROM 및 플래시 메모리 디바이스들과 같은 반도체 메모리 디바이스들; 예를 들어, 내부 하드 디스크들 또는 이동식 디스크들과 같은 자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 모든 형태의 비휘발성 메모리, 매체 및 메모리 디바이스들을 포함한다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 그 안에 통합될 수 있다.
사용자와의 인터렉션을 제공하기 위해, 본 개시의 하나 이상의 양태는 사용자에게 정보를 디스플레이하기 위해 예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터 또는 터치 스크린과 같은 디스플레이 디바이스 및 선택적으로 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스 예를 들어, 마우스 또는 트랙볼을 갖는 컴퓨터에서 구현될 수 있다. 다른 종류의 디바이스들도 사용자와의 인터렉션을 제공하는데 사용될 수 있다. 예를 들어, 사용자에게 제공되는 피드백은 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각적 피드백일 수 있고, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서를 송수신함으로써 예를 들어, 웹브라우저로부터 수신된 요청에 응답하여, 사용자의 사용자 디바이스상의 웹브라우저에 웹페이지를 전송함으로써 사용자와 인터렉션할 수 있다.
다수의 구현예들이 기술되었다. 그럼에도 불구하고, 다양한 수정들이 본 발명의 정신과 범위로부터 벗어나지 않고 이루어질 수 있다는 것이 이해될 것이다. 따라서, 다른 구현예들도 다음의 청구항들의 범위 내에 있다.

Claims (28)

  1. 데이터 프로세싱 하드웨어(410)에 의해 실행될 때 데이터 프로세싱 하드웨어(410)로 하여금 동작들을 수행하게 하는 컴퓨터로 구현되는 방법(300)으로서,
    사용자 디바이스(110)에 의해 캡처된 스트리밍 오디오(12)에서 핫워드 검출기(200)에 의해 검출된 소프트 핫워드 이벤트(202)를 나타내는 오디오 데이터(14)를 수신하는 동작;
    오디오 데이터(14)가 사용자 디바이스(110)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 결정하기 위해 오디오 데이터(14)를 프로세싱하는 동작; 및
    사용자 디바이스(110) 또는 다른 디바이스에서 액션(148)의 수행을 트리거하지 않고:
    사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작, 알림(204)은 사용자 디바이스(110)와 연관된 사용자(10)에게 사용자 디바이스(110) 또는 다른 디바이스에 대한 액션(148)의 수행을 트리거하기 위해 긍정적인 입력 표시(16)를 제공하도록 프롬프트하며; 및
    사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않는 경우, 사용자 디바이스(110) 또는 다른 디바이스에게 쿼리(22)에 의해 특정된 액션(148)을 수행하지 않도록 지시하는 동작을 포함하는, 방법.
  2. 청구항 1에 있어서, 핫워드 검출기(200)는 사용자 디바이스(110)에 상주하고, 신뢰 점수(212)가 사용자 디바이스(110)에 의해 캡처된 오디오 스트림이 핫워드(24)의 존재를 포함할 가능성이 제1 임계 점수(214)를 만족하고 제2 임계 점수(216)를 만족하지 않음을 나타내는 경우 소프트 핫워드 이벤트(202)를 검출하도록 구성되는, 방법.
  3. 청구항 1 또는 2에 있어서,
    사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 이후 미리 결정된 기간 내에 긍정적인 입력 표시(16)가 수신되는지 여부를 결정하는 동작; 및
    긍정적인 입력 표시(16)가 미리 결정된 기간 내에 수신되지 않은 경우 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 것으로 결정하는 동작을 더 포함하는, 방법.
  4. 청구항 1 내지 3 중 어느 한 항에 있어서,
    사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시(16N)를 수신하는 동작; 및
    부정적인 입력 표시(16N)를 수신한 것에 응답하여 사용자(110)가 긍정적인 입력 표시(16)를 제공하지 않았다고 결정하는 동작을 더 포함하는, 방법.
  5. 청구항 4에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)은 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시(16N)를 제공하도록 사용자(10)에게 프롬프트하는, 방법.
  6. 청구항 1 내지 5 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작은 사용자 디바이스(110)에서 실행되는 그래픽 사용자 인터페이스에 상기 알림(204)을 사용자 디바이스(110)의 화면(118)에 디스플레이하기 위한 시각적 알림으로서 렌더링하도록 지시하는 동작을 포함하는, 방법.
  7. 청구항 6에 있어서, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 경우, 사용자 디바이스(110)의 화면(118)에 디스플레이된 시각적 알림을 제거하도록 그래픽 사용자 인터페이스에 지시하는 동작을 더 포함하는 방법.
  8. 청구항 1 내지 7 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작은 상기 알림(204)을 사용자 디바이스(110)의 스피커(116)로부터의 청각적 알림으로서 출력하도록 사용자 디바이스(110)에 지시하는 동작을 포함하는, 방법.
  9. 청구항 1 내지 8 중 어느 한 항에 있어서,
    사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작; 및
    긍정적인 입력 표시(16)를 수신하는 것에 응답하여, 사용자 디바이스(110) 또는 다른 디바이스에서 쿼리(22)에 의해 특정된 액션(148)의 수행을 트리거하는 동작을 포함하는, 방법.
  10. 청구항 9에 있어서, 사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작은:
    사용자(10)로부터 스피치 입력을 수신하는 동작(10); 및
    상기 스피치 입력이 사용자 디바이스(110)가 쿼리(22)에 의해 특정된 액션(148)을 수행하려는 의도를 나타내는 하나 이상의 용어를 포함한다고 결정하는 동작을 포함하는, 방법.
  11. 청구항 9 또는 11에 있어서, 사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작은 사용자 디바이스(110)의 화면(118)에 디스플레이된 긍정적인 그래픽 엘리먼트의 선택을 나타내는 사용자 입력 표시를 수신하는 동작을 포함하는, 방법.
  12. 청구항 1 내지 11 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 후에, 스피치 인식을 수행하지 않고, 다음 중 적어도 하나의 존재를 검출하도록 구성된 웜워드(warm word) 모델을 활성화하는 동작을 더 포함하는, 방법:
    긍정적인 입력 표시(16)를 나타내는 하나 이상의 발화된 용어(16); 또는
    부정적인 입력 표시(16N)를 나타내는 하는 하나 이상의 다른 발화된 용어, 상기 부정적인 입력 표시(16N)는 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않음을 나타냄.
  13. 청구항 1 내지 12 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 후, 데이터 프로세싱 하드웨어(410)와 통신하는 자동 스피치 인식기(152)에 적어도 다음 중 하나를 인식하기에 충분한 축소된 기능으로 동작하도록 지시하는 동작을 더 포함하는, 방법:
    긍정적인 입력 표시(16)를 나타내는 하나 이상의 발화된 용어(16); 또는
    부정적인 입력 표시(16N)를 나타내는 하는 하나 이상의 다른 발화된 용어, 상기 부정적인 입력 표시(16N)는 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않음을 나타냄.
  14. 청구항 1 내지 13 중 어느 한 항에 있어서, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 경우, 수신된 오디오 세그먼트의 임의의 스토리지를 삭제하는 동작을 더 포함하는, 방법.
  15. 시스템(100)으로서,
    데이터 프로세싱 하드웨어(410); 및
    상기 데이터 프로세싱 하드웨어(410)와 통신하는 메모리 하드웨어(420)를 포함하며, 상기 메모리 하드웨어(420)는 상기 데이터 프로세싱 하드웨어(410)에 의해 실행될 때 상기 데이터 프로세싱 하드웨어(410)로 하여금 동작들을 수행하게 하는 명령어들을 저장하며, 상기 동작들은:
    사용자 디바이스(110)에 의해 캡처된 스트리밍 오디오(12)에서 핫워드 검출기(200)에 의해 검출된 소프트 핫워드 이벤트(202)를 나타내는 오디오 데이터(14)를 수신하는 동작;
    오디오 데이터(14)가 사용자 디바이스(110)에서 수행할 액션(148)을 특정하는 쿼리(22)에 대응하는지 결정하기 위해 오디오 데이터(14)를 프로세싱하는 동작; 및
    사용자 디바이스(110) 또는 다른 디바이스에서 액션(148)의 수행을 트리거하지 않고:
    사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작, 알림(204)은 사용자 디바이스(110)와 연관된 사용자(10)에게 사용자 디바이스(110) 또는 다른 디바이스에 대한 액션(148)의 수행을 트리거하기 위해 긍정적인 입력 표시(16)를 제공하도록 프롬프트하며; 및
    사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않는 경우, 사용자 디바이스(110) 또는 다른 디바이스에게 쿼리(22)에 의해 특정된 액션(148)을 수행하지 않도록 지시하는 동작을 포함하는, 시스템.
  16. 청구항 15에 있어서, 핫워드 검출기(200)는 사용자 디바이스(110)에 상주하고, 신뢰 점수(212)가 사용자 디바이스(110)에 의해 캡처된 오디오 스트림이 핫워드(24)의 존재를 포함할 가능성이 제1 임계 점수(214)를 만족하고 제2 임계 점수(216)를 만족하지 않음을 나타내는 경우 소프트 핫워드 이벤트(202)를 검출하도록 구성되는, 시스템.
  17. 청구항 15 또는 16에 있어서,
    사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 이후 미리 결정된 기간 내에 긍정적인 입력 표시(16)가 수신되는지 여부를 결정하는 동작; 및
    긍정적인 입력 표시(16)가 미리 결정된 기간 내에 수신되지 않은 경우 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 것으로 결정하는 동작을 더 포함하는, 시스템.
  18. 청구항 15 내지 17 중 어느 한 항에 있어서,
    사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시(16N)를 수신하는 동작; 및
    부정적인 입력 표시(16N)를 수신한 것에 응답하여 사용자(110)가 긍정적인 입력 표시(16)를 제공하지 않았다고 결정하는 동작을 더 포함하는, 시스템.
  19. 청구항 18에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)은 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않는다는 것을 나타내는 부정적인 입력 표시(16N)를 제공하도록 사용자(10)에게 프롬프트하는, 시스템.
  20. 청구항 15 내지 19 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작은 사용자 디바이스(110)에서 실행되는 그래픽 사용자 인터페이스에 상기 알림(204)을 사용자 디바이스(110)의 화면(118)에 디스플레이하기 위한 시각적 알림으로서 렌더링하도록 지시하는 동작을 포함하는, 시스템.
  21. 청구항 20에 있어서, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 경우, 사용자 디바이스(110)의 화면(118)에 디스플레이된 시각적 알림을 제거하도록 그래픽 사용자 인터페이스에 지시하는 동작을 더 포함하는 시스템.
  22. 청구항 15 내지 21 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공하는 동작은 상기 알림(204)을 사용자 디바이스(110)의 스피커(116)로부터의 청각적 알림으로서 출력하도록 사용자 디바이스(110)에 지시하는 동작을 포함하는, 시스템.
  23. 청구항 15 내지 22 중 어느 한 항에 있어서,
    사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작; 및
    긍정적인 입력 표시(16)를 수신하는 것에 응답하여, 사용자 디바이스(110) 또는 다른 디바이스에서 쿼리(22)에 의해 특정된 액션(148)의 수행을 트리거하는 동작을 포함하는, 시스템.
  24. 청구항 23에 있어서, 사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작은:
    사용자(10)로부터 스피치 입력을 수신하는 동작(10); 및
    상기 스피치 입력이 사용자 디바이스(110)가 쿼리(22)에 의해 특정된 액션(148)을 수행하려는 의도를 나타내는 하나 이상의 용어를 포함한다고 결정하는 동작을 포함하는, 시스템.
  25. 청구항 23 또는 24에 있어서, 사용자(10)로부터 긍정적인 입력 표시(16)를 수신하는 동작은 사용자 디바이스(110)의 화면(118)에 디스플레이된 긍정적인 그래픽 엘리먼트의 선택을 나타내는 사용자 입력 표시를 수신하는 동작을 포함하는, 시스템.
  26. 청구항 15 내지 25 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 후에, 스피치 인식을 수행하지 않고, 다음 중 적어도 하나의 존재를 검출하도록 구성된 웜워드(warm word) 모델을 활성화하는 동작을 더 포함하는, 시스템:
    긍정적인 입력 표시(16)를 나타내는 하나 이상의 발화된 용어(16); 또는
    부정적인 입력 표시(16N)를 나타내는 하는 하나 이상의 다른 발화된 용어, 상기 부정적인 입력 표시(16N)는 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않음을 나타냄.
  27. 청구항 15 내지 26 중 어느 한 항에 있어서, 사용자 디바이스(110)로부터의 출력을 위한 알림(204)을 제공한 후, 데이터 프로세싱 하드웨어(410)와 통신하는 자동 스피치 인식기(152)에 적어도 다음 중 하나를 인식하기에 충분한 축소된 기능으로 동작하도록 지시하는 동작을 더 포함하는, 시스템:
    긍정적인 입력 표시(16)를 나타내는 하나 이상의 발화된 용어(16); 또는
    부정적인 입력 표시(16N)를 나타내는 하는 하나 이상의 다른 발화된 용어, 상기 부정적인 입력 표시(16N)는 사용자(10)가 사용자 디바이스(110) 또는 다른 디바이스가 쿼리(22)에 의해 특정된 액션(148)을 수행하는 것을 원하지 않음을 나타냄.
  28. 청구항 15 내지 27 중 어느 한 항에 있어서, 사용자(10)가 긍정적인 입력 표시(16)를 제공하지 않은 경우, 수신된 오디오 세그먼트의 임의의 스토리지를 삭제하는 동작을 더 포함하는, 시스템.

KR1020247004678A 2021-07-14 2022-07-01 소프트 핫워드로 자동 스피치 인식 KR20240033006A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/305,806 US20230019737A1 (en) 2021-07-14 2021-07-14 Hotwording by Degree
US17/305,806 2021-07-14
PCT/US2022/073345 WO2023288168A1 (en) 2021-07-14 2022-07-01 Automatic speech recognition with soft hotwords

Publications (1)

Publication Number Publication Date
KR20240033006A true KR20240033006A (ko) 2024-03-12

Family

ID=82839290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247004678A KR20240033006A (ko) 2021-07-14 2022-07-01 소프트 핫워드로 자동 스피치 인식

Country Status (5)

Country Link
US (1) US20230019737A1 (ko)
EP (1) EP4356371A1 (ko)
KR (1) KR20240033006A (ko)
CN (1) CN117999603A (ko)
WO (1) WO2023288168A1 (ko)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120089392A1 (en) * 2010-10-07 2012-04-12 Microsoft Corporation Speech recognition user interface
EP2707872A2 (en) * 2011-05-12 2014-03-19 Johnson Controls Technology Company Adaptive voice recognition systems and methods
US9620115B2 (en) * 2013-01-03 2017-04-11 Telenav, Inc. Content delivery system with barge-in mechanism and method of operation thereof
US9922642B2 (en) * 2013-03-15 2018-03-20 Apple Inc. Training an at least partial voice command system
WO2015116151A1 (en) * 2014-01-31 2015-08-06 Hewlett-Packard Development Company, L.P. Voice input command
US9354687B2 (en) * 2014-09-11 2016-05-31 Nuance Communications, Inc. Methods and apparatus for unsupervised wakeup with time-correlated acoustic events
US9335966B2 (en) * 2014-09-11 2016-05-10 Nuance Communications, Inc. Methods and apparatus for unsupervised wakeup
US10311876B2 (en) * 2017-02-14 2019-06-04 Google Llc Server side hotwording
US11176960B2 (en) * 2018-06-18 2021-11-16 University Of Florida Research Foundation, Incorporated Method and apparatus for differentiating between human and electronic speaker for voice interface security
EP3807875B1 (en) * 2018-08-09 2023-11-01 Google LLC Hotword recognition and passive assistance
US10950223B2 (en) * 2018-08-20 2021-03-16 Accenture Global Solutions Limited System and method for analyzing partial utterances
KR20200066933A (ko) * 2018-12-03 2020-06-11 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
US10861446B2 (en) * 2018-12-10 2020-12-08 Amazon Technologies, Inc. Generating input alternatives
KR20190114932A (ko) * 2019-09-19 2019-10-10 엘지전자 주식회사 액션 아이템 제안 장치 및 방법
US20210158803A1 (en) * 2019-11-21 2021-05-27 Lenovo (Singapore) Pte. Ltd. Determining wake word strength
DE102022203459A1 (de) * 2022-04-06 2023-10-12 Brose Fahrzeugteile Se & Co. Kommanditgesellschaft, Bamberg Baugruppe eines Fahrzeugs mit einem an einer Fahrzeugtür angeordneten Bedienelement

Also Published As

Publication number Publication date
CN117999603A (zh) 2024-05-07
US20230019737A1 (en) 2023-01-19
EP4356371A1 (en) 2024-04-24
WO2023288168A1 (en) 2023-01-19

Similar Documents

Publication Publication Date Title
US10796702B2 (en) Method and system for controlling home assistant devices
US11430442B2 (en) Contextual hotwords
EP3321928B1 (en) Operation of a virtual assistant on an electronic device
KR102393876B1 (ko) 클라이언트-컴퓨팅된 콘텐츠 메타데이터에 기반한 음성 질의 QoS
WO2021162675A1 (en) Synthesized speech audio data generated on behalf of human participant in conversation
KR20230020523A (ko) 자동 핫워드 임계치 튜닝
US20230298575A1 (en) Freeze Words
KR20210028688A (ko) 핫워드 인식 및 수동 어시스턴스
KR20240033006A (ko) 소프트 핫워드로 자동 스피치 인식
US11557278B2 (en) Speaker dependent follow up actions and warm words
JP2023553994A (ja) ホットワード特性に基づいた自動音声認識パラメータの適応
US20240161741A1 (en) Short-Lived Repeat Voice Commands
US20230186909A1 (en) Selecting between multiple automated assistants based on invocation properties
US11442608B1 (en) Preserving engagement state based on contextual signals
US20240161740A1 (en) Multi-Assistant Warm Words
WO2023113877A1 (en) Selecting between multiple automated assistants based on invocation properties