KR102018346B1 - Method for classifying sounds and system therefor - Google Patents

Method for classifying sounds and system therefor

Info

Publication number
KR102018346B1
KR102018346B1 KR1020180054039A KR20180054039A KR102018346B1 KR 102018346 B1 KR102018346 B1 KR 102018346B1 KR 1020180054039 A KR1020180054039 A KR 1020180054039A KR 20180054039 A KR20180054039 A KR 20180054039A KR 102018346 B1 KR102018346 B1 KR 102018346B1
Authority
KR
South Korea
Prior art keywords
partial
spectrograms
spectrogram
feature information
convolution
Prior art date
Application number
KR1020180054039A
Other languages
Korean (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 KR1020180054039A priority Critical patent/KR102018346B1/en
Application granted granted Critical
Publication of KR102018346B1 publication Critical patent/KR102018346B1/en

Links

Classifications

    • 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
    • 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/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/15Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being formant information
    • 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

The present invention relates to technique for classifying sound signals using a multi-stream convolution neural network. The method may comprise the steps of: generating a full spectrogram of sound signals; generating a plurality of partial spectrograms from the full spectrogram, wherein each partial spectrogram includes a predetermined frequency interval of the full spectrogram; and determining a first parameter used for a convolution operation performed in a first convolution neural network for the full spectrogram and a second parameter used for a convolution operation performed in a second convolution neural network for the partial spectrograms.

Description

음향 신호를 분류하는 방법 및 시스템 {METHOD FOR CLASSIFYING SOUNDS AND SYSTEM THEREFOR}Method and system for classifying acoustic signals {METHOD FOR CLASSIFYING SOUNDS AND SYSTEM THEREFOR}

본 발명은 음향 신호를 분류하는 기술에 관한 것으로, 보다 구체적으로, 멀티 스트림 컨볼루션 신경망(multi-stream Convolution Neural Network)을 이용하여 음향 신호를 분류하는 기술에 관한 것이다.The present invention relates to a technique for classifying acoustic signals, and more particularly, to a technique for classifying acoustic signals using a multi-stream convolution neural network.

주변 환경의 음향 신호를 분류하기 위해 스펙트로그램(spectrogram) 기반의 특징을 콘볼루션 심화 신경망의 입력으로 사용하게 되면 환경 음향의 다양한 주파수-시간 변조 패턴들을 학습할 수 있어 양질의 특징을 얻을 수 있다.Using a spectrogram-based feature to classify the acoustic signals of the surrounding environment as input to the convolutional deep neural network, it is possible to learn various frequency-time modulation patterns of the environmental sound to obtain high quality features.

그런데, 각각의 환경 음향 신호의 전체 스펙트로그램 패턴을 단일 스트림 콘볼루션 심화 신경망을 이용하여 학습할 경우, 스펙트로그램 특징의 세세한 부분까지 모두 학습하는 것에는 한계가 있어 서로 비슷한 패턴을 가지는 환경 음향들을 분류하는 것에 어려움이 발생한다.However, when learning the entire spectrogram pattern of each environmental acoustic signal using a single stream convolutional deepening neural network, there is a limit in learning all the details of the spectrogram characteristics, thus classifying the environmental sounds having similar patterns. Difficulties arise.

한국등록특허 10-1749254 (2017년6월14일 등록)Korea Patent Registration 10-1749254 (registered June 14, 2017)

본 발명의 실시예에서는, 음향 신호의 스펙트로그램에 대해 멀티 스트림 컨볼루션 심화 학습을 수행하여 음향 신호를 분류함으로써, 음향 신호 분류 정확도를 높일 수 있는 기술을 제안하고자 한다.In an embodiment of the present invention, a technique for classifying a sound signal by performing multi-stream convolution deep learning on a spectrogram of the sound signal and classifying the sound signal may be proposed.

또한, 본 발명의 실시예에서는, 컨볼루션 심화 학습 결과에 대해 글로벌 풀링(global pooling)을 적용함으로써, 심화 신경망에서의 연산량과 과적합(over-fitting)을 줄일 수 있는 기술을 제안하고자 한다.In addition, the embodiment of the present invention, by applying the global pooling (global pooling) to the convolution deepening learning results, to propose a technique that can reduce the amount of computation and over-fitting in the deep neural network.

본 발명이 해결하고자 하는 과제는 상기에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재들로부터 본 발명이 속하는 통상의 지식을 가진 자에 의해 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-mentioned, another problem to be solved is not mentioned can be clearly understood by those skilled in the art from the following description. will be.

본 발명의 실시예에 따르면, 멀티 스트림 컨볼루션 신경망(Convolution Neural Network)을 이용하여 음향 신호를 분류하는 방법으로서, 음향 신호의 전체 스펙트로그램(spectrogram)을 생성하는 단계와, 상기 전체 스펙트로그램으로부터 복수 개의 부분 스펙트로그램을 생성하는 단계 - 상기 부분 스펙트로그램의 각각은 상기 전체 스펙트로그램의 소정의 주파수 구간을 포함함 - 와, 상기 전체 스펙트로그램에 대한 제1 컨볼루션 신경망에서 수행되는 컨볼루션 연산에 사용되는 제1 파라미터와, 상기 복수 개의 부분 스펙트로그램에 대한 제2 컨볼루션 신경망에서 수행되는 컨볼루션 연산에 사용되는 제2 파라미터를 결정하는 단계를 포함하는 음향 신호 분류 방법을 제공할 수 있다.According to an embodiment of the present invention, there is provided a method for classifying an acoustic signal using a multi-stream convolutional neural network, the method comprising: generating an entire spectrogram of an acoustic signal, and generating a plurality of spectrograms from the entire spectrogram; Generating four partial spectrograms, each of the partial spectrograms comprising a predetermined frequency interval of the entire spectrogram, and used for a convolution operation performed in a first convolutional neural network for the full spectrogram And a second parameter used in a convolution operation performed in a second convolutional neural network for the plurality of partial spectrograms.

여기서, 상기 결정하는 단계는, 상기 음향 신호의 전체 스펙트로그램에 대해 상기 제1 컨볼루션 신경망을 이용하여 제 1 결과를 예측하는 단계와, 상기 음향 신호의 복수 개의 부분 스펙트로그램에 대해, 상기 제2 컨볼루션 신경망을 이용하여 제2 결과를 예측하는 단계와, 상기 제1 결과를 이용하여 상기 제1 파라미터를 학습하고, 상기 제2 결과를 이용하여 상기 제2 파라미터를 학습하는 단계를 포함할 수 있다.The determining may include predicting a first result using the first convolutional neural network for the entire spectrogram of the acoustic signal, and for the plurality of partial spectrograms of the acoustic signal, Predicting a second result using a convolutional neural network, learning the first parameter using the first result, and learning the second parameter using the second result. .

또한, 상기 복수 개의 부분 스펙트로그램에 대한 상기 제2 컨볼루션 신경망에서의 컨볼루션 연산에 의해 생성되는 특징 정보에 대해 글로벌 풀링(global pooling)이 적용될 수 있다.In addition, global pooling may be applied to feature information generated by a convolution operation in the second convolutional neural network for the plurality of partial spectrograms.

또한, 상기 적용되는 글로벌 풀링은 GAP(Global Average Pooling)와 GMP(Global Max Pooling)일 수 있다.In addition, the applied global pooling may be Global Average Pooling (GAP) and Global Max Pooling (GMP).

또한, 임의의 음향 신호의 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해, 상기 제1 파라미터와 상기 제2 파라미터를 상기 멀티 스트림 컨볼루션 신경망에 적용하여 상기 음향 신호를 분류하는 단계를 더 포함할 수 있다.The method may further include classifying the sound signal by applying the first parameter and the second parameter to the multi-stream convolutional neural network for the entire spectrogram and the plurality of partial spectrograms of an arbitrary sound signal. have.

또한, 상기 음향 신호를 분류하는 단계는, 상기 전체 스펙트로그램에 대해 컨볼루션 연산을 수행하여, 상기 전체 스펙트로그램에 대한 특징 정보를 생성하는 단계와, 상기 복수 개의 부분 스펙트로그램에 대해 컨볼루션 연산을 수행하여, 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보를 생성하는 단계와, 상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보에 대해 제1 활성화 함수를 적용하는 단계와, 상기 제1 활성화 함수가 적용된 상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보를 병합한 후 제2 활성화 함수를 적용하는 단계와, 상기 제2 활성화 함수를 적용한 결과에 대해 제3 활성화 함수를 적용하여 상기 음향 신호를 분류하는 단계를 포함할 수 있다.The classifying the sound signal may include performing convolution operation on the entire spectrogram, generating feature information on the entire spectrogram, and performing convolution operation on the plurality of partial spectrograms. Generating feature information for the plurality of partial spectrograms, applying a first activation function to feature information for the entire spectrogram and feature information for the plurality of partial spectrograms; Merging the feature information of the entire spectrogram to which the first activation function is applied and the feature information of the plurality of partial spectrograms, and then applying a second activation function and a result of applying the second activation function. Classifying the acoustic signal by applying a third activation function The.

또한, 상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보에 대해 글로벌 풀링(global pooling)이 적용될 수 있다.In addition, global pooling may be applied to the feature information on the entire spectrogram and the feature information on the plurality of partial spectrograms.

또한, 상기 제1 활성화 함수 및 상기 제2 활성화 함수는 ReLU(Rectified Linear Unit) 함수이며, 상기 제3 활성화 함수는 시그모이드(sigmoid) 함수일 수 있다.In addition, the first activation function and the second activation function may be a rectified linear unit (ReLU) function, and the third activation function may be a sigmoid function.

또한, 상기 전체 스펙트로그램의 주파수 빈(frequency bin)의 크기를 확장한 후 상기 복수 개의 부분 스펙트로그램을 생성하는 단계를 더 포함할 수 있다.The method may further include generating the plurality of partial spectrograms after expanding the size of frequency bins of the entire spectrograms.

본 발명의 실시예에 따르면, 멀티 스트림 컨볼루션 신경망을 이용하여 음향 신호를 분류하는 시스템으로서, 음향 신호의 전체 스펙트로그램을 생성하는 전처리부와, 상기 전체 스펙트로그램으로부터 복수 개의 부분 스펙트로그램을 생성하는 스펙트로그램 분류부 - 상기 부분 스펙트로그램의 각각은 상기 전체 스펙트로그램의 소정의 주파수 구간을 포함함 - 와, 상기 전체 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제1 파라미터와, 상기 복수 개의 부분 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제2 파라미터를 결정하는 학습 모델부를 포함하는 음향 신호를 분류하는 시스템을 제공할 수 있다.According to an embodiment of the present invention, a system for classifying an acoustic signal using a multi-stream convolutional neural network, comprising: a preprocessor for generating an entire spectrogram of an acoustic signal, and a plurality of partial spectrograms from the entire spectrogram; A spectrogram classifier, each of the partial spectrograms comprising a predetermined frequency interval of the entire spectrogram, a first parameter used for a convolution operation performed on the entire spectrogram, and the plurality of portions A system for classifying acoustic signals including a learning model unit for determining a second parameter used in a convolution operation performed on a spectrogram may be provided.

여기서, 상기 학습 모델부는, 상기 음향 신호의 전체 스펙트로그램에 대해 제1 결과를 예측하고, 상기 제1 결과를 이용하여 제1 파라미터를 학습하는 제1 컨볼루션 신경망과, 상기 음향 신호의 복수 개의 부분 스펙트로그램에 대해 제2 결과를 예측하고, 상기 제2 결과를 이용하여 제2 파라미터를 학습하는 제2 컨볼루션 신경망과, 임의의 음향 신호의 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해, 상기 제1 파라미터와 상기 제2 파라미터를 상기 멀티 스트림 컨볼루션 신경망에 적용하여 상기 음향 신호를 분류하는 제3 컨볼루션 신경망을 포함할 수 있다.Here, the learning model unit includes a first convolutional neural network for predicting a first result with respect to the entire spectrogram of the sound signal, and learning a first parameter using the first result, and a plurality of parts of the sound signal. A second convolutional neural network that predicts a second result for a spectrogram and learns a second parameter using the second result, and for the entire spectrogram and a plurality of partial spectrograms of any acoustic signal, And a third convolutional neural network classifying the sound signal by applying one parameter and the second parameter to the multi-stream convolutional neural network.

또한, 상기 제1 컨볼루션 신경망은, 상기 전체 스펙트로그램에 대해 제1 활성화 함수를 적용하여 상기 전체 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과, 상기 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과, 상기 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 상기 제1 파라미터를 학습시킨 결과를 출력하는 출력 층을 포함할 수 있다.The first convolutional neural network may further include: a convolution layer configured to apply a first activation function to the entire spectrogram to generate convolutional feature information for the entire spectrogram, and a second to the convolutional feature information. And a fully connected layer for generating linear concealment feature information by applying an activation function, and an output layer for outputting a result of learning the first parameter by applying a third activation function to the linear concealment feature information.

또한, 상기 제2 컨볼루션 신경망은, 상기 복수 개의 부분 스펙트로그램에 대해 제1 활성화 함수를 적용하여 상기 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과, 상기 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층과, 상기 글로벌 풀링이 적용된 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과, 상기 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 상기 제2 파라미터를 학습시킨 결과를 출력하는 출력 층을 포함할 수 있다.The second convolutional neural network may further include: a convolution layer configured to apply a first activation function to the plurality of partial spectrograms to generate convolution feature information for the plurality of partial spectrograms, and the convolution characteristic information. A global pooling layer applying global pooling to the fully-connected layer generating linear hidden feature information by applying a second activation function to the convolution feature information to which the global pooling is applied, and And an output layer that outputs a result of learning the second parameter by applying an activation function.

또한, 상기 제1 활성화 함수는 LReLU(Leaky Rectified Linear Unit) 함수이고, 상기 제2 활성화 함수는 ReLU(Rectified Linear Unit) 함수이며, 상기 제3 활성화 함수는 시그모이드(sigmoid) 함수일 수 있다.In addition, the first activation function may be a leaky rectified linear unit (LReLU) function, the second activation function may be a rectified linear unit (ReLU) function, and the third activation function may be a sigmoid function.

또한, 상기 제3 컨볼루션 신경망은, 상기 제1 파라미터와 상기 제2 파라미터를 적용하여 임의의 음향 신호의 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과, 상기 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 상기 부분 스펙트로그램에 대한 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층과, 상기 글로벌 풀링이 적용된 상기 전체 스펙트로그램의 컨볼루션 특징 정보와 상기 부분 스펙트로그램의 컨볼루션 특징 정보에 대해 제1 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과, 상기 선형 은닉 특징 정보를 병합한 후 제2 활성화 함수를 적용하는 병합 층과, 상기 제2 활성화 함수를 적용한 결과에 대해 제3 활성화 함수를 적용하여 상기 음향 신호의 분류 결과를 출력하는 출력 층을 포함할 수 있다.In addition, the third convolutional neural network may apply the first parameter and the second parameter to generate convolution characteristic information for all spectrograms of an arbitrary sound signal and convolution characteristic information for a plurality of partial spectrograms. A convolution layer, a global pooling layer that applies global pooling to the convolutional feature information for the entire spectrogram and the convolutional feature information for the partial spectrogram, and a convolution of the entire spectrogram to which the global pooling is applied A fully-connected layer generating linear concealment feature information by applying a first activation function to the convolution feature information and the convolution feature information of the partial spectrogram, and applying the second activation function after merging the linear concealment feature information. A third activation function for the merged layer and the result of applying the second activation function Applied may comprise an output layer for outputting a classification result of the sound signal.

또한, 상기 제1 활성화 함수 및 상기 제2 활성화 함수는 ReLU 함수이며, 상기 제3 활성화 함수는 시그모이드 함수일 수 있다.In addition, the first activation function and the second activation function may be a ReLU function, and the third activation function may be a sigmoid function.

본 발명의 실시예에 의하면, 음향 신호의 스펙트로그램에 대해 멀티스트림 컨볼루션 심화 학습을 수행함으로써 음향 신호 분류 정확도를 높일 수 있으며, 컨볼루션 심화 학습 결과에 대해 글로벌 풀링을 적용함으로써, 심화 신경망에서의 연산량과 과적합을 줄일 수 있다.According to an embodiment of the present invention, by performing multi-stream convolution deep learning on the spectrogram of the sound signal, it is possible to increase the accuracy of sound signal classification accuracy, and by applying global pooling to the convolution deep learning result, The amount of computation and overfitting can be reduced.

도 1은 본 발명의 실시예에 따른 음향 신호 분류를 위한 시스템의 블록도이다.
도 2는 도 1의 학습 모델부(300)에서 수행되는 전체 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다.
도 3은 도 1의 학습 모델부(300)에서 수행되는 복수 개의 부분 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다.
도 4는 도 1의 학습 모델부(300)에서 수행되는 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다.
도 5는 전형적인 단일 스트림 컨볼루션 연산에 의한 음향 신호 분류 결과와, 본 발명의 실시예에 따른 멀티 스트림 컨볼루션 연산에 의한 음향 신호 분류 결과를 수치적으로 비교한 도면이다.
도 6은 본 발명의 실시예에 따른 멀티 스트림 컨볼루션 연산에 의한 혼동 행렬(confusion matrix)을 예시한 도면이다.
1 is a block diagram of a system for acoustic signal classification according to an embodiment of the present invention.
FIG. 2 is a diagram exemplarily illustrating a convolution operation on an entire spectrogram performed by the learning model unit 300 of FIG. 1.
FIG. 3 is a diagram for explaining a convolution operation on a plurality of partial spectrograms performed by the learning model unit 300 of FIG. 1.
4 is a diagram illustrating an example of a convolution operation on the entire spectrogram and the plurality of partial spectrograms performed by the learning model unit 300 of FIG. 1.
FIG. 5 is a numerical comparison of sound signal classification results by a typical single stream convolution operation and sound signal classification results by a multi-stream convolution operation according to an embodiment of the present invention.
6 is a diagram illustrating a confusion matrix by a multi-stream convolution operation according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various forms, only the embodiments are to make the disclosure of the present invention complete, and those skilled in the art to which the present invention pertains. It is provided to fully inform the scope of the invention, and the scope of the invention is defined only by the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, detailed descriptions of well-known functions or configurations will be omitted unless they are actually necessary in describing the embodiments of the present invention. The terms to be described below are terms defined in consideration of functions in the embodiments of the present invention, which may vary according to intentions or customs of users or operators. Therefore, the definition should be made based on the contents throughout the specification.

본 발명의 실시예에서는, 음향 신호의 전체 스펙트로그램을 생성하고, 전체 스펙트로그램의 소정의 주파수 구간을 포함하는 복수 개의 부분 스펙트로그램을 생성하며, 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해 멀티 스트림 컨볼루션 신경망을 적용하여 음향 신호를 분류함으로써, 음향 신호 분류 정확도를 높일 수 있는 기술을 제안하고자 한다. 또한, 본 발명의 실시예에서는, 전체 스펙트로그램과 부분 스펙트로그램의 컨볼루션 심화 학습 결과에 대해 글로벌 풀링을 적용함으로써, 심화 신경망에서의 연산량과 과적합을 줄일 수 있는 기술을 제안하고자 한다.In an embodiment of the present invention, a full spectrogram of an acoustic signal is generated, a plurality of partial spectrograms including a predetermined frequency section of the entire spectrogram are generated, and a multi-stream is generated for the full spectrogram and the plurality of partial spectrograms. By applying a convolutional neural network to classify the acoustic signal, a technique for improving the accuracy of acoustic signal classification is proposed. In addition, in an embodiment of the present invention, by applying global pooling to the convolution deep learning results of the entire spectrogram and partial spectrogram, it is proposed a technique that can reduce the amount of computation and overfit in the deep neural network.

이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail an embodiment of the present invention.

도 1은 본 발명의 실시예에 따른 음향 신호 분류를 위한 시스템의 블록도이다.1 is a block diagram of a system for acoustic signal classification according to an embodiment of the present invention.

도 1에 도시한 바와 같이, 음향 신호 분류 시스템(10)은 전처리부(100), 스펙트로그램 분류부(200), 학습 모델부(300) 및 음향 분류부(400)를 포함할 수 있다.As shown in FIG. 1, the acoustic signal classification system 10 may include a preprocessor 100, a spectrogram classifier 200, a learning model unit 300, and an acoustic classifier 400.

먼저, 전처리부(100)는 입력되는 음향 신호의 전체 스펙트로그램을 생성하기 위한 전처리 과정을 수행할 수 있다.First, the preprocessor 100 may perform a preprocessing process for generating the entire spectrogram of the input sound signal.

본 발명의 실시예에서는 음향 신호를 분류하기 위해, 예를 들어 로그 스케일된 멜 스펙트로그램(Log-Mel spectrogram)을 사용할 수 있으며, 로그 스케일된 멜 스펙트로그램을 생성하기 위해서는 다음과 같은 과정을 거칠 수 있다.In an embodiment of the present invention, for example, a log-scale Mel spectrogram may be used to classify an acoustic signal, and to generate a log-scaled mel spectrogram, the following process may be performed. have.

먼저, 이산 신호(y(n))에 [수학식 1]과 같이 샘플 길이(N)만큼의 해밍 윈도우(hamming window)를 적용한다.First, a Hamming window equal to the sample length N is applied to the discrete signal y (n) as shown in [Equation 1].

그 후, n s 샘플만큼 이동시키면서 이산 푸리에 변환(Discrete Fourier Transform, DFT)을 수행하여 [수학식 2]와 같은 결과값(Y l,k )을 얻을 수 있다.Thereafter, a Discrete Fourier Transform (DFT) may be performed while moving by n s samples to obtain a result value Y l, k as shown in [Equation 2].

[수학식 2]의 결과값에 절대값을 적용시키면 스펙트로그램을 생성할 수 있으며, 생성된 스펙트로그램에 멜 필터(F k,m )를 필터링시키고, 로그 값으로 스케일을 조정하면 다음 [수학식 3]과 같은 로그 스케일된 멜 스펙트로그램이 생성될 수 있다.If you apply absolute value to the result of Equation 2, you can generate spectrogram. If you filter Mel filter ( F k, m ) on the generated spectrogram, and scale it with log value, A log scaled mel spectrogram such as 3] can be generated.

