실시간 통신에서의 AI 소음 저감 기술에 대해 이야기해보겠습니다.
Part 01 Overview
실시간 오디오 및 비디오 통신 시나리오에서 마이크는 사용자의 음성을 수집할 때 대량의 환경 소음도 수집합니다. 안정적인 소음(예: 팬 바람, 흰색 배경 등)을 처리합니다. 사용자에게 심각한 영향을 미치는 비정상 일시적 소음(예: 식당 소음, 지하철 환경 소음, 가정 주방 소음 등)에 일정한 효과가 있습니다. 통화 경험. 집, 사무실 등 복잡한 시나리오에서 발생하는 수백 가지의 비정상 소음 문제에 대응하기 위해 통합통신시스템학과 생태권역화팀은 GRU 모델을 기반으로 한 AI 오디오 소음 감소 기술을 독자적으로 개발하고 알고리즘 및 엔지니어링 최적화를 통해 노이즈 감소 모델의 크기는 2.4MB에서 82KB로 압축되었으며, 실행 메모리는 약 65% 감소했으며, 계산 복잡도는 약 186Mflops에서 42Mflops로 최적화되었으며, 기존 테스트에서 실행 효율성이 77% 향상되었습니다. 데이터 세트(실험 환경)에서 사람의 목소리와 소음을 효과적으로 분리할 수 있어 통화 품질 Mos 점수(평균 의견 값)가 4.25로 향상되었습니다.
이 기사에서는 우리 팀이 딥러닝을 기반으로 실시간 소음 억제를 수행하고 이를 모바일 단말기와 Jiaqin APP에 구현하는 방법을 소개합니다. 본문은 다음과 같이 구성되어 잡음의 분류와 이러한 잡음 문제를 해결하기 위한 알고리즘 선택 방법, 딥러닝을 통한 알고리즘 설계 및 AI 모델 훈련 방법, 마지막으로 현재 AI의 효과와 주요 적용 방법을 소개합니다. 소음 감소 장면.
Part 02 소음 분류 및 소음 감소 알고리즘 선택
실시간 오디오 및 비디오 애플리케이션 시나리오에서 장치는 복잡한 음향 환경에 있으며 마이크는 음성 신호를 수집하는 동시에 많은 양의 노이즈를 수집하는 것은 실시간 오디오 및 비디오 품질에 있어서 매우 큰 과제입니다. 소음에는 여러 종류가 있습니다. 소음의 수학적 통계적 특성에 따라 소음은 두 가지 범주로 나눌 수 있습니다.
고정 소음: 소음의 통계적 특성은 백색 소음과 같이 비교적 오랫동안 시간이 지나도 변하지 않습니다. 및 선풍기, 에어컨, 실내 소음 등
비정상 소음: 시끄러운 식당, 지하철역 등 시간에 따른 소음의 통계적 특성 변화 , 사무실, 가정 부엌 등.
실시간 오디오 및 비디오 애플리케이션에서 통화는 다양한 소음의 간섭을 받기 쉬우며 이는 경험에 영향을 미칩니다. 따라서 실시간 오디오 소음 감소는 실제에서 중요한 기능이 되었습니다. -시간 오디오 및 비디오. 에어컨의 윙윙거리는 소리나 녹음 장비의 노이즈 플로어 등 꾸준한 노이즈의 경우 시간이 지나도 크게 변하지 않으며 간단한 빼기를 통해 이를 추정하고 예측할 수 있으며 공통적으로 스펙트럼 감산, 위너 필터링, 웨이블릿이 있습니다. 변환. 도로를 달리는 자동차의 윙윙거리는 소리, 식당에서 접시가 부딪히는 소리, 집 부엌에서 냄비와 프라이팬이 부딪히는 소리 등 비정적 소음은 모두 무작위로 예기치 않게 나타나며 이를 추정하고 예측하는 것이 불가능합니다. . 기존 알고리즘은 비정상 노이즈를 추정하고 제거하기 어렵기 때문에 딥러닝 알고리즘을 사용합니다.
Part 03 딥 러닝 소음 감소 알고리즘 설계
다양한 소음 장면에 대한 오디오 SDK의 소음 감소 기능을 향상시키고 기존 소음 감소의 단점을 보완하기 위해 알고리즘을 개발하여 기존의 노이즈 감소 기술과 딥러닝 기술을 결합한 RNN 기반 AI 노이즈 감소 모듈을 개발했습니다. 가정 및 사무실 사용 시나리오에 대한 소음 감소 처리에 중점을 두고 사무실의 키보드 입력, 책상 및 사무용품이 끌리는 마찰음, 의자 끌기, 주방 등 수많은 실내 소음 유형이 소음 데이터 세트에 추가됩니다. 집에서 소음, 바닥 쾅쾅 소리 등.
동시에 모바일 단말에서 실시간 음성 처리를 구현하기 위해 이 AI 오디오 잡음 감소 알고리즘은 계산 오버헤드와 라이브러리 크기를 매우 낮은 수준으로 제어합니다. 계산 오버헤드 측면에서 48KHz를 예로 들면 각 음성 프레임의 RNN 네트워크 처리에는 약 17.5Mflops만 필요하고 FFT 및 IFFT에는 각 음성 프레임당 약 7.5Mflops가 필요하며 특징 추출에는 약 12Mflops가 필요하여 총 약 42Mflops가 필요합니다. 계산 복잡도는 대략 48KHz Opus 코덱과 동일합니다. 특정 브랜드의 중급 휴대폰 모델에서 RNN 소음 감소 모듈 CPU 사용량은 약 4%입니다. 오디오 라이브러리의 크기 측면에서 RNN 노이즈 감소 컴파일을 켠 후 오디오 엔진 라이브러리의 크기는 약 108kB만 증가합니다.
Part 04 네트워크 모델 및 처리 흐름
RNN은 다른 학습 모델(예: CNN)과 비교하여 시간 정보를 전달하고 타이밍 신호를 모델링할 수 있기 때문에 이 모듈은 RNN 모델을 사용합니다. 오디오 입력 및 출력 프레임을 분리하면 됩니다. 동시에 모델은 그림 1에 표시된 GRU(Gated Recurrent Unit)를 사용합니다. 실험에 따르면 GRU는 음성 잡음 감소 작업에서 LSTM보다 약간 더 나은 성능을 발휘하며 GRU는 가중치 매개변수가 적기 때문에 컴퓨팅 리소스를 절약할 수 있습니다. . 간단한 루프 장치와 비교하여 GRU에는 두 개의 추가 게이트가 있습니다. 재설정 게이트 제어 상태는 새 상태를 계산하는 데 사용되는 반면, 업데이트 게이트 제어 상태는 새 입력에 따라 얼마나 변경되는지를 나타냅니다. 이 업데이트 게이트를 통해 GRU는 오랫동안 타이밍 정보를 기억할 수 있으며, 이는 GRU가 단순 순환 장치보다 더 나은 성능을 발휘하는 이유입니다.
그림 1 왼쪽은 단순 순환 단위이고 오른쪽은 GRU
모델의 구조는 그림 2와 같습니다. 훈련된 모델은 오디오 및 비디오 통신 SDK에 내장되며, 오디오 스트림은 프레임화되어 AI 노이즈 감소 전처리 모듈로 전송됩니다. (Feature)을 계산하여 학습된 모델에 출력합니다. 모델을 통해 해당 게인(Gain) 값을 계산하고, 게인 값을 사용하여 신호를 조정함으로써 궁극적으로 노이즈 감소 목적을 달성합니다(그림 3 참조). . 그림 2. GRU 기반 RNN 네트워크 모델 학습 과정, 아래는 실시간 노이즈 감소 과정입니다
그림 4는 키보드 두드리기 소음에 따른 소음 감소 전과 후의 음성 스펙트로그램을 비교한 것입니다. , 빨간색 직사각형 상자는 키보드 두드리는 소음입니다. 하단은 소음 감소 후 음성 신호로, 관찰을 통해 키보드 두드리는 소리가 대부분 억제되고 음성 손상이 낮은 수준으로 제어되는 것을 알 수 있습니다. 그림 4. 시끄러운 음성(통화 중 키보드 두드리는 소리와 함께) 전후 비교 현재 AI 소음 감소 모델은 이미 휴대폰에 있습니다. Hejiaqin은 온라인으로 휴대폰 및 Jiaqin 앱 통화의 소음 감소 효과를 향상시키는 동시에 음성 왜곡을 유지하면서 집과 사무실을 포함한 100개 이상의 소음 시나리오에서 탁월한 억제 기능을 갖추고 있습니다. 다음 단계에서는 AI 노이즈 감소 모델의 계산 복잡도를 지속적으로 최적화하여 IoT 저전력 디바이스에서 홍보 및 사용할 수 있도록 하겠습니다.
Part 05 AI 소음 감소 처리 효과 및 구현
위 내용은 실시간 통신에서의 AI 소음 저감 기술에 대해 이야기해보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











