KR102536944B1 - 음성 신호 처리 방법 및 장치 - Google Patents

음성 신호 처리 방법 및 장치 Download PDF

Info

Publication number
KR102536944B1
KR102536944B1 KR1020150152525A KR20150152525A KR102536944B1 KR 102536944 B1 KR102536944 B1 KR 102536944B1 KR 1020150152525 A KR1020150152525 A KR 1020150152525A KR 20150152525 A KR20150152525 A KR 20150152525A KR 102536944 B1 KR102536944 B1 KR 102536944B1
Authority
KR
South Korea
Prior art keywords
section
information
voice
server
terminal
Prior art date
Application number
KR1020150152525A
Other languages
English (en)
Other versions
KR20160055059A (ko
Inventor
김태윤
김상하
김성수
이진식
한창우
김은경
이재원
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to EP24158659.3A priority Critical patent/EP4350558A3/en
Priority to CN202010629273.8A priority patent/CN111787012B/zh
Priority to EP15193742.2A priority patent/EP3018654B1/en
Priority to EP20161030.0A priority patent/EP3690879A3/en
Priority to US14/936,043 priority patent/US10319367B2/en
Priority to CN201510756263.XA priority patent/CN105592067B/zh
Publication of KR20160055059A publication Critical patent/KR20160055059A/ko
Priority to US16/399,202 priority patent/US10600405B2/en
Priority to US16/399,211 priority patent/US11308936B2/en
Priority to KR1020230065922A priority patent/KR20230075386A/ko
Application granted granted Critical
Publication of KR102536944B1 publication Critical patent/KR102536944B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • G10L15/07Adaptation to the speaker
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Telephonic Communication Services (AREA)

Abstract

음성 신호(speech signal)를 수신하는 단계; 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간(personalized information section)을 검출하는 단계; 상기 음성 신호 중 상기 개인화 정보 구간에 대응하는 음성 신호에 대하여 상기 개인 정보를 기반으로 생성된 개인화 모델(personalized model)을 이용하여 데이터 처리하는 단계; 및 서버로부터 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간(general information section)에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 수신하는 단계를 포함하는 단말의 음성 신호 처리 방법이 개시된다.

Description

음성 신호 처리 방법 및 장치{METHOD AND APPARATUS FOR SPEECH SIGNAL PROCESSING}
본 발명은 음성 신호 처리 방법 및 장치에 관한 것으로, 보다 구체적으로 개인화 모델을 이용하면서도 개인 정보를 보호할 수 있는 음성 신호 처리 방법 및 장치에 관한 것이다.
음성 인식(speech recognition)은 사용자의 음성을 입력 받아 문자로 변환하는 기술이다. 이러한 과정을 자동으로 수행한다고 하여 자동 음성 인식(Automatic Speech Recognition, 이하 ASR)이라고 부르기도 한다. 근래에 들어 스마트 폰이나 TV 등의 기기에서 키보드 입력을 대체하기 위한 인터페이스 기술로써 널리 확산되고 있다. 언어 이해(Natural Language Understanding, 이하 NLU)는 음성 인식의 인식 결과로부터 사용자 발화의 의미를 추출하는 기술이다. 단순히 사용자의 음성을 인식하는 것이 아니라 보다 높은 수준의 사용자 음성의 분석을 수행하여 음성의 의미를 보다 정확하게 파악할 수 있다.
이러한 음성 인식 및 언어 이해 시스템은 일반적으로 음성 신호를 입력받는 클라이언트(Client)와 음성 신호로부터 음성 인식 및 언어 이해를 수행하는 음성 인식 및 언어 이해 엔진(ASR/NLU engine)으로 나눌 수 있으며, 음성 신호 처리 속도를 높이기 위하여 두 개의 모듈은 서로 떨어지도록 디자인 될 수 있다. 이 경우, 프로세싱 능력과 데이터 저장 능력에 제한이 있는 스마트폰이나 TV 등의 디바이스는 클라이언트로, 음성 인식 및 언어 이해 엔진은 높은 연산 능력을 갖는 독립된 서버 형태로 구성이 가능하며, 이 두 모듈은 네트워크를 통하여 연결된다. 사용자와 가까운 곳에 위치하는 디바이스는 음성 신호를 입력 받는 역할을 수행하고, 데이터 처리 속도가 빠른 서버는 음성 인식 및 언어 이해를 수행하는 역할을 수행하는 것이다. 다른 형태의 구성으로는 서버 외에 디바이스 내부에도 음성 인식 및 언어 이해 엔진을 장치하여, 두 개의 음성 인식 및 언어 이해 엔진이 서로 협조하여 음성 인식 및 언어 이해를 수행 하는 구성이 있을 수 있다.
이러한 음성 인식 및 언어 이해 시스템의 성능을 높이기 위한 방법 중 하나로, 사용자 별로 데이터를 수집하여 사용자별 모델을 생성하는 방법이 있다. 이러한 사용자별 모델을 개인화 모델(personalized model)이라고 하고, 이러한 방법을 개인화 모델링(personalized modeling)이라고 한다. 개인화 모델은 특정 개인에 대한 맞춤형 모델의 생성이 가능하기 때문에 불특정 다수를 위해 만들어진 일반 모델(General model) 에 비하여 더 높은 성능을 가지는 것이 일반적이다.
다만, 개인화 모델링을 사용하는 경우, 개인화 모델을 생성하기 위하여 사용자의 개인 정보를 이용해야 하는데 개인 정보의 전송 및 처리 과정에서 정보 보호의 문제점이 발생할 수 있고, 이를 해결하기 위하여 암호화 기술이 적용되는 경우, 처리 속도가 느려진다는 문제점이 발생할 수 있다.
개시된 실시예는 개인화 모델을 이용하면서도 개인 정보를 보호할 수 있는 음성 신호 처리 방법 및 장치를 제공한다.
구체적으로, 개시된 실시예에서는 개인화 정보 구간 및 일반 정보 구간을 단말과 서버에 나누어 처리하는 음성 신호 처리 방법 및 장치를 제공한다.
또한, 개시된 실시예에서는 서버에서 처리한 음성 신호에 대하여 단말이 개인화 모델을 이용하여 다시 처리하는 음성 신호 처리 방법 및 장치를 제공한다.
또한, 개시된 실시예에서는 ID 기반의 개인화 모델을 이용하는 음성 신호 처리 방법 및 장치를 제공한다.
개시된 실시예에 따른 단말의 음성 신호 처리 방법은, 음성 신호(speech signal)를 수신하는 단계; 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간(personalized information section)을 검출하는 단계; 상기 음성 신호 중 상기 개인화 정보 구간에 대응하는 음성 신호에 대하여 상기 개인 정보를 기반으로 생성된 개인화 모델(personalized model)을 이용하여 데이터 처리하는 단계; 및 서버로부터 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간(general information section)에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 수신하는 단계를 포함한다.
또한, 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 서버로 전송하는 단계를 더 포함할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹(marking)한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 서버로부터 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 수신하는 단계를 더 포함할 수 있다.
또한, 상기 서버로부터 수신한 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는, 상기 서버가 일반 모델을 이용하여 상기 일반 정보 구간에 대응하는 음성 신호를 처리한 결과일 수 있다.
개시된 실시예에 따른 서버의 음성 신호 처리 방법은, 음성 신호를 수신하는 단계; 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하는 단계; 상기 음성 신호 중 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하는 단계; 및 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 단말로 전송하는 단계를 포함한다.
또한, 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 단말로 전송하는 단계를 더 포함할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹(marking)한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 단말로부터 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 수신하는 단계를 더 포함할 수 있다.
개시된 다른 실시예에 따른 단말의 음성 신호 처리 방법은, 음성 신호를 수신하는 단계; 서버로부터 상기 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리한 결과를 수신하는 단계; 및 상기 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델 및 상기 데이터 처리 결과를 이용하여 데이터 처리하는 단계를 포함한다.
또한, 상기 음성 신호에 대하여 상기 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리를 수행하는 단계는, 상기 개인 정보를 포함하는 개인화 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리를 수행하는 단계를 포함할 수 있다.
또한, 상기 음성 신호 중 상기 개인화 정보 구간을 검출하는 단계를 더 포함할 수 있다.
또한, 상기 서버로부터 상기 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신하는 단계를 더 포함할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹(marking)한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 개인화 모델은, 개인화 음성 인식 모델(personalized speech recognition model), 언어 이해 모델(personalized natural language understanding model) 및 개인화 렉시컬 모델(personalized lexical model) 중 적어도 하나 이상의 모델일 수 있다.
개시된 또다른 실시예에 따른 단말의 음성 신호 처리 방법은, 개인 정보 에 ID를 매핑시켜 매핑 테이블을 생성하는 단계; 상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하는 단계; 상기 ID 기반의 개인화 모델을 서버로 전송하는 단계; 상기 서버로부터 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용해 데이터 처리한 결과를 수신하는 단계; 및 상기 데이터 처리 결과 및 상기 매핑 테이블을 이용하여 상기 ID에 대응하는 상기 개인 정보를 복원하는 단계를 포함한다.
또한, 상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하는 단계는, 상기 개인 정보에 매핑된 ID를 음향에 매핑된 ID인 음향 단위 ID로 나타내는 단계를 포함하는 것을 특징으로 하는 단계를 포함할 수 있다.
또한, 상기 음향 단위 ID는, 상기 서버와 합의에 따라 상기 음향에 매핑된 ID일 수 있다.
또한, 상기 개인 정보로부터 생성되는 부가 정보에 ID를 매핑시켜 상기 매핑 테이블을 생성하는 단계를 더 포함할 수 있다.
개시된 또다른 실시예에 따른 서버의 음성 신호 처리 방법은, 단말로부터 ID 기반의 개인화 모델을 수신하는 단계; 음성 신호를 수신하는 단계; 상기 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용하여 데이터 처리하는 단계; 및 상기 데이터 처리 결과를 상기 단말로 전송하는 단계를 포함한다.
또한, 상기 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용하여 데이터 처리하는 단계는, 상기 단말과 합의에 따라 음향에 매핑된 ID인 음향 단위 ID를 이용하여 개인 정보에 매핑된 ID를 나타내는 단계를 포함할 수 있다.
개시된 실시예에 따른 단말은, 음성을 수신하는 수신부; 서버와 통신을 수행하는 통신부; 및 음성 신호를 수신하고, 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하며, 상기 음성 신호 중 상기 개인화 정보 구간에 대응하는 음성 신호에 대하여 상기 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하고, 상기 서버로부터 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 수신하도록 제어하는 제어부를 포함한다.
또한, 상기 제어부는, 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 서버로 전송하도록 제어할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 제어부는, 상기 서버로부터 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어할 수 있다.
또한, 상기 서버로부터 수신한 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는, 상기 서버가 일반 모델을 이용하여 상기 일반 정보 구간에 대응하는 음성 신호를 처리한 결과일 수 있다.
개시된 실시예에 따른 서버는, 음성을 수신하는 수신부; 단말과 통신을 수행하는 통신부; 및 음성 신호를 수신하고, 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하며, 상기 음성 신호 중 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하고, 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 상기 단말로 전송하도록 제어하는 제어부를 포함할 수 있다.
또한, 상기 제어부는, 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 단말로 전송하도록 제어할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 제어부는, 상기 단말로부터 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어할 수 있다.
개시된 다른 실시예에 따른 단말은, 서버와 통신을 수행하는 통신부; 및 상기 서버로부터 상기 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리한 결과를 수신하고, 상기 음성 신호에 대하여 상기 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하도록 제어하는 제어부를 포함한다.
또한, 상기 제어부는, 상기 음성 신호에 대하여 상기 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리를 수행 시, 상기 개인 정보를 포함하는 개인화 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리를 수행하도록 제어할 수 있다.
또한, 상기 제어부는, 상기 음성 신호 중 상기 개인화 정보 구간을 검출하도록 제어할 수 있다.
또한, 상기 제어부는, 상기 서버로부터 상기 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어할 수 있다.
또한, 상기 음성 구간 정보는, 상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
또한, 상기 개인화 모델은, 개인화 음성 인식 모델, 언어 이해 모델 및 개인화 렉시컬 모델 중 적어도 하나 이상의 모델일 수 있다.
개시된 또다른 실시예에 따른 단말은, 음성 신호를 수신하는 수신부: 서버와 통신을 수행하는 통신부; 및 개인 정보에 ID를 대응시켜 매핑 테이블을 생성하고, 상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하며, 상기 ID 기반의 개인화 모델을 상기 서버로 전송하고, 상기 서버로부터 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용해 데이터 처리한 결과를 수신하며, 상기 데이터 처리 결과 및 상기 매핑 테이블을 이용하여 상기 ID에 대응하는 상기 개인 정보를 복원하도록 제어하는 제어부를 포함한다.
또한, 상기 제어부는, 상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성 시, 상기 개인 정보에 매핑된 ID를 음향에 매핑된 ID인 음향 단위 ID로 나타내도록 제어할 수 있다.
또한, 상기 음향 단위 ID는, 상기 서버와 합의에 따라 상기 음향에 매핑된 ID일 수 있다.
또한, 상기 제어부는, 상기 개인 정보로부터 생성되는 부가 정보에 ID를 매핑시켜 상기 매핑 테이블을 생성하도록 제어할 수 있다.
개시된 또다른 실시예에 따른 서버는, 음성 신호를 수신하는 수신부; 단말과 통신을 수행하는 통신부; 및 단말로부터 ID 기반의 개인화 모델을 수신하고, 음성 신호를 수신하며, 상기 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용하여 데이터 처리하고, 상기 데이터 처리 결과를 상기 단말로 전송하도록 제어할 수 있다.
또한, 상기 제어부는, 상기 단말과 합의에 따라 음향에 매핑된 ID인 음향 단위 ID를 이용하여 개인 정보에 매핑된 ID를 나타내도록 제어할 수 있다.
도 1은 개시된 실시예에 따른 단말의 내부 구성을 나타내는 블록도이다.
도 2는 개시된 실시예에 따른 서버의 내부 구성을 나타내는 블록도이다.
도 3은 도 1에서 도시하는 단말의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 4는 도 2에서 도시하는 서버의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 5는 개시된 실시예에 따른 단말의 음성 처리 방법을 나타내는 순서도이다.
도 6은 개시된 실시예에 따른 서버의 음성 처리 방법을 나타내는 순서도이다.
도 7은 개인화 정보 구간과 일반 정보 구간을 설명하는 도면이다.
도 8은 개시된 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
도 9는 개시된 다른 실시예에 따른 단말의 음성 처리 방법을 나타내는 순서도이다.
도 10은 개시된 다른 실시예에 따른 서버의 음성 처리 방법을 나타내는 순서도이다.
도 11은 개시된 다른 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
도 12는 개시된 또다른 실시예에 따른 단말의 내부 구성을 나타내는 블록도이다.
도 13은 개시된 또다른 실시예에 따른 서버의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 14는 도 12에서 도시하는 단말의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 15는 도 13에서 도시하는 단말의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 16은 개시된 또다른 실시예에 따른 단말의 음성 처리 방법을 나타내는 순서도이다.
도 17은 개시된 또다른 실시예에 따른 서버의 음성 처리 방법을 나타내는 순서도이다.
도 18은 개인 정보를 나타내는 도면이다.
도 19는 개인 정보를 발음 기호 별로 나타내는 도면이다.
도 20은 개인 정보를 ID에 매핑시킨 매핑 테이블을 나타내는 도면이다.
도 21은 개인 정보의 발음 기호를 ID에 매핑시킨 매핑 테이블을 나타내는 도면이다.
도 22는 개인 정보 ID를 발음 기호 ID로 나타내는 도면이다.
도 23은 개시된 다른 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 개시된 실시예는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 개시된 실시예의 개시가 완전하도록 하고, 개시된 실시예가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 개시된 실시예는 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.
아래에서는 첨부한 도면을 참고하여 개시된 실시예의 실시예에 대하여 개시된 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 개시된 실시예는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 개시된 실시예를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.
개시된 실시예에서 사용되는 용어는 개시된 실시예에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 개시된 실시예에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 개시된 실시예의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서, 개인화 정보 구간(personalized information section)은 음성 신호 중 직간접적으로 각 개인을 식별할 수 있는 개인 정보를 포함하는 구간을 의미한다. 예를 들어, 음성 신호 중에 사용자 단말의 전화번호부에 저장된 이름, 사용자의 검색 기록, 사용자 위치 정보 등을 포함하는 구간이 개인화 정보 구간에 해당할 수 있다.
본 명세서에서 일반 정보 구간(general information section)은 음성 신호 중 개인 정보가 아닌 일반적인 정보를 포함하는 구간으로, 개인화 정보 구간을 제외한 나머지 구간을 의미한다. 예를 들어, ‘전화해’, ‘밥 먹었어?’ 등과 같이 일반적인 의미를 갖는 문장을 포함하는 구간이 일반 정보 구간에 해당할 수 있다.
본 명세서에서 개인화 모델(personalized model)은, 개인별 특징을 반영한 음성 처리 모델로, 특정 개인에 대한 맞춤형 음성 처리 모델이다.
본 명세서에서 일반 모델(general model)은, 일반적인 음성 처리 모델로, 특정 개인이 아닌 불특정인의 음성 처리를 위한 음성 처리 모델이다.
도 1은 개시된 실시예에 따른 단말의 내부 구성을 나타내는 블록도이다.
도 1을 참조하면, 개시된 실시예에 따른 단말(100)은 수신부(110), 통신부(130) 및 제어부(150)를 포함한다.
수신부(110)는 음성 신호를 수신하는 역할을 수행한다. 수신부(110)는 마이크부, USB 인터페이스부, DVD 인터페이스부 등 다양한 구성 요소를 포함할 수 있다. 예를 들어, 수신부(110)가 마이크부를 포함하는 경우, 단말(100)은 사용자 음성 신호를 마이크부를 통해 직접 수신할 수 있다. 또한, 수신부(110)가 USB 인터페이스부를 포함하는 경우, 단말(100)은 음성 신호 파일을 USB로부터 수신할 수도 있다. 나아가, 통신부(130)를 통해 외부 장치로부터 음성 신호를 수신하는 경우, 통신부(130)가 수신부(110)의 역할을 수행하는 것도 가능하다.
통신부(130)는 외부 장치와 통신하는 역할을 수행한다. 통신부(130)는 유선 또는 무선으로 네트워크와 연결되어 외부 장치와의 통신을 수행할 수 있다. 개시된 실시예에 따르면, 통신부(130)는 서버와 통신하며 데이터를 송수신할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신 모듈, 이동 통신 모듈, 무선 인터넷 모듈, 유선 인터넷 모듈 등을 포함할 수 있다. 또한, 통신부(130)는 하나 이상의 구성 요소를 포함할 수도 있다.
제어부(150)는 단말(100) 전체의 동작을 제어하며, 수신부(110) 및 통신부(130)를 제어함으로써 음성 신호를 처리할 수 있다. 제어부(150)는 단말(100)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 전자 장치에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 램, 주변기기의 제어를 위한 제어 프로그램이 저장된 롬(ROM) 및 프로세서(Processor)를 포함할 수 있다. 프로세서는 코어(core, 도시되지 아니함)와 GPU(도시되지 아니함)를 통합한 SoC(System On Chip)로 구현될 수 있다. 또한, 프로세서는 복수의 프로세서를 포함할 수 있다.
개시된 실시예에 따른 제어부(150)는 수신부(110)를 통해 음성 신호를 수신하여, 수신한 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하고, 개인화 정보 구간에 대응하는 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하며, 통신부(130)를 통해 서버로부터 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 수신하도록 제어한다. 이때, 서버로부터 수신한 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는, 서버가 일반 모델을 이용하여 일반 정보 구간에 대응하는 음성 신호를 처리한 결과일 수 있다. 서버는 높은 연산 능력을 가지는 바, 일반 정보 구간에 대하여 빠른 데이터 처리가 가능하다.
또한, 제어부(150)는 통신부(130)를 통해 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성하여 서버로 전송하도록 제어할 수 있거나, 또는 서버로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어할 수도 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
나아가, 제어부(150)는 음성 처리 결과를 사용자에게 출력하도록 제어할 수 있다.
개시된 실시예에 따르면, 단말(100)은 개인화 정보 구간에 대응하는 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하고, 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대해서는 서버에서 데이터 처리한 결과를 수신하게 된다. 서버는 일반 정보 구간에 대해서만 데이터 처리를 수행하므로, 데이터 처리 과정에 개인화 모델을 사용하지 않는다. 따라서, 서버와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버에는 어떠한 개인 정보도 저장되지 않는다. 결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
개시된 다른 실시예에 따른 제어부(150)는, 수신부(110)를 통해 음성 신호를 수신하며, 통신부(130)를 통해 서버로부터 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리한 결과를 수신하고, 음성 신호에 대하여 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하도록 제어한다. 이 경우, 서버(200)는 높은 연산 능력을 가지는 바, 일반 정보 구간에 대하여 빠른 데이터 처리가 가능하다. 또한, 개인화 모델은, 개인화 음성 인식 모델, 언어 이해 모델 및 개인화 렉시컬 모델 중 적어도 하나 이상의 모델일 수 있다.
또한, 제어부(150)는, 음성 신호에 대하여 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리를 수행 시, 개인 정보를 포함하는 개인화 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리를 수행하도록 제어할 수 있다. 이때, 제어부(150)는 음성 신호 중 개인화 정보 구간을 검출하도록 제어할 수도 있고, 통신부(130)를 통해 서버로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어할 수도 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
개시된 실시예에 따르면, 단말(100)은 서버로부터 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리한 결과를 수신하고, 수신한 음성 신호에 대하여 데이터 처리 결과 및 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 다시 한 번 데이터 처리를 수행한다. 즉, 개인화 모델링을 이용한 음성 처리는 단말(100)에서만 수행되므로, 서버와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버에는 어떠한 개인 정보도 저장되지 않는다. 결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 2는 개시된 실시예에 따른 서버의 내부 구성을 나타내는 블록도이다.
도 2를 참조하면, 개시된 실시예에 따른 서버(200)는 수신부(210), 통신부(230) 및 제어부(250)를 포함한다.
수신부(210)는 음성 신호를 수신하는 역할을 수행한다. 수신부(210)는 USB 인터페이스부, DVD 인터페이스부 등 음성 신호를 다양한 형태로 수신할 수 있는 구성 요소를 포함할 수 있다. 예를 들어, 수신부(210)가 USB 인터페이스를 포함하는 경우, 서버(200)는 음성 신호 파일을 USB로부터 수신할 수 있다. 나아가, 통신부(230)를 통해 외부 장치로부터 음성 신호를 수신하는 경우, 통신부(230)가 수신부(210)의 역할을 수행하는 것도 가능하다.
통신부(230)는 외부 장치와 통신하는 역할을 수행한다. 통신부(230)는 유선 또는 무선으로 네트워크와 연결되어 외부 장치와의 통신을 수행할 수 있다. 개시된 실시예에 따르면, 통신부(230)는 단말(100)과 통신하며 데이터를 송수신할 수 있다. 개시된 실시예에 따르면, 통신부(130)는 서버와 통신하며 데이터를 송수신할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신 모듈, 이동 통신 모듈, 무선 인터넷 모듈, 유선 인터넷 모듈 등을 포함할 수 있다. 또한, 통신부(130)는 하나 이상의 구성 요소를 포함할 수도 있다.
제어부(250)는 서버(200) 전체의 동작을 제어하며, 수신부(210) 및 통신부(230)를 제어함으로써 음성 신호를 처리할 수 있다. 제어부(250)는 서버(200)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 전자 장치에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 램, 주변기기의 제어를 위한 제어 프로그램이 저장된 롬(ROM) 및 프로세서(Processor)를 포함할 수 있다. 프로세서는 코어(core, 도시되지 아니함)와 GPU(도시되지 아니함)를 통합한 SoC(System On Chip)로 구현될 수 있다. 또한, 프로세서는 복수의 프로세서를 포함할 수 있다.
개시된 실시예에 따른 제어부(250)는 수신부(210)를 통해 음성 신호를 수신하여, 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하고, 음성 신호 중 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하며, 통신부(230)를 통해 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 단말(100)로 전송하도록 제어한다.
또한, 제어부(250)는 통신부(230)를 통해 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성하여 단말(100)로 전송하거나, 단말(100)로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신한다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
개시된 실시예에 따르면, 서버(200)는은 일반 정보 구간에 대응하는 음성 신호에만 데이터 처리를 수행하므로, 데이터 처리 과정에 개인화 모델(171)을 사용하지 않는다. 따라서, 서버와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버에는 어떠한 개인 정보도 저장되지 않는다. 결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
개시된 다른 실시예에 따른 제어부(250)는, 수신부(210)를 통해 음성 신호를 수신하여, 음성 신호 중 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하고, 통신부(230)를 통해 데이터 처리 결과를 단말로 전송한다. 제어부(250)는 음성 신호 중 개인화 음성 구간에 대한 음성 구간 정보를 생성할 수 있고, 생성한 음성 구간 정보를 단말(100)로 전송할 수 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
개시된 실시예에 따르면, 서버(200)는은 수신한 음성 신호에 대하여 일반 모델만을 이용하여 데이터 처리를 수행하므로, 데이터 처리 과정에 개인화 모델(171)을 사용하지 않는다. 따라서, 서버와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버에는 어떠한 개인 정보도 저장되지 않는다. 결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 3은 도 1에서 도시하는 단말의 내부 구성을 보다 상세히 나타내는 블록도이다. 도 3에서는, 도 1과 중복되는 구성 요소에 대한 설명은 생략한다.
제어부(150)는 음성 처리 엔진(151)을 포함할 수 있다. 개시된 실시예에 따르면, 음성 처리 엔진(151)은 음성 인식 엔진(ASR engine)과 언어 이해 엔진(NLU engine)을 포함할 수 있으며, 수신한 음성 신호를 데이터 처리하여 음성 인식 및 언어 이해를 수행한다. 이때, 음성 인식 엔진과 언어 이해 엔진은 각각 음성 인식 모델과 언어 이해 모델을 이용하여 음성 신호를 처리할 수 있다.
음성 인식 모델은 음향 모델과 언어 모델을 포함할 수 있다. 음향 모델은 음성 신호에 대한 모델로, 수집된 많은 양의 음성 데이터로부터 통계적인 방법을 통하여 생성된다. 언어 모델은 사용자 발화에 대한 문법적 모델로 이 또한 수집된 많은 양의 텍스트 데이터로부터 통계적 학습을 통하여 얻어지는 것이 일반적이다. 언어이해 모델은 사용자 발화에 대한 의미를 나타내는 모델(Semantic model)로 많은 양의 텍스트 데이터로부터 통계적 학습을 하거나, 사용 시나리오를 고려하여 의미 이해 규칙을 작성함으로써 얻어진다.
단말(100)은 저장부(170)를 더 포함할 수 있다. 저장부(170)는 단말(100)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(170)는 휘발성(volatile) 저장 매체 또는 비휘발성(nonvolatile) 저장 매체로 구성될 수 있으며, 양 저장 매체의 조합(combination)으로 구성될 수도 있다. 휘발성 저장 매체로는 RAM, DRAM, SRAM과 같은 반도체 메모리(semiconductor memory)가 포함될 수 있으며, 비휘발성 저장 매체로는 하드 디스크(hard disk), 플래시 낸드 메모리(Flash NAND Memory)가 포함될 수 있다.
개시된 실시예에 따르면 저장부(170)에는 개인 정보(172)가 저장될 수 있다. 개인 정보(172)는 직간접적으로 각 개인을 식별할 수 있는 정보로, 단말의 종류에 따라 저장되는 데이터의 종류가 달라질 수 있다. 예를 들어, 모바일 디바이스의 경우에는 연락처, 음악 리스트, 단문 메시지의 내용이나 수신, 발신 내역, 웹 검색 이력을 포함할 수 있고, TV 의 경우에는 개인적인 재생 목록 등이 포함될 수 있다.
또한, 저장부(170)에는 개인화 모델(171)이 저장될 수 있다. 개인화 모델(171)은 개인 정보를 이용하여 생성된 개인별 특징을 반영한 음성 처리 모델이다. 저장부(170)에는 개인화된 음성 인식 모델 및/또는 개인화된 언어 이해 모델이 저장될 수 있다. 이러한 개인화된 음성 인식 모델 및/또는 개인화된 언어 이해 모델을 이용하는 경우, 보다 높은 성능을 갖는 음성 처리 시스템을 구현할 수 있다.
도 4는 도 2에서 도시하는 서버의 내부 구성을 보다 상세히 나타내는 블록도이다. 도 4에서는, 도 2와 중복되는 구성 요소에 대한 설명은 생략한다.
제어부(250)는 음성 처리 엔진(251)을 포함할 수 있다. 개시된 실시예에 따르면, 음성 처리 엔진(151)은 음성 인식 엔진(ASR engine)과 언어 이해 엔진(NLU engine)을 포함할 수 있으며, 수신한 음성 신호를 데이터 처리하여 음성 인식 및 언어 이해를 수행한다. 이때, 음성 인식 엔진과 언어 이해 엔진은 각각 음성 인식 모델과 언어 이해 모델을 이용하여 음성 신호를 처리할 수 있다.
서버(200)는 저장부(270)를 더 포함할 수 있다. 저장부(270)는 서버(200)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(270)는 휘발성(volatile) 저장 매체 또는 비휘발성(nonvolatile) 저장 매체로 구성될 수 있으며, 양 저장 매체의 조합(combination)으로 구성될 수도 있다. 휘발성 저장 매체로는 RAM, DRAM, SRAM과 같은 반도체 메모리(semiconductor memory)가 포함될 수 있으며, 비휘발성 저장 매체로는 하드 디스크(hard disk), 플래시 낸드 메모리(Flash NAND Memory)가 포함될 수 있다. 개시된 실시예에 따르면 저장부(270)에는 일반 모델(271)이 저장될 수 있다. 일반 모델(271)은 일반적인 음성 처리 모델로, 특정 개인이 아닌 불특정인의 음성 처리를 위한 음성 처리 모델이다. 대용량으로 구성되는 일반 모델(271)은 서버의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공한다. 따라서, 개시된 실시예에 따르면, 저장부(270)에는 어떠한 형태의 개인 정보도 저장되지 않아 개인 정보를 원천적으로 보호하면서도 높은 음성 처리 성능을 제공할 수 있다.
아래에서 단말(100)과 서버(200)의 동작을 보다 상세하게 설명하도록 한다.
도 5는 개시된 실시예에 따른 단말의 음성 신호 처리 방법을 나타내는 순서도이다.
먼저, 510 단계에서 단말(100)은 음성 신호를 수신한다. 단말(100)은 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 마이크부를 통해 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다. 나아가, 외부 장치와 통신을 통해 음성 신호를 수신할 수도 있다. 개시된 실시예에 따르면, 단말(100)은 이렇게 수신한 음성 신호를 서버(200)로 전송할 수 있다.
그 후, 520 단계에서 단말(100)은 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출한다. 개인화 정보 구간은 음성 신호 중 직간접적으로 각 개인을 식별할 수 있는 개인 정보를 포함하는 구간을 의미한다. 예를 들어, 단말(100)은 도 3의 저장부(170)에 저장된 개인 정보(172)를 참조하여 음성 신호 중에 사용자 단말의 전화번호부에 저장된 이름, 사용자의 검색 기록, 사용자 위치 정보 등을 포함하는 구간을 개인화 정보 구간으로 검출할 수 있다. 도 7을 참조하여 설명한다.
도 7은 개인화 정보 구간과 일반 정보 구간을 설명하는 도면이다.
도 7을 참조하면, ‘홍길동씨 10층 김길동씨에게 전화 부탁드립니다’라는 문장은 9개의 구간으로 구분될 수 있다. 즉, 홍길동(701), 씨(702), 10(703), 층(704), 김길동(705), 씨(706), 에게(707), 전화(708), 부탁드립니다(709) 로 구분될 수 있다. 이러한 구간에 대한 구분 기준은 상황에 따라 다르게 적용될 수 있다.
여기서, 홍길동(701)은 사용자를 지칭하는 단어이고, 김길동(705)은 사용자 단말의 전화번호부에 저장된 이름이라고 가정하는 경우, 홍길동(701) 및 김길동(705)에 해당하는 음성 신호 구간은 개인화 구간(710)에 해당한다. 즉, 홍길동(701) 및 김길동(705)은 개인 정보에 해당하고 이러한 개인 정보를 포함하는 구간 701 및 705는 개인화 정보 구간(710)에 해당한다. 단말(100)은 520 단계에서 이와 같이 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간(710)을 검출하는 것이다.
단말(100)은 다양한 방법을 통해 개인화 정보 구간을 검출할 수 있다. 예를 들어, 사전에 포함되어 있지 않은 단어는 개인 정보라고 판단하여 해당 단어가 포함된 음성 구간을 개인화 정보 구간이라고 판단할 수 있다. 다만, 이러한 방법은 하나의 예시에 불과하며, 다양한 개인화 정보 구간을 검출 방법을 이용할 수 있다.
또한, 단말(100)은 위와 같이 검출한 개인화 정보 구간을 이용하여 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성하여 서버(200)로 전송할 수 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다. 즉, 단말(100)은 음성 신호 중 개인화 정보 구간 및/또는 일반 정보 구간에 해당 구간임을 알 수 있는 마킹을 하고, 이러한 구간 마킹 정보를 포함하는 음성 구간 정보를 생성하여 전송할 수 있다. 이렇게 서버(200)로 전송된 음성 구간 정보는, 서버(200)가 음성 신호 중 일반 정보 구간을 확인 및/또는 처리하는데 사용될 수 있다. 서버(200)는 일반 정보 구간으로 마킹된 구간 또는 개인화 정보 구간으로 마킹된 구간을 제외한 나머지 구간을 확인하고 그에 대응하는 음성 신호에 대하여 데이터 처리를 할 수 있다.
다시 도 5의 설명으로 돌아가면, 530 단계에서 단말(100)은 개인화 정보 구간에 대응하는 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델(171)을 이용하여 데이터 처리한다. 개인화 모델(171)은, 개인별 특징을 반영한 음성 처리 모델로, 특정 개인에 대한 맞춤형 음성 처리 모델이다. 개인화 모델(171)을 이용하여 음성 신호에 대한 데이터 처리를 수행하는 경우, 불특정 다수를 위해 만들어진 일반 모델(271)에 비하여 더 정확한 음성 처리가 가능하다. 또한, 단말(100)은 개인화 구간에 대응하는 음성 신호에 대하여 직접 개인화 모델(171)을 이용하여 데이터 처리를 수행함으로써, 개인 정보를 포함하는 개인화 모델(171)을 서버와 같은 외부 장치로 전송할 필요가 없고, 따라서, 개인 정보를 원천적으로 보호할 수 있다.
나아가, 540 단계에서 단말(100)은 서버(200)로부터 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 수신한다. 일반 정보 구간은 음성 신호 중 개인 정보가 아닌 일반적인 정보를 포함하는 구간으로, 개인화 정보 구간을 제외한 나머지 구간을 의미한다. 예를 들어, ‘전화해’, ‘밥 먹었어?’ 등과 같이 일반적인 의미를 갖는 문장을 포함하는 구간이 일반 정보 구간에 해당할 수 있다. 도 7을 참조하여 설명한다.
위에서 살펴본 것과 같이 도 7에서, ‘홍길동씨 10층 김길동씨에게 전화 부탁드립니다’라는 문장은 9개의 구간으로 구분될 수 있다.
여기서, 씨(702), 10(703), 층(704), 씨(706), 에게(707), 전화(708), 부탁드립니다(709)는 일반적인 단어들로 이러한 일반적인 정보를 포함하는 구간 702, 703, 704, 706, 707, 708 및 709는 일반 정보 구간(720)에 해당한다.
단말(100)은 540 단계에서 이와 같이 음성 신호 중 일반 정보를 포함하는 일반 정보 구간(720)에 대응하는 음성 신호에 대해서는 직접 데이터 처리를 하지 않고 단말(100)에 비해 높은 연산 능력을 갖는 서버(200)로부터 데이터 처리한 결과를 수신한다. 따라서, 일반 정보 구간(720)에 대응하는 음성 신호에 대해서 빠른 데이터 처리가 가능하다.
서버(200)로부터 수신한 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는 서버(200)가 일반 모델(271)을 이용하여 일반 정보 구간에 대응하는 음성 신호를 처리한 결과일 수 있다. 일반 모델(271)은 서버(200)의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다. 또한, 서버(200)는 높은 연산 능력을 가지는 바, 일반 정보 구간에 대하여 빠른 데이터 처리가 가능하다.
단말(100)은 서버(200)로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신할 수도 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다. 단말(100)은 자체적으로 개인화 정보 구간을 검출하고 음성 구간 정보를 생성할 수도 있다. 다만, 단말(100)과 서버(200)는 각각 스스로 검출한 개인화 정보 구간 및/또는 일반 정보 구간에 대하여 데이터 처리를 수행할 수 있으므로, 단말(100)에서 검출한 개인화 정보 구간과 서버(200)에서 검출한 개인화 정보 구간이 서로 다른 경우, 데이터 처리에 빠지는 구간이 발생할 수 있다. 따라서, 모든 구간에 대해 빠짐없이 데이터 처리를 수행하기 위하여, 단말(100)과 서버(200)는 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 공유할 수 있다.
나아가, 단말(100)은 데이터 처리 결과를 사용자에게 출력할 수 있다.
결과적으로 개시된 실시예에 따르면, 개인 정보(172)나 개인화 모델(171)은 서버(200)로 전송함 없이 단말(100)에서 유지하고 단말(100)에서 이러한 개인 정보(172)나 개인화 모델(171)을 이용하여 음성 처리함으로써 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 6은 개시된 실시예에 따른 서버의 음성 신호 처리 방법을 나타내는 순서도이다.
먼저, 610 단계에서 서버(200)는 음성 신호를 수신한다. 서버(200)는 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 단말(100)로부터 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다.
그 후, 620 단계에서 서버(200)는 수신한 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출한다. 서버(200)는 수신한 음성 신호를 해석하여 개인화 정보 구간을 검출할 수도 있고, 단말(100)로부터 음성 구간 정보를 수신하여 파싱함으로써 개인화 정보 구간을 검출할 수도 있다. 서버(200)는 다양한 방법을 통해 개인화 정보 구간을 검출할 수 있다. 예를 들어, 사전에 포함되어 있지 않은 단어는 개인 정보라고 판단하여 해당 단어가 포함된 음성 구간을 개인화 정보 구간이라고 판단할 수 있다. 다만, 이러한 방법은 하나의 예시에 불과하며, 다양한 개인화 정보 구간을 검출 방법을 이용할 수 있다.
개인화 정보 구간 및 일반 구간에 대해서는 위에서 도 7과 함께 설명한 바, 중복하여 설명하지 않는다.
또한, 서버(200)는 위와 같이 검출한 개인화 정보 구간을 이용하여 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성하여 단말(100)로 전송할 수 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다. 즉, 서버(200)은 음성 신호 중 개인화 정보 구간 및/또는 일반 정보 구간에 해당 구간임을 알 수 있는 마킹을 하고, 이러한 구간 마킹 정보를 포함하는 음성 구간 정보를 생성하여 전송할 수 있다. 이렇게 단말(100)로 전송된 음성 구간 정보는, 단말(100)이 음성 신호 중 개인화 정보 구간을 확인 및/또는 처리하는데 사용될 수 있다. 단말(100)은 일반 정보 구간으로 마킹된 구간 또는 개인화 정보 구간으로 마킹된 구간을 제외한 나머지 구간을 확인하고 그에 대응하는 음성 신호에 대하여 데이터 처리를 할 수 있다.
다음으로, 630 단계에서 서버(200)는 음성 신호 중 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델(271)을 이용하여 데이터 처리한다. 일반 모델(271)은 서버의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다. 나아가, 서버(200)는 높은 연산 능력을 가지는 바, 일반 정보 구간에 대하여 빠른 데이터 처리가 가능하다. 또한, 개인 정보를 포함하는 개인화 구간에 대응하는 음성 신호에 대해서는 서버(200)가 처리 하지 않고 개인화 모델(171)을 가지고 있는 단말(100)에서 데이터 처리를 수행하는 바, 개인 정보를 원천적으로 보호할 수 있다.
나아가, 640 단계에서, 서버(200)는 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과를 단말로 전송한다.
서버(200)는 단말(100)로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신할 수도 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다. 서버(200)는 자체적으로 개인화 정보 구간을 검출하고 음성 구간 정보를 생성할 수도 있다. 다만, 단말(100)과 서버(200)는 각각 스스로 검출한 개인화 정보 구간 및/또는 일반 정보 구간에 대하여 데이터 처리를 수행할 수 있으므로, 단말(100)에서 검출한 개인화 정보 구간과 서버(200)에서 검출한 개인화 정보 구간이 서로 다른 경우, 데이터 처리에 빠지는 구간이 발생할 수 있다. 따라서, 모든 구간에 대해 빠짐없이 데이터 처리를 수행하기 위하여, 단말(100)과 서버(200)는 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 공유할 수 있다.
결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 8은 개시된 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
먼저, 805 단계에서 단말(100)은 음성 신호를 수신한다. 위에서 설명한 것과 같이 단말(100)은 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 마이크부를 통해 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다. 나아가, 외부 장치와 통신을 통해 음성 신호를 수신할 수도 있다. 그 후, 810 단계에서 단말(100)은 수신한 음성 신호를 서버(200)로 전송할 수 있다.
단말(100)과 서버(200)는 각각 815 단계 및 820 단계에서 음성 신호에 대하여 개인화 음성 구간을 검출한다. 단말(100)과 서버(200)는 다양한 방법을 통해 개인화 정보 구간을 검출할 수 있다. 예를 들어, 사전에 포함되어 있지 않은 단어는 개인 정보라고 판단하여 해당 단어가 포함된 음성 구간을 개인화 정보 구간이라고 판단할 수 있다. 다만, 이러한 방법은 하나의 예시에 불과하며, 다양한 개인화 정보 구간을 검출 방법을 이용할 수 있다.
단말(100)은 815 단계에서 검출한 개인화 음성 구간에 대해서는 825 단계로 진행하여 개인화 모델(171)을 기반으로 음성 데이터를 처리하고, 개인화 음성 구간 이외의 일반 정보 구간에 대해서는 830 단계로 진행하여 데이터 처리를 패스(pass)하고 음성 구간 정보를 생성할 수 있다. 서버(200)는 820 단계에서 검출한 개인화 음성 구간에 대해서는 835 단계로 진행하여 데이터 처리를 패스(pass)하고 음성 구간 정보를 생성하며, 개인화 음성 구간 이외의 일반 정보 구간에 대해서는 830 단계로 진행하여 일반 모델(271)을 기반으로 음성 데이터를 처리한다.
이러한 과정을 통해 단말(100)은 개인화 구간에 대응하는 음성 신호에 대하여 직접 개인화 모델(171)을 이용하여 데이터 처리를 수행하고, 서버(200)는 높은 연산 능력을 바탕으로 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델(271)을 이용하여 데이터 처리함으로써, 개인 정보를 원천적으로 보호하면서도 높은 음성 처리 성능을 구현할 수 있다.
그 후, 단말(100) 및 서버(200)는 845 단계 및 850 단계에서 음성 구간 정보 및 데이터 처리 결과를 공유한다. 즉, 서버(200)는 845 단계에서 음성 데이터 처리 결과와 음성 구간 정보를 단말(100)로 전송하고, 단말(100)은 음성 구간 정보를 서버(200)로 전송한다. 도 8에서는 이러한 과정이 845 단계, 850 단계로 도시되어 있으나, 공유 과정에서 단말(100) 또는 서버(200) 어느쪽이 먼저 데이터를 전송하는 것도 무방하다.
위에서 설명한 것과 같이 단말(100)과 서버(200)는 각각 자체적으로 개인화 정보 구간을 검출하고 음성 구간 정보를 생성할 수도 있다. 다만, 단말(100)과 서버(200)는 각각 스스로 검출한 개인화 정보 구간 및/또는 일반 정보 구간에 대하여 데이터 처리를 수행할 수 있으므로, 단말(100)에서 검출한 개인화 정보 구간과 서버(200)에서 검출한 개인화 정보 구간이 서로 다른 경우, 데이터 처리에 빠지는 구간이 발생할 수 있다. 따라서, 모든 구간에 대해 빠짐없이 데이터 처리를 수행하기 위하여, 단말(100)과 서버(200)는 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 공유할 수 있다.
단말(100)은 855 단계에서 모든 음성 신호 구간에 대하여 데이터 처리가 완료되었는지 판단하여 완료된 경우, 동작을 종료한다. 855 단계에서 데이터 처리가 완료되지 않은 경우, 단말(100)은 865 단계로 진행하여 서버(200)로부터 수신한 음성 구간 정보를 기반으로 처리되지 않은 음성 구간에 대하여 개인화 모델(171)을 이용하여 데이터 처리할 수 있다. 서버(200)는 860 단계에서 모든 음성 신호 구간에 대하여 데이터 처리가 완료되었는지 판단하여 완료된 경우, 동작을 종료한다. 860 단계에서 데이터 처리가 완료되지 않은 경우, 서버(200)는 870 단계로 진행하여 단말(100)로부터 수신한 음성 구간 정보를 기반으로 처리되지 않은 음성 구간에 대하여 개인화 모델(171)을 이용하여 데이터 처리할 수 있다.
도 8에 도시된 것과 같이 815 단계 내지 870 단계의 음성 신호 처리 과정은 단말(100)과 서버(200)에서 병렬적으로 동시에 수행될 수도 있고, 단말(100)과 서버(200)가 번갈아가며 스위칭하여 음성 처리를 수행하는 것도 가능하다.
단말(100)과 서버(200)가 번갈아가며 스위칭하여 음성 처리를 수행하는 경우, 단말(100)이 개인화 정보 구간에 대응하는 음성 신호에 대하여 개인화 모델(171)을 기반으로 데이터 처리를 수행하다가 일반 정보 구간에 대응하는 음성 신호가 나오는 경우, 음성 구간 정보를 서버(200)로 전송하면, 서버(200)는 단말(100)이 데이터 처리한 음성 신호 다음에 오는 음성 신호부터 일반 모델(271)을 이용하여 음성 처리를 수행할 수도 있다. 그 후, 다시 개인화 정보 구간에 대응하는 음성 신호가 나오는 경우, 지금까지의 데이터 처리 결과와 음성 구간 정보를 단말(100)로 전송하면, 단말(100)은 서버(200)가 데이터 처리한 음성 신호 다음에 오는 음성 신호부터 일반 모델(271)을 이용하여 음성 처리를 수행할 수도 있다.
이와 반대로, 서버(200)에서 음성 처리를 시작하는 경우, 서버(200)는 일반 구간에 대응하는 음성 신호에 대하여 일반 모델(271)을 이용하여 음성 처리를 수행하다가 개인화 정보 구간에 대응하는 음성 신호가 나오는 경우, 지금까지의 데이터 처리 결과와 음성 구간 정보를 단말(100)로 전송하면, 단말(100)은 서버(200)가 데이터 처리한 음성 신호 다음에 오는 음성 신호부터 일반 모델(271)을 이용하여 음성 처리를 수행할 수도 있다.
개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 9는 개시된 다른 실시예에 따른 단말의 음성 처리 방법을 나타내는 순서도이다.
먼저, 910 단계에서, 단말(100)은 음성 신호를 수신한다. 단말(100)은 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 마이크부를 통해 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다. 나아가, 외부 장치와 통신을 통해 음성 신호를 수신할 수도 있다. 개시된 실시예에 따르면, 단말(100)은 이렇게 수신한 음성 신호를 서버(200)로 전송할 수 있다.
그 후, 920 단계에서, 단말(100)은 서버(200)로부터 음성 신호에 대하여 일반 모델(271)을 이용하여 데이터 처리한 결과를 수신한다. 즉, 단말(100)은 서버(200)에서 단말(100)과 독립적으로 음성 신호에 대한 데이터 처리를 수행한 결과를 수신하는 것이다. 일반 모델(271)은 서버(200)의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다. 나아가, 서버(200)는 높은 연산 능력을 가지는 바, 일반 정보 구간에 대하여 빠른 데이터 처리가 가능하다.
다음으로 930 단계에서, 단말(100)은 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델(171) 및 서버(200)로부터 수신한 데이터 처리 결과를 이용하여 데이터 처리한다. 개시된 실시예에 따르면, 단말(100)은 음성 신호에 대해서 개인화 모델(171) 및 서버(200)로부터의 데이터 처리 결과를 이용하여 음성 신호 전체 또는 부분에 대하여 다시 한 번 데이터 처리를 할 수 있다. 위에서 설명한 것과 같이 서버(200)는 일반 모델(271)을 이용하여 데이터 처리를 수행하는 바, 보다 높은 음성 처리 성능을 위하여 개인화 모델(171)을 이용하여 다시 한 번 데이터 처리를 하는 것이다.
이 경우, 단말(100)은 개인 정보를 포함하는 개인화 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리를 수행할 수 있다. 즉, 서버(200)는 높은 연산 능력을 이용하여 일반 정보 구간이나 개인화 정보 구간의 구별없이 음성 신호 전체에 대해서 일반 모델(271)을 이용하여 데이터 처리를 수행한다. 그 후, 개인 정보(172)를 이용하여 처리 성능을 높일 수 있는 개인화 정보 구간에 대해서는 단말(100)에서 개인화 모델을 이용하여 다시 한번 데이터 처리를 반복하는 것이다. 이를 위하여 단말(100)은 음성 신호 중 개인화 정보 구간을 검출할 수 있다. 단말(100)은 다양한 방법을 통해 개인화 정보 구간을 검출할 수 있다. 예를 들어, 사전에 포함되어 있지 않은 단어는 개인 정보라고 판단하여 해당 단어가 포함된 음성 구간을 개인화 정보 구간이라고 판단할 수 있다. 다만, 이러한 방법은 하나의 예시에 불과하며, 다양한 개인화 정보 구간을 검출 방법을 이용할 수 있다.
또는, 단말(100)은 서버(200)로부터 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 수신할 수도 있다. 높은 연산 능력을 갖는 서버(200)에서 생성한 음성 구간 정보를 수신함으로써, 단말(100)의 데이터 처리 부담이 줄어 전체적인 음성 처리 속도를 보다 빠르게 할 수 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
개인화 정보 구간 및 일반 정보 구간에 대해서는 위에서 도 7과 함께 설명한 바, 중복하여 설명하지 않는다.
여기서 개인화 모델(171)은 개인화 음성 인식 모델(personalized speech recognition model), 언어 이해 모델(personalized natural language understanding model) 및 개인화 렉시컬 모델(personalized lexical model) 중 적어도 하나 이상의 모델일 수 있다.
단말(100)이 개인화 음성 인식 모델을 이용하여 음성 신호에 대한 데이터 처리를 수행하는 경우, 단말(100)은 서버(200)로부터 음소, 의사 형태소 또는 단어 단위의 데이터 처리 결과를 수신할 수 있으며, N-best 가설(N-best hypothesis), 래티스(lattice), 컨퓨젼 네트워크(confusion network) 와 같은 멀티 패스(multi-pass) 처리 결과를 수신하여 데이터 처리에 활용할 수 있다.
단말(100)이 언어 이해 모델을 이용하여 음성 신호에 대한 데이터 처리를 수행하는 경우, 단말(100)은 서버(200)로부터 음소, 의사 형태소 또는 단어 단위의 데이터 처리 결과 및 문장 또는 단어 단위의 신뢰도 점수(confidence score)와 같은 정보를 수신하여 데이터 처리에 활용할 수 있다. 또한, 서버(200)로부터 멀티 패스(multi-pass) 처리 결과를 수신하여 데이터 처리에 활용할 수도 있다.
단말(100)이 개인화 렉시컬 모델(personalized lexical model)을 이용하여 음성 신호에 대한 데이터 처리를 수행하는 경우, 단말(100)은 서버(200)로부터 음소, 의사 형태소 또는 단어 단위의 데이터 처리 결과 및 문장 또는 단어 단위의 신뢰도 점수(confidence score)와 같은 정보를 수신하여 데이터 처리에 활용할 수 있다. 또한, 단말(100)은 서버(200)로부터 수신한 데이터 처리 결과와 개인 단어 리스트를 이용하여 데이터 처리를 수행할 수 있으며, 이 경우, 가정(hypothesis)과 개인 단어 간의 음소 단위 비교를 위해 발음 사전을 사용할 수도 있다.
어떠한 모델을 사용하더라도 개인 정보가 서버(200)로 전송될 필요없이 개인 정보의 활용으로 더욱 정확한 음성 처리가 가능하다.
개시된 실시예에 따르면, 개인화 모델링을 이용한 음성 처리는 단말(100)에서만 수행되므로, 서버(200)와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버(200)에는 어떠한 개인 정보도 저장되지 않는다. 따라서, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 10은 개시된 다른 실시예에 따른 서버의 음성 처리 방법을 나타내는 순서도이다.
먼저, 1010 단계에서 서버(200)는 음성 신호를 수신한다. 서버(200)는 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 단말(100)로부터 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다.
그 후, 1020 단계에서 서버(200)는 수신한 음성 신호에 대하여 일반 모델(271)을 이용하여 데이터 처리한다. 즉 서버(200)는 일반 모델(271)을 이용하여 단말(100)과 독립적으로 음성 신호에 대해 데이터 처리를 수행한다. 일반 모델(271)은 서버(200)의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다. 나아가, 서버(200)는 높은 연산 능력을 가지는 바, 빠른 데이터 처리가 가능하다.
다음으로, 1030 단계에서 서버(200)는 데이터 처리 결과를 단말(100)로 전송한다. 이 경우, 서버(200)는 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성하여 단말(100)로 함께 전송할 수도 있다. 높은 연산 능력을 갖는 서버(200)에서 음성 구간 정보를 생성하여 단말(100)로 전송함으로써, 단말(100)의 데이터 처리 부담을 줄여주어 전체적인 음성 처리 속도를 보다 빠르게 할 수 있다. 여기서, 음성 구간 정보는 음성 신호 중 개인화 정보 구간 및 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함할 수 있다.
결과적으로 개시된 실시예에 따르면, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 11은 개시된 다른 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
먼저, 1110 단계에서 단말(100)은 음성 신호를 수신한다. 위에서 설명한 것과 같이 단말(100)은 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 마이크부를 통해 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다. 나아가, 외부 장치와 통신을 통해 음성 신호를 수신할 수도 있다. 그 후, 1120 단계에서 단말(100)은 수신한 음성 신호를 서버(200)로 전송할 수 있다.
1130 단계에서 서버(200)는 수신한 음성 신호에 대하여 일반 모델(271)을 이용하여 데이터 처리한다. 일반 모델(271)은 서버(200)의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다. 나아가, 서버(200)는 높은 연산 능력을 가지는 바, 빠른 데이터 처리가 가능하다.
이때, 서버(200)는 개인화 정보 구간과 일반 정보 구간에 대한 음성 구간 정보를 생성할 수 있다. 높은 연산 능력을 갖는 서버(200)에서 음성 구간 정보를 생성함으로써 단말(100)의 데이터 처리 부담을 줄여주어 전체적인 음성 처리 속도를 보다 빠르게 할 수 있다.
그 후, 1140 단계에서 서버(200)는 데이터 처리 결과와 음성 구간 정보를 단말(100)로 전송할 수 있다. 단말(100)은 1150 단계에서 음성 신호에 대하여 개인 정보를 기반으로 생성된 개인화 모델(171) 및 수신한 데이터 처리 결과를 이용하여 데이터 처리를 할 수 있다. 즉, 단말(100)은 음성 신호 전체 또는 부분에 대하여 다시 한 번 데이터 처리를 할 수 있다. 보다 높은 음성 처리 성능을 위하여 개인화 모델(171)을 이용하여 다시 한 번 데이터 처리를 하는 것이다.
이 경우, 단말(100)은 개인화 정보 구간을 검출하여 개인화 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리를 수행할 수 있다. 또한, 단말(100)은 개인화 음성 인식 모델, 언어 이해 모델 및 개인화 렉시컬 모델 중 적어도 하나 이상의 모델을 이용하여 음성 신호에 대한 데이터 처리를 할 수 있다.
개시된 실시예에 따르면, 개인화 모델링을 이용한 음성 처리는 단말(100)에서만 수행되므로, 서버(200)와 단말(100) 간에는 개인 정보를 포함하는 어떠한 형태의 정보 전송도 일어나지 않고, 그에 따라 서버(200)에는 어떠한 개인 정보도 저장되지 않는다. 따라서, 개인 정보를 원천적으로 보호하면서도 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 12는 개시된 또다른 실시예에 따른 단말의 내부 구성을 나타내는 블록도이다.
도 12를 참조하면, 개시된 또다른 실시예에 따른 단말(1200)은 통신부(1210) 및 제어부(1230)를 포함한다.
통신부(1210)는 외부 장치와 통신하는 역할을 수행한다. 통신부(1210)는 유선 또는 무선으로 네트워크와 연결되어 외부 장치와의 통신을 수행할 수 있다. 개시된 실시예에 따르면, 통신부(1210)는 서버와 통신하며 데이터를 송수신할 수 있다. 개시된 실시예에 따르면, 통신부(130)는 서버와 통신하며 데이터를 송수신할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신 모듈, 이동 통신 모듈, 무선 인터넷 모듈, 유선 인터넷 모듈 등을 포함할 수 있다. 또한, 통신부(130)는 하나 이상의 구성 요소를 포함할 수도 있다.
제어부(1230)는 단말(1200) 전체의 동작을 제어하며, 통신부(1210)를 제어함으로써 오디오 신호를 처리할 수 있다. 제어부(1230)는 단말(1200)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 전자 장치에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 램, 주변기기의 제어를 위한 제어 프로그램이 저장된 롬(ROM) 및 프로세서(Processor)를 포함할 수 있다. 프로세서는 코어(core, 도시되지 아니함)와 GPU(도시되지 아니함)를 통합한 SoC(System On Chip)로 구현될 수 있다. 또한, 프로세서는 복수의 프로세서를 포함할 수 있다.
개시된 실시예에 따른 제어부(1230)는 개인 정보에 ID를 대응시켜 매핑 테이블을 생성하고, 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하며, 통신부(1210) 통해 ID 기반의 개인화 모델을 서버로 전송하고, 서버로부터 음성 신호에 대하여 ID 기반의 개인화 모델을 이용해 데이터 처리한 결과를 수신하며, 데이터 처리 결과 및 매핑 테이블을 이용하여 ID에 대응하는 개인 정보를 복원하도록 제어한다. 이때, 제어부(1230)는 개인 정보로부터 생성되는 부가 정보에 ID를 대응시켜 매핑 테이블을 생성할 수도 있다. 이 경우, 제어부(1230)는 서버로부터 부가 정보에 대하여 ID 기반의 개인화 모델을 이용해 데이터 처리한 결과를 수신하며, 데이터 처리 결과 및 매핑 테이블을 이용하여 ID에 대응하는 부가 정보를 복원하도록 제어할 수 있다.
제어부(1230)는 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성 시, 상기 개인 정보에 매핑된 ID를 음향 단위에 매핑된 ID인 음향 단위 ID로 나타낼 수 있다. 여기서 음향 단위 ID는 서버와 합의에 따라 상기 음향 단위에 매핑된 ID일 수 있다. 음향 단위 ID는 발음 기호에 해당하는 음성인식 모델의 특정 부분을 나타내며, 발음 기호와 1 대 1 매핑 되지 않을 수 있다.
개시된 실시예에 따르면, 개인 정보 및 개인 정보로부터 생성 되는 부가 정보는 단말에서 직접 부여한 ID로 마스킹하여 개인화 모델을 생성함으로써 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보를 복원하기 어려워 개인 정보를 보호할 수 있다. 또한, 높은 연산 능력을 갖는 서버로 개인화 모델을 전송하여 음성 신호에 대하여 데이터 처리를 함으로써 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 13은 개시된 또다른 실시예에 따른 서버의 내부 구성을 보다 상세히 나타내는 블록도이다.
도 13을 참조하면, 개시된 실시예에 따른 서버(1300)는 수신부(1310), 통신부(1330) 및 제어부(1350)를 포함한다.
수신부(1310)는 음성 신호를 수신하는 역할을 수행한다. 수신부(1310)는 USB 인터페이스부, DVD 인터페이스부 등 음성 신호를 다양한 형태로 수신할 수 있는 구성 요소를 포함할 수 있다. 예를 들어, 수신부(1310)가 USB 인터페이스를 포함하는 경우, 서버(1300)는 음성 신호 파일을 USB로부터 수신할 수 있다. 나아가, 통신부(1330)를 통해 외부 장치로부터 음성 신호를 수신하는 경우, 통신부(1330)가 수신부(1310)의 역할을 수행하는 것도 가능하다.
통신부(1330)는 외부 장치와 통신하는 역할을 수행한다. 통신부(1330)는 유선 또는 무선으로 네트워크와 연결되어 외부 장치와의 통신을 수행할 수 있다. 개시된 실시예에 따르면, 통신부(1330)는 단말(1200)과 통신하며 데이터를 송수신할 수 있다. 개시된 실시예에 따르면, 통신부(130)는 서버와 통신하며 데이터를 송수신할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신 모듈, 이동 통신 모듈, 무선 인터넷 모듈, 유선 인터넷 모듈 등을 포함할 수 있다. 또한, 통신부(130)는 하나 이상의 구성 요소를 포함할 수도 있다.
제어부(1350)는 서버(1300) 전체의 동작을 제어하며, 수신부(1310) 및 통신부(1330)를 제어함으로써 음성 신호를 처리할 수 있다. 제어부(1350)는 서버(1300)의 외부에서부터 입력되는 신호 또는 데이터를 저장하거나, 전자 장치에서 수행되는 다양한 작업에 대응되는 저장 영역으로 사용되는 램, 주변기기의 제어를 위한 제어 프로그램이 저장된 롬(ROM) 및 프로세서(Processor)를 포함할 수 있다. 프로세서는 코어(core, 도시되지 아니함)와 GPU(도시되지 아니함)를 통합한 SoC(System On Chip)로 구현될 수 있다. 또한, 프로세서는 복수의 프로세서를 포함할 수 있다.
개시된 실시예에 따른 제어부(1350)는 통신부(1330)를 통해 단말(1200)로부터 ID 기반의 개인화 모델을 수신하고, 수신부(1310)를 통해 음성 신호를 수신하며, 음성 신호에 대하여 ID 기반의 개인화 모델을 이용하여 데이터 처리하고, 통신부(1330)를 통해 데이터 처리 결과를 단말(1200)로 전송하도록 제어한다.
또한, 제어부(1350)는, 음성 신호에 대하여 ID 기반의 개인화 모델을 이용하여 데이터 처리 시, 단말(1200)과 합의에 따라 음향 단위에 매핑된 ID인 음향 단위 ID를 이용하여 개인 정보에 매핑된 ID를 나타내도록 제어할 수 있다.
개시된 실시예에 따르면, 서버(1300)는 ID 기반의 개인화 모델을 단말(1200)로부터 수신하여, 수신한 ID 기반의 개인화 모델을 기용하여 데이터를 처리함으로써, 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다. 또한, 높은 연산 능력을 갖는 서버(1300)가 음성 신호에 대하여 데이터 처리를 함으로써 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 14는 개시된 또다른 실시예에 따른 단말의 내부 구성을 보다 상세히 나타내는 블록도이다. 도 14에서는 도 12와 중복되는 구성 요소에 대한 설명은 생략한다.
제어부(1230)는 개인화 모델 생성부(1231)를 포함할 수 있다. 개시된 실시예에 따르면, 개인화 모델 생성부(1231)는 저장부(1270)에 포함된 개인 정보(1272)를 기반으로 개인화 모델을 생성할 수 있다. 개인화 모델 생성부(1231)는 개인 정보(1272) 또는 개인 정보(1272)로부터 생성되는 부가 정보에 ID를 대응시켜 매핑 테이블(1273)을 생성하고, 생성된 매핑 테이블(1273)을 이용하여 ID 기반의 개인화 모델을 생성할 수 있다.
단말(1200)은 수신부(1250)를 더 포함할 수 있다. 수신부(1250)는 음성 신호를 수신하는 역할을 수행한다. 수신부(1250)는 마이크부, USB 인터페이스부, DVD 인터페이스부 등 다양한 구성 요소를 포함할 수 있다. 예를 들어, 수신부(1250)가 마이크부를 포함하는 경우, 단말(1200)은 사용자 음성 신호를 마이크부를 통해 직접 수신할 수 있다. 또한, 수신부(1250)가 USB 인터페이스부를 포함하는 경우, 단말(1200)은 음성 신호 파일을 USB로부터 수신할 수도 있다. 나아가, 통신부(130)를 통해 외부 장치로부터 음성 신호를 수신하는 경우, 통신부(1210)가 수신부(1250)의 역할을 수행하는 것도 가능하다.
단말(1200)은 저장부(1270)를 더 포함할 수 있다. 저장부(1270)는 단말(1200)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(1270)는 휘발성(volatile) 저장 매체 또는 비휘발성(nonvolatile) 저장 매체로 구성될 수 있으며, 양 저장 매체의 조합(combination)으로 구성될 수도 있다. 휘발성 저장 매체로는 RAM, DRAM, SRAM과 같은 반도체 메모리(semiconductor memory)가 포함될 수 있으며, 비휘발성 저장 매체로는 하드 디스크(hard disk), 플래시 낸드 메모리(Flash NAND Memory)가 포함될 수 있다. 개시된 실시예에 따르면 저장부(170)에는 개인 정보(1272) 및 매핑 테이블(1273)이 저장될 수 있다.
개인 정보(1272)는 직간접적으로 각 개인을 식별할 수 있는 정보로, 단말의 종류에 따라 저장되는 데이터의 종류가 달라질 수 있다. 예를 들어, 모바일 디바이스의 경우에는 연락처, 음악 리스트, 단문 메시지의 내용이나 수신, 발신 내역, 웹 검색 이력을 포함할 수 있고, TV 의 경우에는 개인적인 재생 목록 등이 포함될 수 있다.
매핑 테이블(1273)은 개인 정보(1272) 또는 개인 정보(1272)로부터 생성되는 부가 정보에 대응되는 ID 포함한다. 매핑 테이블(1273)은 개인화 모델 생성부(1231)가 ID 기반의 개인화 모델을 생성하는데 사용된다. 또한, 매핑 테이블(1273)은 ID에 대응하는 개인 정보(1272) 또는 부가 정보를 복원하는 과정에도 사용된다.
도 15는 도 13에서 도시하는 서버의 내부 구성을 보다 상세히 나타내는 블록도이다.
제어부(1350)는 음성 처리 엔진(1351)을 포함할 수 있다. 개시된 실시예에 따르면, 음성 처리 엔진(1351)은 음성 인식 엔진과 언어 이해 엔진을 포함할 수 있으며, 수신한 음성 신호를 데이터 처리하여 음성 인식 및 언어 이해를 수행한다. 이때, 음성 인식 엔진과 언어 이해 엔진은 각각 음성 인식 모델과 언어 이해 모델을 이용하여 음성 신호를 처리할 수 있다.
서버(1300)는 저장부(1370)를 더 포함할 수 있다. 저장부(1370)는 서버(1300)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행한다. 저장부(1370)는 휘발성(volatile) 저장 매체 또는 비휘발성(nonvolatile) 저장 매체로 구성될 수 있으며, 양 저장 매체의 조합(combination)으로 구성될 수도 있다. 휘발성 저장 매체로는 RAM, DRAM, SRAM과 같은 반도체 메모리(semiconductor memory)가 포함될 수 있으며, 비휘발성 저장 매체로는 하드 디스크(hard disk), 플래시 낸드 메모리(Flash NAND Memory)가 포함될 수 있다.
개시된 실시예에 따르면 저장부(1370)에는 개인화 모델(1372) 및 일반 모델(1373)이 저장될 수 있다. 개인화 모델(1372)은 단말(1200)로부터 수신한 ID 기반의 개인화 모델로, 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다. 일반 모델(271)은 일반적인 음성 처리 모델로, 특정 개인이 아닌 불특정인의 음성 처리를 위한 음성 처리 모델이다. 대용량으로 구성되는 일반 모델(271)은 서버의 높은 연산 능력과 결합하여 사용자의 다양한 언어 표현(대어휘)에 대한 높은 음성 처리 성능을 제공할 수 있다.
아래에서 단말(1200)과 서버(1300)의 동작을 보다 상세하게 설명하도록 한다.
도 16은 개시된 또다른 실시예에 따른 단말의 음성 처리 방법을 나타내는 순서도이다.
먼저, 단말(1200)은 1610 단계에서 개인 정보(1272) 에 ID를 대응시켜 매핑 테이블(1273)을 생성한다. 이 경우, 개인 정보(1272)와 함께 개인 정보(1272)로부터 생성되는 부가 정보에 ID를 대응시켜 매핑 테이블(1273)을 생성할 수도 있다. 여기서, 부가 정보는 발음 기호, 발음열 등을 포함할 수 있다. 개시된 실시예에 따르면, 단말(1200)은 개인 정보(1272)의 단어 리스트를 이용하여 발음 사전을 생성하고, 발음 사전을 이용하여 발음 기호와 단어에 대하여 ID를 매핑할 수 있다. 이 경우, 단말(1200)은 임의의 ID를 부여할 수 있다. 도 18 내지 도 20을 참조하여 보다 상세히 설명하도록 한다.
도 18은 개인 정보를 나타내는 도면이다.
개인 정보(1272)는 직간접적으로 각 개인을 식별할 수 있는 정보로, 연락처, 음악 리스트, 단문 메시지의 내용이나 수신, 발신 내역, 웹 검색 이력, 재생 목록 등이 이에 해당한다. 도 18을 참조하면, 다양한 형태의 개인 정보가 도시되어 있는데, 연락처 항목에 저장된 이름, 음악 재생 목록에 있는 음악 리스트 또는 가수, 검색 결과 등의 개인 정보(1272)가 저장되어 있음을 알 수 있다. 개시된 실시예에 따르면, 단말(1200)은 이러한 개인 정보(1272)에 ID를 매핑시켜 매핑 테이블을 생성할 수 있다. 도 19를 참조하여 설명하도록 한다.
도 19는 개인 정보를 ID에 매핑시킨 매핑 테이블을 나타내는 도면이다.
도 19를 참조하면, 단말(1200)은 개인 정보(1272)에 포함된 단어인 홍길동, 김길동, 강남스타일, TOXIC, Psy, Galaxy, Note 를 각각 ID 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 로 매핑시킴으로써 단어 매핑 테이블(1910)을 생성한다. 나아가, 단말(1200)은 개인 정보(1272) 뿐 아니라, 개인 정보(1272)로부터 생성되는 부가 정보에 ID를 대응시켜 매핑 테이블(1273)을 생성할 수도 있다. 이러한 부가 정보는 발음 기호, 발음열 등을 포함할 수 있다. 도 20을 참조하여 설명하도록 한다.
도 20은 개인 정보를 발음 기호 별로 나타내는 도면이다.
개시된 실시예에 따르면, 단말(1200)은 개인 정보(1272)의 단어 리스트를 이용하여 발음 사전(phonetic dictionary, 1910)을 생성할 수 있다. 도 20을 참조하면, 개인 정보(1272) 중 연락처에 저장된 이름인 홍길동은 ‘HH OW NX K IY T OW NX’ 으로 발음 기호를 표시하고 있다. 또한, 음악 리스트에 포함된 강남스타일은 ‘K AA NX N A M ST AI L’로 표시할 수 있다. 단말(1200)은 이와 같이 개인 정보(1272)들을 발음 기호로 표시하여 발음 사전(1910)을 생성할 수 있다. 이때, 단말(1200)은 다양한 형태의 발음 기호를 사용할 수 있다. 위에서 설명한 것과 같이 알파벳을 이용하여 발음을 표시할 수도 있고, 영어 단어의 경우, 영어 발음 기호를 사용하여 발음 사전(2010)을 생성할 수도 있다. 도 20을 참조하면 TOXIC은 ‘t ?: k s ? k’, Galaxy는 ‘g ? l ? k s i ’로 표시한 것과 같이 영어 발음 기호로 개인 정보(1272)를 표시할 수 있다. 단말(1200)은 개인 정보(1272) 뿐 아니라, 발음 기호와 같이 개인 정보(1272)로부터 생성되는 부가 정보에도 ID를 대응시켜 매핑 테이블(1273)을 생성할 수 있다.
다시 도 16의 설명으로 돌아가면, 단말(1200)은 1620 단계에서 매핑 테이블(1273)을 이용하여 ID 기반의 개인화 모델(1372)을 생성한다. ID 기반의 개인화 모델(1372)은 1610 단계에서 생성한 매핑 테이블(1273)을 이용하여 생성되는 바, 개인 정보(1272) 및 부가 정보는 ID로 마스킹 된다. 개시된 실시예에 따르면, 단말(1200)은 개인화 모델을 생성함으로써 개인 정보(1272) 및 부가 정보에 매핑된 ID를 음향 단위 ID로 나타낼 수 있다. 도 21 및 22를 참조하여 설명하도록 한다.
도 21은 음향 단위를 ID에 매핑시킨 매핑 테이블을 나타내는 도면이다.
음향 단위 ID 는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타낸다. 도 21을 참조하면, 단말(100)는 각 단어에 포함된 발음 기호인 HH, OW, NX, K, IY, L 를 각각 ID 0x101, 0x102, 0x103, 0x104, 0x105, 0x106, … 로 매핑시킴으로써 음향 단위 매핑 테이블(2110)을 생성한다. 개시된 실시예에 따르면, 단말(1200)은 음향에 ID를 매핑 시, 서버(1300)와 합의에 따라 특정 음향에 특정 ID를 매핑할 수 있다. 즉, 단말(1200)이 음향 단위 HH에 매핑한 ID 0x101는 서버(1300)와 사전에 합의된 ID 일 수 있다. 이에 따라, 서버(1300)는 음성 신호를 데이터 처리할 때, 특정 음성 신호, 즉, 특정 음향에 대하여 단말(1200)과 합의된 특정 ID로 대응시킬 수 있다. 단말(1200)과 서버(1300)의 합의 과정은 단말(1200) 또는 서버(1300) 한쪽에서 특정 음향에 매핑되는 ID를 지정하여 상대방에게 통보할 수도 있고, 의견을 교환하며 발음 기호에 ID를 매핑할 수도 있다. 도 20에서는 편의상 발음 기호와 음향 단위 ID가 1 대 1로 매핑되어 있으나, 음향 단위 ID는 발음 기호와 1 대 1 매핑 되지 않을 수도 있다. 예를 들어, 발음 기호 HH 와 OW 를 합친 음향을 하나의 음향 단위로 보아 HH OW 에 하나의 음향 단위 ID를 부여할 수도 있다.
도 22는 개인 정보 ID를 음향 단위 ID로 나타내는 도면이다.
단말(1200)은 개인 정보(2210)에 단어 ID(2220)를 매핑할 수 있고, 이러한 개인 정보(2210)의 발음 기호 및 음향 모델을 이용하여 단어 ID(2220)에 음향 단위 ID(2230)를 매핑할 수 있다. 음향 단위 ID 는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타내며, 발음 기호와 1 대 1 매핑 되지 않을 수도 있다. 다만, 여기에서는 편의상 음향 단위 ID와 발음 기호가 1 대 1 매핑됨을 가정하고 설명한다.
도 22를 참조하면, 단말(1200)은 개인 정보(1272) ‘홍길동’이라는 단어에 대해서는 임의로 0x01 라는 ID로 매핑하였다. ‘홍길동’ 이라는 단어는 발음 기호 ‘HH OW NX K IY T OW NX’ 로 나타낼 수 있고, 각 발음 기호는 서버(1300)와 합의된 음향 단위 ID 0x101,0x102, 0x103, 0x104, 0x105, 0x106, … 로 매핑 된다. 따라서, ‘홍길동’에 해당하는 0x01 라는 ID는 음향 단위 ID 0x101,0x102, 0x103, 0x104, 0x105, 0x106, … 로 나타낼 수 있다.
개시된 실시예에 따르면, 단말(1200)은 단어에 대해서는 임의로 ID를 매핑하고, 해당 단어 ID를 서버와 합의된 음향 단위 ID로 나타낼 수 있다. 이에 따라 개인 정보(1272)는 ID로 마스킹함으로써 개인화 모델이 외부에 노출되더라도 개인 정보(1272)를 보호할 수 있고, 서버(1300)는 합의된 음향 단위 ID를 이용하여 음성 신호에 대한 데이터 처리를 할 수 있다.
다음으로, 단말(1200)은 1630 단계에서 ID 기반의 개인화 모델(1372)을 서버로 전송한다. 위에서 설명한 것과 같이, ID 기반의 개인화 모델(1372)은 도 22에 도시된 단어 ID(2220) 및 음향 단위 ID(2230)를 기초로 생성될 수 있다. 따라서 서버(1300)는 인식할 음성 신호를 수신한 경우 음성 신호를 처리하여 해당 음성 신호의 음향 단위 ID(2230)에 대응하는 단어 ID(2220)를 결과로 출력할 수 있다. 이때, 매핑 테이블(1273)은 서버(1300)에 전송하지 않고 단말(1200)에만 저장함으로써 개인화 모델이 외부에 노출되더라도 개인 정보(1272)를 보호할 수 있다.
그 후, 단말(1200)은 1640 단계에서 서버(1300)로부터 음성 신호에 대하여 ID 기반의 개인화 모델(1372)을 이용해 데이터 처리한 결과를 수신한다. 예를 들어 서버에서 ID 기반의 개인화 모델(1372)을 이용해 데이터 처리한 결과는 도 22에 도시된 바와 같은 단어 ID(2220)를 포함할 수 있다.
다음, 1650 단계에서 단말(1200)은 서버(1300)로부터 수신한 데이터 처리 결과 및 매핑 테이블(1273)을 이용하여 ID에 대응하는 개인 정보(1272) 또는 부가 정보를 복원한다. 즉, 단말(1200)은 도 22에 도시된 바와 같은 단어 ID(2220)를 서버(1300)로부터 데이터 처리결과로서 수신하면, 저장된 단어 매핑 테이블(1273)을 이용하여 단어 ID(2220)에 대응하는 개인 정보를 복원할 수 있다. 도 20을 참조하면, 단말(1200)은 ID 0x01 를 ‘홍길동’으로 복원할 수 있다. 개시된 실시예에 따르면, 단말(1200)은 ID로 마스킹된 개인 정보(1272)를 매핑 테이블(1273)을 이용하여 복원함으로써 데이터 처리를 완료할 수 있다. 단말(1200)은 개인화 모델(1372)을 생성하여 음성 처리 시스템이 높은 성능을 가질 수 있도록 하고, 실제 데이터 처리는 높은 연산 능력을 갖는 서버(1300)에서 이루어짐으로써 음성 신호를 빠르게 처리할 수 있다.
나아가, 단말(1200)은 데이터 처리 결과를 사용자에게 출력할 수 있다.
결과적으로, 개시된 실시예에 따르면, 개인 정보(1272)는 단어나 문장의 내용을 파악할 수 없는 형태로 변형되어 서버(1300)로 전달됨으로써 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다. 또한, 높은 연산 능력을 갖는 서버로 개인화 모델을 전송하여 음성 신호에 대하여 데이터 처리를 함으로써 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 17은 개시된 또다른 실시예에 따른 서버의 음성 처리 방법을 나타내는 순서도이다.
먼저, 서버(1300)는 1710 단계에서 단말(1200)로부터 ID 기반의 개인화 모델(1273)을 수신한다. ID 기반의 개인화 모델(1273)은 개인 정보(1272)에 대한 부분이 ID로 마스킹 되어 있어 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다.
그 후, 서버(1300)는 1720 단계에서 음성 신호를 수신한다. 서버(200)는 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 단말(100)로부터 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다.
다음으로, 서버(1300)는 1730 단계에서 음성 신호에 대하여 ID 기반의 개인화 모델(1273)을 이용하여 데이터 처리한다. 이 경우, 서버(1300)는 단말(1200)과 사전 합의에 따라 음향 단위에 매핑된 ID를 이용하여 개인 정보 ID를 나타내도록 제어할 수 있다. 도 21 내지 도 22를 참조하여 설명한다.
도 21을 참조하면, 서버(1300)가 단말(1200)과의 합의 에 따라 음향 단위에 ID가 매핑되어 있다. 서버(1300)는 ‘홍길동’이라는 음성 신호에 대해서 연속적인 음향의 집합으로 인식한다. 따라서, 음향 ‘HH’에 대해서는 단말(1200)과 사전에 합의된 ID 인 0x101 를 부여하고, 음향 ‘OW’에 대해서는 0x102를 부여하는 방식으로, ‘홍길동’이라는 음성 신호를 음향 단위 ID의 집합인 0x101, 0x102, 0x103, 0x104, 0x105, 0x106, … 으로 나타낼 수 있다.
서버(1300)는 단말(1200)로부터 수신한 개인화 모델(1273)에서 이러한 발음 기호 ID 집합에 대응하는 단어 ID를 찾아 대응 시킬 수 있다. 도 22를 참조하면, ‘홍길동’ 이라는 단어에는 0x01 이라는 ID가 매핑되어 있다. 따라서, 서버(1300)는 ‘홍길동’ 이라는 음성 신호를 발음 기호 ID의 집합인 0x101, 0x102, 0x103, 0x104, 0x105, 0x106, … 에 대응하는 0x01 이라는 단어 ID로 나타낼 수 있다. 서버(1300)는 단말(1200)로부터 개인화 모델(1372)을 수신하여 데이터 처리를 함으로써 높은 성능을 가질 수 있고, 또한, 서버(1300)는 높은 연산 능력을 갖는바, 음성 신호를 빠르게 처리할 수 있다.
나아가, 서버(1300)는 1740 단계에서 데이터 처리 결과를 단말(1200)로 전송한다.
결과적으로, 개시된 실시예에 따르면, 개인 정보(1272)는 단어나 문장의 내용을 파악할 수 없는 형태로 변형되어 서버(1300)로 전달됨으로써 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다. 또한, 높은 연산 능력을 갖는 서버(1300)에서 개인화 모델을 이용하여 음성 신호에 대하여 데이터 처리를 함으로써 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
도 23은 개시된 다른 실시예에 따른 단말과 서버의 구체적인 동작 과정의 예시를 나타내는 순서도이다.
먼저, 2310 단계에서 단말(1200)은 개인 정보(1272) 에 ID를 대응시켜 매핑 테이블(1273)을 생성한다. 단말(1200)은 개인 정보(1272)의 단어 리스트를 이용하여 발음 사전(1910)을 생성하고, 발음 사전(1910)을 이용하여 발음 기호와 단어에 대하여 ID를 매핑할 수 있다. 이 경우, 단말(1200)은 임의의 ID를 부여할 수 있다.
다음으로, 2320 단계에서 단말(1200)은 매핑 테이블(1273)을 이용하여 ID 기반의 개인화 모델(1372)을 생성하여, 2330 단계에서 서버(1300)로 전송한다. 서버(1300)는 2340 단계에서 수신한 ID 기반의 개인화 모델(1372)을 저장부(1370)에 저장한다. ID 기반의 개인화 모델(1372)은 도 22에 도시된 단어 ID(2220) 및 음향 단위 ID(2230)를 기초로 생성될 수 있다.
그 후, 단말(1200)은 2350 단계에서 음성 신호를 수신하여 2360 단계에서 서버(1300)로 전송한다. 위에서 설명한 것과 같이 단말(100)은 다양한 구성 요소를 통해 음성 신호를 수신할 수 있다. 마이크부를 통해 음성 신호를 수신하는 것이 가장 일반적인 형태일 것이지만, USB 인터페이스부 또는 DVD 인터페이스부 등을 통해 음성 신호를 수신할 수도 있다. 나아가, 외부 장치와 통신을 통해 음성 신호를 수신할 수도 있다.
서버(1300)는 2370 단계에서 수신한 음성 신호에 대하여 ID 기반의 개인화 모델을 이용하여 데이터 처리하고, 2380 단계에서 데이터 처리 결과를 단말(1200)로 전송한다. 이 경우, 서버(1300)는 개인 정보(1272) 또는 부가 정보에 매핑된 ID를 단말(1200)과 합의에 따라 음향 단위에 매핑된 ID를 이용하여 나타낼 수 있다.
그 후, 2390 단계에서 단말(1200)은 데이터 처리 결과 및 매핑 테이블(1273)을 이용하여 ID에 대응하는 개인 정보(1272) 또는 부가 정보를 복원한다.
개시된 실시예에 따르면, 서버(1300)는 ID 기반의 개인화 모델을 단말(1200)로부터 수신하여, 수신한 ID 기반의 개인화 모델을 기용하여 데이터를 처리함으로써, 외부에 개인화 모델이 노출되더라도 ID로 마스킹 된 개인 정보(1272)를 복원하기 어려워 개인 정보(1272)를 보호할 수 있다. 또한, 높은 연산 능력을 갖는 서버(1300)가 음성 신호에 대하여 데이터 처리를 함으로써 보다 높은 성능 및 처리 속도를 갖는 음성 처리 시스템을 구현할 수 있다.
한편, 상술한 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이상과 첨부된 도면을 참조하여 실시예를 설명하였지만, 개시된 실시예가 속하는 기술분야에서 통상의 지식을 가진 자는 개시된 실시예가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 단말
110: 수신부
130: 통신부
150: 제어부
200: 서버
210: 수신부
230: 통신부
250: 제어부

Claims (42)

  1. 음성 신호(speech signal)를 수신하는 단계;
    상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간(personalized information section)을 검출하는 단계;
    상기 음성 신호 중 상기 개인화 정보 구간에 대응하는 음성 신호에 대하여 상기 개인 정보를 기반으로 생성된 개인화 모델(personalized model)을 이용하여 데이터 처리하는 단계;
    서버로부터 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간(general information section)에 대응하는 음성 신호에 대하여 데이터 처리한 결과 및 개인화 정보 구간 및 일반 정보 구간을 포함하는 음성 구간 정보를 수신하는 단계; 및
    상기 검출된 개인화 정보 구간 및 상기 서버로부터 수신된 음성 구간 정보를 기초로, 처리되지 않은 음성 구간이 있는 경우, 상기 처리되지 않은 음성 구간에 대하여 상기 개인화 모델을 이용하여 데이터 처리하는 단계를 포함하는 것을 특징으로 하는 단말의 음성 신호 처리 방법.
  2. 제1항에 있어서,
    상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 서버로 전송하는 단계를 더 포함하는 것을 특징으로 하는 단말의 음성 신호 처리 방법.
  3. 제2항에 있어서,
    상기 음성 구간 정보는,
    상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹(marking)한 구간 마킹 정보를 포함하는 것을 특징으로 하는 단말의 음성 신호 처리 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 서버로부터 수신한 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는,
    상기 서버가 일반 모델을 이용하여 상기 일반 정보 구간에 대응하는 음성 신호를 처리한 결과인 것을 특징으로 하는 단말의 음성 신호 처리 방법.
  6. 음성 신호를 수신하는 단계;
    상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하는 단계;
    상기 음성 신호 중 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하는 단계;
    단말로부터 개인화 정보 구간 및 일반 정보 구간을 포함하는 음성 구간 정보를 수신하는 단계; 및
    상기 검출된 개인화 정보 구간 및 상기 단말로부터 수신된 음성 구간 정보를 기초로, 처리되지 않은 음성 구간이 있는 경우, 상기 처리되지 않은 음성 구간에 대하여 상기 일반 모델을 이용하여 데이터 처리하는 단계; 및
    상기 일반 모델을 이용하여 데이터 처리한 결과를 상기 단말로 전송하는 단계를 포함하는 것을 특징으로 하는 서버의 음성 신호 처리 방법.
  7. 제6항에 있어서,
    상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 단말로 전송하는 단계를 더 포함하는 것을 특징으로 하는 서버의 음성 신호 처리 방법.
  8. ◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈
    제7항에 있어서,
    상기 음성 구간 정보는,
    상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹(marking)한 구간 마킹 정보를 포함하는 것을 특징으로 하는 서버의 음성 신호 처리 방법.
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 개인 정보에 ID를 매핑시켜 매핑 테이블을 생성하는 단계;
    상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하는 단계;
    상기 ID 기반의 개인화 모델을 서버로 전송하는 단계;
    상기 서버로부터 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용해 데이터를 처리한 결과를 수신하는 단계; 및
    상기 데이터 처리 결과 및 상기 매핑 테이블을 이용하여 상기 ID에 대응하는 상기 개인 정보를 복원하는 단계를 포함하는 것을 특징으로 하고,
    상기 ID는 음향(acoustic) 단위에 매핑된 ID인 음향 단위 ID이고, 상기 음향 단위 ID는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타내고,
    상기 ID 기반의 개인화 모델은 음성 인식 모델인 단말의 음성 신호 처리 방법.
  17. 삭제
  18. 제16항에 있어서,
    상기 음향 단위 ID는,
    상기 서버와 합의에 따라 상기 음향에 매핑된 ID인 것을 특징으로 하는 단말의 음성 신호 처리 방법.
  19. 제16항에 있어서,
    상기 개인 정보로부터 생성되는 부가 정보에 ID를 매핑시켜 상기 매핑 테이블을 생성하는 단계를 더 포함하는 단말의 음성 신호 처리 방법.
  20. 단말로부터 ID 기반의 개인화 모델을 수신하는 단계;
    음성 신호를 수신하는 단계;
    상기 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용하여 데이터 처리하는 단계; 및
    상기 데이터 처리의 결과를 상기 단말로 전송하는 단계를 포함하고,
    상기 ID는 음향(acoustic) 단위에 매핑된 ID인 음향 단위 ID이고, 상기 음향 단위 ID는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타내고,
    상기 ID 기반의 개인화 모델은 음성 인식 모델인 것을 특징으로 하는 서버의 음성 신호 처리 방법.
  21. 삭제
  22. 음성을 수신하는 수신부;
    서버와 통신을 수행하는 통신부; 및
    음성 신호를 수신하고, 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하며, 상기 음성 신호 중 상기 개인화 정보 구간에 대응하는 음성 신호에 대하여 상기 개인 정보를 기반으로 생성된 개인화 모델을 이용하여 데이터 처리하고, 상기 서버로부터 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과 및 개인화 정보 구간 및 일반 정보 구간을 포함하는 음성 구간 정보를 수신하고, 상기 검출된 개인화 정보 구간 및 상기 서버로부터 수신된 음성 구간 정보를 기초로, 처리되지 않은 음성 구간이 있는 경우, 상기 처리되지 않은 음성 구간에 대하여 상기 개인화 모델을 이용하여 데이터 처리하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 단말.
  23. 제22항에 있어서,
    상기 제어부는,
    상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 서버로 전송하도록 제어하는 것을 특징으로 하는 단말.
  24. ◈청구항 24은(는) 설정등록료 납부시 포기되었습니다.◈
    제23항에 있어서,
    상기 음성 구간 정보는,
    상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함하는 것을 특징으로 하는 단말.
  25. 삭제
  26. 제22항에 있어서,
    상기 서버로부터 수신한 상기 일반 정보 구간에 대응하는 음성 신호에 대하여 데이터 처리한 결과는,
    상기 서버가 일반 모델을 이용하여 상기 일반 정보 구간에 대응하는 음성 신호를 처리한 결과인 것을 특징으로 하는 단말.
  27. 음성을 수신하는 수신부;
    단말과 통신을 수행하는 통신부; 및
    음성 신호를 수신하고, 상기 음성 신호 중 개인 정보를 포함하는 개인화 정보 구간을 검출하며, 상기 음성 신호 중 상기 개인화 정보 구간 이외의 구간인 일반 정보 구간에 대응하는 음성 신호에 대하여 일반 모델을 이용하여 데이터 처리하고, 상기 단말로부터 개인화 정보 구간 및 일반 정보 구간을 포함하는 음성 구간 정보를 수신하고, 상기 검출된 개인화 정보 구간 및 상기 단말로부터 수신된 음성 구간 정보를 기초로, 처리되지 않은 음성 구간이 있는 경우, 상기 처리되지 않은 음성 구간에 대하여 상기 일반 모델을 이용하여 데이터 처리하고, 상기 일반 모델을 이용하여 데이터 처리한 결과를 상기 단말로 전송하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 서버.
  28. 제27항에 있어서,
    상기 제어부는,
    상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 생성하여 상기 단말로 전송하도록 제어하는 것을 특징으로 하는 서버.
  29. ◈청구항 29은(는) 설정등록료 납부시 포기되었습니다.◈
    제28항에 있어서,
    상기 음성 구간 정보는,
    상기 음성 신호 중 상기 개인화 정보 구간 및 상기 일반 정보 구간 중 적어도 하나 이상의 구간을 마킹한 구간 마킹 정보를 포함하는 것을 특징으로 하는 서버.
  30. 제27항에 있어서,
    상기 제어부는,
    상기 단말로부터 상기 개인화 정보 구간과 상기 일반 정보 구간에 대한 음성 구간 정보를 수신하도록 제어하는 것을 특징으로 하는 서버.
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 음성 신호를 수신하는 수신부:
    서버와 통신을 수행하는 통신부; 및
    개인 정보에 ID를 매핑시켜 매핑 테이블을 생성하고, 상기 매핑 테이블을 이용하여 ID 기반의 개인화 모델을 생성하며, 상기 ID 기반의 개인화 모델을 상기 서버로 전송하고, 상기 서버로부터 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용해 데이터 처리한 결과를 수신하며, 상기 데이터 처리 결과 및 상기 매핑 테이블을 이용하여 상기 ID에 대응하는 상기 개인 정보를 복원하도록 제어하는 제어부를 포함하고,
    상기 ID는 음향(acoustic) 단위에 매핑된 ID인 음향 단위 ID이고, 상기 음향 단위 ID는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타내고,
    상기 ID 기반의 개인화 모델은 음성 인식 모델인 것을 특징으로 하는 단말.
  38. 삭제
  39. 제37항에 있어서,
    상기 음향 단위 ID는,
    상기 서버와 합의에 따라 상기 음향에 매핑된 ID인 것을 특징으로 하는 단말.
  40. 제37항에 있어서,
    상기 제어부는,
    상기 개인 정보로부터 생성되는 부가 정보에 ID를 매핑시켜 상기 매핑 테이블을 생성하도록 제어하는 것을 특징으로 하는 단말.
  41. 음성 신호를 수신하는 수신부;
    단말과 통신을 수행하는 통신부; 및
    단말로부터 ID 기반의 개인화 모델을 수신하고, 음성 신호를 수신하며, 상기 음성 신호에 대하여 상기 ID 기반의 개인화 모델을 이용하여 데이터 처리하고, 상기 데이터 처리의 결과를 상기 단말로 전송하도록 제어하는 제어부를 포함하고,
    상기 ID는 음향(acoustic) 단위에 매핑된 ID인 음향 단위 ID이고, 상기 음향 단위 ID는 발음 기호에 해당하는 음성 인식 모델의 특정 부분을 나타내고,
    상기 ID 기반의 개인화 모델은 음성 인식 모델인 것을 특징으로 하는 서버.
  42. 삭제
KR1020150152525A 2014-11-07 2015-10-30 음성 신호 처리 방법 및 장치 KR102536944B1 (ko)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CN202010629273.8A CN111787012B (zh) 2014-11-07 2015-11-09 语音信号处理方法及实现此的终端和服务器
EP15193742.2A EP3018654B1 (en) 2014-11-07 2015-11-09 Speech signal processing method and speech signal processing apparatus
EP20161030.0A EP3690879A3 (en) 2014-11-07 2015-11-09 Speech signal processing method and speech signal processing apparatus
US14/936,043 US10319367B2 (en) 2014-11-07 2015-11-09 Speech signal processing method and speech signal processing apparatus
EP24158659.3A EP4350558A3 (en) 2014-11-07 2015-11-09 Speech signal processing method and speech signal processing apparatus
CN201510756263.XA CN105592067B (zh) 2014-11-07 2015-11-09 语音信号处理方法及实现此的终端和服务器
US16/399,202 US10600405B2 (en) 2014-11-07 2019-04-30 Speech signal processing method and speech signal processing apparatus
US16/399,211 US11308936B2 (en) 2014-11-07 2019-04-30 Speech signal processing method and speech signal processing apparatus
KR1020230065922A KR20230075386A (ko) 2014-11-07 2023-05-22 음성 신호 처리 방법 및 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462076717P 2014-11-07 2014-11-07
US62/076,717 2014-11-07

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230065922A Division KR20230075386A (ko) 2014-11-07 2023-05-22 음성 신호 처리 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160055059A KR20160055059A (ko) 2016-05-17
KR102536944B1 true KR102536944B1 (ko) 2023-05-26

Family

ID=56109617

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150152525A KR102536944B1 (ko) 2014-11-07 2015-10-30 음성 신호 처리 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102536944B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3496090A1 (en) * 2017-12-07 2019-06-12 Thomson Licensing Device and method for privacy-preserving vocal interaction
KR102550932B1 (ko) 2017-12-29 2023-07-04 삼성전자주식회사 음성 인식 모델의 개인화 방법 및 장치
KR102563817B1 (ko) 2018-07-13 2023-08-07 삼성전자주식회사 사용자 음성 입력 처리 방법 및 이를 지원하는 전자 장치
CN110797014B (zh) * 2018-07-17 2024-06-07 中兴通讯股份有限公司 一种语音识别方法、装置及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101330328B1 (ko) * 2010-12-14 2013-11-15 한국전자통신연구원 음성 인식 방법 및 이를 위한 시스템
US20130346078A1 (en) * 2012-06-26 2013-12-26 Google Inc. Mixed model speech recognition
US20140207442A1 (en) * 2013-01-24 2014-07-24 Nuance Communications, Inc. Protection of Private Information in a Client/Server Automatic Speech Recognition System

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101330328B1 (ko) * 2010-12-14 2013-11-15 한국전자통신연구원 음성 인식 방법 및 이를 위한 시스템
US20130346078A1 (en) * 2012-06-26 2013-12-26 Google Inc. Mixed model speech recognition
US20140207442A1 (en) * 2013-01-24 2014-07-24 Nuance Communications, Inc. Protection of Private Information in a Client/Server Automatic Speech Recognition System

Also Published As

Publication number Publication date
KR20160055059A (ko) 2016-05-17

Similar Documents

Publication Publication Date Title
US20200258506A1 (en) Domain and intent name feature identification and processing
US10192545B2 (en) Language modeling based on spoken and unspeakable corpuses
JP6316884B2 (ja) 個別化されたホットワード検出モデル
US11823678B2 (en) Proactive command framework
KR101418163B1 (ko) 컨텍스트 정보를 이용한 음성 인식 복구
US9986394B1 (en) Voice-based messaging
US11188289B2 (en) Identification of preferred communication devices according to a preference rule dependent on a trigger phrase spoken within a selected time from other command data
CN107039038A (zh) 学习个性化实体发音
US20140074470A1 (en) Phonetic pronunciation
US11687526B1 (en) Identifying user content
JP2020030408A (ja) オーディオにおける重要語句を認識するための方法、装置、機器及び媒体
US10224030B1 (en) Dynamic gazetteers for personalized entity recognition
KR102536944B1 (ko) 음성 신호 처리 방법 및 장치
TW201606750A (zh) 使用外國字文法的語音辨識
JP6275354B1 (ja) 意図推定装置及び意図推定方法
US20180090131A1 (en) Technologies for improved keyword spotting
US11289075B1 (en) Routing of natural language inputs to speech processing applications
US20220399013A1 (en) Response method, terminal, and storage medium
US10600405B2 (en) Speech signal processing method and speech signal processing apparatus
KR20230075386A (ko) 음성 신호 처리 방법 및 장치
US11450325B1 (en) Natural language processing
JP2019109424A (ja) 計算機、言語解析方法、及びプログラム
CN116825097A (zh) 车载语音识别方法及其装置
CN117133274A (zh) 一种语音识别方法、装置、设备和介质
KR20230014680A (ko) 서드파티 디지털 어시스턴트 액션을 위한 비트 벡터 기반 콘텐츠 매칭

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
A107 Divisional application of patent
GRNT Written decision to grant