스펙트로그램 분류부(200)는 전처리부(100)를 통해 생성된 전체 스펙트로그램, 예를 들어 로그 스케일된 멜 스펙트로그램으로부터, 복수 개의 부분 스펙트로그램을 생성할 수 있다.The spectrogram classifier 200 may generate a plurality of partial spectrograms from all spectrograms generated by the preprocessor 100, for example, a log scaled mel spectrogram.

여기서, 복수 개의 부분 스펙트로그램의 각각은, 전체 스펙트로그램의 소정의 주파수 구간을 포함할 수 있다. 예컨대, 전체 스펙트로그램의 주파수 빈(frequency bin)을 저 주파수 구간, 저-중 주파수 구간 및 중-고 주파수 구간으로 구분하고, 저 주파수 구간은 제1 부분 스펙트로그램으로, 저-중 주파수 구간은 제2 부분 스펙트로그램으로, 중-고 주파수 구간은 제3 부분 스펙트로그램으로 각각 구분하여 복수 개의 부분 스펙트로그램을 생성할 수 있다.Here, each of the plurality of partial spectrograms may include a predetermined frequency section of the entire spectrogram. For example, a frequency bin of the entire spectrogram is divided into a low frequency interval, a low-medium frequency interval, and a medium-high frequency interval, the low frequency interval being a first partial spectrogram, and the low-medium frequency interval being a first. The two partial spectrograms may be divided into a third partial spectrogram to generate a plurality of partial spectrograms.

