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
20250413_湘南kaggler会_音声認識で使うのってメルス・・・なんだっけ?
Search
suguuuuuすぐー
April 12, 2025
Technology
1
710
20250413_湘南kaggler会_音声認識で使うのってメルス・・・なんだっけ?
LTです。
自分の勉強してた内容をまとめたものです。
非音声の専門家のため、間違ってるかも。
suguuuuuすぐー
April 12, 2025
Tweet
Share
More Decks by suguuuuuすぐー
See All by suguuuuuすぐー
20250515_今更ながら2023年に参加したHuBMAP金ソリューションを綺麗にまとめ
sugupoko
0
130
20250307_kaggle_CZIIコンペ振り返り_関西Kaggler会_交流会_in_Osaka_2025#1
sugupoko
1
680
20240803_関東kaggler会_HMS振り返り&チームで取り組むkaggle
sugupoko
1
2k
202309 kaggle 銀 LLM science exam まとめ資料
sugupoko
1
650
金_kaggle_hubmap_202307_instance-segmenataion
sugupoko
1
220
銀_kaggle_火山コンペ_20230615
sugupoko
1
610
反省_kaggle_時系列データ_202305_手話コンペ
sugupoko
1
510
10位_202304_超解像コンペ_solafune_衛星画像の超解像
sugupoko
1
210
銀_202302_kaggle_NFL_Player_contact_detection
sugupoko
1
160
Other Decks in Technology
See All in Technology
Digitization部 紹介資料
sansan33
PRO
1
3.7k
KMP導⼊において、マネジャーとして考えた事
sansantech
PRO
1
170
iOS/Androidで無限循環Carousel表現を考えてみる
fumiyasac0921
0
110
撤退危機からのピボット : 4年目エンジニアがリードする TypeScript で挑む事業復活 / crisis-to-pivot-4th-year-engineer-ts-relaunch
carta_engineering
2
740
マップを速く表示するために
tsuboyan5
0
170
勘違いから始まったProxmox on ProxmoxでGPUパススルー【JPmoxs勉強会#7】/JPmoxs7_GPU_Passthrough_on_Proxmox_on_Proxmox-A_Journey_That_Started_with_a_Misunderstanding
tsukimi_site
1
180
さくらのクラウド 開発の挑戦とその舞台裏
kazeburo
0
690
ゼロコードで実現! - OpenTelemetryとOCI APM Agentによる簡単アプリケーション監視 - / Zero-Code Observability with OpenTelemetry and OCI APM
oracle4engineer
PRO
1
170
CSS polyfill とその未来
ken7253
0
120
変化に強いテーブル設計の勘所 / Table design that is resistant to changes
soudai
48
13k
型がない世界に生まれ落ちて 〜TypeScript運用進化の歴史〜
narihara
1
190
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Building Applications with DynamoDB
mza
95
6.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Facilitating Awesome Meetings
lara
54
6.4k
The Invisible Side of Design
smashingmag
299
50k
Site-Speed That Sticks
csswizardry
6
570
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Speed Design
sergeychernyshev
30
960
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Designing Experiences People Love
moore
142
24k
Transcript
ええっと、音声とかでよく使うのって、メルス・・・なんだっけ? 2025/4/13 湘南Kaggler会 LT ※本日の登壇は、会社を代表するものではなく個人的なものです。 ※自分整理用の超基礎的な内容です。 ※専門家じゃないので間違った内容を含むかもです。
2025/04/13 湘南kaggler会 2 自己紹介:すぐー / 小林 秀(こばやし すぐる) ◆ AI/組み込みソフトウェアエンジニア
@エンタメ事業に力入れてる家電メーカー ◆ Kaggle Master ➢ https://www.kaggle.com/sugupoko ➢ 金3枚 (入賞2回、HMS1st 、RSNA2024 3rd) ⚫ コンペ始めて3年半、最近金取れるようになって来た ➢ 専門は画像だけど、興味のあるコンペはなんでも出ちゃう ⚫ LLMコンペ、とかとか。 ➢ 参加スタンス:社内結成チーム、おしゃべり好きなので。 ◆ 好きなキャラクター:おぱんちゅうさぎ 普段のアイコンは コレ⇒ たかまる作 @2025/4/12
2025/04/13 湘南kaggler会 3 これらに共通した要素はなーんだ? ヒント:メルス・・・なんだっけ?
2025/04/13 湘南kaggler会 4 これらに共通した要素はなーんだ? ヒント:メルス・・・なんだっけ? A. 周波数変換です。 ん、そもそも「周波数変換」ってなに?
2025/04/13 湘南kaggler会 5 周波数変換とは • 時間領域 → 周波数領域 • 「波(信号)を成分となる振動数(周波数)ごとに分解する」イメージ
• フーリエ変換(Fourier Transform)が代表例 • なぜ必要か? • 時間軸だけでは見えにくい「成分の周波数分布」「周期性」を可視化 • 異なる振動数(周波数)成分を分離して解析することで、ノイズ除去 やパターン解析に役立つ 周波数解析におけるフーリエ変換を数式を使わずにわかりやすく解説! - ケイエルブイ これはスペクトル↑
2025/04/13 湘南kaggler会 6 代表的な手法と特徴 ◆ フーリエ変換(Fourier Transform) ➢ 基本的な周波数変換の手法時間領域の信号全体を一括で周波数成分に分解周波数ごとの強度(振幅スペクトル)と位相情報を得られる ◆
離散フーリエ変換(DFT)/ 高速フーリエ変換(FFT) ➢ デジタル信号(サンプリングされた信号)向けFFTはDFTを高速に計算できるアルゴリズム ◆ 短時間フーリエ変換(STFT) ➢ 一定の時間窓で区切ってフーリエ変換する時間変化する周波数成分を解析しやすい ◆ ウェーブレット変換(Wavelet Transform) ➢ ウェーブレットという局所化した基底関数で周波数成分を展開非定常信号や局所的な特徴把握に強み あ、いろいろあるんだ。 いつどんなの使うの?
2025/04/13 湘南kaggler会 7 どこで何使うの? ◆ 応用事例 ➢ 音響・音楽分野: ⚫ 時間・周波数両面の解析が求められるため
STFT や CQT、FFT、ウェーブレット変換 ➢ 画像解析: ⚫ 2次元の信号処理に適した FFT や DWT、バイオーソゴナルウェーブレット、フレームレット変換が中心 ➢ 地震解析: ⚫ 非定常かつ局所的な現象を捉えるため CWT、DWT、HHTなど ➢ 脳波解析: ⚫ 瞬間的な周波数変化やノイズ対策のために STFT、DWT、HHT など ◆ 選び方は下記による ➢ 信号の特性(定常性、非定常性、線形性、非線形性) ➢ 解析目的(周波数分解能、時間局所性、計算効率、再構成精度) いろいろむずかしいなぁ、一つでなんでも使えるわけじゃないんだな。
2025/04/13 湘南kaggler会 8 クイズタイム 小野寺さんの撮ったメジロの鳴き声を解析するにはどの変換? ヒント:メルス・・・なんだっけ? ※私は小野寺さんの鳥写真を見るのが好きです
2025/04/13 湘南kaggler会 9 クイズタイム 小野寺さんの撮ったメジロの鳴き声を解析するにはどの変換? ヒント:メルス・・・なんだっけ? A. STFTです。 あれ、、、メルスペクトログラムってなんだっけ? ※私は小野寺さんの鳥写真を見るのが好きです
2025/04/13 湘南kaggler会 10 ややこしい名称の持ち主たち ◆ スペクトログラム(Spectrogram) ➢ STFTで複数のスペクトルを並べたもの ➢ 音声の時間×周波数の変化を可視化したもの
◆ メルスペクトログラム(Mel Spectrogram) ➢ スペクトログラムを人間の聴覚に近いスケールに変換 ➢ メルフィルタで高音域を粗く、低音域を細かく ◆ MFCC(Mel-Frequency Cepstral Coefficients) ➢ メルスペクトログラムから音の特徴量(特徴ベクトル)を抽出したもの ➢ 音声認識などでよく使われる「コンパクトな特徴表現」 LibROSA で MFCC(メル周波数ケプストラム係数)を算出して楽器の音色を分析 なるほど~、ちゃんと知らないで使ってましたわぁ STFT (スペクトログラム) 名称の関係図
2025/04/13 湘南kaggler会 11 ちなみに、HMS - Harmful Brain Activity Classification コンペでは「スカログラム」を利用しました
◆ スカログラム:音声をウェーブレット変換(CWT)で時間×周波数に分解したもの ◆ HMSコンペ:脳波EEGの解析コンペ、電極が18個あるデータ ◆ 周波数変換の使い方: 1電極データあたり40x625で生成し縦にスタック ◆ なんでこんな設定にしたのか?: ➢ 512x512にした理由: MaxViTに入れたかったから ➢ 横軸を625で生成した理由:時間解像度を上げて非定常性を極限まで観測しやすくしたかったから。512に近い数字に調整したかったから。 ➢ 縦軸を40で生成した理由:縦の情報はあんまりいらなかったから。18個スタックして512に近い数字に調整したかったから。 ➢ 縦に並べた理由:横の解像度を高くし、チャネル間の相関を見れる用にしたかったから(Jun koda method @ 飛行機雲コンペ)
2025/04/13 湘南kaggler会 12 図で見るとこんな違いが! ◆ 上段:スペクトログラム ➢ STFTによる、時間×周波数の構造が見える ◆ 中段:メルスペクトログラム
➢ 周波数軸が人間の聴覚に近いよう圧縮されてる ◆ 下段:スカログラム ➢ ウェーブレットで多解像度に分析、スケール軸で見える細かさが違う
2025/04/13 湘南kaggler会 13 おまけ:秘技superlets変換 (Used in HMS 1st place solution)
◆ STFT(短時間フーリエ変換)の問題 ➢ 点窓サイズ(解析する時間幅)を固定する必要がある ➢ そのせいで… ⚫ 窓が短い → 時間は細かく見えるが、周波数が粗い ⚫ 窓が長い → 周波数は細かく見えるが、時間がぼやける ➢ → 時間と周波数のトレードオフ ◆ Wavelet変換(CWT)の問題点 ➢ スケールに応じて時間幅を変える → 多解像度で便利 ➢ でも、1つのウェーブレット関数で分析するので… ⚫ 低周波では解像度が高いけど ⚫ 高周波になると時間も周波数も解像度が落ちる ➢ → 解像度が周波数依存で非対称、高周波が苦手 ◆ Superlets(スーパーレット変換)とは? ➢ 複数の異なるスケールのウェーブレットを組み合わす手法 ➢ 各周波数ごとに複数のスケールで解析し、幾何平均融合! ⚫ 高い時間解像度(細かい瞬間がわかる) ⚫ 高い周波数解像度(周波数の違いもわかる)を同時に実現! Superlets CWT STFT
2025/04/13 湘南kaggler会 14 今年も開催中!~2025/6/2まで!!