Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
機械学習で無音サックスを作ろうとしたら音響特性とレイテンシに明るくなった話
Search
nayopu
October 19, 2022
Technology
1
380
機械学習で無音サックスを作ろうとしたら音響特性とレイテンシに明るくなった話
Music×Analytics Meetup Vol.9 LT
https://muana.connpass.com/event/259360/
nayopu
October 19, 2022
Tweet
Share
Other Decks in Technology
See All in Technology
データベースで見る『家族アルバム みてね』の変遷 / The Evolution of Family Album Through the Lens of Databases
kohbis
2
590
30代エンジニアが考える、エンジニア生存戦略~~セキュリティを添えて~~
masakiokuda
4
2k
Road to SRE NEXT@仙台 IVRyの組織の形とSLO運用の現状
abnoumaru
0
400
Riverpod & Riverpod Generatorを利用して状態管理部分の処理を書き換えてみる簡単な事例紹介
fumiyasac0921
0
110
3/26 クラウド食堂LT #2 GenU案件を通して学んだ教訓 登壇資料
ymae
1
210
Multitenant 23ai の全貌 - 機能・設計・実装・運用からマイクロサービスまで
oracle4engineer
PRO
2
120
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
370
銀行でDevOpsを進める理由と実践例 / 20250317 Masaki Iwama
shift_evolve
1
110
KCD Brazil '25: Enabling Developers with Dapr & Backstage
salaboy
1
130
コード品質向上で得られる効果と実践的取り組み
ham0215
2
200
ウェブアクセシビリティとは
lycorptech_jp
PRO
0
300
大規模サービスにおける カスケード障害
takumiogawa
3
300
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
What's in a price? How to price your products and services
michaelherold
245
12k
How STYLIGHT went responsive
nonsquared
99
5.4k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Visualization
eitanlees
146
16k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Optimizing for Happiness
mojombo
377
70k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
17
1.1k
Git: the NoSQL Database
bkeepers
PRO
429
65k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Transcript
© nayopu 2022. All rights reserved. @nayopu3 C nayopu 機械学習で無音サックスを作ろうとしたら
音響特性とレイテンシに明るくなった話 #muana 2022.10.19
2 © nayopu 2022. All rights reserved. 自己紹介
3 © nayopu 2022. All rights reserved. 内容 家でサックスを練習したい レイテンシと呼ばれる沼へ
木管楽器の音響の造詣の浅さでつまづく 機械学習の採用 無音サックスの完成(?)
4 © nayopu 2022. All rights reserved. 家でサックスを練習したい
5 © nayopu 2022. All rights reserved. 55 dB ≫
~ 100 dB 木管楽器の音量 住環境の騒音レベル 家でサックスを練習したい [1] Gavin King, Marek Roland-Mieszkowski, Timothy Jason, and Daniel Rainham.2012. Noise Levels Associated with Urban Land Use.Journal of urban health :bulletin of the New York Academy of Medicine89 (06 2012).
6 © nayopu 2022. All rights reserved. 家でサックスを練習したい アプローチ3. ローランド/ウィンドシンセサイザー
¥85,800 アプローチ2. ベストブラス/イーサックス ¥52,500 どれもいまいち…🤔 → やっぱり本物のサックスで演奏したい アプローチ1. Dilwe/サックスサイレンサー ¥1,408
7 © nayopu 2022. All rights reserved. 家でサックスを練習したい アプローチ4. キー全部にスイッチつける
¥? → 非侵襲的にやりたい https://twitter.com/nayopu3/status/1218865654234632198?s=20
8 © nayopu 2022. All rights reserved. 家でサックスを練習したい アプローチ5.(今日の話) 小さなホワイトノイズをマウスピースから流して応答音の周波数特定から運指をリアルタイム推定
9 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ
10 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ レイテンシと運指推定精度のトレードオフ •
運指変更から運指出力までの時間差(レイテンシ) > フーリエ変換の時間窓ΔT • 小さなΔTは粗い周波数分解能をΔfにつながり、運指の推定精度が下がりそう → 許容されるレイテンシ一杯の時間窓を使って推定したい
11 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ サーベイ論文を読む Lago,
Nelson Posse, and Fabio Kon. "The quest for low latency." ICMC. 2004. 許容されるレイテンシ = ケースバイケース。 • 人間の聴覚は視覚よりも高い時間精度を持っており、少なくとも4ms程度の変動は知覚、コントロールできる。 • 異なる種類の二つの刺激(例えば、視覚と聴覚、あるいは、視覚と聴覚と聴覚など)が関与する時間精度 は同じ種類の二つの刺激の時間精度よりも低い。 • 人は異なるフィードバック遅延に対して自身の動作を適応させる能力があり、大きな遅延が許容されることも。 – ピアノ演奏において、鍵盤を押してから対応する音が出るまでの経過時間は、ピアノ音で100ms程度、 スタッカート、フォルテ音で30ms程度で、待ち時間がダイナミックレベルによって異なる。 – 人の運動システムは瞬時に反応することができないため、「時間通り」に動作するためには前もって運動 命令を出す必要がある。 – 人は動作に対するフィードバック遅延の情報を、「どれだけ前もって命令を出すかを調整する」ために使っ ている可能性がある。 • 総じて一般の音楽アプリケーションにおいては,20-30ms 程度の遅延を許容することができる、らしい。
12 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ サーベイ論文を読む Lago,
Nelson Posse, and Fabio Kon. "The quest for low latency." ICMC. 2004. 許容されるレイテンシ = ケースバイケース。 • 人間の聴覚は視覚よりも高い時間精度を持っており、少なくとも4ms程度の変動は知覚、コントロールできる。 • 異なる種類の二つの刺激(例えば、視覚と聴覚)が関与する時間精度は同じ種類の二つの刺激の時間 精度よりも低い。 • 人は異なるフィードバック遅延に対して自身の動作を適応させる能力があり、大きな遅延が許容されることも。 – ピアノ演奏において、鍵盤を押してから対応する音が出るまでの経過時間は、pianoで100ms程度、 staccato、forte音で30ms程度で、待ち時間がダイナミックレベルによって異なる。 – 人の運動システムは瞬時に反応することができないため、「時間通り」に動作するためには前もって運動 命令を出す必要がある。 – 人は動作に対するフィードバック遅延の情報を、「どれだけ前もって命令を出すかを調整する」ために使っ ている可能性がある。 • 総じて一般の音楽アプリケーションにおいては,20-30ms 程度の遅延を許容することができる、らしい。
13 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ サーベイ論文を読む Lago,
Nelson Posse, and Fabio Kon. "The quest for low latency." ICMC. 2004. 許容されるレイテンシ = ケースバイケース。 • 人間の聴覚は視覚よりも高い時間精度を持っており、少なくとも4ms程度の変動は知覚、コントロールできる。 • 異なる種類の二つの刺激(例えば、視覚と聴覚)が関与する時間精度は同じ種類の二つの刺激の時間 精度よりも低い。 • 人は異なるフィードバック遅延に対して自身の動作を適応させる能力があり、大きな遅延が許容されることも。 – ピアノ演奏において、鍵盤を押してから対応する音が出るまでの経過時間は、pianoで100ms程度、 staccato、forte音で30ms程度で、待ち時間がダイナミックレベルによって異なる。 – 人の運動システムは瞬時に反応することができないため、「時間通り」に動作するためには前もって運動 命令を出す必要がある。 – 人は動作に対するフィードバック遅延の情報を、「どれだけ前もって命令を出すかを調整する」ために使っ ている可能性がある。 • 総じて一般の音楽アプリケーションにおいては,20-30ms 程度の遅延を許容することができる、らしい。
14 © nayopu 2022. All rights reserved. レイテンシと呼ばれる沼へ • サンプル時間20msecとすると,
周波数分解能Δ𝑓 = 1 20∗10−3 = 50 𝐻𝑧 • 音階間の周波数間隔は音域によって変わるが、低音域の間隔は~10hz • Δ𝑓 = 50𝐻𝑧 分解能 > 10𝐻𝑧 (音階間隔) • → 最大値を調べるだけではだめなのでハーモニーのパターンも活用する基本周波数推定手法 (SWIPE, YIN, WORLD)を使う。
15 © nayopu 2022. All rights reserved. 木管楽器の音響の造詣の浅さでつまづく
16 © nayopu 2022. All rights reserved. 木管楽器の音響の造詣の浅さでつまづく • 基本周波数推定手法の適用
→ オクターブ違いの推定エラーが頻発 (基本周波数は十分離れているはずなのになぜ…?) • サックスの音響特性ライブラリ[1]を見つける。 – オクターブキー (a.k.a. register key) の有無で基本周波数は変わらないことが判明 [1] http://newt.phys.unsw.edu.au/music/saxophone/ オクターブキー
17 © nayopu 2022. All rights reserved. 木管楽器の音響の造詣の浅さでつまづく • そもそもオクターブキーは何をしているのか。
– サックスは円錐で複雑なため、リコーダーの裏孔で説明。 • オクターブキー非押下 (サックス) • 親指で裏孔を完全に閉じる(リコーダー) …
18 © nayopu 2022. All rights reserved. 木管楽器の音響の造詣の浅さでつまづく • そもそもオクターブキーは何をしているのか。
– サックスは円錐で複雑なため、リコーダーの裏孔で説明。 • オクターブキー非押下 (サックス) • 親指で裏孔を完全に閉じる(リコーダー) … • オクターブキー押下 (サックス) • 親指で裏孔を半分開ける(リコーダー) … 基本振動のみ 形成が困難になる ↓ 基本周波数は変 わらない
19 © nayopu 2022. All rights reserved. 機械学習の採用 (割愛)
20 © nayopu 2022. All rights reserved. 無音サックスの完成(?)
21 © nayopu 2022. All rights reserved. 無音サックスの完成(?)
22 © nayopu 2022. All rights reserved. お し ま
い
23 © nayopu 2022. All rights reserved. @nayopu3