이때, 각각의 부분 스펙트로그램의 주파수 빈의 크기는 매우 작기 때문에(예를 들어, 32 빈), 컨볼루션 신경망의 깊이(activation volume)가 깊어질 경우 수용 필드(receptive field)의 크기가 입력 특징의 크기와 거의 동일하게 될 수 있다. 이 경우, 환경 음향의 지역적인 주파수 패턴을 세밀하게 분류하기에는 한계가 있으므로, 본 발명의 실시예에서는 입력되는 전체 스펙트로그램의 크기를 재 설정하여 주파수 빈의 크기를 확장한 후 각각의 부분 스펙트로그램을 생성하도록 구현할 수 있다. 예컨대, 전체 스펙트로그램의 주파수 축 구간을 두 배로 확장(32, 128 -> 64, 128)한 후 복수 개의 부분 스펙트로그램을 생성하고, 확장된 전체 스펙트로그램으로부터 생성된 복수 개의 부분 스펙트로그램을 컨볼루션 신경망의 입력값으로 설정할 수 있다.At this time, since the size of the frequency bin of each partial spectrogram is very small (e.g., 32 bins), when the depth of the convolutional neural network becomes deep, the size of the receptive field is determined by the input characteristic. It can be almost equal in size. In this case, since there is a limit in classifying the local frequency patterns of the environmental sound in detail, in the embodiment of the present invention, the size of the entire spectrogram input is reset to extend the size of the frequency bin and then the respective partial spectrograms may be modified. Can be implemented to generate For example, after doubling the frequency axis section of the entire spectrogram (32, 128-> 64, 128), a plurality of partial spectrograms are generated, and a plurality of partial spectrograms generated from the extended full spectrogram are convolutioned. Can be set as the input value of the neural network.

학습 모델부(300)는 스펙트로그램 분류부(200)를 통해 입력되는 전체 스펙트로그램과 복수 개의 부분 스펙트로그램 각각에 대해 심화 학습, 예를 들어 컨볼루션 신경망에서의 연산을 수행하여 음향 신호를 분류하기 위한 음향 신호 분류 모델을 생성할 수 있다. 이러한 음향 신호 분류 모델을 생성하는 과정은 학습 모델부(300)의 컨볼루션 연산에 사용되는 파라미터를 결정(훈련)하는 과정을 포함할 수 있다. 여기서, 파라미터는, 예를 들어 컨볼루션 연산에서 사용되는 가중치(weight) 및 바이어스(bias)를 포함할 수 있다.The training model unit 300 classifies the sound signal by performing deep learning on each of the entire spectrogram and the plurality of partial spectrograms input through the spectrogram classifier 200, for example, by performing operations on a convolutional neural network. Acoustic signal classification model can be generated. The process of generating the acoustic signal classification model may include a process of determining (training) a parameter used in the convolution operation of the learning model unit 300. Here, the parameter may include, for example, weight and bias used in the convolution operation.

또한, 학습 모델부(300)는 전체 스펙트로그램의 컨볼루션 연산에 사용되는 파라미터와, 복수 개의 부분 스펙트로그램의 컨볼루션 연산에 사용되는 파라미터를 기초로, 임의의 음향 신호의 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대한 멀티 스트림 컨볼루션 연산을 수행할 수 있다.In addition, the training model unit 300 is based on the parameters used in the convolution operation of the entire spectrogram, and the parameters used in the convolution operation of the plurality of partial spectrogram, the entire spectrogram and a plurality of Multistream convolution operations on partial spectrograms can be performed.

음향 분류부(400)는, 학습 모델부(300)에서 수행되는 멀티 스트림 컨볼루션 연산 결과를 기초로, 임의의 음향 신호를 분류할 수 있다.The sound classifier 400 may classify an arbitrary sound signal based on a result of the multi-stream convolution operation performed by the training model unit 300.

이하, 상술한 구성과 함께, 본 발명의 실시예에 따른 음향 신호 분류 방법에 대해 구체적으로 설명하기로 한다.Hereinafter, the sound signal classification method according to the embodiment of the present invention together with the above-described configuration will be described in detail.

도 2는 도 1의 학습 모델부(300)에서 수행되는 전체 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다. 도 2의 실시예에서, 전체 스펙트로그램은 글로벌 특징(global feature)으로 명명될 수 있다.FIG. 2 is a diagram exemplarily illustrating a convolution operation on an entire spectrogram performed by the learning model unit 300 of FIG. 1. In the embodiment of FIG. 2, the entire spectrogram may be named a global feature .

도 2에 도시한 바와 같이, 전체 스펙트로그램에 대한 컨볼루션 연산은, 특정 크기, 예를 들어 128X128의 크기를 갖는 음향 신호의 전체 스펙트로그램에 대해 제1 결과를 예측하고, 이러한 제1 결과를 이용하여 제1 파라미터를 학습하는 제1 컨볼루션 신경망에서 수행될 수 있다.As shown in FIG. 2, the convolution operation on the entire spectrogram predicts a first result for the entire spectrogram of an acoustic signal having a specific magnitude, for example 128 × 128, and uses this first result. By performing a first convolutional neural network learning the first parameter.

여기서, 제1 컨볼루션 신경망은, 전체 스펙트로그램에 대해 제1 활성화 함수를 적용하여 전체 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층(302a)과, 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층(Fully Connected layer, 306a)과, 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 제1 파라미터를 학습시킨 결과를 출력하는 출력 층(310a)을 포함할 수 있다.Here, the first convolutional neural network may include a convolution layer 302a for generating convolution characteristic information for the entire spectrogram by applying a first activation function to the entire spectrogram, and a second activation for the convolution characteristic information. Fully connected layer 306a for applying linear function to generate linear hidden feature information, and output layer 310a for outputting a result of learning a first parameter by applying a third activation function to linear hidden feature information. ) May be included.

컨볼루션 층(302a)은, 예를 들어 3개의 층(C1, C2, C3)을 포함할 수 있으며, 각 층(C1, C2, C3)의 컨볼루션 연산이 끝날 때마다 기 설정된 범위의 창(window)으로 기 설정된 스트라이드(stride) 만큼 이동하면서 최대치를 풀링(max pooling)하여 입력된 전체 스펙트로그램의 차원을 축소시킬 수 있다(예를 들어, 창 범위:2X2, 스트라이드:2). 컨볼루션 층(302a)의 컨볼루션 연산에 의해 생성되는 컨볼루션 특징 정보(f Global (X E ))는 다음 [수학식 4]와 같이 표현될 수 있다.The convolutional layer 302a may include, for example, three layers C1, C2, and C3, each time a convolution operation of each of the layers C1, C2, and C3 is completed, It is possible to reduce the dimension of the entire spectrogram input by max pooling while moving by a predetermined stride (for example, window range: 2X2, stride: 2). Convolution characteristic information f Global (X E ) generated by the convolution operation of the convolution layer 302a may be expressed as Equation 4 below.

