KR102109876B1 - Privacy-preserving training corpus selection - Google Patents

Privacy-preserving training corpus selection Download PDF

Info

Publication number
KR102109876B1
KR102109876B1 KR1020197017008A KR20197017008A KR102109876B1 KR 102109876 B1 KR102109876 B1 KR 102109876B1 KR 1020197017008 A KR1020197017008 A KR 1020197017008A KR 20197017008 A KR20197017008 A KR 20197017008A KR 102109876 B1 KR102109876 B1 KR 102109876B1
Authority
KR
South Korea
Prior art keywords
data
audio data
automatic speech
important
specific audio
Prior art date
Application number
KR1020197017008A
Other languages
Korean (ko)
Other versions
KR20190071010A (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 KR20190071010A publication Critical patent/KR20190071010A/en
Application granted granted Critical
Publication of KR102109876B1 publication Critical patent/KR102109876B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2111Location-sensitive, e.g. geographical location, GPS
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0635Training updating or merging of old and new templates; Mean values; Weighting
    • G10L2015/0636Threshold criteria for the updating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Bioethics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 음성 인식 시스템을 트레이닝하는 것에 관한 것이다. 시스템은 자동 음성 인식기를 포함하고 클라이언트 장치로부터 데이터를 수신한다. 시스템은 수신된 데이터의 적어도 일부가 중요 데이터라고 결정한다. 상기 수신된 데이터의 적어도 일부가 삭제되기 전에, 시스템은 자동 음성 인식기를 위한 인식 모델을 트레이닝하는 모델 트레이닝 엔진에 상기 수신된 데이터의 적어도 일부를 제공한다. 상기 수신된 데이터의 적어도 일부가 제공된 후에, 시스템은 수신된 데이터의 적어도 일부를 삭제한다.The present invention relates to training a speech recognition system. The system includes an automatic speech recognizer and receives data from the client device. The system determines that at least a portion of the received data is important data. Before at least a portion of the received data is deleted, the system provides at least a portion of the received data to a model training engine that trains a recognition model for an automatic speech recognizer. After at least a portion of the received data is provided, the system deletes at least a portion of the received data.

Figure R1020197017008
Figure R1020197017008

Description

개인정보 보호 트레이닝 코퍼스 선택{PRIVACY-PRESERVING TRAINING CORPUS SELECTION}Personal Information Protection Training Corpus Selection {PRIVACY-PRESERVING TRAINING CORPUS SELECTION}

이 명세서는 일반적으로 자동 음성 인식에 관한 것이다.This specification generally relates to automatic speech recognition.

음성 인식은 인간이 말한 워드들의 전사(transcription of words)에 관한 것이다. 음성 인식을 수행함에 있어서, 음향 및 언어 모델은 자동 음성 인식(ASR) 엔진에 의해 사용되어, 발화자에 의해 발화된 단어들을 반영하는 하나 이상의 가능한 전사를 생성하기 위해 인코딩된 발언을 통계적으로 분석한다.Speech recognition is about the transcription of words spoken by humans. In performing speech recognition, acoustic and language models are used by an automatic speech recognition (ASR) engine to statistically analyze the encoded speech to generate one or more possible transcriptions that reflect the words spoken by the speaker.

일 구현 예에 따르면, 본 명세서는 사용자가 인식 시스템, 예를 들어 사용자가 자동 음성 인식기에 제출하는 데이터 중에서 중요 정보(sensitive information)를 식별함과 아울러, 상기 중요 정보가 삭제되기 전에 상기 인식 시스템의 후속적인 반복(subsequent iterations)에 의해 사용되는 인식기 모델, 예를 들어 광학 인식 모델, 음향 모델 또는 언어 모델을 트레이닝하기 위해 상기 정보를 이용하는 프로세스를 기술한다. 그렇게 하는데 있어서, 인식 시스템의 추가적인 반복은 중요 정보의 수집 및 저장에 관한 모든 적절한 데이터 개인정보 보호 정책을 준수하면서, 유사한 중요 정보가 포함된 제출된 데이터를 정확히 인식할 수 있다.According to an implementation example, the present specification identifies sensitive information among data that a user submits to a recognition system, for example, an automatic voice recognizer, and also allows the user to recognize the sensitive information before the sensitive information is deleted. Describes the process of using this information to train a recognizer model used by subsequent iterations, for example an optical recognition model, acoustic model or language model. In doing so, additional iterations of the recognition system can accurately recognize submitted data containing similar sensitive information, while complying with all appropriate data privacy policies regarding the collection and storage of sensitive information.

일부 양상들에서, 본 명세서에 기술된 발명은 자동 음성 인식기를 포함하는 시스템에 의해 클라이언트 장치로부터 데이터를 수신하는 동작 및 수신된 데이터의 적어도 일부가 중요 데이터일 가능성이 있다고 결정하는 동작을 포함하며, 상기 중요 정보는 클라이언트 장치들로부터 수신되는 데이터의 로그에 저장되지 않고 상기 시스템에 의해 삭제되거나 혹은 상기 시스템에 의해 미리 결정된 수신기간 내에 삭제되는 데이터이다. 추가적인 동작들은 수신된 데이터의 적어도 일부가 삭제되기 전, 수신된 데이터의 적어도 일부를 자동 음성 인식기를 위한 인식 모델들을 트레이닝하는 모델 트레이닝 엔진에 제공하는 동작을 포함할 수 있다. 추가적인 동작들은 수신된 데이터의 적어도 일부가 제공된 후, 수신된 데이터의 적어도 일부를 삭제하는 동작을 포함할 수 있다.In some aspects, the invention described herein includes receiving data from a client device by a system comprising an automatic speech recognizer and determining that at least a portion of the received data is likely to be sensitive data, The important information is data that is not stored in a log of data received from client devices, but is deleted by the system or within a predetermined receiver between the systems. Additional operations may include providing at least a portion of the received data to a model training engine that trains recognition models for the automatic speech recognizer before at least a portion of the received data is deleted. Additional operations may include deleting at least a portion of the received data after at least a portion of the received data is provided.

다른 버전들은 대응하는 시스템, 장치, 및 컴퓨터 스토리지 장치들에 인코딩된 상기 방법들의 동작들을 수행하도록 구성된 컴퓨터 프로그램을 포함한다.Other versions include a computer program configured to perform operations of the above methods encoded on a corresponding system, apparatus, and computer storage devices.

이들 및 다른 버전들은 각각 다음 특징들 중 하나 이상을 옵션에 따라 포함할 수 있다. 예를 들어, 일부 구현 예들에서, 수신된 데이터는 오디오 데이터, 전사 데이터 및 컨텍스트 메타데이터(contextual metadata) 중 하나 이상을 포함한다. 어떤 양상들에서, 미리 결정된 기간은 디폴트 기간보다 짧으며, 이 기간 후, 중요할 것 같지 않다고 결정된 데이터는 삭제된다. Each of these and other versions may optionally include one or more of the following features. For example, in some implementations, the received data includes one or more of audio data, transcription data, and contextual metadata. In some aspects, the predetermined period is shorter than the default period, and after this period, data determined to be unlikely to be important is deleted.

일부 양상들에서, 동작들은 수신된 데이터의 적어도 일부가 중요 데이터일 가능성이 있다고 결정하는 동작을 포함하며, 이 동작은 수신된 데이터의 적어도 일부를 복수의 분류기(classifier)들 - 이들 각각은 서로 다른 유형의 중요 데이터와 관련된다 - 에 제공하는 동작과, 특정 유형의 중요 데이터와 관련된 특정 분류기로부터, 상기 수신된 데이터의 적어도 일부는 상기 특정 유형의 중요 데이터와 상기 신뢰 임계치 이상으로 관련되는 것으로서 나타내는 표시를 수신하는 동작을 포함한다. 일부 구현 예들에서, 중요 데이터의 각 유형은 삭제를 위한 미리 결정된 관련 기간을 갖는다.In some aspects, the operations include determining that at least a portion of the received data is likely to be sensitive, the operation comprising at least a portion of the received data in a plurality of classifiers-each of which is different Associated with a type of sensitive data-an indication provided as an operation provided to and from a specific classifier associated with a specific type of important data, at least a portion of the received data is associated with the specific type of important data above the confidence threshold It includes the operation of receiving. In some implementations, each type of sensitive data has a predetermined associated period for deletion.

일부 양상들에서, 동작들은 수신된 데이터의 적어도 일부분을 익명화(anonymizing)하는 동작과, 클라이언트 장치들로부터 수신되는 데이터의 로그에 상기 익명화된 데이터를 저장하는 동작을 포함한다. 일부 양상들에서, 동작들은 상기 모델 트레이닝 엔진으로부터 업데이트된 인식 모델을 수신하는 동작과, 상기 업데이트된 인식 모델을 상기 자동 음성 인식기에 제공하는 동작과, 그리고 상기 업데이트된 인식 모델을 사용하여 후속적으로 수신된 오디오 데이터를 인식하는 동작을 포함한다.In some aspects, the operations include anonymizing at least a portion of the received data, and storing the anonymized data in a log of data received from client devices. In some aspects, operations include receiving an updated recognition model from the model training engine, providing the updated recognition model to the automatic speech recognizer, and subsequently using the updated recognition model. And recognizing the received audio data.

일부 구현 예들에서, 중요 데이터는 연락처 정보, 배경 오디오 데이터, 개인 식별 정보, 미리 결정된 전사 키워드들 및 지리적 좌표들 중 하나 이상을 포함한다.In some implementations, the important data includes one or more of contact information, background audio data, personal identification information, predetermined transcription keywords and geographic coordinates.

장점적인 구현 예들은 다음 특징 중 하나 이상을 포함할 수 있다. 예컨대, 음성 인식 모델들이 적용되는 새로운 전화, 새로운 잡음 조건 또는 새로운 악센트 등 일부 정적(static)인 발언 또는 데이터 세트가 있음을 가정하는 대신에, 상기 기술된 음성 인식 기법들은 항상 음성 기록들이 상기 로그들 내로 들어올 때 연속적인 루프로 트레이닝 될 수 있다. 이는 발언들을 정확하게 인식하는데 필요한 어떤 음성 발언들 및/또는 컨텍스트 정보가 로깅 가능하지 않고 그리고 예컨대, 초, 분, 하루 등 내에서 신속하게 시스템들로부터 제거되어야 함을 필요로 하는 난제에 대처할 수 있게 한다. 여기에 기술된 기법들을 통해, 상기 모델 트레이닝은 분산 백프로퍼게이션 신경망 트레이닝 구현(distributed backpropagation neural network training implementation)을 따를 수 있다. 선택 및 전사 알고리즘들은 프로덕션 설정(production setup)에 통합될 수 있으며, 데이터 포인트들이 로그에 도착할 때 이 데이터 포인트들은 실시간으로 트레이닝 서버들 내로 피드될 수 있다. 기술된 기법은 잠재적으로 대규모 음성 인식 시스템들로 하여금, 까다로운 법적 환경들이 로깅이 최소로 유지되어야함을 지시(dictation)하거나, 또는 로그들이 임시 스토리지(ephemeral storage)에서 구현되어야하는 시장들(markets)에서 더 성공적으로 동작할 수 있게 할 수 있다. Advantageous implementations may include one or more of the following features. For example, instead of assuming that there is some static speech or data set, such as a new phone to which speech recognition models are applied, a new noise condition or a new accent, the speech recognition techniques described above always allow speech records to be recorded in the logs. When entering, it can be trained in a continuous loop. This makes it possible to cope with the challenge of requiring that any speech remarks and / or contextual information needed to accurately recognize the remarks is not logable and must be removed from the systems quickly, eg within seconds, minutes, days, etc. . Through the techniques described herein, the model training can follow a distributed backpropagation neural network training implementation. Selection and transcription algorithms can be integrated into the production setup, and when data points arrive in the log, they can be fed into training servers in real time. The described technique potentially allows large-scale speech recognition systems to dictate that demanding legal environments should keep logging to a minimum, or markets where logs must be implemented in ephemeral storage. Can make it work more successfully.

본 명세서에서 기술된 발명의 하나 이상의 구현들의 세부 사항이 첨부 도면 및 이하의 상세한 설명에 제출된다. 발명의 다른 잠재적 특징, 양상 및 장점들이 상세한 설명, 도면 및 특허청구 범위로부터 명백해질 것이다.Details of one or more implementations of the invention described herein are submitted in the accompanying drawings and the description below. Other potential features, aspects and advantages of the invention will become apparent from the detailed description, drawings and claims.

도 1은 예시적인 음성 인식 시스템의 다이어그램이다.
도 2는 음성 인식기를 트레이닝하기 위한 예시적인 프로세스를 나타내는 흐름도이다.
도 3은 예시적인 개인정보 보호 음성 인식 시스템의 다이어그램이다.
도 4는 여기에 설명된 기법들을 구현하는데 사용될 수 있는 컴퓨팅 장치 및 모바일 컴퓨팅 장치의 예를 도시한 것이다.
다양한 도면에서 동일한 참조 번호 및 명칭은 동일한 요소를 나타낸다.
1 is a diagram of an exemplary speech recognition system.
2 is a flow diagram illustrating an exemplary process for training a speech recognizer.
3 is a diagram of an exemplary personal information protection speech recognition system.
4 shows an example of a computing device and a mobile computing device that can be used to implement the techniques described herein.
The same reference numbers and names in the various drawings indicate the same elements.

음성 인식을 위한 음향 모델들의 트레이닝에는 상당한 연산 자원들, 예컨대, 수백 또는 수천 개의 머신들을 소비하는 알고리즘을 수반할 수 있으며, 양호한 품질을 달성하기 위해 매우 긴 시간, 예를 들어 일주일 또는 그 이상이 걸릴 수 있다. 일부 트레이닝 접근 방식들에서는 음성 데이터의 오디오 레코딩들이 항상 저장할 수 있다고 가정하는데, 이는 사용자 개인정보 제한으로 인한 경우는 아닐 수도 있다. 개인정보 보호에 중요한 프로덕션 환경에서, 음성 데이터는 때때로 로깅될 수 없거나 혹은 짧은 기간 동안만 로깅될 수 있다. 때때로, 발언를 정확하게 전사하기 위해 필요한 추가적인 컨텍스트 정보는 로깅될 수 없다.Training of acoustic models for speech recognition can involve algorithms that consume significant computational resources, such as hundreds or thousands of machines, and it will take a very long time to achieve good quality, for example a week or more. Can be. Some training approaches assume that audio recordings of voice data can always be stored, which may not be due to user privacy restrictions. In a production environment where privacy is important, voice data may or may not be logged from time to time. Occasionally, additional contextual information needed to accurately transcribe a utterance cannot be logged.

일 예로서, "John에게 텍스트 메시지 보내기"와 같은 음성 동작들에 대한 연락처 인식(contacts recognition)은 인식이 완료될 때 사용자의 연락처가 음성 인식기에 알려져야만 함을 요구할 수 있다. 이 정보는 프로덕션 쿼리가 들어올 때, 그러나 사용자의 연락처 데이터베이스를 저장하는 것이 다양한 개인정보 보호(privacy implications)를 가질 때, 액세스할 수 있다. 이러한 컨텍스트 정보는 때때로 큰 음성 인식 품질 향상을 가능하게 할 수 있다. 따라서 모든 법적 및 보안 기준을 만족시키면서 음성 인식 및 분석 환경 내에서 그러한 정보를 다루기 위해 그러한 비-로깅(non-logged) 컨텍스트 정보를 사용하는 것이 바람직하다. 따라서, 음성 인식 및 분석 환경 내에서 이러한 데이터가 어떻게 다루어지고, 저장되고 또는 처리되는지에 대한 하나 이상의 제한을 받는 중요 데이터에 대해 고품질 음성 인식을 제공하기 위한 개선된 기법, 시스템 및 방법에 대한 필요성이 존재한다.As an example, contacts recognition for voice actions such as "send text message to John" may require that the user's contact must be known to the voice recognizer when recognition is complete. This information can be accessed when a production query comes in, but when storing a user's contact database has a variety of privacy implications. Such contextual information can sometimes enable large speech recognition quality enhancements. Therefore, it is desirable to use such non-logged context information to handle such information within a speech recognition and analysis environment while satisfying all legal and security standards. Accordingly, there is a need for improved techniques, systems and methods to provide high quality speech recognition for sensitive data subject to one or more limitations on how such data is handled, stored or processed within a speech recognition and analysis environment. exist.

따라서, 본 발명은 자동 음성 인식을 위한 음향 모델을 트레이닝하는데 있어서 중요 데이터를 사용하기 위한 기법들을 기술한다. 예를 들어, 중요 데이터는 클라이언트 장치들로부터 수신된 데이터의 로그에 저장되지 않고 시스템에 의해 삭제되는 데이터 일 수 있다. 또 다른 예로서, 중요 데이터는 시스템에 의해 미리 결정된 수신기간 내에 삭제되는 데이터일 수 있다. 이 기법들은 음성 인식 중에 중요 데이터를 식별하는 것을 포함한다. 식별된 중요 데이터가 삭제되기 전에, 이 데이터는 자동 음성 인식기를 트레이닝하는데 사용될 수 있다. 중요 데이터는 예를 들어, 데이터의 오디오 콘텐츠 내의 중요 정보 또는 오디오 콘텐츠의 컨텍스트와 관련된 중요 정보를 포함할 수 있다.Accordingly, the present invention describes techniques for using important data in training an acoustic model for automatic speech recognition. For example, important data may be data that is deleted by the system without being stored in a log of data received from client devices. As another example, the important data may be data that is deleted between receivers predetermined by the system. These techniques include identifying important data during speech recognition. Before the identified important data is deleted, this data can be used to train the automatic speech recognizer. The sensitive data may include, for example, important information in the audio content of the data or important information related to the context of the audio content.

도 1은 예시적인 음성 인식 시스템(100)의 다이어그램이다. 사용자(102)는 인식 및 전사를 위해 음성 처리 시스템(106)에 발언(104)을 제출한다. 이 예에서, 사용자(102)에 의해 제출된 발언(104)은 어구 "Bob Smith 입니다. 나의 신용카드 번호는 01-234 입니다". 사용자(102)는 컴퓨팅 장치(112), 예를 들어 모바일 컴퓨팅 장치, 태블릿 컴퓨터, 착용식 컴퓨터, 전자 책 판독기, 데스크톱 컴퓨터, 랩톱 컴퓨터 등에 발언(104)을 한다. 컴퓨팅 장치(112)는, 예를 들어, 음성 인식 입력을 갖는 텍스트 편집기, 자유 형식(free-form)의 음성 입력을 갖는 검색 바, 또는 임의의 다른 적절한 프로그램을 실행할 수 있다. 컴퓨팅 장치(112)는 음성 데이터 아이템(108a) (예를 들어, 파형의 데이터 파일, 오디오 파일, 발언(104)을 인코딩하는 다른 데이터 유형)을 포함하는 음성 인식 요청(107)을 생성할 수 있다.1 is a diagram of an exemplary speech recognition system 100. User 102 submits speech 104 to speech processing system 106 for recognition and transcription. In this example, utterance 104 submitted by user 102 is the phrase “Bob Smith. My credit card number is 01-234”. User 102 speaks 104 to computing device 112, such as a mobile computing device, tablet computer, wearable computer, e-book reader, desktop computer, laptop computer, and the like. Computing device 112 may, for example, execute a text editor with speech recognition input, a search bar with free-form speech input, or any other suitable program. Computing device 112 may generate a speech recognition request 107 that includes a speech data item 108a (eg, a waveform data file, an audio file, or other data type encoding speech 104). .

음성 인식 요청(107)은 또한 컨텍스트 데이터(108b)를 포함할 수 있다. 컨텍스트 데이터(108b)는 예를 들어, 발언(104) 동안 사용자(102)가 액세스하고 있었던 애플리케이션 또는 웹 페이지와 관련된 정보, 사용자(102)의 지리적 좌표, 사용자 (102)의 연락처 리스트와 관련된 정보와 같은 그러한 컨텍스트 정보 또는 기타 컨텍스트 정보를 포함할 수 있다. 컨텍스트 데이터(108b)의 다른 예들은 요청(107) 메타 데이터, 사용자 (102)의 생체 특성 (예컨대 성별, 연령, 악센트 또는 기타 특성), 노이즈 상태들, 사용자(102)의 거주 국가/거주 지역, 및 대화 상태를 포함한다. 몇몇 경우들에서, 음성 인식 요청(107)은 중요 데이터를 포함할 수 있다. 컴퓨팅 장치(112)는 요청(107)을 음성 처리 시스템(106)에 전송할 수 있다.The speech recognition request 107 may also include context data 108b. The context data 108b may include, for example, information related to the application or web page that the user 102 was accessing during the speech 104, geographic coordinates of the user 102, information related to the contact list of the user 102, and the like. The same may include such contextual information or other contextual information. Other examples of context data 108b include request 107 metadata, user 102 biological characteristics (eg, gender, age, accent or other characteristics), noise conditions, user 102's country of residence / region of residence, And a conversation state. In some cases, the speech recognition request 107 may include sensitive data. Computing device 112 may send request 107 to voice processing system 106.

음성 처리 시스템(106)은 발언(104)과 관련된 음성 인식 요청(107)을 수신하고, 요청(107)을 분석하고, 발언(104)의 텍스트 전사(110)를 생성하는 시스템이다. 일반적으로, 텍스트 전사(110)는 요청(107)의 발언의 콘텐츠들에 대한 음성 인식기의 상위 가설(top hypothesis)을 나타내는 문자 스트링 또는 다른 텍스트 표현을 포함할 수 있다. 전사(110)는 컴퓨팅 장치(112) 또는 다른 시스템 또는 프로그램에 전송될 수 있다. 음성 처리 시스템(106)은 실시간 또는 거의 실시간 (예를 들어, 수십 밀리 초, 수백 밀리 초 또는 다른 시간 구간(duration of time)에서 사용자(102)에게 전사(110)를 전송할 수 있다.The speech processing system 106 is a system that receives a speech recognition request 107 associated with the speech 104, analyzes the request 107, and generates a text transcription 110 of the speech 104. In general, the text transcription 110 may include a character string or other textual representation representing the top hypothesis of the speech recognizer for the content of the remarks of the request 107. The transcription 110 can be transmitted to the computing device 112 or other system or program. The voice processing system 106 may transmit the transcription 110 to the user 102 in real time or near real time (eg, tens of milliseconds, hundreds of milliseconds, or other duration of time).

일반적으로, 음성 처리 시스템(106)과 같은 그러한 시스템은 대규모 사용자 기반으로 사용자들로부터 음성 인식 요청(107)을 수신할 수 있다. 음성 인식 시스템은 각각의 요청(107)에 응답하여, 이 요청(107)하에서 음성 인식기에 의해 실행되는 하나 이상의 인식 프로세스의 텍스트 결과(110)를 생성할 수 있다. 비록 명료성을 위해 단일 사용자(102)가 도시되어 있지만, 음성 인식기는 훨씬 더 많은 수의 사용자들, 예를 들어, 수만 명으로부터 요청(107)들을 수신하고 수신된 요청(107)들의 일부 또는 전부를 병렬로 처리하여, 다른 요청들(107)이 수신 및 처리되는 동안 각 사용자에게 텍스트 결과(110)를 제공할 수 있다. In general, such a system, such as speech processing system 106, may receive a speech recognition request 107 from users on a large user basis. The voice recognition system may generate text results 110 of one or more recognition processes executed by the voice recognizer under each request 107 in response to each request 107. Although for simplicity, a single user 102 is shown, the voice recognizer receives requests 107 from a much larger number of users, eg tens of thousands, and can take some or all of the requests 107 received. By processing in parallel, it is possible to provide text results 110 to each user while other requests 107 are received and processed.

또한, 음성 인식기 시스템은 음성 인식 태스크들을 수행하기 위한 임의의 유형의 적절한 시스템일 수 있다. 예를 들어, 음성 인식기는 서로 다른 여러 가지 서비스들, 태스크들 또는 애플리케이션들을 위한 가상 머신들 또는 작업들을 또한 호스팅하는 대규모 분산 컴퓨팅 환경(massively distributed computing environment)에서 실행되는 가상 머신들 또는 작업들의 그룹에 의해 구성될 수 있다. 일부 구현 예들에서, 음성 인식기는 서버들 또는 서비스들의 대형 시스템의 컴포넌트일 수 있거나 일부 제품 또는 서비스와 연계하여 제공되는 많은 서비스들 중 하나일 수도 있다.Further, the speech recognizer system can be any type of suitable system for performing speech recognition tasks. For example, the speech recognizer can be assigned to a group of virtual machines or tasks running in a massively distributed computing environment that also hosts virtual machines or tasks for various different services, tasks or applications. It can be configured by. In some implementations, the voice recognizer may be a component of a large system of servers or services or may be one of many services provided in connection with some product or service.

예시적인 음성 처리 시스템(106)은 컴퓨팅 장치(112)로부터 음성 인식 요청 (107)을 수신하는 프론트 엔드(114)를 포함한다. 예를 들어, 프론트 엔드(114)는 음성 인식 요청(107)을 수신하고 처리를 위해 요청(107) 데이터를 준비할 수 있다. 프론트 엔드(114)는 요청(107)을 중요 정보 식별기(116)에 전송할 수 있다. 중요 정보 식별기(116)는 요청 (107)을 분석하여 요청(107) 내의 데이터의 적어도 일부분이 중요할 듯한 데이터인지 여부를 결정할 수 있다.The exemplary speech processing system 106 includes a front end 114 that receives a speech recognition request 107 from the computing device 112. For example, the front end 114 can receive the speech recognition request 107 and prepare the request 107 data for processing. The front end 114 can send the request 107 to the critical information identifier 116. The critical information identifier 116 can analyze the request 107 to determine whether at least a portion of the data in the request 107 is likely data.

중요 정보 식별기(116)는 요청(107)내의 중요할 듯한 데이터의 여러 유형들을 식별할 수 있다. 중요할 듯한 데이터는 오디오 데이터 (108a) 및/또는 컨텍스트 데이터(108b)에 포함될 수 있다. 중요 정보 식별기(116)는 중요할 듯한 정보에 관해 오디오 데이터(108a)에 존재하는 배경 오디오를 분석할 수 있다. 예를 들어, 배경 오디오는 사용자의 위치를 식별하는 정보, 사용자 이외의 발화자(speaker)들을 식별하는 정보 또는 다른 중요할 듯한 정보를 포함할 수 있다.Important information identifier 116 can identify various types of data that are likely to be important within request 107. Data that may be important may be included in audio data 108a and / or context data 108b. The important information identifier 116 can analyze the background audio present in the audio data 108a for information that is likely to be important. For example, the background audio may include information identifying a user's location, information identifying speakers other than the user, or other important information.

중요 정보 식별기(116)는 신용 카드 정보, 은행 계좌 정보, 화폐 금액과 같은 그러한 중요할 듯한 금융 정보 또는 다른 중요할 듯한 금융 정보를 식별할 수 있다. 중요 정보 식별기(116)는 또한, 사용자의 연락처 리스트에 있는 사람들, 전화 번호, 전자 메일 주소와 같은 그러한 사용자 연락처 정보 또는 다른 중요할 듯한 연락처 정보를 식별할 수 있다. 중요 정보 식별기(116)는 이름, 사회 보장 번호, 주소, 전화 번호와 같은 중요할 듯한 개인정보 또는 다른 중요할 듯한 개인정보를 식별할 수 있다. 이들은 식별될 수 있는 중요 데이터의 예시적인 유형이며, 다른 구현들에서, 다른 유형의 중요 데이터가 식별될 수 있다. 예를 들어, 다른 정보는 위치 정보 (예컨대, GPS (Global Positioning System) 좌표, 이동 전화 정보, 무선 액세스 정보, 웹 페이지 정보) 또는 다른 정보 또는 데이터를 포함할 수 있다.The sensitive information identifier 116 can identify such sensitive financial information, such as credit card information, bank account information, monetary amounts, or other sensitive financial information. Important information identifier 116 may also identify such user contact information, such as people, phone numbers, e-mail addresses, or other potentially important contact information in the user's contact list. The sensitive information identifier 116 may identify sensitive personal information such as a name, social security number, address, and phone number or other sensitive personal information. These are exemplary types of sensitive data that can be identified, and in other implementations, other types of sensitive data can be identified. For example, other information may include location information (eg, Global Positioning System (GPS) coordinates, mobile phone information, radio access information, web page information) or other information or data.

중요 정보 식별기(116)는 하나 이상의 중요 데이터 분류기(118a-e)를 포함할 수 있으며, 분류기(118a-e) 각각은 서로 다른 유형의 중요 데이터와 관련된다. 예를 들어, 위에서 설명한 중요 데이터의 각 유형은 관련된 분류기를 가질 수 있다. 각각의 분류기는 요청(107)의 적어도 일부가 그 분류기와 관련된 중요 데이터를 포함한다는 표시를 제공할 수 있다. 예를 들어, 분류기는 요청(107)이 그 분류기의 관련된 유형의 중요 데이터와 관련된 신뢰 임계보다 높은 중요 데이터를 포함할 가능성이 있음을 나타내는 표시를 제공할 수 있다.The important information identifier 116 may include one or more important data classifiers 118a-e, each of the classifiers 118a-e being associated with different types of important data. For example, each type of important data described above can have an associated classifier. Each classifier can provide an indication that at least a portion of the request 107 contains sensitive data associated with the classifier. For example, the classifier can provide an indication that the request 107 is likely to include sensitive data above a confidence threshold associated with the relevant type of sensitive data.

도 1에 도시된 예를 참조하면, 중요 정보 식별기(116)는 요청(107) 내의 몇몇 중요할 듯한 정보를 식별했다. 배경 오디오 분류기(118a)는 배경 오디오가 중요 정보를 포함할 가능성이 있음을 확인했다. 예를 들어, 배경 오디오는 사용자(102)가 병원에 위치함을 나타내는 오디오를 포함할 수 있다. 신용 카드 분류기 (118b)는 발언(104)의 오디오 데이터(108a)가 중요할 듯한 신용 카드 정보, 즉 신용 카드 번호 "01-234"를 포함함을 식별했다. 그러나, 사용자 연락처 리스트 분류기(118c)는 오디오 데이터(108a)가 사용자의 연락처 리스트에 대한 중요 정보를 포함하지 않는다고 결정했다. 개인정보 분류기(118d)는 중요할 듯한 개인정보, 즉 "Bob Smith"라는 이름을 식별했다. 분류기(118e)에 의해 표현되는 다른 분류기들은 다른 유형의 중요 데이터를 결정할 수 있다.Referring to the example shown in FIG. 1, important information identifier 116 has identified some of the most likely information in request 107. Background audio classifier 118a has confirmed that the background audio is likely to contain important information. For example, the background audio may include audio indicating that the user 102 is located in the hospital. The credit card classifier 118b has identified that the audio data 108a of the remark 104 contains credit card information that is likely to be important, that is, the credit card number “01-234”. However, the user contact list classifier 118c has determined that the audio data 108a does not contain important information about the user's contact list. The personal information classifier 118d identified personal information that is likely to be important, namely, "Bob Smith". Other classifiers represented by classifier 118e may determine other types of important data.

중요 정보 식별기(116)는 요청(107)데이터의 일부 또는 전부를 트레이닝 엔진(118)에 전송할 수 있다. 몇몇 경우들에서, 요청(107)데이터의 일부 또는 전부는 프론트 엔드(114)에 의해 트레이닝 엔진(118)에 직접 전송된다. 트레이닝 엔진 (118)은 자동 음성 인식기 (예컨대, 자동 음성 인식기(120))에 의해 사용될 수 있는 인식 모델들을 트레이닝하는 컴포넌트이다. Important information identifier 116 may send some or all of the request 107 data to training engine 118. In some cases, some or all of the request 107 data is sent directly to the training engine 118 by the front end 114. Training engine 118 is a component that trains recognition models that can be used by an automatic speech recognizer (eg, automatic speech recognizer 120).

트레이닝 엔진(118)은 음성 인식 모델을 생성하거나 기존의 음성 인식 모델을 업데이트하기 위해 오디오 데이터(108a) 및 컨텍스트 데이터(108b)의 일부 또는 전부를 사용할 수 있다. 몇몇 경우들에서, 오디오 데이터(108a)와 함께 컨텍스트 데이터(108b)의 사용은 오디오 데이터(108a)를 단독으로 사용하는 것보다 더 정확한 음성 인식 모델을 가능하게 할 수 있다. 음성 인식 모델은 트레이닝 엔진(118)을 자동 음성 인식기(120)에 연결하는 화살표(119)로 도 1에 도시한 자동 음성 인식기에 제공될 수 있다. 이러한 방식으로, 트레이닝 엔진(118)은 어떤 중요할 듯한 데이터가 삭제되기 전에 중요할 듯한 데이터를 비롯한 요청(107)으로부터 수신된 데이터를 사용할 수 있다.The training engine 118 may use some or all of the audio data 108a and context data 108b to create a speech recognition model or update an existing speech recognition model. In some cases, the use of context data 108b in conjunction with audio data 108a may enable a more accurate speech recognition model than using audio data 108a alone. The speech recognition model may be provided to the automatic speech recognizer illustrated in FIG. 1 with an arrow 119 connecting the training engine 118 to the automatic speech recognizer 120. In this way, the training engine 118 can use the data received from the request 107, including the data of interest before any data of interest is deleted.

요청 데이터(107)의 일부 또는 전부는 또한, 자동 음성 인식기(120)에 전송된다. 자동 음성 인식기(120)는 트레이닝 엔진(118)에 의해 제공되는 음성 인식 모델을 사용하여 오디오 데이터(108a)의 전사(110)를 생성한다. 이 전사(110)는 컴퓨팅 장치(112)에 제공된다.Some or all of the request data 107 is also sent to the automatic speech recognizer 120. The automatic speech recognizer 120 generates a transcription 110 of the audio data 108a using the speech recognition model provided by the training engine 118. This transcription 110 is provided to the computing device 112.

요청(107) 데이터의 일부 또는 전부는 또한, 중요 정보 관리자(122)에 전송된다. 또한, 중요 정보 신호(123)는 중요 정보 식별기(116)로부터 중요 정보 관리자(122)에 전송될 수 있다. 전사(110)는 또한, 중요 정보 관리자(122)에 제공될 수 있다. 예를 들어, 중요 정보 신호(123)는 요청(107) 및/또는 전사(110)의 어느 부분이 중요 정보를 포함할 가능성이 있는지 나타낼 수 있다. 중요 정보 신호(123)는 분류기(118a-e)로부터의 표시들에 기초할 수 있다. 중요 정보 신호(123)에 기초하여, 중요 정보 관리자(122)는 요청(107) 및/또는 전사(110)의 어느 부분이 로깅되어야 하는지 그리고 어느 부분이 로깅되지 않아야 하는지를 결정할 수 있다. 예를 들어, 로깅되지 않을 요청(107) 및/또는 전사(110)의 부분들은 삭제될 수 있다. 몇몇 경우들에서, 중요 정보 관리자(122)는 요청 데이터(107) 및/또는 전사(110)를 익명화할 수 있다. 예를 들어, 전사 "This is Bob Smith"는 "This is <name>"으로서 익명화될 수 있다. 다른 익명화 기법들도 가능하다. 중요 정보 관리자(122)는 저장을 위해 로거(logger)(124)에 요청(107) 및/또는 전사의 부분들을 제공할 수 있다.Some or all of the request 107 data is also sent to critical information manager 122. In addition, the important information signal 123 may be transmitted from the important information identifier 116 to the important information manager 122. Transcription 110 may also be provided to critical information manager 122. For example, the critical information signal 123 may indicate which portion of the request 107 and / or the transcription 110 is likely to contain sensitive information. Important information signal 123 may be based on indications from classifiers 118a-e. Based on the critical information signal 123, the critical information manager 122 can determine which parts of the request 107 and / or the transcript 110 should be logged and which parts should not be logged. For example, portions of request 107 and / or transcription 110 that are not to be logged may be deleted. In some cases, critical information manager 122 may anonymize request data 107 and / or transcript 110. For example, the warrior "This is Bob Smith" can be anonymized as "This is <name>". Other anonymization techniques are possible. Important information manager 122 may provide portions of request 107 and / or transcription to logger 124 for storage.

도 2는 자동 음성 인식기를 트레이닝하기 위한 예시적인 프로세스(200)를 도시하는 흐름도이다. 예시적인 프로세스(200)는 예를 들어 음성 인식 시스템(100)의 일부 또는 전부에 의해 구현될 수 있다. 단계(202)에서, 클라이언트 장치로부터의 데이터가 자동 음성 인식기를 포함하는 시스템에 의해 수신된다. 예를 들어, 데이터는 파형의 데이터 파일, 오디오 파일, 또는 발언을 인코딩하는 다른 데이터 타입, 발언과 관련된 메타 데이터, 전사 데이터, 및/또는 발언과 관련된 컨텍스트 데이터를 포함할 수 있다. 상기 클라이언트 장치는 앞서 설명한 바와 같이 포터블 컴퓨터, 스마트 폰 또는 다른 클라이언트 장치일 수 있다. 음성 인식기는 음향 모델, 언어 모델 또는 다른 유형의 음성 인식기 컴포넌트와 같은 그러한 음성 데이터 아이템들의 전사들을 생성하는데 있어 하나 이상의 음성 인식기 컴포넌트를 사용할 수 있다. 하나 이상의 음성 인식기 컴포넌트는 신경망 기반일 수 있다.2 is a flow diagram illustrating an example process 200 for training an automatic speech recognizer. The example process 200 can be implemented, for example, by some or all of the speech recognition system 100. In step 202, data from the client device is received by a system that includes an automatic speech recognizer. For example, the data may include a waveform data file, an audio file, or other data type encoding a utterance, meta data associated with the utterance, transcriptional data, and / or contextual data associated with the utterance. The client device may be a portable computer, smart phone, or other client device as described above. The voice recognizer can use one or more voice recognizer components in generating transcriptions of such voice data items, such as an acoustic model, a language model, or other type of voice recognizer component. The one or more speech recognizer components may be neural network based.

단계(204)에서, 수신된 데이터의 적어도 일부가 중요 데이터일 것으로 결정된다. 몇몇 경우들에서, 중요 데이터는 클라이언트 장치에서 수신되는 데이터의 로그에 저장하지 않고 시스템에 의해 삭제되는 데이터이다. 몇몇 경우들에서, 중요 데이터는 연락처 정보, 배경 오디오 데이터, 개인 식별 정보, 미리 결정된 전사 키워드 또는 지리적 좌표 중 하나 이상을 포함할 수 있다. 중요 데이터는 또한, 시스템에 의한 미리 결정된 수신 기간 내에 삭제되는 데이터일 수 있다. 예를 들어, 미리 결정된 기간은 디폴트 기간 - 이 디폴트 기간 후에 중요하지 않을 것으로 결정된 데이터는 삭제된다 - 보다 짧을 수 있다. 일부 구현 예들에서, 중요 데이터의 각 유형은 삭제를 위한 미리 결정된 관련 기간을 갖는다.In step 204, it is determined that at least a portion of the received data is important data. In some cases, sensitive data is data that is deleted by the system without storing in a log of data received at the client device. In some cases, the sensitive data may include one or more of contact information, background audio data, personal identification information, predetermined transcription keywords or geographic coordinates. Important data may also be data deleted within a predetermined reception period by the system. For example, the predetermined period may be shorter than the default period-data determined to be insignificant after this default period is deleted. In some implementations, each type of sensitive data has a predetermined associated period for deletion.

수신된 데이터의 적어도 일부가 중요 데이터일 것이라고 결정하는 것은 상기 수신된 데이터의 적어도 일부를 하나 이상의 분류기에 제공하는 것을 포함할 수 있다. 각 분류기는 다른 유형의 중요 데이터와 연관될 수 있다. 특정 유형의 중요 데이터와 관련된 특정 분류기는 상기 수신된 데이터가 특정 유형의 중요 데이터와 관련된다는 표시를 생성할 수 있다.Determining that at least a portion of the received data will be important data can include providing at least a portion of the received data to one or more classifiers. Each classifier can be associated with different types of important data. Certain classifiers associated with a particular type of sensitive data may generate an indication that the received data is associated with a particular type of sensitive data.

단계(206)에서, 수신된 데이터의 적어도 일부가 삭제되기 전에, 상기 수신된 데이터의 적어도 일부가 자동 음성 인식기를 위한 인식 모델들을 트레이닝하는 모델 트레이닝 엔진에 제공된다. 상기 수신된 데이터의 적어도 일부는 오디오 데이터 및/또는 컨텍스트 데이터를 포함할 수 있다. 일부 구현 예들에서, 자동 음성 인식 기는 모델 트레이닝 엔진으로부터 업데이트된 인식 모델을 수신할 수 있다. 업데이트된 인식 모델은 후속적으로 수신되는 오디오 데이터를 자동 음성 인식기가 인식하는데 사용될 수 있다. In step 206, before at least a portion of the received data is deleted, at least a portion of the received data is provided to a model training engine that trains recognition models for an automatic speech recognizer. At least a portion of the received data may include audio data and / or context data. In some implementations, the automatic speech recognizer can receive the updated recognition model from the model training engine. The updated recognition model can be used to automatically recognize the audio data that is subsequently received.

단계(208)에서, 상기 수신된 데이터의 적어도 일부가 모델 트레이닝 엔진에 제공된 후, 상기 수신된 데이터의 적어도 일부는 삭제된다. 일부 구현 예들에서, 수신된 데이터의 적어도 일부는 익명화되고, 익명화된 데이터는 클라이언트 장치로부터 수신되는 데이터의 로그에 저장될 수 있다.In step 208, after at least a portion of the received data is provided to a model training engine, at least a portion of the received data is deleted. In some implementations, at least a portion of the received data is anonymized, and the anonymized data can be stored in a log of data received from the client device.

도 3은 예시적인 음성 인식 시스템(300)의 다이어그램이다. 시스템(300)은 예를 들어, 도 1에 도시된 음성 인식 시스템(100) 또는 도 2에 도시된 프로세스에 의해 구현될 수 있다. 음성 인식 시스템(300)은 개인정보-중요(privacy-sensitive) 데이터(302)를 포함한다. 개인정보-중요 데이터(302)는 음성 인식 요청일 수 있다. 개인정보-중요 데이터(302)는 컨텍스트 정보(304) 및 오디오 데이터(306)를 포함할 수 있다.3 is a diagram of an exemplary speech recognition system 300. The system 300 may be implemented by, for example, the speech recognition system 100 shown in FIG. 1 or the process shown in FIG. 2. The speech recognition system 300 includes privacy-sensitive data 302. The personal information-critical data 302 may be a voice recognition request. The personal information-critical data 302 may include context information 304 and audio data 306.

개인정보-중요 데이터(302)의 일부는 로그 가능하도록 결정될 수 있다. 예를 들어, 개인정보-중요 데이터(302)의 일부는 중요 정보를 포함하지 않을 수 있고, 그 부분이 로그될 수 있다. 다른 예로서, 개인정보-중요 데이터(302)의 일부는 익명으로 처리될 수 있다. 개인정보-중요 데이터의 로그 가능한 부분은 저장을 위해 로거(308)에 제공될 수 있다. 일부 구현 예들에서, 로거(308)는 별개의 오디오 저장 장치(storage)(310a) 및 별도의 컨텍스트 저장 장치(310b)를 포함한다. 예를 들어, 오디오 저장 장치(310a)는 오디오 데이터(306)를 저장할 수 있고, 컨텍스트 저장부는 컨텍스트 데이터(304)를 저장할 수 있다. 일부 구현 예들에서, 오디오 데이터(306)는 컨텍스트 데이터(304)와 별도로 저장되지 않는다.Some of the personal information-critical data 302 may be determined to be logable. For example, some of the personal information-critical data 302 may not contain sensitive information, and that portion may be logged. As another example, a portion of the personal information-critical data 302 may be processed anonymously. A logable portion of personal information-critical data can be provided to the logger 308 for storage. In some implementations, the logger 308 includes a separate audio storage 310a and a separate context storage 310b. For example, the audio storage device 310a can store the audio data 306, and the context storage unit can store the context data 304. In some implementations, audio data 306 is not stored separately from context data 304.

개인정보-중요 데이터의 일부 또는 전부는 예시적인 모델 트레이너(312)에 제공될 수 있다. 모델 트레이너(310)는 예를 들어 음성 인식기를 위한 트레이닝 엔진일 수 있다. 일부 구현 예들에서, 개인정보-중요 데이터(302)는 삭제 이전에 트레이닝을 위해 한 번만 사용되고, 새로운 개인정보-중요 데이터(302)가 모델 트레이너(312)에 연속적으로 제공된다. 모델 트레이너(312)는 하나 이상의 컴포넌트를 포함할 수 있다. 예를 들어, 모델 트레이너(312)는 도면부호 314a로 보인 휴리스틱 기반 데이터 선택을 사용하여 개인정보-중요 데이터(302)로부터 트레이닝 데이터를 선택할 수 있다. 모델 트레이너(312)는 예를 들어, 미니 블록 트레이닝 기법 및 트레이닝 루프 기법을 사용하여 도면부호 314b로 보인 후보 모델을 생성할 수 있다. 도면부호 314c로 보인 바와 같이, 최상의 성능을 갖는 모델을 식별하기 위해 후보 모델이 조사되고 분석될 수 있다. 모델 트레이너(312)는 다른 컴포넌트를 포함하거나 다른 기법을 사용할 수 있다. Some or all of the privacy-critical data can be provided to the exemplary model trainer 312. The model trainer 310 may be, for example, a training engine for a speech recognizer. In some implementations, the privacy-critical data 302 is used only once for training prior to deletion, and the new privacy-critical data 302 is continuously provided to the model trainer 312. Model trainer 312 may include one or more components. For example, the model trainer 312 may select training data from the personal information-important data 302 using heuristic-based data selection shown at 314a. The model trainer 312 may generate a candidate model shown by reference numeral 314b using, for example, a mini-block training technique and a training loop technique. As shown at 314c, candidate models can be investigated and analyzed to identify the model with the best performance. The model trainer 312 may include other components or use other techniques.

음성 모델(316)은 모델 트레이너(312)로부터 프로덕션 음성 인식 서버(318)에 제공될 수 있다. 프로덕션 음성 인식 서버(318)는 클라이언트 장치로부터 음성 인식 요청을 수신할 수 있고, 하나 이상의 음성 모델(316)을 사용하여 클라이언트 장치로 음성 전사들을 다시 제공할 수 있다. 이러한 방식으로, 음성 모델들(316)은 개인정보-중요 데이터 보존과 관련된 시스템의 임의의 정책들을 유지하면서 개인정보-중요 데이터(302) 및 모델 트레이너(312)를 사용하여 연속적으로 업데이트될 수 있다.The speech model 316 can be provided from the model trainer 312 to the production speech recognition server 318. Production speech recognition server 318 may receive a speech recognition request from a client device, and may provide speech transcriptions back to the client device using one or more speech models 316. In this way, voice models 316 can be continuously updated using privacy-critical data 302 and model trainer 312 while maintaining any policies of the system related to privacy-critical data retention. .

도 4는 여기에 기술된 기법들을 구현하는데 사용될 수 있는 컴퓨팅 장치 (400) 및 모바일 컴퓨팅 장치의 예를 도시한다. 컴퓨팅 장치(400)는 랩탑, 데스크탑, 워크 스테이션, PDA, 서버, 블레이드 서버, 메인 프레임 및 다른 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내기 위한 것이다. 모바일 컴퓨팅 장치는 개인 포터블 정보 단말기, 셀룰러 전화기, 스마트 폰 및 다른 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타내기 위한 것이다. 여기에 도시된 컴포넌트들, 이들의 연결 및 관계와 이들의 기능들은 단지 예시적인 것을 의미하며, 본 명세서에 기재된 및/또는 특허청구범위에 기재된 발명들의 구현을 제한하는 것을 의미하지는 않는다.4 shows an example of a computing device 400 and a mobile computing device that can be used to implement the techniques described herein. Computing device 400 is intended to represent various types of digital computers, such as laptops, desktops, workstations, PDAs, servers, blade servers, mainframes, and other suitable computers. Mobile computing devices are intended to represent various types of mobile devices, such as personal portable information terminals, cellular telephones, smart phones, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are meant to be exemplary only, and are not meant to limit the implementation of the inventions described herein and / or in the claims.

컴퓨팅 장치(400)는 프로세서(402), 메모리(404), 스토리지 장치(406), 메모리 (404) 및 다수의 고속 확장 포트(410)에 연결되는 고속 인터페이스 (408) 및 저속 인터페이스(414) 및 스토리지 장치(406)에 저장된다. 프로세서(402), 메모리(404), 스토리지 장치(406), 고속 인터페이스(408), 고속 확장 포트(410) 및 저속 인터페이스(412)는 다양한 버스를 사용하여 상호 연결되며, 공통 마더보드 상에 또는 기타 적절한 방식으로 마운트된다. 프로세서(402)는 메모리(404) 또는 스토리지 장치(406)에 저장된 명령들을 비롯한 컴퓨팅 장치(400)내에서 실행을 위한 명령들을 처리하여, GUI에 대한 그래픽 정보를 고속 인터페이스(408)에 결합된 디스플레이(146)와 같은 그러한 외부 입력/출력 장치에 디스플레이할 수 있다. 다른 구현 예들에서, 다수의 프로세서 및/또는 다수의 버스가 다수의 메모리들 및 메모리의 유형들과 함께 적절히 사용될 수 있다. 또한, 다수의 컴퓨팅 장치가 연결될 수 있으며, 각 장치는 필요한 동작들의 부분들, 예컨대 서버 뱅크, 블레이드 서버들의 그룹 또는 멀티프로세서 시스템을 제공한다. Computing device 400 includes processor 402, memory 404, storage device 406, memory 404, and high-speed interface 408 and low-speed interface 414 coupled to multiple high-speed expansion ports 410 and It is stored in the storage device 406. The processor 402, memory 404, storage device 406, high speed interface 408, high speed expansion port 410, and low speed interface 412 are interconnected using various buses, either on a common motherboard or It is mounted in any other suitable way. Processor 402 processes instructions for execution within computing device 400, including instructions stored in memory 404 or storage device 406, and displays graphical information for the GUI coupled to high-speed interface 408. It can be displayed on such an external input / output device such as (146). In other implementations, multiple processors and / or multiple buses can be used as appropriate with multiple memories and types of memory. In addition, multiple computing devices can be connected, each device providing portions of the necessary operations, such as a server bank, a group of blade servers, or a multiprocessor system.

메모리(404)는 컴퓨팅 장치(400) 내의 정보를 저장한다. 일부 구현 예들에서, 메모리(404)는 휘발성 메모리 유닛(들)이다. 일부 구현 예들에서, 메모리(404)는 비휘발성 메모리 유닛(들)이다. 메모리(404)는 또한 자기 또는 광학 디스크와 같은 컴퓨터 판독 가능 매체의 다른 유형일 수 있다.Memory 404 stores information in computing device 400. In some implementations, the memory 404 is volatile memory unit (s). In some implementations, the memory 404 is non-volatile memory unit (s). The memory 404 can also be other types of computer readable media, such as magnetic or optical disks.

스토리지 장치(406)는 컴퓨팅 장치(400)를 위한 대용량 스토리지 장치를 제공할 수 있다. 일부 구현 예들에서, 스토리지 장치(406)는 플로피 디스크 장치, 하드 디스크 장치, 광학 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 다른 유사한 고체 상태 메모리 장치, 또는 스토리지 영역 네트워크에 있는 장치들 또는 기타 구성들을 비롯한 장치들의 어레이와 같은 그러한 컴퓨터 판독 가능 매체 일 수 있거나 이들을 포함할 수 있다. 컴퓨터 프로그램 물이 정보 캐리어 유형적으로 구현될 수 있다. 상기 컴퓨터 프로그램 물은 또한 실행될 때 전술한 바와 같은 하나 이상의 방법을 수행하는 명령어들을 내포할 수 있다. 컴퓨터 프로그램 물은 또한 메모리(404), 스토리지 장치(406) 또는 프로세서(402)상의 메모리와 같은 그러한 컴퓨터 또는 머신 판독 가능 매체에 유형적으로 수록될 수 있다.The storage device 406 can provide a mass storage device for the computing device 400. In some implementations, the storage device 406 is a device, including a floppy disk device, hard disk device, optical disk device or tape device, flash memory or other similar solid state memory device, or devices or other configurations in a storage area network. It can be or include such a computer readable medium, such as an array of. Computer program material may be embodied in an information carrier type. The computer program product may also contain instructions that, when executed, perform one or more methods as described above. Computer program material may also be tangibly embodied in such computer or machine readable media, such as memory on memory 404, storage device 406, or processor 402.

고속 인터페이스(408)는 컴퓨팅 디바이스(400)에 대한 대역폭-집중적인(bandwidth-intensive) 동작들을 관리하는데 반해, 저속 인터페이스(412)는 낮은 대역폭-집중적인 동작들을 관리한다. 기능들의 이러한 할당은 단지 예시적일 뿐이다. 일부 구현 예들에서, 고속 인터페이스(408)는 메모리(404), (예컨대, 그래픽 프로세서 또는 가속기를 통해) 디스플레이(416), 및 도시되지 않은 다양한 확장 카드를 수용할 수 있는 고속 확장 포트(410)에 연결된다. 이 구현 예들에서, 저속 인터페이스(412)는 스토리지 장치(406) 및 저속 확장 포트(414)에 연결된다. USB, 블루투스, 이더넷, 무선 이더넷 또는 기타의 것들과 같은 그러한 다양한 통신 포트를 포함할 수 있는 저속 확장 포트(414)는 키보드, 포인팅 장치, 스캐너와 같은 그러한 하나 이상의 입/출력 장치들, 또는 예컨대 네트워크 어댑터를 통해 스위치 또는 라우터와 같은 네트워킹 장치에 연결될 수 있다.High-speed interface 408 manages bandwidth-intensive operations for computing device 400, while low-speed interface 412 manages low-bandwidth-intensive operations. This assignment of functions is merely exemplary. In some implementations, the fast interface 408 is connected to a memory 404, a display 416 (eg, via a graphics processor or accelerator), and a fast expansion port 410 that can accommodate various expansion cards (not shown). Connected. In these implementations, the slow interface 412 is connected to the storage device 406 and the slow expansion port 414. The low speed expansion port 414, which may include such various communication ports as USB, Bluetooth, Ethernet, wireless Ethernet or the like, is one or more such input / output devices such as a keyboard, pointing device, scanner, or network, for example It can be connected to a networking device such as a switch or router through an adapter.

컴퓨팅 장치(400)는 도면에 도시된 바와 같이 다수의 서로 다른 형태로 구현 될수 있다. 예를 들어, 이는 표준 서버(420)로서 구현되거나, 또는 그러한 서버들의 그룹으로 여러 번 구현될 수 있다. 또한, 이는 랩톱 컴퓨터(422)와 같은 퍼스널 컴퓨터에서 구현될 수도 있다. 또한, 이는 랙 서버 시스템 (424)의 일부로서 구현 될 수도 있다. 대안적으로, 컴퓨팅 장치(400)로부터의 컴포넌트들은 모바일 컴퓨팅 장치(450)와 같은 그러한 모바일 장치(도시되지 않음)의 다른 컴포넌트들과 결합 될 수 있다. 이러한 장치들 각각은 컴퓨팅 장치(400) 및 모바일 컴퓨팅 장치(450) 중 하나 이상을 포함할 수 있으며, 전체 시스템은 서로 통신하는 다수의 컴퓨팅 장치로 구성될 수 있다.The computing device 400 may be implemented in a number of different forms, as shown in the figure. For example, it can be implemented as a standard server 420, or multiple times as a group of such servers. Also, it may be implemented in a personal computer such as a laptop computer 422. Also, it may be implemented as part of the rack server system 424. Alternatively, components from computing device 400 may be combined with other components of such a mobile device (not shown), such as mobile computing device 450. Each of these devices may include one or more of the computing device 400 and the mobile computing device 450, and the entire system may be composed of multiple computing devices communicating with each other.

모바일 컴퓨팅 장치(450)는 여러 가지 컴포넌트들 중에서도 특히, 프로세서 (452), 메모리(464), 디스플레이(454)와 같은 그러한 입/출력 장치, 통신 인터페이스(466) 및 송수신기(468)를 포함한다. 모바일 컴퓨팅 장치(450)에는 또한, 추가적인 스토리지 장치를 제공하기 위해, 마이크로-드라이브 또는 기타 장치와 같은 그러한 스토리지 장치가 제공될 수 있다. 프로세서(452), 메모리(464), 디스플레이(454), 통신 인터페이스(466) 및 송수신기(468) 각각은 다양한 버스들을 사용하여 상호 연결되며, 이들 컴포넌트들 중 일부는 공통 마더 보드 상에 또는 다른 적절한 방식으로 장착될 수 있다.Mobile computing device 450 includes, among other components, such input / output devices, such as processor 452, memory 464, display 454, communication interface 466, and transceiver 468. The mobile computing device 450 may also be provided with such storage devices, such as micro-drives or other devices, to provide additional storage devices. Each of processor 452, memory 464, display 454, communication interface 466, and transceiver 468 are interconnected using various buses, some of these components on a common motherboard or other suitable Can be mounted in a manner.

프로세서(452)는 메모리(464)에 저장된 명령들을 비롯한 모바일 컴퓨팅 장치 (450)내의 명령들을 실행할 수 있다. 프로세서(452)는 개별적인 또는 복수의 아날로그 및 디지털 프로세서들을 포함하는 칩들의 칩셋으로서 구현될 수 있다. 프로세서(452)는 예를 들어, 사용자 인터페이스들의 제어, 모바일 컴퓨팅 장치(450)에 의해 실행되는 애플리케이션 및 모바일 컴퓨팅 장치(450)에 의한 무선 통신과 같은 그러한 모바일 컴퓨팅 장치(450)의 다른 컴포넌트들의 조정(coordination)을 제공할 수 있다.The processor 452 can execute instructions in the mobile computing device 450, including instructions stored in the memory 464. The processor 452 may be implemented as a chipset of chips comprising individual or multiple analog and digital processors. Processor 452 coordinates other components of such mobile computing device 450, such as, for example, control of user interfaces, applications executed by mobile computing device 450, and wireless communication by mobile computing device 450. (coordination).

프로세서(452)는 제어 인터페이스(458)와 디스플레이(454)에 연결된 디스플레이 인터페이스(456)를 통해 사용자와 통신할 수 있다. 디스플레이(454)는 예를 들어, TFT (Thin-Film-Semiconductor Liquid Crystal Display) 디스플레이 또는 OLED(Organic Light Emitting Diode) 디스플레이, 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(456)는 그래픽 및 다른 정보를 사용자에게 제공하기 위해 디스플레이(454)를 구동하기 위한 적절한 회로를 포함할 수 있다. 제어 인터페이스(458)는 사용자로부터 명령들을 수신하고, 프로세서(452)에 제출하기 위해 이 명령들을 변환할 수 있다. 또한, 외부 인터페이스(462)는 다른 장치들과 모바일 컴퓨팅 장치(450)의 근거리 통신이 가능해지도록 프로세서(452)와 통신할 수 있다. 외부 인터페이스(462)는 예를 들어, 일부 구현 예들에서는 유선 통신을 위해, 또는 다른 구현 예들에서는 무선 통신을 제공할 수 있으며, 복수의 인터페이스들이 또한 사용될 수 있다. The processor 452 can communicate with the user through a control interface 458 and a display interface 456 connected to the display 454. The display 454 may be, for example, a TFT (Thin-Film-Semiconductor Liquid Crystal Display) display or an Organic Light Emitting Diode (OLED) display, or other suitable display technology. Display interface 456 may include suitable circuitry to drive display 454 to provide graphics and other information to the user. The control interface 458 can receive instructions from the user and convert them to submit to the processor 452. In addition, the external interface 462 may communicate with the processor 452 to enable short-range communication of the mobile computing device 450 with other devices. The external interface 462 can provide, for example, for wired communication in some implementations, or wireless communication in other implementations, and multiple interfaces can also be used.

메모리(464)는 모바일 컴퓨팅 장치(450)내에 정보를 저장한다. 메모리(464)는 컴퓨터 판독 가능 매체 또는 매체, 휘발성 메모리 유닛 또는 비 휘발성 메모리 유닛 중 하나 이상으로서 구현될 수 있다. 확장 메모리(474)는 또한 예를 들어 SIMM(Single In Line Memory Module) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(472)를 통해 이동 컴퓨팅 장치(450)에 제공되고 접속될 수 있다. 확장 메모리(474)는 모바일 컴퓨팅 디바이스(450)에 대한 여분의 스토리지 공간을 제공하거나 모바일 컴퓨팅 디바이스(450)에 대한 애플리케이션 또는 다른 정보를 저장할 수 있다. 특히, 확장 메모리(474)는 전술한 프로세스를 수행하거나 보충하기 위한 명령을 포함할 수 있으며, 또한 보안 정보를 포함할 수 있다.Memory 464 stores information in mobile computing device 450. The memory 464 may be implemented as one or more of a computer readable medium or medium, a volatile memory unit, or a non-volatile memory unit. The extended memory 474 may also be provided and connected to the mobile computing device 450 through an extended interface 472, which may include, for example, a Single In Line Memory Module (SIMM) card interface. The extended memory 474 may provide extra storage space for the mobile computing device 450 or store applications or other information for the mobile computing device 450. In particular, the extended memory 474 may include instructions for performing or supplementing the aforementioned process, and may also include security information.

따라서, 예를 들어, 확장 메모리(474)는 모바일 컴퓨팅 장치(450)에 대한 보안 모듈로서 제공될 수 있고, 모바일 컴퓨팅 장치(450)의 안전한 사용을 허용하는 명령으로 프로그램될 수 있다. 또한 SIMM 카드에 식별 정보를 해킹할 수 없게 배치하는 등의 추가 정보와 함께 SIMM 카드를 통해 보안 애플리케이션 제공할 수 있다.Thus, for example, the extended memory 474 can be provided as a security module for the mobile computing device 450 and can be programmed with instructions that allow the secure use of the mobile computing device 450. In addition, the SIMM card can be provided with a secure application along with additional information such as disposing the identification information on the SIMM card so that it cannot be hacked.

메모리는 예를 들어, 후술하는 바와 같이, 플래시 메모리 및/또는 NVRAM 메모리(비 휘발성 랜덤 액세스 메모리)를 포함할 수 있다. 일부 구현 예들에서, 컴퓨터 프로그램 물은 정보 매체에 유형적으로 수록된다. 컴퓨터 프로그램 물은 실행될 때 위에서 설명한 방법과 같은 하나 이상의 방법을 수행하는 지침을 포함한다. 컴퓨터 프로그램 물은 메모리(464), 확장 메모리(474) 또는 프로세서(452)상의 메모리와 같은 컴퓨터 또는 머신 판독 가능 매체일 수 있다. 일부 구현 예들에서, 컴퓨터 프로그램 물은 예를 들어 송수신기(468) 또는 외부 인터페이스(462)를 통해 전파되는 신호로 수신될 수 있다.The memory may include, for example, flash memory and / or NVRAM memory (non-volatile random access memory), as described below. In some implementations, the computer program product is tangibly embodied in an information medium. The computer program product includes instructions that, when executed, perform one or more methods, such as those described above. The computer program product may be a computer or machine readable medium, such as memory 464, extended memory 474, or memory on processor 452. In some implementations, the computer program product can be received, for example, as a signal propagated through the transceiver 468 or the external interface 462.

모바일 컴퓨팅 장치(450)는 필요한 경우 디지털 신호 처리 회로를 포함할 수있는 통신 인터페이스(466)를 통해 무선으로 통신할 수 있다. 통신 인터페이스 (466)는 여러 가지 것들 가운데에서도 특히, GSM 음성 통화 (이동 통신을 위한 글로벌 시스템), SMS(단문 메시지 서비스), EMS(향상된 메시징 서비스) 또는 MMS 메시징(멀티미디어 메시징 서비스), CDMA(코드 분할 다중 접속), TDMA(시분할 다중 접속), PDC(개인 디지털 셀룰러), WCDMA(광대역 코드 분할 다중 접속), CDMA2000 또는 GPRS(일반 패킷 무선 서비스)와 같은 그러한 다양한 모드들 또는 프로토콜들 하에서 통신을 제공할 수 있다. The mobile computing device 450 can communicate wirelessly through a communication interface 466, which may include digital signal processing circuitry, if desired. The communication interface 466 includes, among other things, GSM voice calls (global systems for mobile communication), SMS (Short Message Service), EMS (Enhanced Messaging Service) or MMS Messaging (Multimedia Messaging Service), CDMA (Code) Provides communications under such various modes or protocols, such as split multiple access (TDMA), time division multiple access (TDMA), personal digital cellular (PDC), wideband code division multiple access (WCDMA), CDMA2000 or GPRS (General Packet Radio Service) can do.

이러한 통신은, 예를 들어 무선 주파수를 사용하는 송수신기(468)를 통해 발생할 수 있다. 또한, 블루투스, WiFi 또는 다른 송수신기(도시되지 않음)를 사용하는 것과 같은 단거리 통신이 발생할 수 있다. 또한, GPS 수신기 모듈(470)은 모바일 컴퓨팅 장치(450)상에서 실행되는 애플리케이션에 의해 적절하게 사용될 수 있는 추가의 네비게이션 및 위치 관련 무선 데이터를 모바일 컴퓨팅 장치(450)에 제공 할 수 있다.Such communication may occur, for example, via transceiver 468 using radio frequencies. In addition, short-range communication may occur, such as using Bluetooth, WiFi, or other transceiver (not shown). In addition, the GPS receiver module 470 may provide the mobile computing device 450 with additional navigation and location related wireless data that may be appropriately used by applications running on the mobile computing device 450.

모바일 컴퓨팅 디바이스(450)는 또한 사용자로부터 음성 정보를 수신하여 그것을 이용 가능한 디지털 정보로 변환할 수 있는 오디오 코덱(460)을 사용하여 청각적으로 통신할 수 있다. 오디오 코덱(460)은 마찬가지로, 예를 들어 모바일 컴퓨팅 장치(450)의 핸드셋에 있는 스피커를 통해, 사용자를 위한 가청 사운드를 생성할 수 있다. 이러한 사운드는 음성 전화로부터의 사운드를 포함할 수 있고, 음성 메시지, 음악 파일 또는 기타와 같은 기록된 사운드를 포함할 수 있고, 또한 모바일 컴퓨팅 장치(450)상에서 동작하는 애플리케이션에 의해 생성된 사운드를 포함 할수 있다.The mobile computing device 450 can also aurally communicate using an audio codec 460 that can receive voice information from a user and convert it into available digital information. The audio codec 460 can likewise generate an audible sound for the user, for example through a speaker in the handset of the mobile computing device 450. Such sounds may include sounds from voice calls, may include recorded sounds such as voice messages, music files, or the like, and also include sounds generated by applications running on mobile computing device 450. can do.

모바일 컴퓨팅 장치 (450)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현 될 수 있다. 예를 들어, 셀룰러 폰(380)으로서 구현될 수 있다. 이는 또한 스마트 폰(382), PDA 또는 다른 유사한 모바일 장치의 일부로서 구현될 수도 있다.The mobile computing device 450 can be implemented in a number of different forms, as shown in the figure. For example, it can be implemented as a cellular phone 380. It may also be implemented as part of a smart phone 382, PDA or other similar mobile device.

여기에 기술된 시스템 및 기술의 다양한 구현 예들은 디지털 전자 회로, 집적 회로, 특별히 설계된 ASIC (주문형 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현들은 데이터 및 명령들을 수신함과 아울러 데이터 및 명령들을 스토리지 시스템, 적어도 하나의 입력 장치, 및 적어도 하나의 출력 장치에 송신하도록 결합된, 특수 또는 범용일 수 있는 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템상에서 실행 가능하고 그리고/또는 해석 가능한 하나 이상의 컴퓨터 프로그램에서의 구현을 포함할 수 있다. Various implementations of the systems and techniques described herein can be realized with digital electronic circuits, integrated circuits, specially designed ASICs (on-demand integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations include at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions and transmit the data and instructions to a storage system, at least one input device, and at least one output device. It may include an implementation in one or more computer programs executable and / or interpretable on a programmable system.

이러한 컴퓨터 프로그램들은 또한 프로그램, 소프트웨어, 소프트웨어 응용 또는 코드로도 알려져 있고, 프로그램 가능 프로세서용 머신 명령들을 포함하며, 높은 수준의 절차 및/또는 객체 지향 프로그래밍 언어로 및/또는 어셈블리/머신 언어로 구현될 수 있다. 본 명세서에 사용된 용어 "머신 판독 가능 매체" 및 "컴퓨터 판독 가능 매체"는 자기 디스크, 광 디스크, 메모리, 프로그램 가능 논리 장치 (PLD) 머신 판독 가능 신호로서 머신 명령들을 수신하는 머신 판독 가능 매체를 포함하는, 프로그램 가능 프로세서에 머신 명령들 및/또는 데이터를 제공하는 것을 포함한다. "머신 판독 가능 신호"라는 용어는 머신 명령어 및/또는 데이터를 프로그램 가능 프로세서에 제공하는 데 사용되는 모든 신호들을 의미한다.These computer programs, also known as programs, software, software applications or code, contain machine instructions for a programmable processor, and be implemented in a high level procedural and / or object oriented programming language and / or assembly / machine language. Can be. The terms "machine readable medium" and "computer readable medium" as used herein refer to a machine readable medium that receives machine instructions as a magnetic disk, optical disk, memory, programmable logic device (PLD) machine readable signal. Including providing machine instructions and / or data to a programmable processor. The term "machine readable signal" means any signal used to provide machine instructions and / or data to a programmable processor.

사용자와의 상호 작용을 제공하기 위해, 여기에 설명된 시스템 및 기술은 디스플레이 장치, 예를 들어, 디스플레이 장치를 갖는 컴퓨터상에서 구현될 수 있다. 사용자에게 정보를 표시하기 위한 CRT(cathode ray tube) 또는 LCD (liquid crystal display) 모니터, 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 장치, 예를 들어, 마우스 또는 트랙볼을 포함할 수 있다. 다른 종류의 장치가 사용자와의 상호작용을 제공하기 위해 사용될 수 있다. 예를 들어, 사용자에게 제공된 피드백은 시각 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각(tactile) 피드백 일 수 있으며, 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다.To provide interaction with a user, the systems and techniques described herein can be implemented on a display device, eg, a computer having a display device. It may include a cathode ray tube (CRT) or liquid crystal display (CRT) monitor for displaying information to the user, and a keyboard and pointing device, for example, a mouse or trackball, through which the user can provide input to the computer. . Other types of devices can be used to provide user interaction. For example, the feedback provided to the user may be any form of tactile feedback, such as visual feedback, auditory feedback, or tactile feedback, and input from the user may be in any form, including acoustic, voice, or tactile input. Can be received.

여기에 기술된 시스템 및 기술은 예를 들어 데이터 서버와 같은 백엔드 컴포넌트를 포함하거나 미들웨어 컴포넌트를 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 애플리케이션 서버 또는 프론트 엔드 컴포넌트, 예를 들어 사용자가 여기에 기술된 시스템 및 기술의 구현과 상호 작용할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우저를 갖는 클라이언트 컴퓨터, 또는 이러한 백 엔드, 미들웨어 또는 프런트 엔드 컴포넌트들의 임의의 조합을 포함한다. 시스템의 컴포넌트들은 디지털 데이터 통신의 임의의 형태 또는 매체, 예를 들어 통신 네트워크에 의해 상호 접속될 수 있다. 통신 네트워크의 예는 근거리 통신망( "LAN"), 광역 통신망 ( "WAN") 및 인터넷을 포함한다.The systems and techniques described herein can be implemented in a computing system that includes a backend component, such as a data server, or middleware component, for example. An application server or front-end component, for example a client computer with a graphical user interface or web browser through which the user can interact with the implementation of the systems and techniques described herein, or any of these back-end, middleware or front-end components Includes combinations. The components of the system can be interconnected by any form or medium of digital data communication, for example a communication network. Examples of communication networks include local area networks ("LAN"), wide area networks ("WAN"), and the Internet.

컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 멀리 떨어져 있으며, 일반적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버의 관계는 각각의 컴퓨터에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다. The computing system can include a client and a server. The client and server are usually remote from each other and generally interact through a communication network. The relationship between the client and the server is caused by computer programs running on each computer and having a client-server relationship to each other.

다수의 실시 예들이 설명되었다. 그럼에도 불구하고, 본 발명의 사상 및 범위를 벗어나지 않으면서 다양한 변형이 이루어질 수 있음을 이해할 것이다. 또한, 도면에 도시된 논리 흐름은 바람직한 결과를 얻기 위해 도시된 특정 순서 또는 순차 순서를 요구하지 않는다. 또한, 다른 단계들이 제공되거나 설명된 흐름들로부터 제거될 수 있으며, 설명된 시스템들에 다른 컴포넌트들이 추가되거나 제거될 수 있다. 따라서, 다른 실시 예들은 다음의 청구항들의 범위 내에 있다.A number of embodiments have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Also, the logic flow shown in the figures does not require the specific order or sequential order shown to obtain the desired results. In addition, other steps can be provided or removed from the described flows, and other components can be added or removed from the described systems. Accordingly, other embodiments are within the scope of the following claims.

Claims (20)

중요 데이터를 사용하여 자동 음성 인식을 개선하기 위한 컴퓨터로 구현되는 방법으로서,
자동 음성 프로세서에 의해, 사용자에 의해 발화된 발언에 대응하는 특정한 오디오 데이터를 수신하는 단계;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터의 적어도 일부가 오디오 데이터의 로그에 로깅되지 않고 삭제될 중요 데이터(sensitive data)를 포함할 가능성이 크다고 결정하는 단계, 상기 중요 데이터는 중요 데이터의 유형과 연관되며, 상기 결정은 상기 특정한 오디오 데이터의 적어도 일부가 상기 중요 데이터의 유형과 연관된 신뢰 임계치 이상의 중요 데이터를 포함할 가능성을 가진다고 결정함에 기초하며;
상기 자동 음성 프로세서에 의해, 중요 데이터를 포함할 가능성이 큰 상기 특정한 오디오 데이터의 적어도 일부가 삭제되기 전에, 상기 특정한 오디오 데이터를 상기 자동 음성 프로세서에 대한 음향 모델들을 트레이닝하는 음향 모델 트레이닝 엔진에 제공하는 단계;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터가 상기 음향 모델 트레이닝 엔진에 제공된 후에, 상기 특정한 오디오의 적어도 일부를 삭제하는 단계;
상기 자동 음성 프로세서에 의해, 상기 음향 모델 트레이닝 엔진으로부터, 상기 특정한 오디오 데이터의 적어도 일부를 사용하여 트레이닝된 업데이트된 음향 모델을 수신하는 단계; 및
상기 자동 음성 프로세서에 의해, 후속적으로 수신된 오디오 데이터를 인식하기 위해 상기 업데이트된 음향 모델을 사용하는 단계를 포함하는 것을 특징으로 하는 방법.
A computer-implemented method for improving automatic speech recognition using sensitive data,
Receiving, by the automatic speech processor, specific audio data corresponding to the speech uttered by the user;
Determining, by the automatic speech processor, that at least a portion of the specific audio data is likely to include sensitive data to be deleted without being logged to a log of audio data, the sensitive data being selected from the type of sensitive data and Associated, and the determination is based on determining that at least a portion of the specific audio data has a possibility to include sensitive data above a confidence threshold associated with the type of sensitive data;
Providing, by the automatic speech processor, the specific audio data to an acoustic model training engine that trains acoustic models for the automatic speech processor before at least a portion of the specific audio data likely to contain important data is deleted. step;
Deleting, by the automatic speech processor, after the specific audio data is provided to the acoustic model training engine, at least a portion of the specific audio;
Receiving, by the automatic speech processor, from the acoustic model training engine, an updated acoustic model trained using at least a portion of the specific audio data; And
And using, by the automatic speech processor, the updated acoustic model to recognize subsequently received audio data.
청구항 1에 있어서,
상기 중요 데이터는 중요 데이터가 아닐 것으로 결정된 데이터가 삭제된 후의 기본 기간보다 짧은 기간 후에 삭제될 데이터인 것을 특징으로 하는 방법.
The method according to claim 1,
The method of claim 1, wherein the important data is data to be deleted after a period shorter than a basic period after the data determined to be not important data is deleted.
청구항 1에 있어서,
상기 중요 데이터의 각 유형은 삭제를 위해 연관된 미리 결정된 기간을 갖는 것을 특징으로 하는 방법.
The method according to claim 1,
Each type of sensitive data has a predetermined period associated with it for deletion.
청구항 1에 있어서,
상기 수신된 오디오 데이터의 적어도 일부를 익명화(anonymizing)하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
And anonymizing at least a portion of the received audio data.
청구항 1에 있어서,
상기 중요 데이터는 연락처 정보를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
The method of claim 1, wherein the important data includes contact information.
청구항 1에 있어서,
상기 중요 데이터는 개인 식별 정보를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
The method of claim 1, wherein the important data includes personal identification information.
청구항 1에 있어서,
상기 중요 데이터는 중요 금융 정보를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
The method of claim 1, wherein the important data includes important financial information.
청구항 1에 있어서,
상기 중요 데이터는 하나 이상의 미리 결정된 키워드들을 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Wherein the important data includes one or more predetermined keywords.
중요 데이터를 사용하여 자동 음성 인식을 개선하기 위한 시스템으로서,
하나 이상의 컴퓨터들 및 실행가능한 명령어들을 저장하는 하나 이상의 저장 디바이스들을 포함하며, 상기 명령어들은 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
자동 음성 프로세서에 의해, 사용자에 의해 발화된 발언에 대응하는 특정한 오디오 데이터를 수신하는 동작;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터의 적어도 일부가 오디오 데이터의 로그에 로깅되지 않고 삭제될 중요 데이터(sensitive data)를 포함할 가능성이 크다고 결정하는 동작, 상기 중요 데이터는 중요 데이터의 유형과 연관되며, 상기 결정은 상기 특정한 오디오 데이터의 적어도 일부가 상기 중요 데이터의 유형과 연관된 신뢰 임계치 이상의 중요 데이터를 포함할 가능성을 가진다고 결정함에 기초하며;
상기 자동 음성 프로세서에 의해, 중요 데이터를 포함할 가능성이 큰 상기 특정한 오디오 데이터의 적어도 일부가 삭제되기 전에, 상기 특정한 오디오 데이터를 상기 자동 음성 프로세서에 대한 음향 모델들을 트레이닝하는 음향 모델 트레이닝 엔진에 제공하는 동작;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터가 상기 음향 모델 트레이닝 엔진에 제공된 후에, 상기 특정한 오디오의 적어도 일부를 삭제하는 동작;
상기 자동 음성 프로세서에 의해, 상기 음향 모델 트레이닝 엔진으로부터, 상기 특정한 오디오 데이터의 적어도 일부를 사용하여 트레이닝된 업데이트된 음향 모델을 수신하는 동작; 및
상기 자동 음성 프로세서에 의해, 후속적으로 수신된 오디오 데이터를 인식하기 위해 상기 업데이트된 음향 모델을 사용하는 동작을 포함하는 것을 특징으로 하는 시스템.
A system for improving automatic speech recognition using important data,
And one or more computers and one or more storage devices storing executable instructions, the instructions, when executed by the one or more computers, cause the one or more computers to perform operations, the operations being:
Receiving, by the automatic speech processor, specific audio data corresponding to the speech uttered by the user;
Determining, by the automatic speech processor, that at least a portion of the specific audio data is likely to contain sensitive data to be deleted without being logged to the log of audio data, the sensitive data being selected from the type of sensitive data and Associated, and the determination is based on determining that at least a portion of the specific audio data has a possibility to include sensitive data above a confidence threshold associated with the type of sensitive data;
Providing, by the automatic speech processor, the specific audio data to an acoustic model training engine that trains acoustic models for the automatic speech processor before at least a portion of the specific audio data likely to contain important data is deleted. action;
Deleting, by the automatic speech processor, at least a portion of the specific audio after the specific audio data is provided to the acoustic model training engine;
Receiving, by the automatic speech processor, from the acoustic model training engine, an updated acoustic model trained using at least a portion of the specific audio data; And
And using, by the automatic speech processor, the updated acoustic model to recognize subsequently received audio data.
청구항 9에 있어서,
상기 중요 데이터는 중요 데이터가 아닐 것으로 결정된 데이터가 삭제된 후의 기본 기간보다 짧은 기간 후에 삭제될 데이터인 것을 특징으로 하는 시스템.
The method according to claim 9,
The system is characterized in that the important data is data to be deleted after a period shorter than the basic period after the data determined to be not important data is deleted.
청구항 9에 있어서,
상기 중요 데이터의 각 유형은 삭제를 위해 연관된 미리 결정된 기간을 갖는 것을 특징으로 하는 시스템.
The method according to claim 9,
Each type of sensitive data has a predetermined period associated with it for deletion.
청구항 9에 있어서,
상기 수신된 오디오 데이터의 적어도 일부를 익명화(anonymizing)하는 동작을 더 포함하는 것을 특징으로 하는 시스템.
The method according to claim 9,
And anonymizing at least a portion of the received audio data.
청구항 9에 있어서,
상기 중요 데이터는 연락처 정보를 포함하는 것을 특징으로 하는 시스템.
The method according to claim 9,
The important data comprises a contact information system.
청구항 9에 있어서,
상기 중요 데이터는 개인 식별 정보를 포함하는 것을 특징으로 하는 시스템.
The method according to claim 9,
The important data system characterized in that it comprises personal identification information.
청구항 9에 있어서,
상기 중요 데이터는 중요 금융 정보를 포함하는 것을 특징으로 하는 시스템.
The method according to claim 9,
The system, characterized in that the important data includes important financial information.
청구항 9에 있어서,
상기 중요 데이터는 하나 이상의 미리 결정된 키워드들을 포함하는 것을 특징으로 하는 시스템.
The method according to claim 9,
Wherein the important data comprises one or more predetermined keywords.
하나 이상의 컴퓨터들에 의해 실행가능한 명령어들을 포함하는 소프트웨어를 저장하는 컴퓨터 판독가능 비일시적 매체로서, 상기 명령어들은 실행시 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
자동 음성 프로세서에 의해, 사용자에 의해 발화된 발언에 대응하는 특정한 오디오 데이터를 수신하는 동작;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터의 적어도 일부가 오디오 데이터의 로그에 로깅되지 않고 삭제될 중요 데이터(sensitive data)를 포함할 가능성이 크다고 결정하는 동작, 상기 중요 데이터는 중요 데이터의 유형과 연관되며, 상기 결정은 상기 특정한 오디오 데이터의 적어도 일부가 상기 중요 데이터의 유형과 연관된 신뢰 임계치 이상의 중요 데이터를 포함할 가능성을 가진다고 결정함에 기초하며;
상기 자동 음성 프로세서에 의해, 중요 데이터를 포함할 가능성이 큰 상기 특정한 오디오 데이터의 적어도 일부가 삭제되기 전에, 상기 특정한 오디오 데이터를 상기 자동 음성 프로세서에 대한 음향 모델들을 트레이닝하는 음향 모델 트레이닝 엔진에 제공하는 동작;
상기 자동 음성 프로세서에 의해, 상기 특정한 오디오 데이터가 상기 음향 모델 트레이닝 엔진에 제공된 후에, 상기 특정한 오디오의 적어도 일부를 삭제하는 동작;
상기 자동 음성 프로세서에 의해, 상기 음향 모델 트레이닝 엔진으로부터, 상기 특정한 오디오 데이터의 적어도 일부를 사용하여 트레이닝된 업데이트된 음향 모델을 수신하는 동작; 및
상기 자동 음성 프로세서에 의해, 후속적으로 수신된 오디오 데이터를 인식하기 위해 상기 업데이트된 음향 모델을 사용하는 동작을 포함하는 것을 특징으로 하는 컴퓨터 판독가능 비일시적 매체.
A computer-readable non-transitory medium storing software comprising instructions executable by one or more computers, the instructions causing the one or more computers to perform operations when executed, the operations:
Receiving, by the automatic speech processor, specific audio data corresponding to the speech uttered by the user;
Determining, by the automatic speech processor, that at least a portion of the specific audio data is likely to contain sensitive data to be deleted without being logged to the log of audio data, the sensitive data being selected from the type of sensitive data and Associated, and the determination is based on determining that at least a portion of the specific audio data has a possibility to include sensitive data above a confidence threshold associated with the type of sensitive data;
Providing, by the automatic speech processor, the specific audio data to an acoustic model training engine that trains acoustic models for the automatic speech processor before at least a portion of the specific audio data likely to contain important data is deleted. action;
Deleting, by the automatic speech processor, at least a portion of the specific audio after the specific audio data is provided to the acoustic model training engine;
Receiving, by the automatic speech processor, from the acoustic model training engine, an updated acoustic model trained using at least a portion of the specific audio data; And
And using the updated acoustic model to recognize subsequently received audio data by the automatic speech processor.
청구항 17에 있어서,
상기 중요 데이터는 중요 데이터가 아닐 것으로 결정된 데이터가 삭제된 후의 기본 기간보다 짧은 기간 후에 삭제될 데이터인 것을 특징으로 하는 컴퓨터 판독가능 비일시적 매체.
The method according to claim 17,
And wherein the important data is data to be deleted after a period shorter than the basic period after the data determined not to be important data is deleted.
청구항 17에 있어서,
상기 중요 데이터의 각 유형은 삭제를 위해 연관된 미리 결정된 기간을 갖는 것을 특징으로 하는 컴퓨터 판독가능 비일시적 매체.
The method according to claim 17,
Each type of sensitive data has a predetermined period associated with it for deletion.
청구항 17에 있어서,
상기 수신된 오디오 데이터의 적어도 일부를 익명화(anonymizing)하는 동작을 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 비일시적 매체.
The method according to claim 17,
And anonymizing at least a portion of the received audio data.
KR1020197017008A 2015-06-29 2016-05-23 Privacy-preserving training corpus selection KR102109876B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/753,912 2015-06-29
US14/753,912 US9881613B2 (en) 2015-06-29 2015-06-29 Privacy-preserving training corpus selection
PCT/US2016/033773 WO2017003579A1 (en) 2015-06-29 2016-05-23 Privacy-preserving training corpus selection

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020177019375A Division KR101991473B1 (en) 2015-06-29 2016-05-23 Privacy-preserving training corpus selection

Publications (2)

Publication Number Publication Date
KR20190071010A KR20190071010A (en) 2019-06-21
KR102109876B1 true KR102109876B1 (en) 2020-05-28

Family

ID=56097336

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177019375A KR101991473B1 (en) 2015-06-29 2016-05-23 Privacy-preserving training corpus selection
KR1020197017008A KR102109876B1 (en) 2015-06-29 2016-05-23 Privacy-preserving training corpus selection

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020177019375A KR101991473B1 (en) 2015-06-29 2016-05-23 Privacy-preserving training corpus selection

Country Status (8)

Country Link
US (2) US9881613B2 (en)
EP (1) EP3234944B1 (en)
JP (1) JP6486503B2 (en)
KR (2) KR101991473B1 (en)
CN (2) CN107209842B (en)
DE (1) DE112016000292B4 (en)
GB (1) GB2551917B (en)
WO (1) WO2017003579A1 (en)

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US10199051B2 (en) 2013-02-07 2019-02-05 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
EP3480811A1 (en) 2014-05-30 2019-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9881613B2 (en) * 2015-06-29 2018-01-30 Google Llc Privacy-preserving training corpus selection
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US20180358021A1 (en) * 2015-12-23 2018-12-13 Intel Corporation Biometric information for dialog system
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10755172B2 (en) 2016-06-22 2020-08-25 Massachusetts Institute Of Technology Secure training of multi-party deep neural network
US10522137B2 (en) * 2017-04-20 2019-12-31 Google Llc Multi-user authentication on a device
CN107103903B (en) * 2017-05-05 2020-05-29 百度在线网络技术(北京)有限公司 Acoustic model training method and device based on artificial intelligence and storage medium
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. Low-latency intelligent automated assistant
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
CN107240395B (en) * 2017-06-16 2020-04-28 百度在线网络技术(北京)有限公司 Acoustic model training method and device, computer equipment and storage medium
US11210461B2 (en) * 2017-07-05 2021-12-28 Interactions Llc Real-time privacy filter
US10540521B2 (en) * 2017-08-24 2020-01-21 International Business Machines Corporation Selective enforcement of privacy and confidentiality for optimization of voice applications
EP3698358A1 (en) * 2017-10-18 2020-08-26 Soapbox Labs Ltd. Methods and systems for processing audio signals containing speech data
US11216745B2 (en) * 2017-11-07 2022-01-04 Google Llc Incognito mode for personalized machine-learned models
EP3496090A1 (en) * 2017-12-07 2019-06-12 Thomson Licensing Device and method for privacy-preserving vocal interaction
US10861463B2 (en) * 2018-01-09 2020-12-08 Sennheiser Electronic Gmbh & Co. Kg Method for speech processing and speech processing device
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK179822B1 (en) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
KR102155380B1 (en) * 2018-06-29 2020-09-14 주식회사 디플리 Method and Device for Analyzing Real-time Sound
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
CN111031329B (en) * 2018-10-10 2023-08-15 北京默契破冰科技有限公司 Method, apparatus and computer storage medium for managing audio data
US11138334B1 (en) * 2018-10-17 2021-10-05 Medallia, Inc. Use of ASR confidence to improve reliability of automatic audio redaction
KR20210052564A (en) * 2018-11-05 2021-05-10 주식회사 엘솔루 Optimal language model generation method using big data and device therefor
US10573312B1 (en) 2018-12-04 2020-02-25 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
US11170761B2 (en) 2018-12-04 2021-11-09 Sorenson Ip Holdings, Llc Training of speech recognition systems
US10388272B1 (en) 2018-12-04 2019-08-20 Sorenson Ip Holdings, Llc Training speech recognition systems using word sequences
US11017778B1 (en) 2018-12-04 2021-05-25 Sorenson Ip Holdings, Llc Switching between speech recognition systems
KR102041621B1 (en) * 2019-02-25 2019-11-06 (주)미디어코퍼스 System for providing artificial intelligence based dialogue type corpus analyze service, and building method therefor
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11545136B2 (en) * 2019-10-21 2023-01-03 Nuance Communications, Inc. System and method using parameterized speech synthesis to train acoustic models
US11769496B1 (en) * 2019-12-12 2023-09-26 Amazon Technologies, Inc. Predictive deletion of user input
CN111064797B (en) * 2019-12-20 2023-01-10 深圳前海微众银行股份有限公司 Data processing method and device
JP7310673B2 (en) * 2020-03-23 2023-07-19 横河電機株式会社 Data management system, data management method, and data management program
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
CN111711562A (en) * 2020-07-16 2020-09-25 网易(杭州)网络有限公司 Message processing method and device, computer storage medium and electronic equipment
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11488604B2 (en) 2020-08-19 2022-11-01 Sorenson Ip Holdings, Llc Transcription of audio
CN113033191A (en) * 2021-03-30 2021-06-25 上海思必驰信息科技有限公司 Voice data processing method, electronic device and computer readable storage medium
US11960625B2 (en) * 2021-05-06 2024-04-16 Jpmorgan Chase Bank, N.A. Systems and methods for protecting sensitive data in user online activities
US20220399009A1 (en) * 2021-06-09 2022-12-15 International Business Machines Corporation Protecting sensitive information in conversational exchanges

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110099602A1 (en) * 2009-10-28 2011-04-28 Liveops, Inc. System and method for implementing adaptive security zones
WO2012132296A1 (en) * 2011-03-25 2012-10-04 日本電気株式会社 Information leakage prevention device, method and program
WO2014133525A1 (en) * 2013-02-28 2014-09-04 Nuance Communication, Inc. Server-side asr adaptation to speaker, device and noise condition via non-asr audio transmission
US20140278426A1 (en) * 2013-03-13 2014-09-18 Nuance Communications, Inc. Data shredding for speech recognition acoustic model training under data retention restrictions

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3725470B2 (en) * 2001-12-28 2005-12-14 株式会社東芝 Corpus processing apparatus, method, and program for creating statistical language model
US8473451B1 (en) * 2004-07-30 2013-06-25 At&T Intellectual Property I, L.P. Preserving privacy in natural language databases
US20070244700A1 (en) * 2006-04-12 2007-10-18 Jonathan Kahn Session File Modification with Selective Replacement of Session File Components
US8073681B2 (en) * 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
JP2008219534A (en) * 2007-03-06 2008-09-18 Sharp Corp Radio communication system
US8346532B2 (en) 2008-07-11 2013-01-01 International Business Machines Corporation Managing the creation, detection, and maintenance of sensitive information
JP5164922B2 (en) * 2009-05-19 2013-03-21 日本電信電話株式会社 Personal information deleting apparatus and method, program and recording medium
US9111540B2 (en) * 2009-06-09 2015-08-18 Microsoft Technology Licensing, Llc Local and remote aggregation of feedback data for speech recognition
US8880403B2 (en) * 2010-09-03 2014-11-04 Canyon Ip Holdings Llc Methods and systems for obtaining language models for transcribing communications
US8401853B2 (en) * 2010-09-22 2013-03-19 At&T Intellectual Property I, L.P. System and method for enhancing voice-enabled search based on automated demographic identification
US9484018B2 (en) * 2010-11-23 2016-11-01 At&T Intellectual Property I, L.P. System and method for building and evaluating automatic speech recognition via an application programmer interface
CN102572839B (en) * 2010-12-14 2016-03-02 中国移动通信集团四川有限公司 A kind of method and system controlling voice communication
US8688601B2 (en) * 2011-05-23 2014-04-01 Symantec Corporation Systems and methods for generating machine learning-based classifiers for detecting specific categories of sensitive information
US8880398B1 (en) * 2012-07-13 2014-11-04 Google Inc. Localized speech recognition with offload
US8990091B2 (en) * 2012-07-27 2015-03-24 Nuance Communications, Inc. Parsimonious protection of sensitive data in enterprise dialog systems
US8831957B2 (en) * 2012-08-01 2014-09-09 Google Inc. Speech recognition models based on location indicia
US9093069B2 (en) * 2012-11-05 2015-07-28 Nuance Communications, Inc. Privacy-sensitive speech model creation via aggregation of multiple user models
US8494853B1 (en) * 2013-01-04 2013-07-23 Google Inc. Methods and systems for providing speech recognition systems based on speech recordings logs
US9131369B2 (en) * 2013-01-24 2015-09-08 Nuance Communications, Inc. Protection of private information in a client/server automatic speech recognition system
US9514740B2 (en) * 2013-03-13 2016-12-06 Nuance Communications, Inc. Data shredding for speech recognition language model training under data retention restrictions
US9305174B2 (en) * 2013-04-09 2016-04-05 Robert Hansen Electronic clipboard protection
US9881613B2 (en) * 2015-06-29 2018-01-30 Google Llc Privacy-preserving training corpus selection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110099602A1 (en) * 2009-10-28 2011-04-28 Liveops, Inc. System and method for implementing adaptive security zones
WO2012132296A1 (en) * 2011-03-25 2012-10-04 日本電気株式会社 Information leakage prevention device, method and program
WO2014133525A1 (en) * 2013-02-28 2014-09-04 Nuance Communication, Inc. Server-side asr adaptation to speaker, device and noise condition via non-asr audio transmission
US20140278426A1 (en) * 2013-03-13 2014-09-18 Nuance Communications, Inc. Data shredding for speech recognition acoustic model training under data retention restrictions

Also Published As

Publication number Publication date
GB201711683D0 (en) 2017-09-06
CN111695146A (en) 2020-09-22
KR101991473B1 (en) 2019-09-30
US9990925B2 (en) 2018-06-05
GB2551917B (en) 2021-10-06
DE112016000292B4 (en) 2021-10-07
JP6486503B2 (en) 2019-03-20
WO2017003579A1 (en) 2017-01-05
KR20190071010A (en) 2019-06-21
US20180108355A1 (en) 2018-04-19
EP3234944B1 (en) 2023-02-22
EP3234944A1 (en) 2017-10-25
GB2551917A (en) 2018-01-03
CN107209842B (en) 2020-05-05
US20160379639A1 (en) 2016-12-29
KR20170094415A (en) 2017-08-17
DE112016000292T5 (en) 2017-11-09
US9881613B2 (en) 2018-01-30
JP2018506081A (en) 2018-03-01
CN111695146B (en) 2023-12-15
CN107209842A (en) 2017-09-26

Similar Documents

Publication Publication Date Title
KR102109876B1 (en) Privacy-preserving training corpus selection
US11289096B2 (en) Providing answers to voice queries using user feedback
US11947603B2 (en) Unified message search
US10276163B1 (en) Speech recognition parameter adjustment
US10510338B2 (en) Voice recognition grammar selection based on context
CN108463849B (en) Computer-implemented method and computing system
US8417530B1 (en) Accent-influenced search results
CN110325987B (en) Context voice driven deep bookmarks
WO2020233381A1 (en) Speech recognition-based service request method and apparatus, and computer device
KR20200013774A (en) Pair a Voice-Enabled Device with a Display Device
US9747891B1 (en) Name pronunciation recommendation
KR102222637B1 (en) Apparatus for analysis of emotion between users, interactive agent system using the same, terminal apparatus for analysis of emotion between users and method of the same
US10296510B2 (en) Search query based form populator
US9104759B1 (en) Identifying stem variants of search query terms

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant