Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
BONXを支える技術:発話区間検出(VAD)の話/Akerun & BONX Tech Talk
Search
shunsukeaihara
April 26, 2016
Technology
7.8k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
BONXを支える技術:発話区間検出(VAD)の話/Akerun & BONX Tech Talk
shunsukeaihara
April 26, 2016
More Decks by shunsukeaihara
See All by shunsukeaihara
Goのnet.TCPConnの話/shibuya.go01
shunsukeaihara
3
890
Norikra in Gunosy Network Ads@Norikra meetup #2
shunsukeaihara
1
6.1k
LevelDB on S3 As A KVS
shunsukeaihara
1
3k
色恒常性仮説に基づく色補正ライブラリcolorcorrect / 2015-01-31-kantocv27
shunsukeaihara
3
2.6k
Sparkによる分散処理 / 2015-01-16 PyData.Tokyo#3
shunsukeaihara
11
3.6k
ゼロから始めた Gunosyアドサーバ開発運用記 / 2014-12-16-dots
shunsukeaihara
6
1.2k
Gunosy.Go#5 index/io/log
shunsukeaihara
0
200
Gunosy.go#2 package/compress
shunsukeaihara
0
150
Other Decks in Technology
See All in Technology
ログラスのマルチプロダクトを 支える認証基盤 〜テナントごとに異なる統制とどう向き合うか〜
dada4386
3
220
Argo CDとAtlantisで実現するインフラ管理のセルフサービス化──小規模SREチームで支えるプラットフォーム
cassius7
0
250
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
230
「大丈夫そう?」をObservabilityで確かめる
mrmtsu
0
230
猫でもわかるKiro Web
kentapapa
1
150
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
480
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
110
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
200
ボードゲームの遊び相手をFoundation Modelsで作る / iOSDC Japan 2026
genda
0
230
「今盗んで、後で解く」に備える ― AWSのポスト量子暗号入門
yama3133
2
270
AIに会社の文脈を理解させる技術~上流工程・非エンジニアにも広げるハーネスエンジニアリング実践~
ochtum
0
190
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
260
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
109
250k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
2k
4 Signs Your Business is Dying
shpigford
187
23k
Building Adaptive Systems
keathley
44
3.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
450
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Being A Developer After 40
akosma
91
590k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
Transcript
2016/04/26 shunsukeaihara BONXを⽀える技術: 発話区間検出(VAD)の話
⾃⼰紹介 • 粟飯原俊介(@shunsukeaihara) • http://argmax.jp • 技術顧問 • Gunosy, MNU
• フリーランス • ⾃然⾔語処理/画像処理/⾳声信号処理/分散処理系の開発・コンサル • Webシステム/IoTデバイス/データ分析システムの開発/BizDev • Bonxではサーバ(VoIP周り)開発とクライアント側⾳声処理系を担当
(承前)IoTにおける⾳声信号処理 ⼊出⼒に制限が有ることが多いIoTシステムにおいて, ⾳声インターフェイス(Digital Voice Assistant)が注⽬されており, ⾳声処理に関する周辺技術の重要が⾼まっています ボイスコマンド 音声対話 音源定位・分離 環境音認識
音声認識 話者識別
発話区間検出とは Voice Activity Detection(VAD)
発話区間検出とは 与えられた⾳声データから, ⼈間が発話している部分のみを抽出する技術. ⾳声認識能向 上のための前処理や, ⾳声通信における通信削減/⾳声品質向上などに利⽤されています 発話区間 発話区間 ⾮発話区間 ⾮発話区間
⾮発話区間
発話区間検出の難しさ ⼀⾒簡単そうな発話区間検出も, 様々な環境・様々なマイクで安定した動作を実現しよ うとすると, 複数の問題を乗り越える適応的なアルゴリズムが必要になります 環境ノイズの⼤きさ 環境ノイズの多様性 ⾳質・⾳量の違い 背景ノイズがうるさい場合で も,
背景ノイズを無視して発 話がない場合は⾮発話としな ければいけない ⾮定常的な環境⾳や, 突発⾳, テレビや移動等による環境ノ イズの変化に追随して, 環境 ⾳と発話を切り分けなければ いけない ⼈毎の声の差・機種毎のマイ ク・デバイスの⾳の差・サウ ンドデバイスの初期化毎の⾳ 量の差を吸収
発話区間検出の要素技術 発話/⾮発話判定 概要 ⼿法(⼀例) 背景雑⾳と⼈間の発話が混ざった 信号から, ⼈間の発話が含まれてい る区間のみを発話区間として判定 • Spectral Entropy
• Long-Term Spectral Divergence • Periodic Component to Aperiodic Component Ratio • ⾳声モデル(GMM等) ノイズ推定/ トラッキング ノイズ除去/ ⾳声強調 環境ノイズの変化や, ⾮定常的な雑 ⾳に対する頑健性を担保するため に, ⼈間の発話と背景雑⾳が混ざっ た⼊⼒信号から, 変化する背景雑⾳ をリアルタイムに推定 推定した雑⾳の情報を元に, 背景雑 ⾳と⼈間の発話が混ざった信号か ら, ⼈間の発話を抽出・強調する技 術 • Minimum Statistics • VAD Based (Soft / Hard Decision) Estimator • MMSE based Estimator • Spectrum Subtraction • Wiener filtering • MMSE-STSA • Joint-Map • Beamforming(マイクアレイ)
ノイズ推定〜発話判定処理の⼀例 発話⾳声と環境⾳(ノイズ)が重畳された信号からノイズを逐次的に推定し, ⼊⼒⾳声が環 境⾳なのか, 発話を含んでいるのかをオンラインで判定します ノイズプロファイルの初期値とし て, 先頭数百msの平均パワース ペクトルを利⽤ フレーム毎にパワースペクトルと
ノイズプロファイルを⽐較 逐次更新アルゴリズムにより, 発 話・ノイズ混じりの信号からノイ ズプロファイルを毎フレーム更新 更新 ⽐較
Bonxでの発話区間検出の流れ Bonxは独⾃のマルチマイクデバイスを利⽤しているため, デバイス上でマルチマイクを ⽤いた⾳声強調処理を実施し, 後段の処理をスマートフォンで実施しています ①⾳声強調(仮) ②ノイズ推定 • Bonxデバイスから の出⼒⾳声信号 ③ノイズ除去
④発話判定 input output • 前⽅マイクからの ⼊⼒信号 • 後⽅マイクからの ⼊⼒信号 • Bonxデバイスから の出⼒⾳声信号 • 推定したノイズプ ロファイル • ノイズ除去済みの ⾳声信号* • 推定したノイズプ ロファイル • 前⽅マイク側の信 号(⼝側の⾳)を強 調(Beamforming) した⾳声信号 • ⾳声信号に含まれる ノイズの推定値(ノイ ズプロファイル) • ノイズ除去済みの ⾳声信号 Bonxデバイス スマートフォン • 発話・⾮発話判定 結果 • ノイズ除去済みの ⾳声信号 *アルゴリズムによっては①の出⼒とノイズプロファイルを利⽤ ⾳ 量 の 正 規 化
デバイスとスマートフォンでの信号処理 ⾳声信号処理はリアルタイムでの計算が必要とされるため, スマートフォンアプリの中 に実装するためには計算の効率化とアルゴリズムの簡易さが求められます • 基本的にはC/C++での実装. AndroidではNDKを⽤いる • iOS: Accelerate Framework(vDSP)を利⽤
• Android: ARM系のSIMD拡張命令(NEON), DSP拡張命令を利⽤ • cpufeature.h • IoTハードウェアとの連携の場合は, ハードウェア側のDSPチップやSoCに機能を寄せ られないか検討する • 複数マイク(マイクアレイ)を⽤いる事で⾳質の向上を⾒込むことが出来る ⾼速な実装のために… デバイス側で出来ることはやろう
まとめ • 発話区間検出の概要と課題 • ロバストな発話区間検出に必要な要素技術 • ノイズ推定/トラッキング • ノイズ除去/⾳声強調 •
発話⾮発話判定 • IoTデバイスとスマートフォンで⾳声信号処理を実装するにあたって のTips • ITベンチャー業界に他に⾳声信号処理実装関係者いないですかね