[수학식 4]에서 우변의 f()는 제1 활성화 함수, 예를 들어 LReLU(Leaky Rectified Linear Unit) 함수를 의미하며, 우변의 *는 콘볼루션 연산을 의미한다. 또한, W Li, b Li 는 컨볼루션 신경망의 i번 째 층의 가중치와 바이어스를 각각 나타낼 수 있다.In Equation 4, f () on the right side represents a first activation function, for example, a Leaky Rectified Linear Unit (LReLU) function, and * on the right side represents a convolution operation. In addition, W Li and b Li may represent weights and biases of the i th layer of the convolutional neural network, respectively.

생성된 컨볼루션 특징 정보(f Global (X E ))는 하나의 고차원 벡터로 변환된 후 완전 연결 층(306a)으로 전달된다.The generated convolution characteristic information f Global (X E ) is converted into one high-dimensional vector and then transferred to the fully connected layer 306a.

완전 연결 층(306a)은 컨볼루션 층(302a)에서 생성된 컨볼루션 특징 정보에 대해 제2 활성화 함수, 예를 들어 ReLU(Rectified Linear Unit) 함수를 적용하여 선형 은닉 특징 정보를 생성할 수 있으며, 이러한 선형 은닉 특징 정보(X fc )는 다음 [수학식 5]와 같이 표현될 수 있다.The fully connected layer 306a may generate linear concealment feature information by applying a second activation function, for example, a rectified linear unit (ReLU) function, to the convolution feature information generated in the convolution layer 302a. Such linear concealment feature information X fc may be expressed as Equation 5 below.

[수학식 5]에서 우변의 f()는 제2 활성화 함수인 ReLU 함수를 나타내며, W L4, b L4 는 선형 은닉 특징 정보 생성에 필요한 가중치와 바이어스를 각각 나타낸다.In Equation 5, f () on the right side represents a ReLU function, which is a second activation function, and W L4 and b L4 represent weights and biases required for generating linear hidden feature information, respectively.

생성된 선형 은닉 특징 정보(X fc )는 출력 층(310a)으로 전달된다.The generated linear concealment feature information X fc is passed to the output layer 310a.

출력 층(310a)은 완전 연결 층(306a)에서 생성된 선형 은닉 특징 정보에 대해 제3 활성화 함수, 예를 들어 시그모이드(sigmoid) 함수를 적용하여 제1 파라미터를 학습시킨 결과를 출력할 수 있다. 이러한 출력 층(310a)에 의해 출력되는 결과 값(output)은 다음 [수학식 6]과 같이 표현될 수 있다.The output layer 310a may output a result of learning the first parameter by applying a third activation function, for example, a sigmoid function, to the linear concealment feature information generated in the fully connected layer 306a. have. The resulting value is output by this output layer (310a) (output) can be expressed as: [Equation 6].

[수학식 6]에서 우변의 f()는 제3 활성화 함수인 시그모이드 함수를 나타내며, W L5 는 결과 값 연산에 필요한 가중치를 나타낸다. 출력 층(310a)의 연산 과정에는 바이어스는 적용되지 않는다.In Equation 6, f () on the right side represents a sigmoid function, which is a third activation function, and W L5 represents a weight required for calculating a result value. The bias is not applied to the operation of the output layer 310a.

도 3은 도 1의 학습 모델부(300)에서 수행되는 복수 개의 부분 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다. 도 3의 실시예에서, 복수 개의 부분 스펙트로그램은 로컬 특징(local feature)으로 명명될 수 있다.FIG. 3 is a diagram for explaining a convolution operation on a plurality of partial spectrograms performed by the learning model unit 300 of FIG. 1. In the embodiment of FIG. 3, the plurality of partial spectrograms may be named local features .

로컬 특징(local feature)으로 명명되는 복수 개의 부분 스펙트로그램의 입력 특징은 주파수 방향으로 구분된 3개의 스펙트로그램이며, 각각의 구분된 스펙트로그램들은 저 주파수, 저-중 주파수, 중-고 주파수 구간을 포함할 수 있다.The input features of a plurality of partial spectrograms, called local features, are three spectrograms separated in the frequency direction, each of which is divided into a low frequency, a low-medium frequency, and a mid-high frequency interval. It may include.

여기서, 저 주파수, 저-중 주파수, 중-고 주파수의 경우 차례대로 스펙트로그램의 (1~32), (33~64), (65~96) 주파수 빈 구간을 의미할 수 있으며, 본 발명의 실시예에서는 고 주파수 구간을 갖는 스펙트로그램은 고려하지 않았다.Here, in the case of the low frequency, low-medium frequency, middle-high frequency in order can mean the (1 ~ 32), (33 ~ 64), (65 ~ 96) frequency empty interval of the spectrogram, In the examples, spectrograms having a high frequency range are not considered.

각각의 스펙트로그램의 주파수 빈 크기는 매우 작기 때문에(예를 들어, 32 빈), 본 발명의 실시예에서는 입력 스펙트로그램의 크기를 재조정하여 주파수 축 구간을 두 배로 늘려(32, 128 -> 64, 128) 컨볼루션 신경망의 입력 값으로 하였다.Since the frequency bin size of each spectrogram is very small (e.g., 32 bins), the embodiment of the present invention resizes the input spectrogram to double the frequency axis section (32, 128-> 64, 128) It was set as the input value of the convolutional neural network.

도 3에 도시한 바와 같이, 복수 개의 부분 스펙트로그램에 대한 컨볼루션 연산은, 각각의 특정 크기, 예를 들어 각각 64X128의 크기를 갖는 음향 신호의 부분 스펙트로그램에 대해 제2 결과를 예측하고, 이러한 제2 결과를 이용하여 제2 파라미터를 학습하는 제2 컨볼루션 신경망에서 수행될 수 있다.As shown in FIG. 3, the convolution operation on the plurality of partial spectrograms predicts a second result for the partial spectrogram of the acoustic signal of each particular magnitude, for example 64 × 128 each, The second result may be performed in a second convolutional neural network that learns the second parameter.

여기서, 제2 컨볼루션 신경망은, 복수 개의 부분 스펙트로그램에 대해 제1 활성화 함수를 적용하여 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층(302b)과, 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층(304b)과, 글로벌 풀링이 적용된 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층(306b)과, 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 제2 파라미터를 학습시킨 결과를 출력하는 출력 층(310b)을 포함할 수 있다.Here, the second convolutional neural network may include a convolution layer 302b for generating convolution characteristic information for the plurality of partial spectrograms by applying a first activation function to the plurality of partial spectrograms, and the convolution characteristic information. A global pooling layer 304b for applying global pooling to the global pooling layer, a fully connected layer 306b for applying a second activation function to the convolution feature information to which the global pooling is applied to generate linear hidden feature information, and a linear hidden feature information. It may include an output layer 310b for outputting a result of learning the second parameter by applying a third activation function for.

컨볼루션 층(302b)은 복수 개의 부분 스펙트로그램의 각각이 총 3개의 컨볼루션 스트림으로 연결되는 3개의 컨볼루션 층(302b-1, 302b-2, 302b-3)을 포함할 수 있다.Convolution layer 302b may include three convolution layers 302b-1, 302b-2, and 302b-3, each of which is connected to a total of three convolution streams.

3개의 컨볼루션 층(302b-1, 302b-2, 302b-3) 중 제1 컨볼루션 층(302b-1)은, 예를 들어 저 주파수 구간의 제1 부분 스펙트로그램에 대한 컨볼루션 연산을 수행할 수 있다. 이러한 제1 컨볼루션 층(302b-1)은, 예를 들어 3개의 층(C4, C5, C6)을 포함할 수 있으며, 각 층(C4, C5, C6)의 컨볼루션 연산이 끝날 때마다 기 설정된 범위의 창으로 기 설정된 스트라이드 만큼 이동하면서 최대치를 풀링하여 입력된 복수 개의 부분 스펙트로그램의 차원을 축소시킬 수 있다(예를 들어, 창 범위:2X2, 스트라이드:2). 제1 컨볼루션 층(302b-1)의 컨볼루션 연산에 의해 생성되는 제1 부분 컨볼루션 특징 정보(f Local1 (X L ))는 다음 [수학식 7]과 같이 표현될 수 있다.The first convolutional layer 302b-1 of the three convolutional layers 302b-1, 302b-2, 302b-3, for example, performs a convolution operation on the first partial spectrogram of the low frequency interval. can do. This first convolutional layer 302b-1 may include, for example, three layers C4, C5, and C6, each time a convolutional operation of each of the layers C4, C5, and C6 is completed. It is possible to reduce the dimensions of a plurality of partial spectrograms input by pulling the maximum value while moving by a predetermined stride to a window of a predetermined range (for example, window range: 2X2 and stride: 2). The first partial convolution feature information f Local1 (X L ) generated by the convolution operation of the first convolution layer 302b-1 may be expressed as Equation 7 below.

또한, 3개의 컨볼루션 층(302b-1, 302b-2, 302b-3) 중 제2 컨볼루션 층(302b-2)은, 예를 들어 저-중 주파수 구간의 제2 부분 스펙트로그램에 대한 컨볼루션 연산을 수행할 수 있다. 이러한 제2 컨볼루션 층(302b-2)은, 예를 들어 3개의 층(C7, C8, C9)을 포함할 수 있으며, 제1 컨볼루션 층(302b-1)에서와 마찬가지로 각 층 C7, C8, C9)의 컨볼루션 연산이 끝날 때마다 최대 풀링을 수행할 수 있다. 제2 컨볼루션 층(302b-2)의 컨볼루션 연산에 의해 생성되는 제2 부분 컨볼루션 특징 정보(f Local2 (X LM ))는 다음 [수학식 8]과 같이 표현될 수 있다.In addition, the second convolutional layer 302b-2 of the three convolutional layers 302b-1, 302b-2, 302b-3 is, for example, a convolution for the second partial spectrogram of the low-medium frequency interval. You can perform a calculation operation. This second convolutional layer 302b-2 may comprise, for example, three layers C7, C8, C9, and as in the first convolutional layer 302b-1, each layer C7, C8 , Maximum pooling may be performed whenever the convolutional operation of C9) is completed. The second partial convolution feature information f Local2 (X LM ) generated by the convolution operation of the second convolution layer 302b-2 may be expressed as Equation 8 below.

