KR102204975B1 - 심층 신경망 기반 음성인식 방법 및 그 장치 - Google Patents

심층 신경망 기반 음성인식 방법 및 그 장치 Download PDF

Info

Publication number
KR102204975B1
KR102204975B1 KR1020160008167A KR20160008167A KR102204975B1 KR 102204975 B1 KR102204975 B1 KR 102204975B1 KR 1020160008167 A KR1020160008167 A KR 1020160008167A KR 20160008167 A KR20160008167 A KR 20160008167A KR 102204975 B1 KR102204975 B1 KR 102204975B1
Authority
KR
South Korea
Prior art keywords
weight vector
time axis
neural network
signal
hidden layer
Prior art date
Application number
KR1020160008167A
Other languages
English (en)
Other versions
KR20170088165A (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 KR1020160008167A priority Critical patent/KR102204975B1/ko
Publication of KR20170088165A publication Critical patent/KR20170088165A/ko
Application granted granted Critical
Publication of KR102204975B1 publication Critical patent/KR102204975B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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

Abstract

본 발명의 일면에 따른 심층 신경망 기반 음성인식방법은, 음성신호를 입력받는 단계; 상기 음성신호를 주파수신호로 변환하는 단계; 상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하는 단계; 및 상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 단계;를 포함하되, 상기 가중치 벡터는 시간축 래핑 정도에 기초해 결정된 임계값을 기준으로 나눠지는 프레임 인덱스의 범위에 따라 학습에 의해 미리 설정된 기준 가중치 벡터를 주파수 밴드 인덱스, 프레임 길이, 및 프레임 순서 중 적어도 하나를 인수로 하여 시간축으로 압축하여 구하는 것을 특징으로 한다

Description

심층 신경망 기반 음성인식 방법 및 그 장치{METHOD AND APPARATUS FOR SPEECH RECOGNITION USING DEEP NEURAL NETWORK}
본 발명은 음성인식 방법 및 그 장치에 관한 것으로서, 보다 구체적으로는 타임 래핑을 수행한 가중치를 사용하여 발화속도에 강인한 심층 신경망 기반의 음성인식 방법 및 그 장치에 관한 것이다.
최근 음성인식이 다양한 분야에서 적용되고 있으며, 심층 신경망(Deep Neural Network)이 적용되면서 인식성능도 많은 개선이 이루어졌다.
그러나 사람간의 대화와 같은 자연어 음성 데이터에 대해서는 아직도 음성인식 성능이 높지 못한데, 이는 사람간의 대화에서 나타나는 다양한 자연어 특성이 음향모델 학습에 적절히 반영되지 못하기 때문이고, 이렇게 다양한 특성에 모두 대응하기 위해서는 방대한 양의 자연어 음성데이터가 필요하다.
음성인식 성능을 떨어뜨리는 자연어 대화 음성에서 나타나는 특성 중 하나는 하나의 발성 안에서도 발화속도가 다양하게 변화한다는 점이다.
발화하고자 하는 말을 생각하는 동안 발화속도가 느려지기도 하고, 내용이 많아서 급하게 말하다 보면 발화속도는 매우 빨라지기도 하며 발화 중의 음가도 충실히 발현되지 못하는 등의 문제가 음성인식의 성능을 떨어뜨리는 요인이 된다.
본 발명은 전술한 바와 같은 기술적 배경에서 안출된 것으로서, 발화속도에 적합한 가중치에 연결된 히든노드(hidden node)를 선택하여 학습을 수행함으로써 음성의 발화속도에 적합하게 타임 래핑된 가중치의 맥스-풀링(Max-Pooling) 노드를 선택하여 인식성능이 개선된 음성인식 방법 및 그 장치를 제공하는 것을 그 목적으로 한다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
전술한 목적을 달성하기 위한 본 발명의 일면에 따른 심층 신경망 기반 음성인식방법은, 음성신호를 입력받는 단계; 상기 음성신호를 주파수신호로 변환하는 단계; 상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하는 단계; 및 상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 단계;를 포함하되, 상기 가중치 벡터는 시간축 래핑 정도에 기초해 결정된 임계값을 기준으로 나눠지는 프레임 인덱스의 범위에 따라 학습에 의해 미리 설정된 기준 가중치 벡터를 주파수 밴드 인덱스, 프레임 길이, 및 프레임 순서 중 적어도 하나를 인수로 하여 시간축으로 압축하여 구하는 것을 특징으로 한다.
본 발명의 다른 일면에 따른 심층 신경망 기반 음성인식장치는, 하나이상의 프로세서를 포함하고, 상기 프로세서는 음성신호를 입력받는 입력부; 상기 음성신호를 주파수신호로 변환하는 주파수 변환부; 상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하고, 상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 연산부;를 포함하여 구현하되, 상기 가중치 벡터는 시간축 래핑 정도에 기초해 결정된 임계값을 기준으로 나눠지는 프레임 인덱스의 범위에 따라 학습에 의해 미리 설정된 기준 가중치 벡터를 주파수 밴드 인덱스, 프레임 길이, 및 프레임 순서 중 적어도 하나를 인수로 하여 시간축으로 압축하여 구하는 것을 특징으로 한다.
본 발명에 따르면, 사용자 발화 속도에 따라 은닉층 노드값들을 구하기 위한 가중치 벡터의 길이를 조절할 수 있으므로, 사용자 발화 속도 변화에 적절히 학습하여 최적으로 사용자의 음성을 인식할 수 있는 효과가 있다
도 1은 종래기술에 따른 음성인식을 위한 은닉층의 구조를 도시한 도면.
도 2는 본 발명의 일실시예에 따른 입력층과 은닉층의 구조를 나타낸 도면.
도 3은 본 발명의 일실시예에 따른 맥스-풀링 입력 노드를 구하는 과정을 나타낸 도면.
도 4는 본 발명의 일실시예에 따른 가중치 벡터의 시간축 압축 전후를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 음성인식방법의 흐름도.
도 6은 본 발명의 다른 실시예에 따른 음성인식장치의 구조도.
도 7은 본 발명의 또 다른 실시예에 따른 컴퓨터장치의 구조도.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 발명의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 상세히 설명하기로 한다.
도 1은 일반적인 심층 신경망(Deep Neural Network)의 구조를 나타낸다.
총 P개의 층(Layer, 121, 122, 123, 124)으로 구성되고, 입력 데이터는 M차의 벡터 형태의 데이터이다. 입력 데이터는 입력 층(v, 110)에 해당되며 M차의 각 값은 입력 층의 각 노드(111)에 해당한다.
도 2는 입력신호를 자세히 나타낸 도면이다. 도 2의 (c)는 입력신호를 시간 축과 주파수 축에 대해 나타낸 그래프인데 주파수 축 분석은 필터뱅크(Filter-bank) 방식의 주파수 분석 방식을 사용한다. 주파수 축 분석은 필터뱅크뿐 아니라 DFT(Discrete Fourier Transform), FFT(Fast Fourier Transform), DCT(Discrete Cosine Transform) 등의 다양한 주파수 변환 방식이 사용될 수 있다.
음성신호에 대해 필터뱅크 주파수 분석을 수행하면 L개의 주파수 밴드 영역별 특징이 추출되고, 특징은 미리 정된 길이를 가지는 프레임(Frame)단위로 생성되는데, 프레임의 길이는 10msec 등의 일정한 길이로 설정된다. 즉, 1개의 프레임에 대해 L개의 주파수 밴드 별 필터뱅크 값의 벡터 형식의 특징이 정의된다.
도 2의 (b)에서는 T개의 프레임이 연결된 슈퍼벡터(Supervector)로 입력데이터가 구성되는 것을 나타내는데, 각 프레임별로 L개의 필터뱅크 특징값을 가지고 있으므로 전체 입력 데이터는 M = T*L 에 의해 M차의 입력데이터가 되는 것이다. 특징 데이터는 한프레임씩 쉬프트하여 다시 T개의 프레임을 모아 슈퍼벡터가 정의되고, 이는 다음 프레임의 심층신경망 입력으로 사용된다. 즉, T*L차원의 행렬(Matrix)형태의 특징 데이터를 M차원의 벡터 형태의 특징으로 변환하여 입력하는 것이다.
도 1에서 첫 번째 은닉층(
Figure 112016007504490-pat00001
, Hidden Layer, 121)과 입력층(110)은 가중치(weight, W1, 141)로 연결된다. 첫 번째 은닉층(121)은 N개의 노드(Node, 1211)로 구성되며 관계식은 다음 수학식 1과 같다.
Figure 112016007504490-pat00002
도 2의 (a)는 첫번째 은닉층(121)인
Figure 112016007504490-pat00003
의 계산과정을 2차원적으로 나타낸 도면이다.
첫 번째 은닉층(102)인
Figure 112016007504490-pat00004
의 n번째 노드값(121n)인
Figure 112016007504490-pat00005
은 M개의 입력 노드값인 v h
Figure 112016007504490-pat00006
의 n번째 노드에 연결된 M개의 가중치(141)
Figure 112016007504490-pat00007
와의 가중치합(Weighted sum)으로 정의될 수 있고, 이를 행렬 형태로 나타내면 다음 수학식 2와 같다.
Figure 112016007504490-pat00008
첫번째 은닉층
Figure 112016007504490-pat00009
의 출력
Figure 112016007504490-pat00010
Figure 112016007504490-pat00011
을 비선형 함수
Figure 112016007504490-pat00012
을 통과시켜 얻을 수 있고, 이는 수학식 3과 같다.
Figure 112016007504490-pat00013
비선형 함수
Figure 112018104118053-pat00014
은 활성화 함수(Activation function)라고도 하고, 하이퍼볼릭 탄젠트함수(hyperbolic tangent function (tanh)), 시그모이드 함수(sigmoid function (sigmoid)), 정류 선형 유닛 함수(rectified linear unit function (ReLU)) 의 함수가 사용될 수 있다.
활성화 함수는 각 뉴런에 해당하는 은닉층의 출력신호를 결정하기 위해 적용되는데, 신경망 모델에서 뉴런의 주요 기능은 입력층과 가중치(또는 연결강도)의 가중치합을 구한 후 활성화 함수에 의해 출력을 결정하는 것인데, 따라서 활성화 함수에 따라 뉴런의 출력이 달라지는 기능을 한다.
도 1의 두번째 은닉층(122)
Figure 112016007504490-pat00015
는 첫번째 은닉층(121)의 출력
Figure 112016007504490-pat00016
과 두번째 신경망층의 가중치(142)인
Figure 112016007504490-pat00017
와의 가중치합으로 정의되고, 이는 수학식 4와 같다.
Figure 112016007504490-pat00018
이를 행렬형태로 나타내면 수학식 5와 같다.
Figure 112016007504490-pat00019
두번째 은닉층(122)
Figure 112016007504490-pat00020
의 출력인
Figure 112016007504490-pat00021
도 수학식 6과 같이 비선형 함수를 통과한다.
Figure 112016007504490-pat00022
이후 나머지 은닉층도 동일한 방식으로 가중치합과 비선형함수를 통과하여 정의된다.
최종 관측 확률을 정의하는 출력층(output layer, o, 130)은 소프트맥스(Softmax)함수에 의하여 정의된다. 소프트맥스는 비선형함수를 거친 결과값들을 분류하기 위한 함수로 노드의 모든 값을 0과 1사이의 값으로 나타내면서, 모든 값을 더하면 1이 되는 정규화 방식의 한 종류이다.
도 3은 맥스-풀링(Max-Pooling)방식에 의해 각 은닉층의 노드를 선택하기 위한 방법을 나타낸 도면이다.
은닉층의 노드(1211)가 N개일 때 맥스-풀링을 위해 각 은닉층의 노드별로 K개의 입력 노드(12111)가 각각 정의되고, 따라서 총 N*K개의 맥스-풀링 입력 노드는 입력층(111)과 가중치(141)에 의해 모두 연결된 구조를 가진다.
따라서 맥스-풀링 입력노드(12111) 중에서 은닉층의 n번째 노드(1211)를 선택하기 위해서는 은닉층의 n번째 노드(1211)에 대응하는 k개의 맥스-풀링 입력노드(12111)를 구하고 그 중에서 최대값을 선택하여 은닉층의 n번째 노드(1211)로 결정하게 된다.
이를 수학식으로 나타내면 수학식 7 및 수학식 8과 같다.
Figure 112016007504490-pat00023
Figure 112016007504490-pat00024
수학식 7은 N*K 개의 전체 맥스-풀링 입력 노드(12111)를 입력층(111)과 가중치(141)간의 가중치 합을 이용하여 구하는 식이고, 수학식 8은 이렇게 구해진 k개의 맥스-풀링 입력노드(12111) 중에 최대값을 구하여 은닉층 노드(1211)로 결정하는 것을 나타낸다.
도 4는 본 발명에 따른 가중치 래핑(Weight Wrapping)방법에 의해 가중치 벡터가 시간축으로 래핑된 모습을 나타낸다.
가중치 래핑은 사용자의 발화속도에 따라 가중치 벡터의 길이를 조절함으로써 발화속도에 따른 최적의 길이를 가지는 가중치 벡터를 만들어 내어 음성인식률을 높이기 위함이다. 사용자의 발화속도는 분석한 사용자 발화의 음절이나 음소의 길이를 분석함으로써 얻어낼 수 있다.
도 3에서 첫번째 은닉층(121)의 첫번째 노드(1211)값 h(1) 1은 맥스-풀링 입력 노드인 m11(12111)부터 m1k(1211k)까지의 k개의 값 중에 가장 큰 값이 선택된다.
도 4의 (a)는 도 3의 맥스-풀링 입력 노드(12111)중 첫번째 값인 m11에 연결된 가중치 벡터 W11(141)을 시간축과 주파수축의 2차원 축으로 재해석 한 그래프이다. 도 4의 (a)와 같이 행렬 형태로 표현된 가중치 벡터를 기준 가중치 벡터(Reference Weight Vector)로 정의한다.
도 4의 (b)는 본 발명에 따라 기준 가중치 벡터를 시간축으로 래핑하여 새로운 가중치 벡터를 만들었을 때의 시간축과 주파수축의 그래프로 나타낸 것이다.
기준 가중치 벡터 Wnk를 이용하여 타임 래핑된 가중치 벡터
Figure 112016007504490-pat00025
를 구하는 식은 다음 수학식 9와 같다.
Figure 112016007504490-pat00026
Wnk는 은닉층의 n번째 노드의 k번째 맥스-풀링 입력 노드에 대응하는 기준 가중치 벡터, t는 행렬 형태의 가중치 벡터에서의 시간축 프레임 인덱스를 나타내고, T는 기준 가중치 벡터의 시간축 프레임 인덱스 중 최대값, Z는 정규화 지수,
Figure 112018104118053-pat00040
는 시간축 압축된 가중치 벡터, th1은 시간축 압축된 가중치 벡터의 시작 프레임 인덱스, th2는 시간축 압축된 가중치 벡터의 최종 프레임 인덱스, l은 주파수 밴드의 인덱스를 나타낸다. 따라서
Figure 112018104118053-pat00027
는 t번째 프레임의
Figure 112018104118053-pat00028
l번째 필터뱅크 값을 나타낸다.
시간축 래핑 정도에 따라 임계값(Threshold)인 th1, th2를 결정하고, T프레임 길이만큼의 시간축 길이를 가졌던 기준 가중치 벡터
Figure 112016007504490-pat00029
가 T' 프레임 길이를 가지는
Figure 112016007504490-pat00030
벡터로 수학식 9에 의해 시간축으로 압축이 이루어진다.
기준 가중치 벡터에서 시간축으로 중심 프레임에 해당하는 값은 변환된 가중치 벡터에서도 중심값으로 사용된다.
만일 중심 프레임이 정수가 아닌 경우 중심 프레임에 인접한 두 개의 값을 모두 중심값으로 사용한다. 예컨대, 기준 가중치 벡터가 시간축으로 T=10 프레임의 길이를 가진다면 중심 프레임은 5.5프레임이 해당되므로 인접한 5프레임과 6프레임의 값들을 모두 중심 프레임으로 사용한다.
경계점에 해당하는 th1과 th2에 해당하는 프레임의 값들은 기준 가중치 벡터의 시작 값과 끝 값, 즉, t=1에서의 값과 t=T에서의 값을 이용한다.
th1보다 작거나 th2보다 큰 구간의 값은 0으로 정의하여 시간축으로 압축된 결과를 얻을 수 있다.
나머지 구간에서는 다음 수학식 10과 수학식 11에 의해 t'값을 구하고 t'에서의 기준 가중치값을 t에서 변환된 가중치 값으로 사용한다.
Figure 112016007504490-pat00031
Figure 112016007504490-pat00032
변환된 가중치 벡터의 정규화를 위해 정규화 보든 가중치 벡터에 정규화 지수인 Z를 나누어 준다.
t'를 구할 때 t'값이 정수 값이 아닌 값일 때는 t'에 해당하는 가중치값은 추정에 의해 구해야 한다.
정수가 아닌 실수값 t'가 정수 t와 t+1 사이의 값인 경우에 다양한 방법에 의해 해당 가중치 값을 추정할 수 있다.
예컨대, t에 해당하는 가중치와 t+1에 해당하는 가중치에 해당하는 값을 t'만큼 선형 보간(Linear Interpolation) 방법으로 추정하거나, t'값을 반올림, 올림, 내림 등의 연산으로 t또는 t+1로 만든 후 해당 가중치값을 사용하는 것이다.
또는 비선형 보간(Non-linear Interpolation)으로 추정할 수 있는데, 로그함수나 지수함수를 이용하여 비선형으로 보간하여 t'에 해당하는 가중치 값을 수행할 수도 있다.
도 5는 전술한 본 발명에 따른 가중치의 래핑방법에 의한 음성인식방법의 흐름도를 나타낸다.
우선 음성인식을 위한 대상 음성신호를 입력받아(S510), 주파수신호로 변환하는데(S520), 이때 필터뱅크, DFT, FFT등의 다양한 방법이 사용될 수 있다.
주파수 변환된 신호를 입력신호로 하여 맥스-풀링 입력노드를 구하고(S530), 입력노드 값들 중 가장 큰 값들을 골라 다음 단계 은닉층의 노드값을 구하게 된다(S540).
은닉층의 노드값을 구한 후 출력값을 구하는 것은 hyperbolic tangent function (tanh), sigmoid function (sigmoid), rectified linear unit function (ReLU) 등의 비선형 함수를 이용하고 이들은 활성화 함수라고도 한다.
맥스-풀링 입력노드를 구하는 단계(S530)에서 본 발명에 따른 가중치 래핑을 수행하게 되는데 자세한 방법은 전술한 바와 같다.
도 6은 본 발명의 다른 실시예에 따른 음성인식장치(60)의 구조를 나타낸다.
음성인식장치(60)는 입력부(610), 주파수 변환부(620) 및 연산부(630)를 포함한다.
입력부(610)는 음성신호를 입력받고, 주파수 변환부(620)에 의해 음성신호는 시간축 신호에서 시간축과 주파수축의 성분을 가지는 성분으로 변환된다.
연산부(630)에서는 변환된 신호를 입력신호로 하여 본 발명에 따른 래핑된 가중치 벡터를 이용하여 맥스-풀링 입력 노드값을 계산하고, 그 중 최대값을 선택하여 은닉층 노드값으로 결정한 후, 마지막으로 비선형 함수를 통과하여 은닉층의 노드 출력값을 계산한다.
이상에서 설명한 가중치의 래핑방법에 의해 은닉층의 노드들을 계산함으로써 사용자의 발화속도가 변화하더라도 가중치 벡터의 압축정도를 조절하여 대응함으로써 좀 더 정확한 음성인식이 가능해진다.
한편, 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법은 컴퓨터 시스템에서 구현되거나, 또는 기록매체에 기록될 수 있다. 도 7에 도시된 바와 같이, 컴퓨터 시스템은 적어도 하나 이상의 프로세서(721)와, 메모리(723)와, 사용자 입력 장치(726)와, 데이터 통신 버스(722)와, 사용자 출력 장치(727)와, 저장소(728)를 포함할 수 있다. 전술한 각각의 구성 요소는 데이터 통신 버스(722)를 통해 데이터 통신을 한다.
컴퓨터 시스템은 네트워크에 커플링된 네트워크 인터페이스(129)를 더 포함할 수 있다. 상기 프로세서(721)는 중앙처리 장치(central processing unit (CPU))이거나, 혹은 메모리(723) 및/또는 저장소(728)에 저장된 명령어를 처리하는 반도체 장치일 수 있다.
상기 메모리(723) 및 상기 저장소(728)는 다양한 형태의 휘발성 혹은 비휘발성 저장매체를 포함할 수 있다. 예컨대, 상기 메모리(723)는 ROM(124) 및 RAM(725)을 포함할 수 있다.
따라서, 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법은 컴퓨터에서 실행 가능한 방법으로 구현될 수 있다. 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법이 컴퓨터 장치에서 수행될 때, 컴퓨터로 판독 가능한 명령어들이 본 발명에 따른 인식 방법을 수행할 수 있다.
한편, 상술한 본 발명에 따른 심층 신경망 기반 음성인식방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이상, 본 발명의 구성에 대하여 첨부 도면을 참조하여 상세히 설명하였으나, 이는 예시에 불과한 것으로서, 본 발명이 속하는 기술분야에 통상의 지식을 가진자라면 본 발명의 기술적 사상의 범위 내에서 다양한 변형과 변경이가능함은 물론이다. 따라서 본 발명의 보호 범위는 전술한 실시예에 국한되어서는 아니되며 이하의 특허청구범위의 기재에 의하여 정해져야 할 것이다.

Claims (12)

  1. 음성신호를 입력받는 단계;
    상기 음성신호를 주파수신호로 변환하는 단계;
    상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하는 단계; 및
    상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 단계;를 포함하되,
    상기 가중치 벡터는 시간축 래핑 정도에 기초해 결정된 임계값을 기준으로 나눠지는 프레임 인덱스의 범위에 따라 학습에 의해 미리 설정된 기준 가중치 벡터를 주파수 밴드 인덱스, 프레임 길이, 및 프레임 순서 중 적어도 하나를 인수로 하여 시간축으로 압축하여 구하는 것인 심층 신경망 기반 음성 인식방법.
  2. 제1항에 있어서, 상기 음성신호를 주파수신호로 변환하는 단계는
    상기 음성신호를 기설정된 길이의 시간축 성분과 기설정된 복수개의 주파수 밴드 성분을 가지는 신호로 필터뱅크(Filter-bank) 방식으로 변환하는 것
    인 심층 신경망 기반 음성인식 방법.
  3. 제1항에 있어서, 상기 음성신호를 주파수신호로 변환하는 단계는
    DFT(Discrete Fourier Transform), FFT(Fast Fourier Transform) 또는 DCT(Discrete Cosine Transform) 방법에 의해 상기 음성신호를 주파수신호로 변환하는 것
    인 심층 신경망 기반 음성인식 방법.
  4. 제1항에 있어서, 상기 은닉층의 노드값으로 결정하는 단계 이후에
    상기 결정된 은닉층의 노드값을 비선형 함수에 적용하여 상기 은닉층의 출력값을 구하는 단계;를 더 포함하고,
    상기 비선형 함수는
    하이퍼볼릭 탄젠트 함수(tanh: hyperbolic tangent function), 시그모이드 함수(sigmoid: sigmoid function) 또는 정류 선형 유닛 함수((ReLU: rectified linear unit function)를 사용하는 것
    인 심층 신경망 기반 음성인식 방법.
  5. 제1항에 있어서,
    상기 기준 가중치 벡터를 시간축으로 압축하는 것은 하기 수학식 12에 의해 계산하는 것
    인 심층 신경망 기반 음성인식 방법.
    [수학식 12]
    Figure 112018104118053-pat00041

    (
    Figure 112018104118053-pat00042
    는 은닉층의 n번째 노드의 k번째 맥스-풀링 입력 노드에 대응하는 기준 가중치 벡터,
    Figure 112018104118053-pat00043
    은 주파수 밴드의 인덱스,
    Figure 112018104118053-pat00044
    는 시간축 프레임 인덱스, T는 기준 가중치 벡터의 시간축 프레임 인덱스 중 최대값, Z는 정규화 지수,
    Figure 112018104118053-pat00045
    는 시간축 압축된 가중치 벡터,
    Figure 112018104118053-pat00046
    은 시간축 압축된 가중치 벡터의 시작 프레임 인덱스,
    Figure 112018104118053-pat00047
    는 시간축 압축된 가중치 벡터의 최종 프레임 인덱스)
  6. 제5항에 있어서,
    상기 t'가 정수가 아닌 경우 상기 t'에 인접하고 상기 t'보다 작은 정수 t1과, 상기 t'에 인접하고 상기 t'보다 큰 정수 t2를 구하고, 상기 t1에 해당하는 가중치와 상기 t2에 해당하는 가중치에 의해 선형보간(Linear Interpolation)하는 방법으로 상기 t'에 해당하는 가중치를 구하는 것
    인 심층 신경망 기반 음성인식 방법.
  7. 하나이상의 프로세서를 포함하는 심층 신경망 기반 음성인식장치에 있어서, 상기 프로세서는
    음성신호를 입력받는 입력부;
    상기 음성신호를 주파수신호로 변환하는 주파수 변환부;
    상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하고,
    상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 연산부;를 포함하여 구현하되,
    상기 가중치 벡터는 시간축 래핑 정도에 기초해 결정된 임계값을 기준으로 나눠지는 프레임 인덱스의 범위에 따라 학습에 의해 미리 설정된 기준 가중치 벡터를 주파수 밴드 인덱스, 프레임 길이, 및 프레임 순서 중 적어도 하나를 인수로 하여 시간축으로 압축하여 구하는 것
    인 심층 신경망 기반 음성인식장치.
  8. 제7항에 있어서, 상기 주파수 변환부는
    상기 음성신호를 기설정된 길이의 시간축 성분과 기설정된 복수개의 주파수 밴드 성분을 가지는 신호로 필터뱅크(Filter-bank) 방식으로 변환하는 것
    인 심층 신경망 기반 음성인식 장치.
  9. 제7항에 있어서, 상기 주파수 변환부는
    DFT(Discrete Fourier Transform), FFT(Fast Fourier Transform) 또는 DCT(Discrete Cosine Transform) 방법에 의해 상기 음성신호를 주파수신호로 변환하는 것
    인 심층 신경망 기반 음성인식 장치.
  10. 제7항에 있어서, 상기 연산부는
    상기 결정된 은닉층의 노드값을 비선형 함수에 적용하여 상기 은닉층의 출력값을 구하고,
    상기 비선형 함수는
    하이퍼볼릭 탄젠트 함수(tanh: hyperbolic tangent function), 시그모이드 함수(sigmoid: sigmoid function) 또는 정류 선형 유닛 함수((ReLU: rectified linear unit function)를 사용하는 것
    인 심층 신경망 기반 음성인식 장치.
  11. 제7항에 있어서,
    상기 기준 가중치 벡터를 시간축으로 압축하는 것은 하기 수학식 13에 의해 계산하는 것
    인 심층 신경망 기반 음성인식 장치.
    [수학식 13]
    Figure 112018104118053-pat00048

    (
    Figure 112018104118053-pat00049
    는 은닉층의 n번째 노드의 k번째 맥스-풀링 입력 노드에 대응하는 기준 가중치 벡터,
    Figure 112018104118053-pat00050
    은 주파수 밴드 인덱스,
    Figure 112018104118053-pat00051
    는 시간축 프레임 인덱스, T는 기준 가중치 벡터의 시간축 프레임 인덱스 중 최대값, Z는 정규화 지수,
    Figure 112018104118053-pat00052
    는 시간축 압축된 가중치 벡터,
    Figure 112018104118053-pat00053
    은 시간축 압축된 가중치 벡터의 시작 프레임 인덱스,
    Figure 112018104118053-pat00054
    는 시간축 압축된 가중치 벡터의 최종 프레임 인덱스)
  12. 제11항에 있어서,
    상기 t'가 정수가 아닌 경우 상기 t'에 인접하고 상기 t'보다 작은 정수 t1과, 상기 t'에 인접하고 상기 t'보다 큰 정수 t2를 구하고, 상기 t1에 해당하는 가중치와 상기 t2에 해당하는 가중치에 의해 선형보간(Linear Interpolation)하는 방법으로 상기 t'에 해당하는 가중치를 구하는 것
    인 심층 신경망 기반 음성인식 장치.
KR1020160008167A 2016-01-22 2016-01-22 심층 신경망 기반 음성인식 방법 및 그 장치 KR102204975B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160008167A KR102204975B1 (ko) 2016-01-22 2016-01-22 심층 신경망 기반 음성인식 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160008167A KR102204975B1 (ko) 2016-01-22 2016-01-22 심층 신경망 기반 음성인식 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20170088165A KR20170088165A (ko) 2017-08-01
KR102204975B1 true KR102204975B1 (ko) 2021-01-19

Family

ID=59650151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160008167A KR102204975B1 (ko) 2016-01-22 2016-01-22 심층 신경망 기반 음성인식 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR102204975B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605736B1 (ko) 2018-03-15 2023-11-27 한국전자통신연구원 주파수 변화에 강인한 음향 이벤트 검출 방법 및 그 장치
KR102635469B1 (ko) 2019-03-18 2024-02-13 한국전자통신연구원 컨볼루션 뉴럴 네트워크에 기반한 음향 이벤트 인식 방법 및 장치
KR102286775B1 (ko) * 2019-08-02 2021-08-09 서울시립대학교 산학협력단 미등록 화자를 추가할 수 있는 심층 신경망 기반의 화자 식별 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
KR102384255B1 (ko) * 2020-01-20 2022-04-06 경희대학교 산학협력단 인공 신경망의 가중치를 처리하는 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100217145A1 (en) 2006-06-09 2010-08-26 Bracco Spa Method of processing multichannel and multivariate signals and method of classifying sources of multichannel and multivariate signals operating according to such processing method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100217145A1 (en) 2006-06-09 2010-08-26 Bracco Spa Method of processing multichannel and multivariate signals and method of classifying sources of multichannel and multivariate signals operating according to such processing method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Huang 등, ‘ AN ANALYSIS OF CONVOLUTIONAL NEURAL NETWORKS FOR SPEECH RECOGNITION’, 2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2015.04.19.
Nakkiran 등, ‘Compressing Deep Neural Networks using a Rank-Constrained Topology’, Proceedings of Annual Conference of the International Speech Communication Association (Interspeech), 2015.
Ossama 등. ‘Convolutional Neural Networks for Speech Recognition’, IEEE/ACM TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 22, NO. 10, 2014.

Also Published As

Publication number Publication date
KR20170088165A (ko) 2017-08-01

Similar Documents

Publication Publication Date Title
KR102235568B1 (ko) 합성곱 신경망 기반 환경음 인식 방법 및 시스템
KR102002681B1 (ko) 생성적 대립 망 기반의 음성 대역폭 확장기 및 확장 방법
CN112712812B (zh) 音频信号生成方法、装置、设备以及存储介质
CN110379412B (zh) 语音处理的方法、装置、电子设备及计算机可读存储介质
CN108447495B (zh) 一种基于综合特征集的深度学习语音增强方法
US20180190280A1 (en) Voice recognition method and apparatus
CN109326299B (zh) 基于全卷积神经网络的语音增强方法、装置及存储介质
US9123350B2 (en) Method and system for extracting audio features from an encoded bitstream for audio classification
WO2018223727A1 (zh) 识别声纹的方法、装置、设备及介质
KR102605736B1 (ko) 주파수 변화에 강인한 음향 이벤트 검출 방법 및 그 장치
KR100930060B1 (ko) 신호 검출 방법, 장치 및 그 방법을 실행하는 프로그램이기록된 기록매체
KR102204975B1 (ko) 심층 신경망 기반 음성인식 방법 및 그 장치
CN111785285A (zh) 面向家居多特征参数融合的声纹识别方法
CN109036460A (zh) 基于多模型神经网络的语音处理方法和装置
CN110942766A (zh) 音频事件检测方法、系统、移动终端及存储介质
Chaudhary et al. Gender identification based on voice signal characteristics
US9583120B2 (en) Noise cancellation apparatus and method
CN112183107A (zh) 音频的处理方法和装置
Abdalla et al. DWT and MFCCs based feature extraction methods for isolated word recognition
EP4102500A1 (en) System and method for robust wakeword detection in presence of noise in new unseen environments without additional data
CN112183582A (zh) 一种多特征融合的水下目标识别方法
KR100827097B1 (ko) 음성신호 전처리를 위한 가변 길이의 프레임 결정 방법과이를 이용한 음성신호 전처리 방법 및 장치
Raj et al. Multilayered convolutional neural network-based auto-CODEC for audio signal denoising using mel-frequency cepstral coefficients
Agcaer et al. Optimization of amplitude modulation features for low-resource acoustic scene classification
KR102241364B1 (ko) 음성 신호를 이용한 사용자 스트레스 판별 장치 및 방법

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