CentOS 종료 명령은 종료이며 구문은 종료 [옵션] 시간 [정보]입니다. 옵션은 다음과 같습니다. -H 시스템 중지 즉시 옵션; -P 종료 후 전원을 끕니다. -R 다시 시작; -대기 시간. 시간은 즉시 (현재), 분 (분) 또는 특정 시간 (HH : MM)으로 지정할 수 있습니다. 추가 정보는 시스템 메시지에 표시 될 수 있습니다.

CentOS 시스템 하에서 Gitlab의 백업 및 복구 정책 데이터 보안 및 복구 가능성을 보장하기 위해 CentOS의 Gitlab은 다양한 백업 방법을 제공합니다. 이 기사는 완전한 GITLAB 백업 및 복구 전략을 설정하는 데 도움이되는 몇 가지 일반적인 백업 방법, 구성 매개 변수 및 복구 프로세스를 자세히 소개합니다. 1. 수동 백업 gitlab-rakegitlab : 백업 : 명령을 작성하여 수동 백업을 실행하십시오. 이 명령은 gitlab 저장소, 데이터베이스, 사용자, 사용자 그룹, 키 및 권한과 같은 주요 정보를 백업합니다. 기본 백업 파일은/var/opt/gitlab/backups 디렉토리에 저장됩니다. /etc /gitlab을 수정할 수 있습니다