또한, 3개의 컨볼루션 층(302b-1, 302b-2, 302b-3) 중 제3 컨볼루션 층(302b-3)은, 예를 들어 중-고 주파수 구간의 제3 부분 스펙트로그램에 대한 컨볼루션 연산을 수행할 수 있다. 이러한 제3 컨볼루션 층(302b-3)은, 예를 들어 3개의 층(C10, C11, C12)을 포함할 수 있으며, 제1 및 제2 컨볼루션 층(302b-1, 302b-2)에서와 마찬가지로 각 층(C10, C11, C12)의 컨볼루션 연산이 끝날 때마다 최대 풀링을 수행할 수 있다. 제3 컨볼루션 층(302b-3)의 컨볼루션 연산에 의해 생성되는 제3 부분 컨볼루션 특징 정보(f Local3 (X MH ))는 다음 [수학식 9]와 같이 표현될 수 있다.In addition, the third convolutional layer 302b-3 of the three convolutional layers 302b-1, 302b-2, 302b-3 is, for example, a convolution for the third partial spectrogram of the mid-high frequency interval. You can perform a calculation operation. Such third convolutional layer 302b-3 may comprise, for example, three layers C10, C11, C12, in the first and second convolutional layers 302b-1, 302b-2. Similarly, the maximum pooling may be performed at the end of the convolution operation of each layer C10, C11, and C12. The third partial convolution feature information f Local3 (X MH ) generated by the convolution operation of the third convolution layer 302b-3 may be expressed as Equation 9 below.

[수학식 7], [수학식 8] 및 [수학식 9]의 우변의 f()는 제1 활성화 함수, 예를 들어 LReLU 함수를 의미하며, 우변의 *는 콘볼루션 연산을 의미한다. 또한, W LiSj, b LiSj 는 컨볼루션 신경망의 i번 째 층과 j번 째 스트림의 가중치와 바이어스를 각각 나타낼 수 있다. F () on the right side of [Equation 7], [Equation 8] and [Equation 9] means a first activation function, for example, an LReLU function, and * on the right side means a convolution operation. In addition, W LiSj and b LiSj may represent weights and biases of the i th layer and the j th stream of the convolutional neural network, respectively.

