KWS (Keyword Recognition)는 스마트 장치에서 음성 기반 사용자 상호 작용을 실현하는 데 중요하며, 빠른 사용자 반응을 보장하기 위해 실시간 응답 성과 높은 정확성이 필요합니다. 최근에는 신경 네트워크가 KWS 아키텍처에서 인기있는 선택이되었습니다. 음성 처리 알고리즘과 비교하여 신경망의 정확도가 우수합니다.
키워드 식별 신경망 파이프 라인
KWS 응용 프로그램은 "always on"으로 인해 전력 예산이 매우 제한적입니다. KWS 응용 프로그램은 전용 DSP 또는 고성능 CPU에서도 실행될 수 있지만 Arm Cortex-M 마이크로 컨트롤러에서 작동하는 데 더 적합하며 유용합니다 비용을 최소화하기 위해 Arm Cortex-M 마이크로 콘트롤러는 인터넷 작업의 가장 중요한 부분에서 종종 다른 작업을 위해 사용됩니다.
코어 텍스 M 시스템의 1. 제한된 메모리 공간 전형적인 이것이 의미하는 사용 가능한 메모리의 몇 백킬로바이트까지 제공하지만, KWS의 코어 텍스 M 기반의 신경 네트워크를 기반으로 마이크로 컨트롤러에 배포하기 위해, 우리는 다음과 같은 문제에 직면하고 있습니다. 입 / 출력, 중량 및 활성화를 포함하는 전체 뉴럴 네트워크 모델은, 메모리의 작은 범위 내에서 동작한다. (2) 제한된 컴퓨팅 자원 인해 KWS마다 신경 제한 상시 실시간 요건을 유지 네트워크 동작의 총 개수는 다음 추론 전형적인 뉴럴 네트워크 아키텍처 KWS 유추 적용이다 신경망 활성층과 비선형 • 볼륨에서 층 전체 스택에 접속 (DNN) DNN 표준 피드 포워드 신경망의 깊이 •. CNN DNN 기반 KWS의 주요 단점 중 하나는 음성 기능에서 로컬, 시간 및 주파수 도메인 상관 관계를 모델링 할 수 없다는 점입니다 .CNN은 입력 시간 및 주파수 도메인 기능을 모델링합니다 이 상관 관계를 찾기 위해 이미지 처리 및 2D 컨볼 루션 작업 수행 • RNN (Circular Neural Network) RNN은 많은 시퀀스 모델링 작업에서 우수한 성능을 보였습니다 또한 관계의 길이에 따라 캡처 '게이팅'메커니즘을 사용하여 입력 신호 사이의 시간적 관계를 찾을 특히 음성 인식, 언어 모델링 및 변환 에너지. RNN 할뿐만 아닙니다. • 회선 재발 성 신경 네트워크 ( CRNN)는 하이브리드 콘벌 루션 신경망 CNN 사이클이고 RNN 로컬 / 공간적 상관 관계에서 찾을 수있다. CRNN는 컨벌루션 모형 층부터, RNN 따라 완전히 연결된 조밀 층 뒤에 신호를 인코딩한다. • 깊이 분리 회선 신경 네트워크 (DS-현지 시간) 최근, 분리 회선 신경 네트워크의 깊이는 표준 차원 컨볼 루션 연산에 효과적인 대안으로 추천하고, 컴퓨터 비전 컴팩트 네트워크 아키텍처를 사용하고있다. DS-CNN 처음 사용 독립 2D 필터도 채널 컨볼 루션 연산의 각 기능을 입력하고는 1D 후속으로 분해되어, 표준 2D 및 3D 컨벌루션하여 합성 깊이 치수를 출력한다 (즉 1x1-) 포인트 - 방식 회선을 사용 , 매개 변수 및 연산의 수를 줄임으로써 리소스가 제한된 마이크로 컨트롤러 장치에서도 더욱 깊고 광범위한 아키텍처를 가능하게합니다 .Cortex-M 프로세서에서 실행 중지 단어 인식, 메모리 사용 및 실행 시간이이 목적을 위해 설계와 신경망의 최적화에 가장 중요한 두 가지 요인이있는 경우, 당신은이 두 가지 요소는 다음과 같이 작은위한 세 그룹의 신경망을 제한 고려해야한다 , 중형 및 대형 Cortex-M 시스템을 지원합니다.
메모리 및 컴퓨팅 마이크로 컨트롤러의 한계를 초과하지 않도록 상기 모델을 조정하기 위하여, 탐색은 변수를 통해 수행되어야한다. 다음의 표는 뉴럴 네트워크 구조를 도시하고, 대응하는 파라미터를 통해 최적화되어야한다.
먼저, 하이퍼 파라미터의 철저한 검색 피쳐 추출 및 신경망 모델을 수행하고 검색 공간 모두 반복하여 실행을 좁힐 수동 선택을 수행한다. 다음도 최적의 성능 모델에 대한 각각의 뉴럴 네트워크 아키텍처와 대응하는 메모리 사용할 요약 요구 사항 및 작업. DS-CNN 아키텍처는 가장 높은 정확성을 제공뿐만 아니라 메모리와 컴퓨팅 자원은 훨씬 낮다.
8 중량 DNN 모델 8 활성화 함유 (아래로)을 기반으로 STM32F746G-DISCO 개발 보드에 배치 KWS 텍스 M7 애플리케이션은 KWS 추론의 동작 동안 초당 10 회 실행된다. 추론 당 ( 메모리 복사 포함 된 MFCC 인터럽트 대기하는 마이크로 컨트롤러의 나머지를 허용 전력을 절약하기 위해 대략 12 밀리 초가 소요)를 DNN 수행 추출 기능은 (WFI) 모드. KWS 전체 애플리케이션 약 66킬로바이트로부터 포함한 메모리 약 70 킬로바이트 사용 정품 인증에는 약 1KB, 오디오 I / O 및 MFCC 기능에는 약 2KB입니다.
결론적으로 Arm Cortex-M 프로세서는 네트워크 아키텍처를 조정하여 메모리 및 계산 요구 사항을 제한하면서 키워드 인식 애플리케이션에서 높은 정확성을 달성합니다. DS-CNN 아키텍처는 필요한 최고 수준의 정확도와 메모리 및 계산 리소스를 제공합니다 훨씬 낮은. 코드, 모델 정의 및 사전 교육 모델은 github.com/ARM-software에서 얻을 수 있습니다. 우리의 새로운 기계 학습 개발자 사이트는 네트워크 에지 기계와 거래를하기 위해 원 스톱 리소스 라이브러리, 자세한 제품 정보 및 자습서를 제공합니다 이 블로그는 원래 코넬 대학 도서관 웹 사이트에 게시 된 백서 인 "Hello Edge : 마이크로 컨트롤러에서의 키워드 검색"을 기반으로합니다. 백서의 사본은 아래 링크를 클릭하십시오. https://community.arm.com/cfs-file/__key/telligent-evolution-components-attachments/01-2142-00-00-00-01-34-26/Arm_5F00_KeywordSpotting_5F00_Whitepaper을. pdf