CentOS 시스템에서 HDFS 구성 확인에 대한 완전한 안내서이 기사에서는 CentOS 시스템에서 HDF의 구성 및 실행 상태를 효과적으로 확인하는 방법을 안내합니다. 다음 단계는 HDF의 설정 및 작동을 완전히 이해하는 데 도움이됩니다. Hadoop 환경 변수 확인 : 먼저 Hadoop 환경 변수가 올바르게 설정되어 있는지 확인하십시오. 터미널에서 다음 명령을 실행하여 Hadoop이 올바르게 설치되고 구성되었는지 확인하십시오. Hadoopversion Check HDFS 구성 파일 : HDFS의 Core 구성 파일은/etc/hadoop/conf/directory에 있으며 Core-Site.xml 및 HDFS-Site.xml이 중요합니다. 사용

CentOS 시스템에서 Pytorch GPU 가속도를 활성화하려면 Cuda, Cudnn 및 GPU 버전의 Pytorch를 설치해야합니다. 다음 단계는 프로세스를 안내합니다. CUDA 및 CUDNN 설치 CUDA 버전 호환성 결정 : NVIDIA-SMI 명령을 사용하여 NVIDIA 그래픽 카드에서 지원하는 CUDA 버전을보십시오. 예를 들어, MX450 그래픽 카드는 CUDA11.1 이상을 지원할 수 있습니다. Cudatoolkit 다운로드 및 설치 : NVIDIACUDATOOLKIT의 공식 웹 사이트를 방문하여 그래픽 카드에서 지원하는 가장 높은 CUDA 버전에 따라 해당 버전을 다운로드하여 설치하십시오. CUDNN 라이브러리 설치 :

Docker는 Linux 커널 기능을 사용하여 효율적이고 고립 된 응용 프로그램 실행 환경을 제공합니다. 작동 원리는 다음과 같습니다. 1. 거울은 읽기 전용 템플릿으로 사용되며, 여기에는 응용 프로그램을 실행하는 데 필요한 모든 것을 포함합니다. 2. Union 파일 시스템 (Unionfs)은 여러 파일 시스템을 스택하고 차이점 만 저장하고 공간을 절약하고 속도를 높입니다. 3. 데몬은 거울과 컨테이너를 관리하고 클라이언트는 상호 작용을 위해 사용합니다. 4. 네임 스페이스 및 CGroup은 컨테이너 격리 및 자원 제한을 구현합니다. 5. 다중 네트워크 모드는 컨테이너 상호 연결을 지원합니다. 이러한 핵심 개념을 이해 함으로써만 Docker를 더 잘 활용할 수 있습니다.

Centos에 MySQL을 설치하려면 다음 단계가 필요합니다. 적절한 MySQL Yum 소스 추가. mysql 서버를 설치하려면 yum install mysql-server 명령을 실행하십시오. mysql_secure_installation 명령을 사용하여 루트 사용자 비밀번호 설정과 같은 보안 설정을 작성하십시오. 필요에 따라 MySQL 구성 파일을 사용자 정의하십시오. MySQL 매개 변수를 조정하고 성능을 위해 데이터베이스를 최적화하십시오.

SSH 서비스를 다시 시작하라는 명령은 SystemCTL SSHD를 다시 시작합니다. 자세한 단계 : 1. 터미널에 액세스하고 서버에 연결; 2. 명령을 입력하십시오 : SystemCTL SSHD 재시작; 3. 서비스 상태를 확인하십시오 : SystemCTL 상태 SSHD.

CentOS 시스템에 대한 Pytorch 분산 교육에는 다음 단계가 필요합니다. Pytorch 설치 : 전제는 Python과 PIP가 CentOS 시스템에 설치된다는 것입니다. CUDA 버전에 따라 Pytorch 공식 웹 사이트에서 적절한 설치 명령을 받으십시오. CPU 전용 교육의 경우 다음 명령을 사용할 수 있습니다. PipinStalltorchtorchvisiontorchaudio GPU 지원이 필요한 경우 CUDA 및 CUDNN의 해당 버전이 설치되어 있는지 확인하고 해당 PyTorch 버전을 설치하려면 설치하십시오. 분산 환경 구성 : 분산 교육에는 일반적으로 여러 기계 또는 단일 기계 다중 GPU가 필요합니다. 장소