생성된 각각의 부분 컨볼루션 특징 정보((f Local1 (X L ), (f Local2 (X LM ), (f Local3 (X MH ))는 각각 하나의 고차원 벡터로 변환된 후 글로벌 풀링 층(304b)으로 전달된다.Each generated partial convolution feature information (( f Local1 (X L ) , ( f Local2 (X LM ) , ( f Local3 (X MH ) )) is converted into a single high-dimensional vector and then the global pooling layer 304b Is passed to.

글로벌 풀링 층(304b)에서는 주변 환경의 음향 신호를 분류할 때 마지막 컨볼루션 층의 출력으로 나오는 각각의 특징 맵들에 글로벌 풀링을 적용한 후 완전 연결 층(306b)의 입력 값으로 줄 수 있다. 다양한 글로벌 풀링 방법 중 본 발명의 실시예에서는, 예를 들어 GAP(Global Average Pooling)와 GMP(Global Max Pooling)를 결합한 글로벌 풀링을 적용할 수 있다. GAP는 강력한 정규화 능력을 가지고 있으며, 각각의 특징 맵의 전체적인 성질을 고려할 수 있다. GMP는 특징 맵에서 에너지 값이 가장 큰 요소를 택하기 때문에 잡음에 강인하며 특징의 강한 지역적인 성질을 얻을 수 있다.The global pooling layer 304b may apply global pooling to respective feature maps output from the output of the last convolutional layer when classifying the acoustic signal of the surrounding environment and then give it as an input value of the fully connected layer 306b. In an embodiment of the present invention among various global pooling methods, for example, global pooling combining a global average pooling (GAP) and a global max pooling (GMP) may be applied. GAP has strong normalization capabilities and can consider the overall nature of each feature map. GMP is robust to noise because it selects the element with the largest energy value in the feature map, and can obtain strong local properties of the feature.

특징 맵 집합을 로 가정하면, 는 i번 째 특징 맵을 의미한다. 각각의 특징 맵들은 h by w 크기를 가지는 2차원 행렬이며, 특징 맵 로 이루어진 집합으로 나타낼 수 있다. 각각의 특징 맵에 글로벌 풀링을 적용하여 생성된 값들의 집합을 로 설정하고, 는 i번 째 특징 맵에 글로벌 풀링을 적용한 결과이므로, i번 째 특징 맵에 GAP 및 GMP를 적용한 결과는 다음 [수학식 10]과 같고, i번 째 특징 맵에 GMP를 적용한 결과는 [수학식 11]과 같다.Feature map set Suppose, Denotes the i th feature map. Each feature map is a two-dimensional matrix of size h by w. Is It can be represented as a set consisting of. A set of values generated by applying global pooling to each feature map Set to, Since is the result of applying the global pooling to the i-th feature map, the result of applying GAP and GMP to the i-th feature map is as shown in [Equation 10], and the result of applying GMP to the i-th feature map is [Equation 10] 11].

따라서, [수학식 7], [수학식 8] 및 [수학식 9]에서 각각 구해진 제1 부분 컨볼루션 특징 정보(f Local1 (X L )), 제2 부분 컨볼루션 특징 정보(f Local2 (X LM )) 및 제3 부분 컨볼루션 특징 정보(f Local3 (X MH )) 각각에 대해 GAP와 GMP를 모두 적용한 결과는 다음 [수학식 12], [수학식 13] 및 [수학식 14]와 같이 표현될 수 있다.Therefore, [Equation 7], [Expression 8] and the first part of the convolution characteristics obtained respectively from the equation (9)] information (f Local1 (X L)) , the second portion convolution feature information (f Local2 (X LM ) ) and the third partial convolution characteristic information ( f Local3 (X MH ) ), respectively, are the result of applying both GAP and GMP as shown in [Equation 12], [Equation 13] and [Equation 14]. Can be expressed.

[수학식 12], [수학식 13] 및 [수학식 14]의 우변의 G()를 의미한다. G () on the right side of [Equation 12], [Equation 13] and [Equation 14] is Means.

글로벌 풀링 층(304b)에 의해 글로벌 풀링이 적용된 컨볼루션 특징 정보는 L2-정규화(normalization)를 거친 후 완전 연결 층(306b)으로 전달된다.Convolution feature information to which global pooling has been applied by the global pooling layer 304b is passed through L2-normalization and then to the fully connected layer 306b.

완전 연결 층(306b)은 컨볼루션 층(302b)에서 생성된 복수 개의 부분 컨볼루션 특징 정보에 대해 제2 활성화 함수, 예를 들어 ReLU 함수를 적용하여 복수 개의 선형 은닉 특징 정보를 생성할 수 있다. 예컨대, 복수 개의 선형 은닉 특징 정보는, 제1 선형 은닉 특징 정보(X LAS1 ), 제2 선형 은닉 특징 정보(X LAS2 ) 및 제3 선형 은닉 특징 정보(X LAS3 )를 포함할 수 있고, 이는 다음 [수학식 15], [수학식 16] 및 [수학식 17]과 같이 표현될 수 있다.The fully connected layer 306b may generate a plurality of linear concealment feature information by applying a second activation function, eg, a ReLU function, to the plurality of partial convolution feature information generated in the convolution layer 302b. For example, the plurality of linear concealment feature information may include first linear concealment feature information ( X LAS1 ), second linear concealment feature information ( X LAS2 ), and third linear concealment feature information ( X LAS3 ). Equation 15, Equation 16 and Equation 17 may be represented.

[수학식 15], [수학식 16] 및 [수학식 17]에서 우변의 f()는 제2 활성화 함수인 ReLU 함수를 나타내며, W LiSj, b LiSj 는 컨볼루션 신경망의 i번 째 층과 j번 째 스트림의 가중치와 바이어스를 각각 나타낼 수 있다.In Equation 15, Equation 16 and Equation 17, the right side f () represents the ReLU function, which is the second activation function, and W LiSj, b LiSj represents the i th layer and j of the convolutional neural network. The weight and the bias of the first stream may be represented, respectively.

생성된 각각의 선형 은닉 특징 정보는 출력 층(310b)으로 전달된다.Each linear concealment feature information generated is passed to output layer 310b.

출력 층(310b)은 완전 연결 층(306b)에서 생성된 선형 은닉 특징 정보에 대해 제3 활성화 함수, 예를 들어 시그모이드 함수를 적용하여 제2 파라미터를 학습시킨 결과를 출력할 수 있다. 이러한 출력 층(310b)에 의해 출력되는 결과 값(output)은 다음 [수학식 18]과 같이 표현될 수 있다.The output layer 310b may output a result of learning a second parameter by applying a third activation function, for example, a sigmoid function, to the linear concealment feature information generated in the fully connected layer 306b. The output layer (310b) the result (output) output by the can be expressed as: [Equation 18].

[수학식 18]에서 우변의 f()는 제3 활성화 함수인 시그모이드 함수를 나타내며, W LiSj, 는 i번 째 층과 j번 째 가중치를 나타낸다. 출력 층(310b)의 연산 과정에는 바이어스는 적용되지 않는다.In Equation 18, f () on the right side represents a sigmoid function which is a third activation function, and W LiSj, denotes the i th layer and the j th weight. The bias is not applied to the operation of the output layer 310b.

이와 같이 출력 층(310b)을 통해 출력되는 각각의 결과 값은 합쳐질 수 있다.As such, the respective result values output through the output layer 310b may be summed.

도 4는 도 1의 학습 모델부(300)에서 수행되는 임의의 음향 신호에 대한 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대한 컨볼루션 연산을 예시적으로 설명하는 도면이다.4 is a diagram exemplarily illustrating a convolution operation on an entire spectrogram and a plurality of partial spectrograms of an arbitrary sound signal performed by the learning model unit 300 of FIG. 1.

도 4에서 임의의 음향 신호에 대한 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대한 컨벌루션 연산은, 도 2에서 결정된 제1 파라미터와 도 3에서 결정된 제2 파라미터를 적용하여 음향 신호를 분류하는 제3 컨벌루션 신경망에서 수행될 수 있다.In FIG. 4, the convolution operation on the entire spectrogram and the plurality of partial spectrograms for an arbitrary sound signal may include a third convolution that classifies the sound signal by applying the first parameter determined in FIG. 2 and the second parameter determined in FIG. 3. May be performed in a neural network.

여기서, 제3 컨볼루션 신경망은, 제1 파라미터와 제2 파라미터를 적용하여 임의의 음향 신호의 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층(302c)과, 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 부분 스펙트로그램에 대한 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층(304c)과, 글로벌 풀링이 적용된 전체 스펙트로그램의 컨볼루션 특징 정보와 부분 스펙트로그램의 컨볼루션 특징 정보에 대해 제1 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층(306c)과, 선형 은닉 특징 정보를 병합한 후 제2 활성화 함수를 적용하는 병합 층(308c)과, 제2 활성화 함수를 적용한 결과에 대해 제3 활성화 함수를 적용하여 음향 신호의 분류 결과를 출력하는 출력 층(310c)을 포함할 수 있다.Here, the third convolutional neural network applies the first parameter and the second parameter to generate a convolution characteristic information for all spectrograms of an arbitrary sound signal and convolution characteristic information for a plurality of partial spectrograms. Layer 302c, global pooling layer 304c that applies global pooling to convolutional feature information for the entire spectrogram and convolutional feature information for the partial spectrogram, and convolution of the entire spectrogram with global pooling The fully connected layer 306c generating linear concealment feature information by applying the first activation function to the convolution feature information of the feature information and the partial spectrogram, and applying the second activation function after merging the linear concealment feature information. Classification of acoustic signals by applying a third activation function to the merged layer 308c and the result of applying the second activation function And an output layer 310c for outputting an output.

컨볼루션 층(302c)은 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해 도 2 및 도 3에서 훈련(학습)된 제1 파라미터와 제2 파라미터를 그대로 컨볼루션 연산에 적용하여 특징 정보를 생성할 수 있다. 각각의 특징 정보는 f global , f local1 , f local2 , f local3 로 표현될 수 있다.The convolution layer 302c may generate feature information by applying the first parameter and the second parameter trained in FIG. 2 and FIG. 3 to the convolution operation for the entire spectrogram and the plurality of partial spectrograms. have. Each feature information may be represented by f global , f local1 , f local2 , and f local3 .

이들 특징 정보는 모두 이어 붙여 하나의 깊은 특징 정보로 생성될 수 있으며, 생성된 깊은 특징 정보는 음향 신호의 전체적인 특성과 부분적인 특성을 모두 고려하여 다음 [수학식 19]와 같이 표현될 수 있다.These feature information may be connected to each other to be generated as one deep feature information, and the generated deep feature information may be represented by Equation 19 in consideration of both the overall characteristics and the partial characteristics of the acoustic signal.

생성된 깊은 특징 정보는 글로벌 풀링 층(304c)에 전달될 수 있으며, 글로벌 풀링 층(304c)에서는 특징 맵들에 대한 글로벌 풀링을 적용하고 L2- 정규화를 거친 후 완전 연결 층(306c)으로 전달될 수 있다.The generated deep feature information may be delivered to the global pooling layer 304c, which may be delivered to the fully connected layer 306c after applying global pooling to the feature maps, undergoing L2-normalization, and the like. have.

완전 연결 층(306c)은 생성된 깊은 특징 정보에 대해 제1 활성화 함수, 예를 들어 ReLU 함수를 적용하여 전체 특징과 복수 개의 부분 특징을 갖는 선형 은닉 특징 정보를 생성할 수 있으며, 이는 다음 [수학식 20]과 같이 표현될 수 있다.The fully connected layer 306c may apply a first activation function, eg, a ReLU function, to the generated deep feature information to generate linear concealment feature information having a full feature and a plurality of partial features, as Equation 20] can be expressed as

[수학식 20]에서 우변의 f()는 제1 활성화 함수인 ReLU 함수를 나타내며, W total, b total 는 완전 연결 층(306c)의 가중치와 바이어스를 각각 나타낼 수 있다.In Equation 20, f () on the right side represents a ReLU function, which is a first activation function, and W total and b total may represent weights and biases of the fully connected layer 306c, respectively.

생성된 각각의 선형 은닉 특징 정보는 병합 층(308c)으로 전달될 수 있으며, 병합 층(306c)에서는 완전 연결 층(306c)에서 나온 각각의 결과 값을 이어 붙여 전체적인 특징 정보와 부분적인 특징 정보를 모두 갖는 통합된 특징 정보를 생성할 수 있다. 병합 층(308c)에서 선형 은닉 특징 정보를 병합할 때 제2 활성화 함수, 예를 들어 ReLU 함수가 적용될 수 있다.Each of the generated linear hidden feature information may be transferred to the merging layer 308c. In the merging layer 306c, the respective characteristic values from the fully connected layer 306c are concatenated to combine the overall characteristic information and the partial characteristic information. It is possible to generate integrated feature information having all. A second activation function, for example a ReLU function, may be applied when merging the linear concealment feature information in the merging layer 308c.

병합 층(308c)에서 제2 활성화 함수가 적용된 결과 값은 출력 층(310c)으로 전달될 수 있다.The resulting value to which the second activation function is applied in the merge layer 308c may be transferred to the output layer 310c.

출력 층(310c)은 병합 층(308c)으로 전달된 결과 값에 대해 제3 활성화 함수, 예를 들어 시그모이드 함수를 적용하여 음향 신호의 분류 결과를 출력할 수 있다. 이러한 출력 층(310c)에 의해 출력되는 결과 값(output)은 다음 [수학식 21]과 같이 표현될 수 있다.The output layer 310c may output a classification result of the acoustic signal by applying a third activation function, for example, a sigmoid function, to the result value transferred to the merging layer 308c. The result (output) to be output by this output layer (310c) may be expressed as: [Equation 21].

[수학식 21]에서 우변의 f()는 제3 활성화 함수인 시그모이드 함수를 나타내며, W final 는 가중치를 나타낸다. 출력 층(310c)의 연산 과정에는 바이어스는 적용되지 않는다.In Equation 21, f () on the right side represents a sigmoid function, which is a third activation function, and W final represents a weight. The bias is not applied to the operation of the output layer 310c.

한편, 각각의 심화 신경망들을 최적화하기 위해 사용한 비용 함수는 다음 [수학식 22]와 같이 표현될 수 있다.On the other hand, the cost function used to optimize each deep neural network can be expressed as shown in Equation 22 below.

복수 개의 부분 특징 정보를 생성하는 제2 컨볼루션 신경망의 경우, 각각의 스트림의 출력 값들의 합을 손실 함수로 두었다. [수학식 22]에서, f()는 예측된 결과와 실제 라벨의 크로스-엔트로피(cross-entropy)를 의미한다.In the case of the second convolutional neural network generating a plurality of partial feature information, the sum of the output values of each stream is set as a loss function. In Equation 22, f () means the cross-entropy of the predicted result and the actual label.

도 5는 전형적인 단일 스트림 컨볼루션 연산에 의한 음향 신호 분류 결과와, 본 발명의 실시예에 따른 멀티 스트림 컨볼루션 연산에 의한 음향 신호 분류 결과를 수치적으로 비교한 도면이다.FIG. 5 is a numerical comparison of sound signal classification results by a typical single stream convolution operation and sound signal classification results by a multi-stream convolution operation according to an embodiment of the present invention.

각각의 사운드 클립(sound clip)의 평가를 위하여 실험에 사용한 데이터 세트는 “Urban Sound8K dataset”으로 총 8,732개의 사운드 클립이 들어있고, 총 10가지 종류의 환경 음향으로 구성되어 있다: “Air conditional”, “Car horn”, “Children playing”, “Dog bark”, “Drilling”, “Engine idling”, “Gun shot”, “Jackhammer”, “Siren”, “Street music”.The data set used in the experiment for the evaluation of each sound clip is the “Urban Sound8K dataset”, which contains a total of 8,732 sound clips and consists of a total of 10 types of environmental sounds: “Air conditional”, “Car horn”, “Children playing”, “Dog bark”, “Drilling”, “Engine idling”, “Gun shot”, “Jackhammer”, “Siren”, “Street music”.

각각의 사운드 클립들은 모두 4초 미만의 시간 길이를 가지며, 실제 도시 환경에서 발생되었던 환경 음향들을 녹음하여 생성되었다. 평가를 위한 방법으로는 “probability voting“ 방법을 적용하였다. 해당 방법은 사운드 클립을 일정한 크기로 쪼갠 후 각각의 쪼갠 조각들의 결과들에 평균을 취한 결과를 해당 사운드 클립의 추측 값이라고 평가하는 방식이다. 본 발명의 실시예에서 제한된 기술로 환경 음향을 분류한 결과 10가지 환경 음향 인식 결과의 평균이 83%가 나와서 73%가 나온(데이터 증폭 기술 적용 79%) 종래기술보다 더 좋은 분류 성능을 보여주고 있다.Each sound clip has a time length of less than 4 seconds and was created by recording environmental sounds that occurred in a real urban environment. As a method for evaluation, the “probability voting” method was applied. This method splits a sound clip into a certain size and averages the results of each of the pieces to evaluate the estimated sound clip. In the embodiment of the present invention, the classification of the environmental acoustics with the limited technology shows that the average of the 10 environmental acoustic recognition results is 83%, which is 73% (79% with the data amplification technology), which shows better classification performance than the prior art. have.

도 6은 본 발명의 실시예에 따른 멀티 스트림 컨볼루션 연산에 의한 혼동 행렬(confusion matrix)을 예시한 도면이다. 도 6의 혼동 행렬에서 가로 축은 출력 값을, 세로 축은 정답을 각각 의미한다.6 is a diagram illustrating a confusion matrix by a multi-stream convolution operation according to an embodiment of the present invention. In the confusion matrix of FIG. 6, the horizontal axis represents an output value and the vertical axis represents an answer.

이상 설명한 바와 같은 본 발명의 실시예에 의하면, 음향 신호의 전체 스펙트로그램을 생성하고, 전체 스펙트로그램의 소정의 주파수 구간을 포함하는 복수 개의 부분 스펙트로그램을 생성하며, 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해 멀티 스트림 컨볼루션 신경망을 적용하여 음향 신호를 분류함으로써, 음향 신호 분류 정확도를 높일 수 있으며, 전체 스펙트로그램과 부분 스펙트로그램의 컨볼루션 심화 학습 결과에 대해 글로벌 풀링을 적용함으로써, 심화 신경망에서의 연산량과 과적합을 줄이도록 구현하였다.According to an embodiment of the present invention as described above, a full spectrogram of an acoustic signal is generated, a plurality of partial spectrograms including a predetermined frequency section of the entire spectrogram are generated, and a full spectrogram and a plurality of partial spectrograms are generated. By classifying acoustic signals by applying multi-stream convolutional neural networks to grams, acoustic signal classification accuracy can be improved, and global pooling can be applied to deeper convolution deep learning results of whole spectrograms and partial spectrograms. Implemented to reduce the amount of computation and overfit of.

한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록에서 설명된 기능들을 수행하는 수단을 생성하게 된다.On the other hand, the combination of each block in the accompanying block diagram and each step in the flowchart may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions executed by the processor of the computer or other programmable data processing equipment are described in each block of the block diagram. It creates a means to perform the functions.

이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리) 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리)에 저장된 인스트럭션들은 블록도의 각 블록에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.These computer program instructions may be stored on a computer usable or computer readable recording medium (or memory) or the like that may be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, thereby making the computer available. Alternatively, instructions stored on a computer readable recording medium (or memory) may produce an article of manufacture containing instruction means for performing the functions described in each block of the block diagram.

