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
心電図画像から時系列信号を復元する:PhysioNetの取り組み紹介
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
someya takashi
August 07, 2026
2
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
心電図画像から時系列信号を復元する: PhysioNetの取り組み紹介
第6回 関東Kaggler会 発表資料
someya takashi
August 07, 2026
More Decks by someya takashi
See All by someya takashi
LLM Science Examにおけるデータ戦略まとめ
takashisomeya
2
780
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
980
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
200
My Coaching Mixtape
mlcsv
0
190
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
45k
Raft: Consensus for Rubyists
vanstee
141
7.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
A designer walks into a library…
pauljervisheath
211
24k
Mind Mapping
helmedeiros
PRO
1
300
Being A Developer After 40
akosma
91
590k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
Transcript
心電図画像から時系列信号を復元する: PhysioNetの取り組み紹介 2026年8月7日 第6回 関東Kaggler会 染谷隆史(Takashi Someya)
自己紹介 名前:Takashi Someya 略歴: • 大学、大学院では物理学を専攻 • 半導体の光物性研究 • 博士(理学)
• 博士研究員 • AIエンジニア • 受託開発、研究開発 趣味:ゲーム 画像 NLP 時系列 音声 Kaggle歴:4年 2
PhysioNet - Digitization of ECG Images テーマ:心電図画像から時系列信号を復元(デジタル化)する 評価指標: シグナルノイズ比(dB) =
10𝑙𝑜𝑔10 σ 信号強度2 σ(信号強度 − 予測値)2 4
PhysioNet - Digitization of ECG Images コンペの目的:なぜ心電図のデジタル化が必要なのか 医学研究への貢献 • 1903年、Willem
Einthovenが心電図装置を発明 • 紙の心電図には、地域・人口・時代にわたる心疾患の傾向が蓄積されている • これらをデジタル化すれば、大規模な集団を長期間にわたって追跡・比較する研究(コホート研究)が可能となり、心 疾患の発症リスクや経年変化に関する新たな知見が得られると期待される 新興国・途上国における医療の改善 • 先進国では心電図のデジタル化が進む一方、新興国・途上国では紙の心電図が依然として主流であり、特にグローバル サウスでは数十億にのぼる紙の心電図が存在すると推定される • デジタル化されたデータにAI解析を適用することで、これまで十分な診断環境がなかった地域でも心疾患の早期発見が 可能になり、グローバルな医療格差の解消につながる https://moody-challenge.physionet.org/2024/より 5
データ 学習データ :977枚 x 9パターン テストデータ:1000枚(パターンの割合は非開示) オリジナル 印刷+白黒スキャン 印刷+スマホ撮影 モニター投影+スマホ撮影
印刷+物理劣化+スマホ撮影 印刷+物理劣化+カビ+スマホ撮影 印刷+物理劣化+カビ+カラースキャン 印刷+物理劣化+カビ+白黒スキャン 6
心電図画像の見方 標準12誘導心電図 2.5秒 (3行 x 4列レイアウト) 10秒 第1列 第2列 第3列
第4列 1行目 I aVR V1 V4 2行目 II aVL V2 V5 3行目 III aVF V3 V6 4行目 II誘導のリズムストリップ(10秒) I, II, III, ...などを誘導(リード)と呼びます 7
アプローチ Stage0 荒い位置合わせ Stage1 細かい位置合わせ Stage2 回転補正 グリッド点検出 セグメンテーション キーポイント検出
歪み補正 後処理 入力 ホモグラフィ変換 画像レジストレーション 時系列抽出 9
画像レジストレーション 画像上のキーポイントをテンプレート画像の対応点に位置合わせする →リードマーカー、格子点 入力画像 画像レジストレーション 出力画像 (テンプレート画像に位置合わせ) テンプレート画像 10
画像レジストレーション 画像上のキーポイントをテンプレート画像の対応点に位置合わせする →リードマーカー(青点) 格子点(緑点) 例:入力画像のaVRリードマーカーとテンプレート画像のaVRリードマーカー 入力画像のn行目m列目の格子点とテンプレート画像のn行目m列目の格子点 入力画像 テンプレート画像 11
画像レジストレーション Stage0. 荒い位置合わせ RANSACでホモグラフィ行列の推定 ↓ キーポイント検出 ホモグラフィ変換 U-Net リードマーカーを検出(9点) aVR,
V1, V4, aVL, V2, V5, aVF, V3, V6 テンプレート画像の リードマーカー位置 12
画像レジストレーション Stage1. 細かい位置合わせ 格子点を検出 歪んだ格子を整列させる U-Net 格子点を検出 テンプレート画像の 格子点位置 13
画像レジストレーション 画像上のキーポイント座標をテンプレート画像の対応点に位置合わせする 例:格子点の歪み補正 https://www.medrxiv.org/content/10.1101/2024.08.31.24312876v1.full.pdf 14
画像レジストレーション ←位置合わせ前 位置合わせ後→ ↑縦軸、横軸のスケールが統一された! 15
アプローチ Stage0 荒い位置合わせ Stage1 細かい位置合わせ Stage2 回転補正 グリッド点検出 セグメンテーション キーポイント検出
歪み補正 後処理 入力 ホモグラフィ変換 画像レジストレーション 時系列抽出 16
画像から心電図波形の復元 画像レジストレーションによって、格子が整列し、ピクセルと電圧の変換ができるようになった 0 mV 79 pixel = 1 mV -0.18mV
0mV位置からのピクセル差を電圧値に変換することで心電図の時系列情報を復元できる → 信号線(黒線)のセグメンテーション問題と考える 17
マスクの作成方法 心電図波形(時系列データ) セグメンテーションマスク エンコード 心電図波形(時系列データ) デコード • リサンプリング • リサンプリング
• 信号→マスク • マスク→信号 SNRを計算(再構成誤差) モデル性能の上限 情報損失を抑えたエンコード・ デコードがポイント 18
マスクの作成方法(疎なマスク) 例:x = 0の場合 11.71の信号はy=11に0.29, y=12に0.71のマスクとしてエンコード 信号はマスクから11*0.29+12*0.71=11.71と加重平均を取ることでデコード 時系列→マスク→時系列の変換での情報損失は0 19
マスクの作成方法(疎なマスク) 黄色:教師マスク 緑色:モデルの予測結果 信号線(黒線)ではなく、信号線のサンプリング位置を直接モデルに学習させる 20
セグメンテーションモデル U-Net (Encoder: EfficientNet) + Fusion Module • アーキテクチャは所謂2.5Dモデル •
Series間に順序関係はないので、データ的には2.5Dではない • Series間の特徴量を混ぜる目的で本アーキテクチャを採用 21
心電図の関係性 時刻同期 誘導間の関係性 Einthoven’s Law II = I + III
誘導間で特徴量を Fusionする ※本発表では1行分をseriesと呼んでいます 22
Fusion Module • 誘導間の特徴量を相互参照 23
Fusion Module GT Fusion Moduleなし Fusion Moduleあり 24
アプローチ Stage0 荒い位置合わせ Stage1 細かい位置合わせ Stage2 回転補正 グリッド点検出 セグメンテーション キーポイント検出
歪み補正 後処理 入力 ホモグラフィ変換 画像レジストレーション 時系列抽出 25
妙だな... オリジナル画像 コンペデータを重畳 端点で画像上にはない信号が発生 ↓ FFTの痕跡? リサンプリングしている? 問題点 1. 学習への悪影響
2. コンペデータが正として評価 される 第3回関東kaggler会 妙だな... (Jun Koda) https://speakerdeck.com/junkoda/di-3hui-guan-dong-kagglerhui-miao-dana-dot-dot-dot-jun-koda 26
データセット作成のプロセス コンペデータの作成(主催者の方法) Subset selection & Resampling PTB-XL Dataset 500 Hz
マスクデータの作成 Resampling Competition Dataset 250 Hz, 256 Hz, 500 Hz, 512 Hz, 1000 Hz, 1025 Hz Resampleすることで元の信号情報が劣化する (特にダウンサンプリング時) 500 Hzのセグメンテーションマスク マスク位置が1 pixelずれることも 27
データセット作成のプロセス コンペデータの作成(本解法) マスクデータの作成 Subset selection PTB-XL Dataset 500 Hz Competition
Dataset 500 Hz Resampleをなくすことでマスク位置の一貫性が向上、 リンギングが発生しなくなる 500 Hzのセグメンテーションマスク LBスコア:21.67 dB → 22.49 dB 28
後処理:時系列信号のResampling 最終的にはマスク予測から復元した信号を指定の周波数に変換し、Submitする必要がある →250 Hz, 256 Hz, 500 Hz, 512 Hz,
1000 Hz, 1025 Hz 信号を劣化させない工夫 1. 2. リサンプリング手法 • scipy.signal.resample • scipy.signal.resample_poly • torch.nn.functional.interpolate を実験し、scipy.signal.resampleが最良 主催者が使った手法 画像の解像度(幅)を大きくする • サンプリング点数を多くする → 幅の解像度 = サンプリング点数 解像度2倍 • 解像度を周波数と合わせる 例:幅を5000にする(5000 = 500 Hz × 10秒) 指定周波数が500 Hzの場合、リサンプリングが不要になる 29
結果 30
まとめ:1ピクセルへのこだわり キーワード:サブピクセル精度 • 今回のコンペは評価指標がSNRであり、スコアの上限がない • 評価指標の特性を加味し、難しい例を改善するよりも、全体の平均を押し上げる戦略をとった • 1ピクセル未満(サブピクセル)の精度にこだわることがスコア改善に繋がった • 疎なマスク
(p. 19) • Fusion Moduleによる誘導間情報の相互参照 (p. 21, 23) • データセット作成の工夫 (p. 28) • 最適なリサンプリング手法の選択 (p. 29) • 高解像度画像入力 (p. 29) 31