KR102486395B1 - 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법 - Google Patents

화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법 Download PDF

Info

Publication number
KR102486395B1
KR102486395B1 KR1020170157507A KR20170157507A KR102486395B1 KR 102486395 B1 KR102486395 B1 KR 102486395B1 KR 1020170157507 A KR1020170157507 A KR 1020170157507A KR 20170157507 A KR20170157507 A KR 20170157507A KR 102486395 B1 KR102486395 B1 KR 102486395B1
Authority
KR
South Korea
Prior art keywords
neural network
information
speaker
trained
mixed
Prior art date
Application number
KR1020170157507A
Other languages
English (en)
Other versions
KR20190060028A (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 KR1020170157507A priority Critical patent/KR102486395B1/ko
Priority to US16/134,529 priority patent/US11094329B2/en
Publication of KR20190060028A publication Critical patent/KR20190060028A/ko
Application granted granted Critical
Publication of KR102486395B1 publication Critical patent/KR102486395B1/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
    • G10L17/00Speaker identification or verification techniques
    • G10L17/18Artificial neural networks; Connectionist approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/02Preprocessing operations, e.g. segment selection; Pattern representation or modelling, e.g. based on linear discriminant analysis [LDA] or principal components; Feature selection or extraction
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/06Decision making techniques; Pattern matching strategies
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • 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/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification techniques
    • G10L17/04Training, enrolment or model building

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Signal Processing (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Burglar Alarm Systems (AREA)
  • Image Processing (AREA)

Abstract

음성 분리 기능을 갖는 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성할 수 있고, 제 2 뉴럴 네트워크를 훈련시켜, 음성 분리 및 화자 인식 기능을 동시에 갖는 제 2 뉴럴 네트워크를 생성하는 방법 및 이를 위한 뉴럴 네트워크 장치를 제공한다.

Description

화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법 {Neural network device for speaker recognition, and operation method of the same}
본 개시는 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법에 관한 것이다.
뉴럴 네트워크(neural network)는 생물학적 뇌를 모델링한 컴퓨터 과학적 아키텍쳐(computational architecture)를 참조한다. 최근 뉴럴 네트워크(neural network) 기술이 발전함에 따라, 다양한 종류의 전자 시스템에서 뉴럴 네트워크 장치를 사용하여 입력 데이터를 분석하고 유효한 정보를 추출하는 연구가 활발히 진행되고 있다.
특히, 뉴럴 네트워크를 이용한 다양한 기법들이 음성 인식 분야에 적용되어, 음성 인식 또는 화자 인식의 성능이 향상되고 있다.
화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법을 제공하는데 있다. 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
일 측면에 따라, 화자 인식을 위한 뉴럴 네트워크 장치는, 하나 이상의 명령어(instruction)를 저장하는 메모리; 및 하나 이상의 명령어를 실행함으로써, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성하고, 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성하고, 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고, 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성하는, 프로세서를 포함할 수 있다.
다른 측면에 따라, 화자 인식을 위한 뉴럴 네트워크 장치의 동작 방법은, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성하는 단계; 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성하는 단계; 및 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성하는 단계를 포함할 수 있다.
또 다른 측면에 따라, 뉴럴 네트워크 장치의 동작 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.
본 실시예들에 따르면, 뉴럴 네트워크 장치는 음성 분리를 위한 첫 번째 훈련과, 음성 분리 및 화자 인식을 위한 두 번째 훈련을 뉴럴 네트워크에 대해 연속적으로 수행하는 바, 높은 성능으로 다수의 화자를 인식할 수 있는 뉴럴 네트워크를 생성할 수 있다.
또한, 본 실시예들에 따르면, 뉴럴 네트워크 장치는, 음성 분리 및 화자 인식 기능을 동시에 갖는 뉴럴 네트워크를 이용하는 바, 음성 분리 및 화자 인식에 소요되는 시간을 줄일 수 있어, 실시간 동작 환경에서도 작동 가능할 수 있다.
도 1은 일 실시예에 따른 뉴럴 네트워크 장치의 하드웨어 구성을 도시한 블록도이다.
도 2는 프로세서가 제 1 뉴럴 네트워크를 훈련시키는 실시예를 나타낸다.
도 3은 프로세서가 제 2 뉴럴 네트워크를 훈련시키는 실시예를 나타낸다.
도 4는 프로세서가 화자를 등록하는 실시예를 나타낸다.
도 5는 프로세서가 적어도 하나의 음성 신호에 대한 적어도 하나의 화자를 인식하는 실시예를 나타낸다.
도 6은 다른 실시예에 따른 뉴럴 네트워크 장치의 하드웨어 구성을 도시한 블록도이다.
도 7은 일 실시예에 따라, 뉴럴 네트워크 장치의 동작 방법을 설명하기 위한 도면이다.
도 8은 다른 실시예에 따라, 뉴럴 네트워크 장치의 동작 방법을 설명하기 위한 도면이다.
본 실시예들에서 사용되는 용어는 본 실시예들에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 기술분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 임의로 선정된 용어도 있으며, 이 경우 해당 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서, 본 실시예들에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 실시예들의 전반에 걸친 내용을 토대로 정의되어야 한다.
실시예들에 대한 설명들에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 그 중간에 다른 구성요소를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 실시예들에서 사용되는 "구성된다" 또는 "포함한다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
하기 실시예들에 대한 설명은 권리범위를 제한하는 것으로 해석되지 말아야 하며, 해당 기술분야의 당업자가 용이하게 유추할 수 있는 것은 실시예들의 권리범위에 속하는 것으로 해석되어야 할 것이다. 이하 첨부된 도면들을 참조하면서 오로지 예시를 위한 실시예들을 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 뉴럴 네트워크 장치의 하드웨어 구성을 도시한 블록도이다.
화자 인식용 뉴럴 네트워크 장치(10)(이하, 설명의 편의상 뉴럴 네트워크 장치(10)라고 한다.)는 PC(personal computer), 서버 디바이스, 모바일 디바이스, 임베디드 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있고, 구체적인 예로서 뉴럴 네트워크를 이용한 음성 인식, 화자 인식, 영상 인식, 영상 분류 등을 수행하는 스마트폰, 태블릿 디바이스, AR(Augmented Reality) 디바이스, IoT(Internet of Things) 디바이스, 자율주행 자동차, 로보틱스, 의료기기 등에 해당될 수 있으나, 이에 제한되지 않는다. 나아가서, 뉴럴 네트워크 장치(10)는 위와 같은 디바이스에 탑재되는 전용 하드웨어 가속기(HW accelerator)에 해당될 수 있고, 뉴럴 네트워크 장치(10)는 뉴럴 네트워크 구동을 위한 전용 모듈인 NPU(neural processing unit), TPU(Tensor Processing Unit), Neural Engine 등과 같은 하드웨어 가속기일 수 있으나, 이에 제한되지 않는다.
도 1을 참고하면, 뉴럴 네트워크 장치(10)는 프로세서(110) 및 메모리(120)를 포함한다. 도 1에 도시된 뉴럴 네트워크 장치(10)에는 본 실시예들와 관련된 구성요소들만이 도시되어 있다. 따라서, 뉴럴 네트워크 장치(10)에는 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다.
프로세서(110)는 뉴럴 네트워크 장치(10)를 실행하기 위한 전반적인 기능들을 제어하는 역할을 한다. 예를 들어, 프로세서(110)는 뉴럴 네트워크 장치(10) 내의 메모리(120)에 저장된 하나 이상의 명령어 또는 프로그램들을 실행함으로써, 뉴럴 네트워크 장치(10)를 전반적으로 제어한다. 프로세서(110)는 뉴럴 네트워크 장치(10) 내에 구비된 CPU(central processing unit), GPU(graphics processing unit), AP(application processor) 등으로 구현될 수 있으나, 이에 제한되지 않는다.
메모리(120)는 뉴럴 네트워크 장치(10) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 예를 들어, 메모리(120)는 뉴럴 네트워크 장치(10)에서 처리된 데이터들 및 처리될 데이터들을 저장할 수 있다. 또한, 메모리(120)는 뉴럴 네트워크 장치(10)에 의해 구동될 애플리케이션들, 드라이버들 등을 저장할 수 있다. 메모리(120)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
프로세서(110)는, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성할 수 있다. 혼합 음성 신호는, 화자들의 동시 발화로 인해 화자들의 음성 신호들이 혼합 또는 중첩된 신호를 의미할 수 있다. 또한, 혼합 음성 신호는, 화자들의 음성 신호들과 잡음 신호가 혼합 또는 중첩된 신호를 의미할 수 있다. 따라서, 프로세서(110)에 의해 훈련된 제 1 뉴럴 네트워크는, 혼합 음성 신호를, 화자들의 개별 음성 신호들로 분리할 수 있다. 또한, 프로세서(110)에 의해 훈련된 제 1 뉴럴 네트워크는, 혼합 음성 신호를 적어도 하나의 화자의 개별 음성 신호와 잡음 신호로 분리할 수 있다.
제 1 뉴럴 네트워크를 훈련시키는 과정에서, 프로세서(110)는, 제 1 뉴럴 네트워크에 대한 입력 정보로써, 혼합 음성 신호를 획득할 수 있고, 제 1 뉴럴 네트워크에 대한 출력 정보로써, 혼합 음성 신호 내의 개별 음성 신호들을 획득할 수 있다. 일 예에 따라, 프로세서(110)는, 제 1 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 메모리(120)로부터 획득할 수 있다. 다른 예에 따라, 프로세서(110)는, 제 1 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 뉴럴 네트워크 장치 내 음향 센서로부터 획득할 수 있다.
프로세서(110)는 제 1 뉴럴 네트워크에 대한 입력 정보로써, 복수의 화자들의 혼합 음성 신호를 획득할 수 있고, 제 1 뉴럴 네트워크에 대한 출력 정보로써, 복수의 화자들 각각의 개별 음성 신호를 획득할 수 있다. 이어서, 프로세서(110)는 획득된 입력 정보 및 출력 정보에 따라 제 1 뉴럴 네트워크를 훈련시킬 수 있고, 훈련된 제 1 뉴럴 네트워크는 혼합 음성 신호를 개별 음성 신호들로 분리할 수 있다. 보다 구체적인 실시예는 이하 도 2에서 살펴보기로 한다.
따라서, 프로세서(110)는 기 전술된 훈련 과정을 통해 음성 분리 기능을 갖는 제 1 뉴럴 네트워크를 생성할 수 있다. 또한, 기 전술된 훈련 과정 이외에도 당업자에게 알려진 훈련 과정을 통해, 프로세서(110)는 음성 분리 기능을 갖는 제 1 뉴럴 네트워크를 생성할 수 있다.
프로세서(110)는 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성할 수 있다. 구체적인 실시예로, 프로세서(110)는 훈련된 제 1 뉴럴 네트워크의 출력 레이어를 제거하고, 적어도 하나의 히든 레이어와 출력 레이어를 연결시켜, 제 2 뉴럴 네트워크를 생성할 수 있다.
프로세서(110)는, 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성할 수 있다. 따라서, 프로세서(110)에 의해 훈련된 제 2 뉴럴 네트워크는, 혼합 음성 신호를 화자들의 개별 음성 신호들로 분리할 수 있고, 분리된 개별 음성 신호들 각각에 대한 화자를 인식할 수 있다. 또한, 프로세서(110)에 의해 훈련된 제 2 뉴럴 네트워크는, 혼합 음성 신호를 화자들의 적어도 하나의 개별 음성 신호와 잡음 신호로 분리할 수 있고, 분리된 적어도 하나의 개별 음성 신호에 대한 화자를 인식할 수 있다.
제 2 뉴럴 네트워크를 훈련시키는 과정에서, 프로세서(110)는, 제 2 뉴럴 네트워크에 대한 입력 정보로써, 혼합 음성 신호를 획득할 수 있고, 제 2 뉴럴 네트워크에 대한 출력 정보로써, 혼합 음성 신호 내의 개별 음성 신호들 각각에 대한 화자 식별 정보를 획득할 수 있다. 화자 식별 정보는, 멀티 클래스 분류(multi class classification)을 위해, 개별 음성 신호들 각각에 대한 화자가 라벨링되는 멀티 클래스 라벨(multi class label)일 수 있다. 일 예에 따라, 프로세서(110)는, 제 2 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 메모리(120)로부터 획득할 수 있다. 다른 예에 따라, 프로세서(110)는, 제 2 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 뉴럴 네트워크 장치 내 음향 센서로부터 획득할 수 있다.
프로세서(110)는 제 2 뉴럴 네트워크에 대한 입력 정보로써, 복수의 화자들의 혼합 음성 신호를 획득할 수 있고, 제 2 뉴럴 네트워크에 대한 출력 정보로써, 복수의 화자들의 개별 음성 신호들 각각에 대한 화자 식별 정보를 획득할 수 있다. 이어서, 프로세서(110)는 획득된 입력 정보 및 출력 정보에 따라 제 2 뉴럴 네트워크를 훈련시킬 수 있고, 훈련된 제 2 뉴럴 네트워크는 혼합 음성 신호를 개별 음성 신호들로 분리하고, 개별 음성 신호들 각각에 대한 화자를 인식할 수 있다. 또한, 훈련 과정에서 출력 정보가 복수의 화자들이 라벨링되는 멀티 클래스 라벨(multi class label)인 바, 훈련된 제 2 뉴럴 네트워크는 멀티 클래스 분류(multi class classification)가 가능한 화자 인식 기능을 가질 수 있다. 보다 구체적인 실시예는 이하 도 3에서 살펴보기로 한다.
따라서, 뉴럴 네트워크 장치(10)는 음성 분리 기능을 갖는 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성할 수 있고, 제 2 뉴럴 네트워크를 훈련시켜, 음성 분리 및 화자 인식 기능을 동시에 갖는 제 2 뉴럴 네트워크를 생성할 수 있다. 또한, 뉴럴 네트워크 장치(10)는 음성 분리를 위한 첫 번째 훈련과, 음성 분리 및 화자 인식을 위한 두 번째 훈련을 뉴럴 네트워크에 대해 연속적으로 수행하는 바, 뉴럴 네트워크는 화자의 인식률을 높이는 방향으로 음성 분리가 이루어지도록 학습하게 된다. 따라서, 뉴럴 네트워크 장치(10)는 높은 성능으로 다수의 화자를 인식할 수 있는 뉴럴 네트워크를 생성할 수 있다.
프로세서(110)는 훈련된 제 2 뉴럴 네트워크를 이용하여 화자를 등록할 수 있다. 구체적으로, 프로세서(110)는 화자의 음성 신호를 획득할 수 있다. 이어서, 프로세서(110)는 훈련된 제 2 뉴럴 네트워크를 이용하여, 화자의 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 예를 들어, 프로세서(110)는, 화자의 음성 신호에 대한 정보가 입력된 훈련된 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출하여, 화자의 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 또한, 화자의 음성 신호에 대한 정보가 복수의 프레임들의 형태로 훈련된 제 2 뉴럴 네트워크에 입력되는 경우, 프로세서(110)는, 복수의 프레임들마다, 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출할 수 있고, 복수의 프레임들의 출력 벡터들의 평균 벡터값을, 화자 인식용 특징 정보로써 획득할 수 있다.
이어서, 프로세서(110)는 화자의 식별 정보와 화자 인식용 특징 정보를 함께 메모리(120)에 저장하여, 화자를 등록할 수 있다. 보다 구체적인 실시예는 이하 도 4에서 살펴보기로 한다.
프로세서(110)는 훈련된 제 2 뉴럴 네트워크를 이용하여 혼합 음성 신호에 대한 적어도 하나의 화자를 인식할 수 있다.
먼저, 프로세서(110)는 혼합 음성 신호를 획득할 수 있다. 이어서, 프로세서(110)는 훈련된 제 2 뉴럴 네트워크를 이용하여, 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 구체적으로, 프로세서(110)가 혼합 음성 신호에 대한 정보를 훈련된 제 2 뉴럴 네트워크에 입력하는 경우, 훈련된 제 2 뉴럴 네트워크는, 혼합 음성 신호를 적어도 하나의 개별 음성 신호로 분리하고, 적어도 하나의 개별 음성 신호의 화자를 인식하는 과정을 거친다. 이 경우, 프로세서(110)는, 훈련된 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출하여, 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다.
이어서, 프로세서(110)는 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보와, 기 등록된 화자 인식용 특징 정보를 비교하여, 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 적어도 하나의 화자를 인식할 수 있다. 구체적으로, 프로세서(110)는 특징 정보 간의 유사도를 판단하는 방법으로, cosine similarity, PLDA(Probabilistic Linear Discriminant Analysis) 등을 방법을 이용할 수 있다. 따라서, 프로세서(110)는 혼합 음성 신호가 어떤 화자들의 개별 음성 신호들이 혼합되었는지 여부를 인식할 수 있다. 보다 구체적인 실시예는, 이하 도 5에서 살펴보기로 한다.
따라서, 뉴럴 네트워크 장치(10)는, 음성 분리 및 화자 인식 기능을 동시에 갖는 뉴럴 네트워크를 이용하는 바, 음성 분리 및 화자 인식에 소요되는 시간을 줄일 수 있어, 실시간 동작 환경에서도 작동 가능할 수 있다.
도 2는 프로세서가 제 1 뉴럴 네트워크를 훈련시키는 실시예를 나타낸다.
프로세서(110)는 입력 레이어, 히든 레이어 1 내지 3, 및 출력 레이어를 포함하는 제 1 뉴럴 네트워크(201)를 생성할 수 있다. 도 2에서는, 제 1 뉴럴 네트워크의 예시로써 딥(deep) 뉴럴 네트워크를 도시하였으나, 이에 한정되지 않는다. 또한, 제 1 뉴럴 네트워크는, 딥 뉴럴 네트워크의 변형으로써, 컨벌루션(convolution) 뉴럴 네트워크, 또는 리커런트 뉴럴 네트워크(recurrent neural network)가 될 수 있으며, 그 밖의 다른 딥 뉴럴 네트워크의 변형인 뉴럴 네트워크가 될 수 있다. 또한, 도 2 내지 5의 뉴럴 네트워크의 각 레이어를 구성하는 노드의 개수, 히든 레이어의 개수 등은 일 예시일 뿐, 이에 한정되지 않는다.
프로세서(110)는 제 1 뉴럴 네트워크(201)가 혼합 음성 신호를 개별 음성 신호들로 분리하도록 제 1 뉴럴 네트워크(201)를 훈련시킬 수 있다. 구체적으로, 제 1 뉴럴 네트워크(201)를 훈련시키는 과정에서, 프로세서(110)는, 제 1 뉴럴 네트워크(201)에 대한 입력 정보로써, 혼합 음성 신호(210)에 대한 정보를 획득할 수 있고, 프로세서(110)는 제 1 뉴럴 네트워크(201)에 대한 출력 정보로써, 개별 음성 신호들(212,214)에 대한 정보를 획득할 수 있다. 구체적인 실시예로, 프로세서(110)는 혼합 음성 신호(210)의 특징(feature)을 제 1 뉴럴 네트워크(201)의 입력 레이어의 값으로써 설정할 수 있으며, 개별 음성 신호들(212,214) 각각의 특징을 제 1 뉴럴 네트워크(201)의 출력 레이어의 값으로써 설정할 수 있다. 예를 들어, 프로세서(110)는 혼합 음성 신호(210) 및 개별 음성 신호들(212,214)의 주파수 대역별 로그 에너지(log energy) 및 파워(power) 등을 이용하여 혼합 음성 신호(210) 및 개별 음성 신호들(212,214)의 특징을 추출할 수 있다.
따라서, 프로세서(110)는, 혼합 음성 신호(210) 및 개별 음성 신호들(212,214)를 통해 제 1 뉴럴 네트워크(201)를 훈련시킬 수 있다. 다시 말해, 제 1 뉴럴 네트워크(201)는, 프로세서(110)에 의한 훈련을 통해, 혼합 음성 신호(210)가 개별 음성 신호들(212,214)로 분리된다는 학습을 할 수 있다.
마찬가지로, 프로세서(110)는 혼합 음성 신호(220) 및 개별 음성 신호들(222,224)를 통해 제 1 뉴럴 네트워크(201)를 훈련시킬 수 있으며, 프로세서(110)는 혼합 음성 신호(230) 및 개별 음성 신호들(232,234)을 통해 제 1 뉴럴 네트워크(201)를 훈련시킬 수 있다. 또한, 프로세서(110)는 혼합 음성 신호들(210,220,230) 및 개별 음성 신호들(212,214,222,224,232,234)을 통해 제 1 뉴럴 네트워크(201)를 훈련시킬 수 있다. 따라서, 프로세서(110)에 의해 훈련된 제 1 뉴럴 네트워크(203)는, 혼합 음성 신호를 개별 음성 신호들로 분리할 수 있다.
도 3은 프로세서가 제 2 뉴럴 네트워크를 훈련시키는 실시예를 나타낸다.
프로세서(110)는 도 2의 훈련된 제 1 뉴럴 네트워크(203)에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크(301)를 생성할 수 있다. 도 3에서 도시된 바와 같이, 프로세서(110)는 훈련된 제 1 뉴럴 네트워크(203)의 출력 레이어를 제거함과 동시에, 훈련된 제 1 뉴럴 네트워크(203)에 새로운 2개의 히든 레이어(히든 레이어 4 및 5) 및 새로운 출력 레이어를 연결시켜, 제 2 뉴럴 네트워크(301)를 생성할 수 있다.
이어서, 프로세서(110)는 제 2 뉴럴 네트워크(301)가 혼합 음성 신호를 개별 음성 신호들로 분리하고, 개별 음성 신호들에 대한 화자를 인식하도록 제 2 뉴럴 네트워크(301)를 훈련시킬 수 있다.
구체적으로, 제 2 뉴럴 네트워크(301)를 훈련시키는 과정에서, 프로세서(110)는, 제 2 뉴럴 네트워크(301)에 대한 입력 정보로써, 혼합 음성 신호(210)에 대한 정보를 획득할 수 있다. 또한, 프로세서(110)는 제 2 뉴럴 네트워크(301)에 대한 출력 정보로써, 개별 음성 신호들(212,214) 각각에 대한 화자 식별 정보(312,314)를 획득할 수 있다. 다시 말해, 프로세서(110)는 개별 음성 신호들(212,214) 각각이 제 1 화자 및 제 2 화자에 의해 발화되었다는 화자 식별 정보(312,314)를 획득할 수 있다. 따라서, 프로세서(110)는, 혼합 음성 신호(210)에 대한 정보, 및 개별 음성 신호들(212,214)에 대한 화자 식별 정보(312,314)을 통해 제 2 뉴럴 네트워크(301)를 훈련시킬 수 있다. 다시 말해, 제 2 뉴럴 네트워크(301)는, 프로세서(110)에 의한 훈련을 통해, 혼합 음성 신호(210)가 개별 음성 신호들(212,214)로 분리될 수 있고, 분리된 개별 음성 신호들(212,214) 각각에 대한 화자를 인식하는 학습을 할 수 있다.
마찬가지로, 프로세서(110)는 혼합 음성 신호(220), 및 개별 음성 신호들(222,224)에 대한 화자 식별 정보(322,324)를 통해 제 2 뉴럴 네트워크(301)를 훈련시킬 수 있다. 또한, 프로세서(110)는 혼합 음성 신호(230), 및 개별 음성 신호들(232,234)에 대한 화자 식별 정보(332,334)를 통해 제 2 뉴럴 네트워크(301)를 훈련시킬 수 있다. 또한, 프로세서(110)는 혼합 음성 신호들(210,220,230), 개별 음성 신호들(212,214,222,224,232,234)에 대한 화자 식별 정보(312,314,322,324,332,334)을 통해 제 2 뉴럴 네트워크(301)를 훈련시킬 수 있다. 따라서, 프로세서(110)에 의해 훈련된 제 2 뉴럴 네트워크(303)는 혼합 음성 신호를 개별 음성 신호들로 분리할 수 있으며, 개별 음성 신호들에 대한 화자를 인식할 수 있다. 도 3에서는, 제 2 뉴럴 네트워크(301)의 입력 정보가 도 2의 제 1 뉴럴 네트워크(201)의 입력 정보와 동일한 입력 정보로 도시되었으나, 이에 한정되지 않고, 도 2의 제 1 뉴럴 네트워크의 입력 정보와 다른 입력 정보이어도 무방하다.
도 4는 프로세서가 화자를 등록하는 실시예를 나타낸다.
프로세서(110)는 훈련된 제 2 뉴럴 네트워크(303)를 이용하여 화자를 등록할 수 있다.
등록 과정에서, 먼저 프로세서(110)는 화자의 음성 신호(401)를 획득할 수 있다. 이어서, 프로세서(110)는 훈련된 제 2 뉴럴 네트워크(303)를 이용하여, 화자의 음성 신호(401)에 대한 화자 인식용 특징 정보(403)를 획득할 수 있다. 구체적으로, 프로세서(110)는, 화자의 음성 신호(401)에 대한 정보가 입력된 훈련된 제 2 뉴럴 네트워크(303)의 마지막 히든 레이어의 출력 벡터를 추출하여, 화자의 음성 신호(401)에 대한 화자 인식용 특징 정보(403)를 획득할 수 있다.
이어서, 프로세서(110)는 화자 인식용 특징 정보(403) 및 화자의 식별 정보(405)를 함께 메모리(120)에 저장하여, 화자를 등록할 수 있고, 등록 리스트를 업데이트할 수 있다.
도 5는 프로세서가 적어도 하나의 음성 신호에 대한 적어도 하나의 화자를 인식하는 실시예를 나타낸다.
프로세서(110)는 혼합 음성 신호(501)를 획득할 수 있다. 이어서, 프로세서(110)는 훈련된 제 2 뉴럴 네트워크(303)를 이용하여, 혼합 음성 신호(501)에 포함된 개별 음성 신호들(503,505)에 대한 화자 인식용 특징 정보(507,509)을 획득할 수 있다. 구체적으로, 혼합 음성 신호(501)에 대한 정보가 훈련된 제 2 뉴럴 네트워크(303)에 입력되는 경우, 훈련된 제 2 뉴럴 네트워크(303)는 혼합 음성 신호(501)를 개별 음성 신호들(503,505)로 분리하고 개별 음성 신호들(503,505)의 화자를 인식하는 과정을 거치므로, 훈련된 제 2 뉴럴 네트워크(303)의 마지막 히든 레이어의 출력 벡터에는 개별 음성 신호들(503,505) 각각에 대한 화자 인식용 특징 정보(507,509)가 포함될 수 있다. 따라서, 프로세서(110)는 훈련된 제 2 뉴럴 네트워크(303)의 마지막 히든 레이어의 출력 벡터를 추출하여, 개별 음성 신호들(503,505) 각각에 대한 화자 인식용 특징 정보(507,509)를 획득할 수 있다.
이어서, 프로세서(110)는, 획득된 화자 인식용 특징 정보(507) 및 화자 인식용 특징 정보(509) 각각과, 기 등록된 화자 인식용 특징 정보(510)를 비교할 수 있다. 구체적으로, 프로세서(110)는, 기 등록된 화자 인식용 특징 정보(510) 중에서, 화자 인식용 특징 정보(507)와 가장 유사도가 높은 화자 인식용 특징 정보를 확인할 수 있다. 이어서, 프로세서(110)는, 화자 인식용 특징 정보(507)와 가장 유사도가 높은 화자 인식용 특징 정보에 대응되는 화자(512)를, 개별 음성 신호(503)에 대한 화자로 인식할 수 있다. 마찬가지로, 프로세서(110)는, 기 등록된 화자 인식용 특징 정보(510) 중에서, 화자 인식용 특징 정보(509)와 가장 유사도가 높은 화자 인식용 특징 정보에 대응되는 화자(514)를, 개별 음성 신호(505)에 대한 화자로 인식할 수 있다.
따라서, 프로세서(110)는 혼합 음성 신호(501)에 포함된 개별 음성 신호들(503,505)에 대한 화자들(512,514)을 인식할 수 있다. 다시 말해, 프로세서(110)는 혼합 음성 신호(501)가 화자들(512,514)의 개별 음성 신호들(503,505)이 혼합된 음성 신호라는 것을 인식할 수 있다.
도 6은 다른 실시예에 따른 뉴럴 네트워크 장치의 하드웨어 구성을 도시한 블록도이다.
뉴럴 네트워크 장치(10)는 도 1의 프로세서(110) 및 메모리(120) 이외에도 음향 센서(130)를 더 포함할 수 있다.
음향 센서(130)는 광대역 마이크로폰, 공진기 마이크로폰, 협대역 공진기 마이크로폰 어레이 중 적어도 하나를 포함할 수 있다.
음향 센서(130)는 화자의 음성 신호를 센싱할 수 있다. 이어서, 프로세서(110)는, 훈련된 제 2 뉴럴 네트워크를 이용하여, 센싱된 화자의 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 이어서, 프로세서(110)는, 획득된 화자 인식용 특징 정보를 화자의 식별 정보와 함께 저장하여, 화자를 등록할 수 있다.
음향 센서(130)는 혼합 음성 신호를 센싱할 수 있다. 이어서, 프로세서(110)는, 훈련된 제 2 뉴럴 네트워크를 이용하여, 센싱된 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 이어서, 프로세서(110)는 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보와, 기 등록된 적어도 하나의 화자에 대한 특징 정보를 비교하여, 혼합 음성 신호에 대한 적어도 하나의 화자를 인식할 수 있다.
도 7은 일 실시예에 따라, 뉴럴 네트워크 장치의 동작 방법을 설명하기 위한 도면이다.
도 7에 도시된 방법은, 도 1 및 도 6의 뉴럴 네트워크 장치(10)의 각 구성요소에 의해 수행될 수 있고, 중복되는 설명에 대해서는 생략한다.
단계 710에서, 뉴럴 네트워크 장치(10)는, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성할 수 있다.
뉴럴 네트워크 장치(10)는, 복수의 화자들의 혼합 음성 신호에 대한 정보를 제 1 뉴럴 네트워크에 대한 입력 정보로써 획득할 수 있고, 복수의 화자들 각각의 개별 음성 신호에 대한 정보를 상기 제 1 뉴럴 네트워크에 대한 출력 정보로써 획득할 수 있다. 따라서, 뉴럴 네트워크 장치(10)는 제 1 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 통해, 상기 제 1 뉴럴 네트워크를 훈련시킬 수 있고, 훈련된 제 1 뉴럴 네트워크를 생성할 수 있다.
단계 720에서, 뉴럴 네트워크 장치(10)는, 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성할 수 있다.
뉴럴 네트워크 장치(10)는 훈련된 제 1 뉴럴 네트워크의 출력 레이어를 제거하고, 적어도 하나의 히든 레이어 및 출력 레이어를 연결시켜, 제 2 뉴럴 네트워크를 생성할 수 있다.
단계 730에서, 뉴럴 네트워크 장치(10)는, 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성할 수 있다.
뉴럴 네트워크 장치(10)는, 복수의 화자들의 혼합 음성 신호에 대한 정보를 상기 제 2 뉴럴 네트워크에 대한 입력 정보로써 획득할 수 있고, 상기 복수의 화자들 각각의 개별 음성 신호에 대한 화자 식별 정보를 출력 정보로써 획득할 수 있다. 따라서, 뉴럴 네트워크 장치(10)는 제 2 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 통해 상기 제 2 뉴럴 네트워크를 훈련시킬 수 있고, 훈련된 제 2 뉴럴 네트워크를 생성할 수 있다.
도 8은 다른 실시예에 따라, 뉴럴 네트워크 장치의 동작 방법을 설명하기 위한 도면이다.
도 8에 도시된 방법은, 도 1 및 도 6의 뉴럴 네트워크 장치(10)의 각 구성요소에 의해 수행될 수 있고, 중복되는 설명에 대해서는 생략한다.
단계 810에서, 뉴럴 네트워크 장치(10)는, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성할 수 있다.
단계 820에서, 뉴럴 네트워크 장치(10)는, 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성할 수 있다.
단계 830에서, 뉴럴 네트워크 장치(10)는, 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성할 수 있다.
단계 840에서, 뉴럴 네트워크 장치(10)는 혼합 음성 신호를 획득할 수 있다. 구체적으로, 뉴럴 네트워크 장치(10)는 음향 센서를 통해 혼합 음성 신호를 센싱할 수 있다.
단계 850에서, 뉴럴 네트워크 장치(10)는, 훈련된 제 2 뉴럴 네트워크를 이용하여, 획득된 혼합 음성 신호에 대한 적어도 하나의 화자를 인식할 수 있다.
뉴럴 네트워크 장치(10)는, 훈련된 제 2 뉴럴 네트워크를 이용하여, 획득된 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 이어서, 뉴럴 네트워크 장치(10)는, 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보와, 기 등록된 화자 인식용 특징 정보를 비교하여, 상기 센싱된 혼합 음성 신호에 대한 적어도 하나의 화자를 인식할 수 있다. 뉴럴 네트워크 장치(10)는, 획득된 혼합 음성 신호에 대한 정보가 입력된 상태의 훈련된 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출하여, 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다.
또한, 뉴럴 네트워크 장치(10)는, 화자의 음성 신호를 획득할 수 있다. 구체적으로, 뉴럴 네트워크 장치(10)는, 음향 센서를 통해, 화자의 음성 신호를 센싱할 수 있다. 이어서, 뉴럴 네트워크 장치(10)는, 훈련된 제 2 뉴럴 네트워크를 이용하여, 화자의 음성 신호에 대한 화자 인식용 특징 정보를 획득할 수 있다. 이어서, 뉴럴 네트워크 장치(10)는, 획득된 화자 인식용 특징 정보를 상기 화자의 식별 정보와 함께 저장하여, 화자를 등록할 수 있다.
상기 살펴 본 실시 예들에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단", "구성"과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 실시 예에서 설명하는 특정 실행들은 예시들로서, 어떠한 방법으로도 기술적 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.
본 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 포함하는 것으로서(이에 반하는 기재가 없다면), 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 한정되는 것은 아니다. 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 기술적 사상을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.

Claims (19)

  1. 화자 인식을 위한 뉴럴 네트워크 장치에 있어서,
    하나 이상의 명령어(instruction)를 저장하는 메모리; 및
    상기 하나 이상의 명령어를 실행함으로써, 제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성하고,
    상기 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성하고,
    상기 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 상기 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성하는, 프로세서를 포함하고,
    상기 프로세서는 상기 훈련된 제 1 뉴럴 네트워크가 생성된 이후 상기 훈련된 제 1 뉴럴 네트워크에 상기 적어도 하나의 레이어를 부가하고,
    상기 프로세서는
    복수의 화자들의 혼합 음성 신호에 대한 정보를 상기 제 2 뉴럴 네트워크에 대한 입력 정보로써 획득하고,
    상기 복수의 화자들 각각의 개별 음성 신호에 대한 화자 식별 정보를 상기 제 2 뉴럴 네트워크에 대한 출력 정보로써 획득하고,
    상기 제 2 뉴럴 네트워크에 대한 상기 입력 정보 및 상기 출력 정보를 통해 상기 제 2 뉴럴 네트워크를 훈련시키고,
    음향 센서에 의해 센싱된 혼합 음성 신호에 대한 정보가 입력된 상기 훈련된 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출함으로써, 상기 센싱된 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득하고,
    상기 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보와, 기 등록된 화자 인식용 특징 정보를 비교하여, 상기 센싱된 혼합 음성 신호에 대한 적어도 하나의 화자를 인식하는, 뉴럴 네트워크 장치.
  2. 제 1 항에 있어서,
    상기 프로세서는,
    복수의 화자들의 혼합 음성 신호에 대한 정보를 상기 제 1 뉴럴 네트워크에 대한 입력 정보로써 획득하고,
    상기 복수의 화자들 각각의 개별 음성 신호에 대한 정보를 상기 제 1 뉴럴 네트워크에 대한 출력 정보로써 획득하고,
    상기 제 1 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 통해, 상기 제 1 뉴럴 네트워크를 훈련시키는, 뉴럴 네트워크 장치.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 프로세서는,
    상기 훈련된 제 1 뉴럴 네트워크의 출력 레이어를 제거하고, 적어도 하나의 히든 레이어 및 출력 레이어를 연결시켜, 상기 제 2 뉴럴 네트워크를 생성하는, 뉴럴 네트워크 장치.
  5. 제 1 항에 있어서,
    혼합 음성 신호를 센싱하는 상기 음향 센서;를 더 포함하는, 뉴럴 네트워크 장치.
  6. 삭제
  7. 삭제
  8. 제 5 항에 있어서,
    상기 음향 센서는,
    광대역 마이크로폰, 공진기 마이크로폰, 협대역 공진기 마이크로폰 어레이 중 적어도 하나를 포함하는, 뉴럴 네트워크 장치.
  9. 제 1 항에 있어서,
    화자의 음성 신호를 센싱하는 상기 음향 센서;를 더 포함하고,
    상기 프로세서는,
    상기 획득된 화자 인식용 특징 정보를 상기 화자의 식별 정보와 함께 저장하여, 상기 화자를 등록하는, 뉴럴 네트워크 장치.
  10. 화자 인식을 위한 뉴럴 네트워크 장치의 동작 방법에 있어서,
    제 1 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하도록 훈련된 제 1 뉴럴 네트워크를 생성하는 단계;
    상기 훈련된 제 1 뉴럴 네트워크에 적어도 하나의 레이어를 부가하여 제 2 뉴럴 네트워크를 생성하는 단계; 및
    상기 제 2 뉴럴 네트워크를 훈련시켜, 혼합 음성 신호를 개별 음성 신호들로 분리하고 상기 개별 음성 신호들 각각에 대한 화자를 인식하도록 훈련된 제 2 뉴럴 네트워크를 생성하는 단계를 포함하고,
    상기 적어도 하나의 레이어는 상기 훈련된 제 1 뉴럴 네트워크가 생성된 이후 상기 훈련된 제 1 뉴럴 네트워크에 부가되고,
    상기 동작 방법은
    복수의 화자들의 혼합 음성 신호에 대한 정보를 상기 제 2 뉴럴 네트워크에 대한 입력 정보로써 획득하는 단계;
    상기 복수의 화자들 각각의 개별 음성 신호에 대한 화자 식별 정보를 상기 제 2 뉴럴 네트워크에 대한 출력 정보로써 획득하는 단계;
    상기 제 2 뉴럴 네트워크에 대한 상기 입력 정보 및 상기 출력 정보를 통해 상기 제 2 뉴럴 네트워크를 훈련시키는 단계;
    음향 센서에 의해 센싱된 혼합 음성 신호에 대한 정보가 입력된 상기 훈련된 제 2 뉴럴 네트워크의 마지막 히든 레이어의 출력 벡터를 추출함으로써, 상기 센싱된 혼합 음성 신호에 포함된 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보를 획득하는 단계; 및
    상기 적어도 하나의 개별 음성 신호에 대한 화자 인식용 특징 정보와, 기 등록된 화자 인식용 특징 정보를 비교하여, 상기 센싱된 혼합 음성 신호에 대한 적어도 하나의 화자를 인식하는 단계를 더 포함하는, 동작 방법.
  11. 제 10 항에 있어서,
    상기 훈련된 제 1 뉴럴 네트워크를 생성하는 단계는,
    복수의 화자들의 혼합 음성 신호에 대한 정보를 상기 제 1 뉴럴 네트워크에 대한 입력 정보로써 획득하는 단계;
    상기 복수의 화자들 각각의 개별 음성 신호에 대한 정보를 상기 제 1 뉴럴 네트워크에 대한 출력 정보로써 획득하는 단계; 및
    상기 제 1 뉴럴 네트워크에 대한 입력 정보 및 출력 정보를 통해, 상기 제 1 뉴럴 네트워크를 훈련시키는 단계를 포함하는, 동작 방법.
  12. 삭제
  13. 제 10 항에 있어서,
    상기 제 2 뉴럴 네트워크를 생성하는 단계는,
    상기 훈련된 제 1 뉴럴 네트워크의 출력 레이어를 제거하고, 적어도 하나의 히든 레이어 및 출력 레이어를 연결시켜, 상기 제 2 뉴럴 네트워크를 생성하는, 동작 방법.
  14. 제 10 항에 있어서,
    혼합 음성 신호를 획득하는 단계를 더 포함하는, 동작 방법.
  15. 삭제
  16. 삭제
  17. 제 14 항에 있어서,
    상기 혼합 음성 신호를 획득하는 단계는,
    광대역 마이크로폰, 공진기 마이크로폰, 협대역 공진기 마이크로폰 어레이 중 적어도 하나를 이용하여, 상기 혼합 음성 신호를 센싱하는 단계를 포함하는, 동작 방법.
  18. 제 10 항에 있어서,
    화자의 음성 신호를 획득하는 단계; 및
    상기 획득된 화자 인식용 특징 정보를 상기 화자의 식별 정보와 함께 저장하여, 상기 화자를 등록하는 단계를 더 포함하는, 동작 방법.
  19. 제 10 항, 제 11 항, 제 13 항, 제 14 항, 제 17 항 및 제 18 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020170157507A 2017-11-23 2017-11-23 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법 KR102486395B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170157507A KR102486395B1 (ko) 2017-11-23 2017-11-23 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법
US16/134,529 US11094329B2 (en) 2017-11-23 2018-09-18 Neural network device for speaker recognition, and method of operation thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170157507A KR102486395B1 (ko) 2017-11-23 2017-11-23 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20190060028A KR20190060028A (ko) 2019-06-03
KR102486395B1 true KR102486395B1 (ko) 2023-01-10

Family

ID=66532455

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170157507A KR102486395B1 (ko) 2017-11-23 2017-11-23 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법

Country Status (2)

Country Link
US (1) US11094329B2 (ko)
KR (1) KR102486395B1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10055667B2 (en) 2016-08-03 2018-08-21 X Development Llc Generating a model for an object encountered by a robot
US11893999B1 (en) * 2018-05-13 2024-02-06 Amazon Technologies, Inc. Speech based user recognition
JP2019211627A (ja) * 2018-06-05 2019-12-12 日本電信電話株式会社 モデル学習装置、方法及びプログラム
US10460235B1 (en) 2018-07-06 2019-10-29 Capital One Services, Llc Data model generation using generative adversarial networks
US20200042825A1 (en) * 2018-08-02 2020-02-06 Veritone, Inc. Neural network orchestration
US10726830B1 (en) * 2018-09-27 2020-07-28 Amazon Technologies, Inc. Deep multi-channel acoustic modeling
KR102607863B1 (ko) 2018-12-03 2023-12-01 삼성전자주식회사 음원 분리 장치 및 음원 분리 방법
US11114103B2 (en) 2018-12-28 2021-09-07 Alibaba Group Holding Limited Systems, methods, and computer-readable storage media for audio signal processing
KR102654874B1 (ko) 2018-12-31 2024-04-05 삼성전자주식회사 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법
US10803875B2 (en) * 2019-02-08 2020-10-13 Nec Corporation Speaker recognition system and method of using the same
US11017783B2 (en) * 2019-03-08 2021-05-25 Qualcomm Incorporated Speaker template update with embedding vectors based on distance metric
KR20200119377A (ko) 2019-03-25 2020-10-20 삼성전자주식회사 화자 식별 뉴럴 네트워크를 구현하는 방법 및 장치
US20200394994A1 (en) * 2019-06-12 2020-12-17 Nvidia Corporation Invertible neural network to synthesize audio signals
CN110444223B (zh) * 2019-06-26 2023-05-23 平安科技(深圳)有限公司 基于循环神经网络和声学特征的说话人分离方法及装置
US11900246B2 (en) * 2019-09-02 2024-02-13 Samsung Electronics Co., Ltd. Method and apparatus for recognizing user based on on-device training
US10916241B1 (en) * 2019-12-30 2021-02-09 Capital One Services, Llc Theme detection for object-recognition-based notifications
KR102596521B1 (ko) * 2020-05-27 2023-10-31 보리 주식회사 카메라로 입력되는 영상정보, 마이크로 입력되는 음성정보를 실시간으로 처리하여 언어발달장애 및 행동발달장애를 분석하는 방법 및 시스템
KR102533368B1 (ko) * 2020-05-29 2023-05-17 보리 주식회사 빅데이터를 이용해서 유창성을 분석하는 방법 및 시스템
US11610412B2 (en) * 2020-09-18 2023-03-21 Ford Global Technologies, Llc Vehicle neural network training
CN113077796A (zh) * 2021-03-17 2021-07-06 山东师范大学 说话人辨认方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130138436A1 (en) * 2011-11-26 2013-05-30 Microsoft Corporation Discriminative pretraining of deep neural networks
US20170178666A1 (en) * 2015-12-21 2017-06-22 Microsoft Technology Licensing, Llc Multi-speaker speech separation

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100596558B1 (ko) 2004-09-07 2006-07-05 학교법인연세대학교 화자인식시스템 성능 향상을 위한 특징벡터 변환방법
US9230550B2 (en) 2013-01-10 2016-01-05 Sensory, Incorporated Speaker verification and identification using artificial neural network-based sub-phonetic unit discrimination
US20160189730A1 (en) * 2014-12-30 2016-06-30 Iflytek Co., Ltd. Speech separation method and system
KR101807948B1 (ko) * 2016-04-18 2017-12-11 한양대학교 산학협력단 잔향 환경에서의 음성인식을 위한 결합 학습된 심화신경망 앙상블 기반의 음향 모델 및 이를 이용한 음성인식 방법
US20180018973A1 (en) * 2016-07-15 2018-01-18 Google Inc. Speaker verification

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130138436A1 (en) * 2011-11-26 2013-05-30 Microsoft Corporation Discriminative pretraining of deep neural networks
US20170178666A1 (en) * 2015-12-21 2017-06-22 Microsoft Technology Licensing, Llc Multi-speaker speech separation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
김대현 외, '깊은 신경망 특징 기반 화자 검증 시스템의 성능 비교', 말소리와 음성과학 제7권 제4호, 2015.12.

Also Published As

Publication number Publication date
KR20190060028A (ko) 2019-06-03
US20190156837A1 (en) 2019-05-23
US11094329B2 (en) 2021-08-17

Similar Documents

Publication Publication Date Title
KR102486395B1 (ko) 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법
KR102654874B1 (ko) 화자 인식을 위한 뉴럴 네트워크 장치, 및 그 동작 방법
US20210272551A1 (en) Speech recognition apparatus, speech recognition method, and electronic device
US11776530B2 (en) Speech model personalization via ambient context harvesting
Huh et al. Augmentation adversarial training for self-supervised speaker recognition
US10068588B2 (en) Real-time emotion recognition from audio signals
CN106469552B (zh) 语音识别设备和方法
Aloufi et al. Privacy-preserving voice analysis via disentangled representations
CN108492830B (zh) 声纹识别方法、装置、计算机设备和存储介质
CN112435684B (zh) 语音分离方法、装置、计算机设备和存储介质
US11403510B2 (en) Processing sensor data
JP5681811B2 (ja) 話者認識のためのモデリング・デバイスおよび方法、ならびに話者認識システム
Oh et al. Target speech feature extraction using non-parametric correlation coefficient
US20170287489A1 (en) Synthetic oversampling to enhance speaker identification or verification
JP7160095B2 (ja) 属性識別装置、属性識別方法、およびプログラム
JP2020071482A (ja) 語音分離方法、語音分離モデル訓練方法及びコンピュータ可読媒体
US9495978B2 (en) Method and device for processing a sound signal
US11600262B2 (en) Recognition device, method and storage medium
US11348575B2 (en) Speaker recognition method and apparatus
CN115985347B (zh) 基于深度学习的语音端点检测方法、装置和计算机设备
CN117501365A (zh) 发音异常检测方法、发音异常检测装置以及程序
KR20230089040A (ko) 잡음 환경에 강인한 음향 인지 기술을 위한 잡음 제거 모델과의 어텐션 기반 결합 학습을 위한 컴퓨팅 장치 및 그의 방법
CN115527552A (zh) 感冒检测系统、设备、车辆和存储介质
CN117976006A (zh) 音频处理方法、装置、计算机设备和存储介质

Legal Events

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