그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.In addition, computer program instructions may be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to generate a computer or other program. Instructions that perform possible data processing equipment may also provide steps for performing the functions described in each block of the block diagram.

또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block may represent a portion of a module, segment, or code that includes at least one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions noted in the blocks may occur out of order. For example, the two blocks shown in succession may in fact be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending on the corresponding function.

10: 음향 신호 분류 장치
100: 전처리부
200: 스펙트로그램 분류부
300: 학습 모델부
302a, 302b, 302c: 컨볼루션 층
304b, 304c: 글로벌 풀링 층
306a, 306b, 306c: 완전 연결(Fully Connected) 층
308c: 병합 층
310a, 310b, 310c: 출력 층
400: 음향 분류부
10: acoustic signal classification device
100: pretreatment unit
200: spectrogram classification
300: learning model
302a, 302b, 302c: convolutional layer
304b, 304c: global pooling layer
306a, 306b, 306c: Fully Connected Layer
308c: merge layer
310a, 310b, 310c: output layer
400: sound classification unit

Claims (17)

멀티 스트림 컨볼루션 신경망(Convolution Neural Network)을 이용하여 음향 신호를 분류하는 방법으로서,
음향 신호의 전체 스펙트로그램(spectrogram)을 생성하는 단계와,
상기 전체 스펙트로그램으로부터 복수 개의 부분 스펙트로그램을 생성하는 단계 - 상기 부분 스펙트로그램의 각각은 상기 전체 스펙트로그램의 소정의 주파수 구간을 포함함 - 와,
상기 전체 스펙트로그램에 대한 제1 컨볼루션 신경망에서 수행되는 컨볼루션 연산에 사용되는 제1 파라미터와, 상기 복수 개의 부분 스펙트로그램에 대한 제2 컨볼루션 신경망에서 수행되는 컨볼루션 연산에 사용되는 제2 파라미터를 결정하는 단계를 포함하고,
상기 결정하는 단계는,
상기 음향 신호의 전체 스펙트로그램에 대해 상기 제1 컨볼루션 신경망을 이용하여 제 1 결과를 예측하는 단계와,
상기 음향 신호의 복수 개의 부분 스펙트로그램에 대해, 상기 제2 컨볼루션 신경망을 이용하여 제2 결과를 예측하는 단계와,
상기 제1 결과를 이용하여 상기 제1 파라미터를 학습하고, 상기 제2 결과를 이용하여 상기 제2 파라미터를 학습하는 단계를 포함하는
음향 신호 분류 방법.
A method of classifying acoustic signals using a multi-stream convolution neural network,
Generating a full spectrogram of the acoustic signal,
Generating a plurality of partial spectrograms from the full spectrogram, each of the partial spectrograms comprising a predetermined frequency interval of the full spectrogram;
A first parameter used for a convolution operation performed on the first convolution neural network for the entire spectrogram, and a second parameter used for a convolution operation performed on a second convolution neural network for the plurality of partial spectrograms Determining,
The determining step,
Predicting a first result using the first convolutional neural network for the entire spectrogram of the acoustic signal;
Predicting, for the plurality of partial spectrograms of the acoustic signal, a second result using the second convolutional neural network;
Learning the first parameter using the first result, and learning the second parameter using the second result.
Sound signal classification method.
삭제delete 제 1 항에 있어서,
상기 복수 개의 부분 스펙트로그램에 대한 상기 제2 컨볼루션 신경망에서의 컨볼루션 연산에 의해 생성되는 특징 정보에 대해 글로벌 풀링(global pooling)이 적용되는
음향 신호 분류 방법.
The method of claim 1,
Global pooling is applied to feature information generated by a convolution operation in the second convolutional neural network for the plurality of partial spectrograms.
Sound signal classification method.
제 3 항에 있어서,
상기 적용되는 글로벌 풀링은 GAP(Global Average Pooling)와 GMP(Global Max Pooling)인
음향 신호 분류 방법.
The method of claim 3, wherein
The applied global pooling is Global Average Pooling (GAP) and Global Max Pooling (GMP).
Sound signal classification method.
제 1 항에 있어서,
임의의 음향 신호의 상기 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해, 상기 제1 파라미터와 상기 제2 파라미터를 상기 멀티 스트림 컨볼루션 신경망에 적용하여 상기 음향 신호를 분류하는 단계를 더 포함하는
음향 신호 분류 방법.
The method of claim 1,
Classifying the sound signal by applying the first parameter and the second parameter to the multi-stream convolutional neural network for the full spectrogram and the plurality of partial spectrograms of an arbitrary sound signal.
Sound signal classification method.
제 5 항에 있어서,
상기 음향 신호를 분류하는 단계는,
상기 전체 스펙트로그램에 대해 컨볼루션 연산을 수행하여, 상기 전체 스펙트로그램에 대한 특징 정보를 생성하는 단계와,
상기 복수 개의 부분 스펙트로그램에 대해 컨볼루션 연산을 수행하여, 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보를 생성하는 단계와,
상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보에 대해 제1 활성화 함수를 적용하는 단계와,
상기 제1 활성화 함수가 적용된 상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보를 병합한 후 제2 활성화 함수를 적용하는 단계와,
상기 제2 활성화 함수를 적용한 결과에 대해 제3 활성화 함수를 적용하여 상기 음향 신호를 분류하는 단계를 포함하는
음향 신호 분류 방법.
The method of claim 5,
Classifying the sound signal,
Generating feature information on the entire spectrogram by performing a convolution operation on the entire spectrogram;
Generating feature information on the plurality of partial spectrograms by performing a convolution operation on the plurality of partial spectrograms;
Applying a first activation function to the feature information for the entire spectrogram and the feature information for the plurality of partial spectrograms;
Applying a second activation function after merging feature information on the entire spectrogram to which the first activation function is applied and feature information on the plurality of partial spectrograms;
Classifying the sound signal by applying a third activation function to a result of applying the second activation function;
Sound signal classification method.
제 6 항에 있어서,
상기 전체 스펙트로그램에 대한 특징 정보와 상기 복수 개의 부분 스펙트로그램에 대한 특징 정보에 대해 글로벌 풀링(global pooling)이 적용되는
음향 신호 분류 방법.
The method of claim 6,
Global pooling is applied to the feature information on the entire spectrogram and the feature information on the plurality of partial spectrograms.
Sound signal classification method.
제 6 항에 있어서,
상기 제1 활성화 함수 및 상기 제2 활성화 함수는 ReLU(Rectified Linear Unit) 함수이며, 상기 제3 활성화 함수는 시그모이드(sigmoid) 함수인
음향 신호 분류 방법.
The method of claim 6,
The first activation function and the second activation function are ReLU (Reectified Linear Unit) functions, and the third activation function is a sigmoid function.
Sound signal classification method.
제 1 항에 있어서,
상기 전체 스펙트로그램의 주파수 빈(frequency bin)의 크기를 확장한 후 상기 복수 개의 부분 스펙트로그램을 생성하는 단계를 더 포함하는
음향 신호 분류 방법.
The method of claim 1,
Generating the plurality of partial spectrograms after expanding the size of frequency bins of the entire spectrograms;
Sound signal classification method.
멀티 스트림 컨볼루션 신경망을 이용하여 음향 신호를 분류하는 시스템으로서,
음향 신호의 전체 스펙트로그램을 생성하는 전처리부와,
상기 전체 스펙트로그램으로부터 복수 개의 부분 스펙트로그램을 생성하는 스펙트로그램 분류부 - 상기 부분 스펙트로그램의 각각은 상기 전체 스펙트로그램의 소정의 주파수 구간을 포함함 - 와,
상기 전체 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제1 파라미터와, 상기 복수 개의 부분 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제2 파라미터를 결정하는 학습 모델부를 포함하고,
상기 학습 모델부는,
상기 음향 신호의 전체 스펙트로그램에 대해 제1 결과를 예측하고, 상기 제1 결과를 이용하여 제1 파라미터를 학습하는 제1 컨볼루션 신경망과,
상기 음향 신호의 복수 개의 부분 스펙트로그램에 대해 제2 결과를 예측하고, 상기 제2 결과를 이용하여 제2 파라미터를 학습하는 제2 컨볼루션 신경망과,
임의의 음향 신호의 전체 스펙트로그램과 복수 개의 부분 스펙트로그램에 대해, 상기 제1 파라미터와 상기 제2 파라미터를 상기 멀티 스트림 컨볼루션 신경망에 적용하여 상기 음향 신호를 분류하는 제3 컨볼루션 신경망을 포함하는
음향 신호를 분류하는 시스템.
A system for classifying acoustic signals using a multi-stream convolutional neural network,
A preprocessor for generating a full spectrogram of the acoustic signal,
A spectrogram classifier for generating a plurality of partial spectrograms from the full spectrogram, each of the partial spectrograms comprising a predetermined frequency interval of the full spectrogram;
A learning model unit for determining a first parameter used in a convolution operation performed on the entire spectrogram and a second parameter used in a convolution operation performed on the plurality of partial spectrograms,
The learning model unit,
A first convolutional neural network predicting a first result with respect to the entire spectrogram of the acoustic signal, and learning a first parameter using the first result;
A second convolutional neural network for predicting a second result with respect to the plurality of partial spectrograms of the acoustic signal and learning a second parameter using the second result;
A third convolutional neural network for classifying the acoustic signal by applying the first parameter and the second parameter to the multi-stream convolutional neural network for all spectrograms and a plurality of partial spectrograms of an arbitrary acoustic signal;
System for classifying acoustic signals.
삭제delete 제 10 항에 있어서,
상기 제1 컨볼루션 신경망은,
상기 전체 스펙트로그램에 대해 제1 활성화 함수를 적용하여 상기 전체 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과,
상기 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과,
상기 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 상기 제1 파라미터를 학습시킨 결과를 출력하는 출력 층을 포함하는
음향 신호를 분류하는 시스템.
The method of claim 10,
The first convolutional neural network,
A convolution layer for generating convolution characteristic information for the entire spectrogram by applying a first activation function to the entire spectrogram;
A fully connected layer generating linear concealment feature information by applying a second activation function to the convolution feature information;
An output layer for outputting a result of learning the first parameter by applying a third activation function to the linear concealment feature information;
System for classifying acoustic signals.
제 10 항에 있어서,
상기 제2 컨볼루션 신경망은,
상기 복수 개의 부분 스펙트로그램에 대해 제1 활성화 함수를 적용하여 상기 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과,
상기 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층과,
상기 글로벌 풀링이 적용된 컨볼루션 특징 정보에 대해 제2 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과,
상기 선형 은닉 특징 정보에 대해 제3 활성화 함수를 적용하여 상기 제2 파라미터를 학습시킨 결과를 출력하는 출력 층을 포함하는
음향 신호를 분류하는 시스템.
The method of claim 10,
The second convolutional neural network,
A convolution layer for generating convolution characteristic information for the plurality of partial spectrograms by applying a first activation function to the plurality of partial spectrograms;
A global pooling layer applying global pooling to the convolutional feature information;
A fully connected layer generating linear concealment feature information by applying a second activation function to the convolution feature information to which the global pooling is applied;
And an output layer for outputting a result of learning the second parameter by applying a third activation function to the linear concealment feature information.
System for classifying acoustic signals.
제 12 항 또는 제 13 항에 있어서,
상기 제1 활성화 함수는 LReLU(Leaky Rectified Linear Unit) 함수이고, 상기 제2 활성화 함수는 ReLU(Rectified Linear Unit) 함수이며, 상기 제3 활성화 함수는 시그모이드(sigmoid) 함수인
음향 신호를 분류하는 시스템.
The method according to claim 12 or 13,
The first activation function is a leaky linear linear unit (LReLU) function, the second activation function is a rectified linear unit (ReLU) function, and the third activation function is a sigmoid function.
System for classifying acoustic signals.
제 10 항에 있어서,
상기 제3 컨볼루션 신경망은,
상기 제1 파라미터와 상기 제2 파라미터를 적용하여 임의의 음향 신호의 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 복수 개의 부분 스펙트로그램에 대한 컨볼루션 특징 정보를 생성하는 컨볼루션 층과,
상기 전체 스펙트로그램에 대한 컨볼루션 특징 정보와 상기 부분 스펙트로그램에 대한 컨볼루션 특징 정보에 대해 글로벌 풀링을 적용하는 글로벌 풀링 층과,
상기 글로벌 풀링이 적용된 상기 전체 스펙트로그램의 컨볼루션 특징 정보와 상기 부분 스펙트로그램의 컨볼루션 특징 정보에 대해 제1 활성화 함수를 적용하여 선형 은닉 특징 정보를 생성하는 완전 연결 층과,
상기 선형 은닉 특징 정보를 병합한 후 제2 활성화 함수를 적용하는 병합 층과,
상기 제2 활성화 함수를 적용한 결과에 대해 제3 활성화 함수를 적용하여 상기 음향 신호의 분류 결과를 출력하는 출력 층을 포함하는
음향 신호를 분류하는 시스템.
The method of claim 10,
The third convolutional neural network,
A convolution layer applying the first parameter and the second parameter to generate convolution feature information for the entire spectrogram of an arbitrary sound signal and convolution feature information for the plurality of partial spectrograms;
A global pooling layer applying global pooling to the convolution feature information for the entire spectrogram and the convolution feature information for the partial spectrogram;
A fully connected layer generating linear concealment feature information by applying a first activation function to the convolution feature information of the entire spectrogram to which the global pooling is applied and the convolution feature information of the partial spectrogram;
A merging layer for applying a second activation function after merging the linear hidden feature information;
And an output layer configured to apply a third activation function to a result of applying the second activation function to output a classification result of the acoustic signal.
System for classifying acoustic signals.
제 15 항에 있어서,
상기 제1 활성화 함수 및 상기 제2 활성화 함수는 ReLU(Rectified Linear Unit) 함수이며, 상기 제3 활성화 함수는 시그모이드(sigmoid) 함수인
음향 신호를 분류하는 시스템.
The method of claim 15,
The first activation function and the second activation function are ReLU (Reectified Linear Unit) functions, and the third activation function is a sigmoid function.
System for classifying acoustic signals.
음향 신호의 전체 스펙트로그램을 생성하는 단계와,
상기 전체 스펙트로그램으로부터 복수 개의 부분 스펙트로그램을 생성하는 단계 - 상기 부분 스펙트로그램의 각각은 상기 전체 스펙트로그램의 소정의 주파수 구간을 포함함 - 와,
상기 전체 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제1 파라미터와, 상기 복수 개의 부분 스펙트로그램에 대해 수행되는 컨볼루션 연산에 사용되는 제2 파라미터를 결정하는 단계 - 상기 결정하는 단계는, 상기 음향 신호의 전체 스펙트로그램에 대해 제1 컨볼루션 신경망을 이용하여 제 1 결과를 예측하는 단계와, 상기 음향 신호의 복수 개의 부분 스펙트로그램에 대해, 제2 컨볼루션 신경망을 이용하여 제2 결과를 예측하는 단계와, 상기 제1 결과를 이용하여 상기 제1 파라미터를 학습하고, 상기 제2 결과를 이용하여 상기 제2 파라미터를 학습하는 단계를 포함함 - 를 수행하는 명령어를 포함하는 프로그램이 기록된
컴퓨터 판독 가능 기록 매체.
Generating a full spectrogram of the acoustic signal,
Generating a plurality of partial spectrograms from the full spectrogram, each of the partial spectrograms comprising a predetermined frequency interval of the full spectrogram;
Determining a first parameter used in a convolution operation performed on the entire spectrogram and a second parameter used in a convolution operation performed on the plurality of partial spectrograms, wherein the determining comprises: Predicting a first result using a first convolutional neural network for the entire spectrogram of the acoustic signal, and predicting a second result using a second convolutional neural network for the plurality of partial spectrograms of the acoustic signal And learning the first parameter using the first result, and learning the second parameter using the second result.
Computer-readable recording media.
KR1020180054039A 2018-05-11 2018-05-11 Method for classifying sounds and system therefor KR102018346B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180054039A KR102018346B1 (en) 2018-05-11 2018-05-11 Method for classifying sounds and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180054039A KR102018346B1 (en) 2018-05-11 2018-05-11 Method for classifying sounds and system therefor

Publications (1)

Publication Number Publication Date
KR102018346B1 true KR102018346B1 (en) 2019-10-14

Family

ID=68171749

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180054039A KR102018346B1 (en) 2018-05-11 2018-05-11 Method for classifying sounds and system therefor

Country Status (1)

Country Link
KR (1) KR102018346B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116066A (en) 2020-03-17 2021-09-27 성균관대학교산학협력단 A method for inferring of generating direction of sound using deep network and an apparatus for the same
WO2022250493A1 (en) * 2021-05-27 2022-12-01 이충열 Method by which computing apparatus processes sound, method for processing image and sound, and systems using same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101749254B1 (en) 2015-12-21 2017-06-20 서울대학교산학협력단 Deep learning based integrated acoustic sound cognition system
KR20170106445A (en) * 2015-11-25 2017-09-20 바이두 유에스에이 엘엘씨 Placed end-to-end speech recognition

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170106445A (en) * 2015-11-25 2017-09-20 바이두 유에스에이 엘엘씨 Placed end-to-end speech recognition
KR101749254B1 (en) 2015-12-21 2017-06-20 서울대학교산학협력단 Deep learning based integrated acoustic sound cognition system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210116066A (en) 2020-03-17 2021-09-27 성균관대학교산학협력단 A method for inferring of generating direction of sound using deep network and an apparatus for the same
WO2022250493A1 (en) * 2021-05-27 2022-12-01 이충열 Method by which computing apparatus processes sound, method for processing image and sound, and systems using same

Similar Documents

Publication Publication Date Title
Espi et al. Exploiting spectro-temporal locality in deep learning based acoustic event detection
Bahmei et al. CNN-RNN and data augmentation using deep convolutional generative adversarial network for environmental sound classification
Ye et al. Urban sound event classification based on local and global features aggregation
KR101807948B1 (en) Ensemble of Jointly Trained Deep Neural Network-based Acoustic Models for Reverberant Speech Recognition and Method for Recognizing Speech using the same
Khochare et al. A deep learning framework for audio deepfake detection
Akbal An automated environmental sound classification methods based on statistical and textural feature
KR102018346B1 (en) Method for classifying sounds and system therefor
Vivek et al. Acoustic scene classification in hearing aid using deep learning
Bhattacharya et al. Deep classification of sound: A concise review
Esmaeilpour et al. From environmental sound representation to robustness of 2D CNN models against adversarial attacks
Benetos et al. Approaches to complex sound scene analysis
Ramirez et al. A siren identification system using deep learning to aid hearing-impaired people
Aslam et al. Acoustic classification using deep learning
Qais et al. Deepfake audio detection with neural networks using audio features
Prasomphan et al. Detecting human emotions in a large size of database by using ensemble classification model
Tarek et al. Hierarchical speech recognition system using MFCC feature extraction and dynamic spiking RSOM
Lu et al. Deep progressive multi-scale attention for acoustic event classification
Liu et al. Model selection for deep audio source separation via clustering analysis
Agarwal et al. Urban sound classification using machine learning and neural networks
Malcangi et al. Evolving connectionist method for adaptive audiovisual speech recognition
Karthik et al. Performance Analysis of Acoustic Scene Classification Using ANN and CNN Techniques
Gupta et al. An exploration of acoustic and temporal features for the multiclass classification of bird species
Riviello Binary neural networks for keyword spotting tasks
Bansal et al. Urban sound classification using adaboost
Lu et al. Cross-scale attention model for acoustic event classification

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant