時系列データ拡張は所定性能に必要な実被験者数を削減できるか

UCR ベンチマークでの系統評価と、被験者ID付きデータでの実証

自動生成レポート ・ 2026-08-24 06:52 UTC

時系列データ拡張が分類精度に与える効果を公開ベンチマークで評価し、その知見を被験者ID付きデータへ展開して「所定の分類性能に必要な実被験者数を、データ拡張でどれだけ削減できるか」を、誤検出に頑健な枠組みで定量した研究の公開レポート。

主結論: 拡張の効果はモデルに強く依存し、被験者数削減は本設定では統計的に確定できない。見かけの削減の多くは、ラベルを壊した対照でも同程度に再現される正則化アーティファクトである。

データセット 14 件 拡張手法 8 種 実験 2786 run(付録 630 run) 失敗 0 run

CSS・図(SVG)をすべて内包した単体ファイル(オフラインでも表示可能・追加の依存ファイル不要)。取引先への送付や社内共有はこのファイルをそのまま渡せばよい。

2026-08-26(水) 議論対象

① データセット   ② 拡張手法   ③ 学習と評価

当日はこの3タブの内容をベースに、どの公開データで・どんな予測タスクを解くかを議論する (トップページの論点 Q2 も参照)。

タブの案内

内容ごとにタブを分けている。各カードの見出しをクリックするとそのタブへ移動する。

レポート →

サーベイ [8] の内容解説と、その部分的な追試。研究の問い・評価枠組み・RQ1(精度効果)の結果・考察・限界をまとめた本文。

  • ・サーベイの手法分類 6 群のうち、本研究が触れた範囲と触れていない範囲
  • ・サーベイの主要な主張 5 件の追試状況(再現 3 件)
  • ・RQ1 の検定結果: 5 条件が多重比較補正後も有意

① 議論対象データセット →

評価に使った時系列データが「どんなデータか」を、全データセット同じ構成で説明する。

  • ・14 データセット(UCR 10 件 + 被験者ID付き 4 件)
  • ・計測状況・1レコードの構造(テーブル定義)・クラスの意味と実件数
  • ・実データから生成したクラス別波形・チャネル別波形・サンプル値の抜粋

② 議論対象拡張手法 →

評価した時系列データ拡張手法を1手法ずつ、同じ構成で解説する。

  • ・8 手法を 4 群(振幅摂動 / パターン合成 / 単純増量 / 対照)に整理
  • ・考え方・手順・ラベルの決め方・暗黙の前提・原論文からの実装差分
  • ・実験と同じ実装・同じパラメータで実データを拡張した入出力例

③ 議論対象学習と評価 →

データセットごとに、何を入力して何を当てるモデルを学習し、どの分割・どの指標で評価したかと、その結果。

  • ・14 データセット・計 2786 run
  • ・入力の形(チャネル×点 → クラス数)・評価の分割・モデル・条件の内訳
  • ・データセット単体の結果表と学習曲線

被験者数削減 →

本研究が独自に行った RQ2。所定の性能に必要な実被験者数を、拡張がどれだけ削減できるかを測る。

  • ・被験者ID付き 4 データセットでの評価と統合
  • ・negative control による「対照越え」判定
  • ・結論: 対照を明確に超えて実被験者を削減できたデータはない

付録: 非時系列データ →

軸が時間でない系列(画像輪郭・スペクトル)。時間領域の拡張の前提が成り立たないため主結果から除外した。

  • ・3 データセット・計 630 run(データ説明・結果とも収録)
  • ・除外の理由と post-hoc であることの開示
  • ・除外前後の検定比較と、判定が入れ替わった条件

再現・前処理ノート →

別環境で再現・移植するための実務情報。

  • ・再現手順 12 ステップ
  • ・前処理の補足と不定性 13 件、「エイヤッと決めた」判断 27 件
  • ・原論文からの実装差分

論点と残タスク

本研究の結論は「本設定では被験者数削減を確定できない」という帰無である。帰無を確定に 近づけるにも、逆に削減を示すにも、次の論点が残っている。優先度順に並べる。

Q1 反復数が足りず、必要被験者数 N* の信頼区間が広い 最優先 計画済み

なぜ論点か: 被験者数実験は各点3反復しかなく、点推定では削減が見えても信頼区間が対照と重なる。 本研究の中心的な主張(対照を超える削減がない)は、この幅の広さに支えられている部分が あり、反復を増やせば結論が変わりうる唯一の項目でもある。

次の一手: 各被験者数で10反復以上に増やし、検出力設計(どの削減幅なら検出できるか)を先に置く

関連する知見: F-8, F-10, F-12issue #7

Q2 どの公開データで、どんな予測タスクを解くべきか

なぜ論点か: 現在の対象は行動認識に偏り(UCI HAR / WISDM / PAMAP2)、非HAR は WESAD 1件で、それも 枠組みが転移せず near-chance だった。「拡張が実被験者を代替できるか」を問うには、 被験者ごとの計測が高コストで、かつタスクが実際に学習可能なデータが要る。

次の一手: 被験者ID付き・group split 可能・学習可能性が確認できる候補を、タスク定義とセットで洗い出す

関連する知見: F-13, F-14issue #21

Q3 拡張強度を1点に固定しており、「手法の効果」と「強度選択の効果」が交絡している

なぜ論点か: ratio・sigma・alpha・k・window は各手法1点のみ。ある手法が効かなかったのが手法自体の 性質なのか、たまたま選んだ強度が悪かったのかを分離できていない。

次の一手: 主要手法について強度スイープを行い、手法ごとの最良点と、点固定の結果との差を測る

関連する知見: F-5, F-6

Q4 negative control が label_shuffle 1本しかない

なぜ論点か: 対照越え判定の厳しさは対照の設計に依存する。label_shuffle は元データを保持したまま ラベルノイズを乗せる悲観的対照であり、純粋な量水増し(oversample)とは別の性質を持つ。 対照が1種類だと、判定基準の妥当性そのものを検証できない。

次の一手: 純ノイズ拡張・時間シャッフルなど、性質の異なる対照を追加して判定の頑健性を確かめる

関連する知見: F-10

Q5 生理信号に HAR 向けの前処理をそのまま当てているのは妥当か

なぜ論点か: WESAD が near-chance だった候補要因は、窓ごとz正規化が皮膚電気活動や体温の絶対レベル —— 生理信号の主要な情報 —— を消していることにある。前処理が原因なら、「信号種依存」と いう結論は前処理の選択の結論にすぎない可能性がある。

次の一手: 窓ごとz正規化の有無を切り替える ablation を行い、学習可能性が回復するかを見る

関連する知見: F-14issue #27

Q6 MiniRocket で拡張が効かない機序が分かっていない

なぜ論点か: 効果のモデル依存は再現できたが、なぜ効かないかは未解明。ランダム畳み込み特徴が拡張後の 変動をすでに捉えているのか、線形分類器が飽和しているのかで、示唆はまったく異なる。

次の一手: 特徴量空間で拡張前後の分布を比較し、変換後に差が残っているかを確かめる

関連する知見: F-6, F-11

Q7 生成モデル系の拡張(TimeGAN, Private Evolution 等)は本設定で有効か

なぜ論点か: 評価したのは古典的な変換・混合手法のみ。生成モデルは学習データ全体の分布を学ぶため、 少データでの振る舞いも、プライバシー上の含意も、本研究の手法群とは性質が異なる。

次の一手: 時系列への適用可能性と論点(計算コスト・再現性・評価の落とし穴)を先に整理する

issue #20

Q8 そもそもデータ拡張が「手元データから効率的に情報を得る」方策として合理的なのはどんな条件か

なぜ論点か: 本研究は個別手法の効果を測ったが、どんな条件なら拡張に期待してよいのかという上位の 問いには答えていない。帰無が続くなら、期待できる条件の側を先に定式化するほうが早い。

次の一手: 仮説を整理し、検証可能な形(どの条件で何が成り立てば支持されるか)に落とす

関連する知見: F-5, F-6, F-15issue #12

Q9 マルチモーダル(チャネル横断)の拡張は削減に効くか 保留中

なぜ論点か: チャネル間の関係を使う拡張は本研究で未評価。ただし測るには「多モーダル かつ 削減が 測定可能」なデータが要り、現状どのデータもその条件を満たさない。

次の一手: 多モーダルで N*(none) が格子内に収まり、かつ対照が明確に劣るデータが得られたら着手する

関連する知見: F-13, F-14, F-15issue #27

実行キューに未着手・実行中のタスクはない(77 件完了)。上の論点が次に拾う候補になる。

この研究で「言えないこと」の一覧はレポートタブ §8 限界にある。ここはそのうち、次に手を動かせるものを取り出したもの。

目的別の入口

本レポートの数値は実験結果ファイル(runs/・artifacts/)から自動生成されており、HTML への手入力は行っていない ・ 生成日時 2026-08-24 06:52 UTC

時系列データ拡張は所定性能に必要な実被験者数を削減できるか

UCR ベンチマークでの系統評価と被験者ID付きデータ(UCI HAR)での実証

信号データ拡張・論文追試プロジェクト ・ 自動生成レポート ・ 2026-08-24 06:52 UTC

このレポートの読み方

本タブ(レポート)はサーベイ [8] の内容解説と、その部分的な追試を扱う。データ・手法・データセット別の学習/評価・被験者数削減は、それぞれ独立したタブに分けた。

  • データセット: どんなデータか(計測状況・1レコードの構造・クラス・実波形)
  • 拡張手法: 各拡張が何をするか(考え方・手順・前提・入出力例)
  • 学習と評価: データセットごとに何を入力し何を当てるモデルを、どの分割・指標で評価したか、とその結果
  • 被験者数削減: 本研究が独自に行った RQ2(必要実被験者数の削減)の結果一式
  • 再現・前処理ノート: 再現手順・前処理の判断・原論文からの実装差分

要旨

本研究は、時系列データ拡張が分類精度に与える効果を UCR Time Series Classification Archive [1] の 10 データセット(取得した 13 件から、軸が時間でない 3 件を除いたもの)で系統的に評価し(被験者ID付きデータ 4 件を含め計 2786 run)、被験者ID付きデータ (UCI HAR [12])へ展開して「所定の分類性能に必要な実被験者数をデータ拡張でどれだけ削減できるか」を定量する。 1D-CNN では 5 手法の拡張が精度を統計的に有意に改善する一方、MiniRocket [4] では有意な改善が 見られず、効果はモデルに強く依存する。被験者数削減では、事前登録した目標精度 0.90 に必要な実被験者数は拡張なしで約 8.85 名であり、点推定では DTW ベース合成 [9] が最大 10.8% の削減を示すが、反復が少なく信頼区間が対照と重なるため確定できない。 この「削減を確定できない(帰無)」という結論は第2の被験者データ WISDM v1.1 [13] でも一貫して再現され(ただし最良手法の順位は再現せず、指標にも依存する)、第3の PAMAP2 [14] を加えた3データ横断でも母集団被験者数(5〜24名)に沿う系統トレンドは検出されない(PAMAP2 は少 N・高 baseline で左側打ち切り=削減率推定不能)。 さらに信号種を変えた第4データ WESAD [16](生理信号)では full-pool baseline が near-chance(乱ラベル対照と同水準)で、そもそも削減を論じる前提が成立せず、HAR 向け枠組みの非転移(信号種依存)が示された。 これら4データを統合すると、削減は測定可能なら帰無・それ以外は推定不能で、対照を明確に超えて実被験者を削減できたデータは1つも無い(以上の RQ2 の結果一式は「被験者数削減」タブ)。 したがって本設定ではデータ拡張による被験者数削減を統計的に確定できない。 本レポートの位置づけは、サーベイ [8] の内容解説とその部分的な追試(UCR での精度効果。サーベイ 128 データセットに対し本研究は 10 データセット)であり、被験者数削減の評価枠組みと negative control による健全性検証が本研究独自の貢献である。 すべての結果は目標の事前登録とデータリーク防止プロトコルの下で得られ、実験基盤・レポートは完全に自動生成される。

1. 序論

ラベル付き信号データ、とりわけ被験者ごとに計測が必要な生体・行動データの収集は高コストである。データ拡張は学習データを 人工的に水増しして少データ性能を補う代表的手法だが、時系列領域では効果が手法・データ・モデルに依存することが報告されている [8]。本研究はこの効果を公開データで追試したうえで、実応用上重要な問い——「拡張は実被験者の追加をどこまで代替できるか」——に答える。

先行研究として、Iwana & Uchida のサーベイ [8] は時系列データ拡張の効果がデータセット・モデルに依存し一様でないことを体系的に示した。 しかし多くの評価は「拡張が精度をどれだけ上げるか」に留まり、応用側で本当に問われる「拡張が実被験者の追加をどこまで代替できるか」を、 被験者単位の学習曲線と対照実験によって定量した研究は乏しい。本研究はこの空隙を埋める。

本研究の貢献は以下のとおり。

  1. 追試 UCR [1] 10 データセット × 7 拡張 × 2 モデル × 学習比率 5 段階での精度効果の系統評価と、多重比較補正付きの有意性検定(§6.1)。先行研究 [8] の傾向を公開データで確認する。
  2. 独自 被験者単位の学習曲線から必要被験者数 N* を推定し、削減率・等価被験者数・信頼区間を与える評価枠組みを本研究の提案として定式化する(§3、目標性能は事前登録)。
  3. 独自 対照(negative control)による健全性検証。見かけの削減が、ラベルを壊す・量だけ増やす対照でも再現されることを示し、削減主張に「対照越え」を課す(§3.3、§6.3)。
  4. 独自 リーク防止・run manifest・監査・レポート生成まで完全自動化した再現可能な実験基盤(再現手順は再現・前処理ノートタブ)。

以降、§1.5 でサーベイ [8] の内容と本研究が追試した範囲・していない範囲を整理し、§2 で問題を形式的に設定、§3 で提案する評価枠組みを述べる。 §4 に評価対象の既存拡張手法、§5 に実験設計、§6 に RQ1(精度効果)の結果、§7–§9 に考察・限界・まとめを示す。 RQ2(被験者数削減)の結果はデータセット横断で量が多いため独立タブに、データセットごとの学習・評価条件と個別結果も独立タブに分けた。

1.5 サーベイ [8] の内容と、本研究の追試範囲

時系列分類向けデータ拡張手法を体系的に整理し、UCR アーカイブ128データセット上で ニューラルネット分類器と組み合わせて横断評価した実証サーベイ。手法を変換の種類で 分類し、「どの手法がどの条件で効くか」はデータセットとモデルに強く依存する、という のが中心的な結論。

本レポートはこのサーベイの内容を解説したうえで、その一部を独立に追試する。追試の範囲は UCR の 13 データセット × 拡張 7 種 × モデル 2 種で、サーベイの規模(128データセット)には 及ばない。そのうえで、サーベイが扱っていない「必要実被験者数の削減」という応用側の問いを 被験者ID付きデータで独自に評価した(別タブ)。

1.5.1 手法の分類体系と本研究のカバレッジ

サーベイは拡張手法を変換の種類で分類する。本研究が触れたのは 2 群のみで、残りは未評価である。

サーベイの分類内容本研究未評価の範囲
Magnitude domain(振幅領域の変換) 値そのものを変換する。jittering(ノイズ付加)・scaling(振幅倍率)・magnitude warping など。 一部評価 jitter, scaling magnitude warping・rotation・permutation などの残りの変換は未評価。
Time domain(時間領域の変換) 時間軸を変換する。time warping・window slicing・window warping など。 未評価 時間軸そのものを歪める手法は本研究では単独評価していない。DTW ベース合成が時間整列を 使うが、これはパターン合成として扱っており、time warping の追試ではない。
Frequency domain(周波数領域の変換) フーリエ変換等で周波数成分を操作する。 未評価 未評価。
Pattern mixing(サンプル間の混合) 複数サンプルを混ぜて新しいサンプルを作る。SMOTE・mixup・DTW ベース平均(DBA 等)。 一部評価 mixup, dtw, smote DBA による重み付き重心合成(原法)は簡略版で代替。
Generative models(生成モデル) GAN・VAE 等で学習した生成器から合成サンプルを得る。 未評価 TimeGAN 等は未実装。計算コストと再現性の観点から本研究の範囲外とした。
Decomposition(分解に基づく手法) EMD・STL 等で成分分解し、成分を入れ替えて合成する。 未評価 未評価。

表1: サーベイの手法分類と本研究のカバレッジ。各手法の詳細は「拡張手法」タブ

1.5.2 サーベイの主張と追試の結果

#サーベイの主張本研究根拠と補足
C1 拡張の効果はデータセットに強く依存し、全データセットで一貫して効く手法は存在しない。 再現 F-1F-2F-5F-7 13データセット横断でも、同一手法の効果はデータセットによって符号が変わる。フル学習データ条件 では改善は小さく、悪化する組合せもある。
C2 拡張の効果はモデル(分類器)にも依存する。 再現 F-5F-6 1D-CNN では複数手法が多重比較補正後も有意に改善する一方、MiniRocket ではどの手法も有意でない。 サーベイの「モデル依存」をモデル2種の対比として明確に再現した。
C3 学習データが少ない条件ほど拡張の相対的な効き目が大きい。 再現 F-7 学習比率スイープ(10〜100%)で、中〜低比率での効果が相対的に大きい傾向を確認。
C4 単純な手法(jittering 等)でも、複雑な手法に劣らない場合がある。 部分的 F-5 本研究の範囲では pattern 系(mixup/dtw/smote)が 1D-CNN で上位だったが、順位は指標に依存し、 反復数も少ないため「単純 vs 複雑」の優劣は結論づけない。
C5 拡張手法の選択はデータセットの性質(クラス数・系列長・ドメイン)に応じて行うべき。 未検証 データセット性質と最適手法の対応づけには、より多くのデータセットと反復が要る。本研究は 13データセットでの傾向確認に留まり、選択指針は導出していない。

表2: サーベイの主要な主張 5 件のうち 3 件を本研究の範囲で再現した。データセットごとの学習・評価条件と結果は「学習と評価」タブ

1.5.3 サーベイを越えて本研究が独自に行ったこと

  • 独自 必要実被験者数(N*)の削減という評価軸: サーベイは精度改善を評価軸とする。本研究は被験者単位の学習曲線から「目標性能に必要な 実被験者数」を推定し、拡張がそれをどれだけ減らせるかを直接測る枠組みを定式化した。
  • 独自 negative control による「対照越え」判定: 見かけの削減が、ラベルを壊した対照や単純増量でも同程度に再現されることを示し、削減の主張に 対照を超えることを課した。これは精度改善の評価では使われていない健全性チェック。
  • 独自 事前登録とリーク防止の運用: 目標性能を結果を見る前に固定し、被験者非跨り分割・test 不使用をコードで検査する運用を 実験基盤に組み込んだ。

これらの結果は「被験者数削減」タブにまとめた。

2. 問題設定

被験者ID付きの信号分類データを考える。被験者集合 S から学習に用いる被験者部分集合 Strain ⊆ S を選び、その被験者に由来する系列で分類器を学習する。テストは Strain被験者が重ならない固定の held-out(評価用に取り置く) 集合で行う(被験者跨ぎのリークを排除)。データ拡張 A は学習データにのみ適用し、合成系列を追加して学習集合を水増しする。

本研究の研究課題と仮説を次のように定める。

  • RQ1(精度効果): 時系列拡張は分類精度をどの条件で改善するか(手法・モデル・学習データ量への依存)。
  • RQ2(被験者数削減): 所定の目標性能 τ の達成に必要な実被験者数を、拡張はどれだけ削減できるか。
  • H1: 拡張の効果は低データ条件で相対的に大きい。
  • H2: 効果はデータ・モデルに依存し一様でない。
  • H3: 拡張は実被験者の追加を部分的に代替する(必要被験者数を減らす)。

RQ2 を測るため、必要被験者数 N*(A) を「学習被験者数 N を増やしたとき、拡張 A の下でテスト性能が初めて目標 τ を超える N」と定義する。 拡張なしの基準 N*(none) に対し、削減率 = 1 − N*(A) / N*(none)等価被験者数(節約数)= N*(none) − N*(A) を評価量とする。 目標 τ は結果を見る前に事前登録する(§3.2)。削減率は必ず対照と比較して解釈する(§3.3)。

3. 提案手法:被験者数削減の評価枠組み

本研究が提案するのは新しいデータ拡張手法ではなく、拡張が「実被験者の追加をどこまで代替するか」を誤検出に頑健な形で測る評価枠組みである。 枠組みは (i) 被験者単位の学習曲線からの N* 推定、(ii) 目標性能の事前登録、(iii) negative control による「対照越え」判定、の 3 要素からなる。

3.1 被験者数学習曲線と N* 推定

学習被験者数 N を段階的に増やし(各 N で複数の被験者部分集合を seed 固定で抽選)、固定 held-out test 上の精度を測って学習曲線を描く。 拡張手法ごとに曲線を求め、目標 τ を最初に超える点を線形補間して N* を推定する。反復抽選の分散から bootstrap(再標本による区間推定)で N* の 95% 信頼区間を与える。 同一被験者が学習とテストに跨らない group split をコードで検査し、拡張は各部分集合の学習データにのみ当てる。

3.2 目標性能の事前登録

目標 τ を結果に合わせて選ぶと削減率をいくらでも都合よくできる。これを防ぐため、τ・指標・評価手続きを1 run も実行する前に登録する (artifacts/pre_registration.md)。本研究では指標 = test accuracy、τ = 0.90 を採用した。この値は UCI HAR で Anguita ら [12] が報告した水準に基づく文献由来の丸い値であり、結果を見てからの調整は行っていない。

3.3 Negative control と「対照越え」判定

少データでは、量を単純に増やす・ラベルを壊すといった操作でも見かけ上 N* が下がりうる。そこで対照 label_shuffle——正しいラベルの元データを残し複製分にだけ乱ラベルを与える(元データ保持+ラベルノイズ)悲観的対照——を同じ枠組みに通し、そこで生じる「見かけの削減率」をノイズ床とみなす。ある拡張の削減主張は、 点推定がこの対照(および純粋な量の水増しである oversample)を明確に上回り、かつ信頼区間が分離して初めて支持される(対照越え基準)。この基準により、正則化や偶然の変動によるアーティファクトを真の削減と取り違えることを防ぐ。

5. 実験設計

5.1 データセット

UCR アーカイブ [1] から小〜中規模の 10 データセットで RQ1 を評価し(取得した 13 件のうち、軸が時間でない 3 件は主結果から除外し付録タブに移した)、RQ2(被験者数削減)の主対象には 被験者ID付きの UCI HAR [12](30名)を、第2の被験者データに WISDM v1.1 [13](36名)を選定した(計 14 データセット)。 各データセットの中身・1レコードの構造・実波形は「データセット」タブにある。

名前ソース備考
ECG5000ucrUCR archive. 5000 heartbeats, 5 classes, length 140.
FordAucrUCR archive. Engine noise classification, 2 classes, length 500.
GunPointucrUCR archive. Motion capture, 2 classes, length 150.
ECG200ucrECG, 2 classes, 100 train.
TwoLeadECGucrECG, 2 classes, 23 train (intrinsically low-data).
ItalyPowerDemanducrPower demand, 2 classes, 67 train, length 24.
MoteStrainucrSensor, 2 classes, 20 train.
SonyAIBORobotSurface1ucrRobot accelerometer, 2 classes, 20 train.
CBFucrSimulated (Cylinder-Bell-Funnel), 3 classes, 30 train.
WaferucrSemiconductor sensor, 2 classes, 1000 train, imbalanced.

表2: RQ1 で使用した UCR データセット(軸が時間でない 3 件は付録タブに分離した)。この他に、ネットワーク不要の動作確認(smoke)専用の合成データが config にあるが、モデル評価には一切用いないため本表・全集計から除いている。

5.2 モデル

名前種類パラメータ
cnn1dcnn1d{'epochs': 100, 'patience': 15, 'batch_size': 32, 'lr': 0.001, 'val_fraction': 0.2, 'hidden': 64}
cnn1d_smokecnn1d{'epochs': 15, 'patience': 5, 'batch_size': 16, 'lr': 0.001, 'val_fraction': 0.25, 'hidden': 16}
cnn1d_harcnn1d{'epochs': 40, 'patience': 8, 'batch_size': 64, 'lr': 0.001, 'val_fraction': 0.2, 'hidden': 64}
minirocketminirocket{'n_kernels': 10000}
minirocket_smokeminirocket{'n_kernels': 500}

表3: モデル。1D-CNN は標準的な深層ベースライン [10]、MiniRocket [4] は ROCKET [3] 系の高速な変換ベース手法。_smoke/_har 付き構成は計算量調整のための軽量版。

5.3 評価プロトコルとリーク防止

  • データ拡張・スケーリング等の当てはめは学習データにのみ適用し、テストデータには一切触れない。
  • UCR の公式 train/test 分割をそのまま用いる。学習側が極端に小さい分割(例: CBF は train 30 / test 900)も再分割しない。既発表の数値と比較可能にするためであり、test を学習側に回す操作は分割の選択自体が結果に依存しうるため行わない。学習量の影響は、学習比率スイープ(§6.2)で学習側だけを縮小して測る。
  • 被験者データでは同一被験者が train と test を跨がない group split を用い、コードで disjoint 性を検査する。
  • 目標性能は結果を見る前に事前登録する(§3.2、artifacts/pre_registration.md)。
  • 乱数 seed は run 単位で固定(分割・拡張・初期化に適用)し、全 run に一意 run_id と manifest を付す。

5.4 統計手法

拡張なし(none)との対比較は Wilcoxon 符号順位検定で行い、多重比較は Holm–Bonferroni 法(step-down)で補正して 有意水準 α=0.05 を判定する。被験者数削減の N* は学習曲線の線形補間で推定し、反復にわたる bootstrap で 95% 信頼区間を与える(§3.1)。

6. 実験結果(RQ1: 精度効果)

本節はサーベイの追試部分にあたる RQ1(拡張が精度をどの条件で改善するか)を扱う。 RQ2(必要実被験者数の削減)の結果は「被験者数削減」タブ、 データセット単体の学習・評価条件と結果は「学習と評価」タブにある。

6.1 精度と有意性(RQ1)

学習比率 100% での seed 平均精度と拡張なしとの差分 Δ は、データセット×拡張×モデルの全 168 条件ぶんあるため表4に畳んだ。 個々のデータセットを読むなら「学習と評価」タブのほうが、そのデータの問題設定・評価条件と並べて見られる。学習比率スイープは §6.2 の図で示す。

改善が大きかった条件

  • MoteStrain / mixup / cnn1d +25.1pt
  • MoteStrain / dtw / cnn1d +24.7pt
  • CBF / smote / cnn1d +23.9pt

悪化が大きかった条件

  • TwoLeadECG / smote / cnn1d -16.6pt
  • PAMAP2 / label_shuffle / cnn1d_har -13.8pt
  • GunPoint / dtw / cnn1d -9.1pt

同一手法でも条件によって符号が変わる。これは個々の条件の点推定であり、有意性は表5の検定で判断する(少データのデータセットでは1件の増減が数pt動く)。

表4: 全 168 条件の精度を開く
データセット拡張モデル 精度Δ vs nonemacro-F1bal. acc.
CBFdtwcnn1d 0.9619 ± 0.0072 -0.0118 0.9616 0.9619
CBFdtwminirocket 0.9967 ± 0.0000 -0.0014 0.9967 0.9967
CBFjittercnn1d 0.9804 ± 0.0013 +0.0067 0.9803 0.9804
CBFjitterminirocket 0.9978 ± 0.0000 -0.0003 0.9978 0.9978
CBFmixupcnn1d 0.9756 ± 0.0051 +0.0019 0.9755 0.9756
CBFmixupminirocket 0.9974 ± 0.0006 -0.0007 0.9974 0.9974
CBFnonecnn1d 0.9737 ± 0.0139 0.9735 0.9737
CBFnoneminirocket 0.9981 ± 0.0006 0.9982 0.9981
CBFoversamplecnn1d 0.9822 ± 0.0019 +0.0085 0.9822 0.9822
CBFoversampleminirocket 0.9981 ± 0.0006 +0.0000 0.9982 0.9981
CBFscalingcnn1d 0.9807 ± 0.0028 +0.0070 0.9807 0.9808
CBFscalingminirocket 0.9978 ± 0.0000 -0.0003 0.9978 0.9978
CBFsmotecnn1d 0.9626 ± 0.0117 -0.0111 0.9625 0.9626
CBFsmoteminirocket 0.9967 ± 0.0000 -0.0014 0.9967 0.9967
ECG200dtwcnn1d 0.8367 ± 0.0252 +0.0167 0.8136 0.8015
ECG200dtwminirocket 0.8867 ± 0.0058 -0.0166 0.8754 0.8709
ECG200jittercnn1d 0.8267 ± 0.0058 +0.0067 0.8064 0.7998
ECG200jitterminirocket 0.8867 ± 0.0115 -0.0166 0.8749 0.8689
ECG200mixupcnn1d 0.8467 ± 0.0058 +0.0267 0.8257 0.8134
ECG200mixupminirocket 0.8933 ± 0.0208 -0.0100 0.8831 0.8802
ECG200nonecnn1d 0.8200 ± 0.0300 0.7935 0.7824
ECG200noneminirocket 0.9033 ± 0.0058 0.8940 0.8900
ECG200oversamplecnn1d 0.8500 ± 0.0265 +0.0300 0.8301 0.8200
ECG200oversampleminirocket 0.8933 ± 0.0058 -0.0100 0.8828 0.8782
ECG200scalingcnn1d 0.8267 ± 0.0153 +0.0067 0.8039 0.7937
ECG200scalingminirocket 0.8933 ± 0.0058 -0.0100 0.8822 0.8762
ECG200smotecnn1d 0.8700 ± 0.0200 +0.0500 0.8579 0.8559
ECG200smoteminirocket 0.8967 ± 0.0306 -0.0066 0.8860 0.8808
ECG5000dtwcnn1d 0.9377 ± 0.0035 -0.0037 0.5747 0.5399
ECG5000dtwminirocket 0.9398 ± 0.0009 -0.0051 0.6127 0.5888
ECG5000jittercnn1d 0.9381 ± 0.0006 -0.0033 0.5494 0.5187
ECG5000jitterminirocket 0.9431 ± 0.0021 -0.0018 0.6192 0.5745
ECG5000mixupcnn1d 0.9376 ± 0.0026 -0.0038 0.5525 0.5243
ECG5000mixupminirocket 0.9435 ± 0.0013 -0.0014 0.6241 0.5859
ECG5000nonecnn1d 0.9414 ± 0.0020 0.5566 0.5237
ECG5000noneminirocket 0.9449 ± 0.0007 0.5948 0.5451
ECG5000oversamplecnn1d 0.9392 ± 0.0020 -0.0022 0.5529 0.5220
ECG5000oversampleminirocket 0.9445 ± 0.0008 -0.0004 0.6203 0.5713
ECG5000scalingcnn1d 0.9370 ± 0.0029 -0.0044 0.5494 0.5207
ECG5000scalingminirocket 0.9456 ± 0.0005 +0.0007 0.6257 0.5794
ECG5000smotecnn1d 0.9331 ± 0.0050 -0.0083 0.5498 0.5243
ECG5000smoteminirocket 0.9441 ± 0.0008 -0.0008 0.6192 0.5758
FordAdtwcnn1d 0.9369 ± 0.0016 +0.0023 0.9369 0.9375
FordAdtwminirocket 0.9374 ± 0.0009 -0.0116 0.9373 0.9373
FordAjittercnn1d 0.9356 ± 0.0046 +0.0010 0.9356 0.9357
FordAjitterminirocket 0.9235 ± 0.0087 -0.0255 0.9234 0.9234
FordAmixupcnn1d 0.9351 ± 0.0009 +0.0005 0.9351 0.9352
FordAmixupminirocket 0.9348 ± 0.0040 -0.0142 0.9348 0.9349
FordAnonecnn1d 0.9346 ± 0.0032 0.9345 0.9345
FordAnoneminirocket 0.9490 ± 0.0016 0.9489 0.9488
FordAoversamplecnn1d 0.9346 ± 0.0004 +0.0000 0.9345 0.9345
FordAoversampleminirocket 0.9136 ± 0.0066 -0.0354 0.9135 0.9134
FordAscalingcnn1d 0.9318 ± 0.0015 -0.0028 0.9317 0.9317
FordAscalingminirocket 0.9260 ± 0.0054 -0.0230 0.9259 0.9259
FordAsmotecnn1d 0.9366 ± 0.0029 +0.0020 0.9366 0.9369
FordAsmoteminirocket 0.9447 ± 0.0008 -0.0043 0.9447 0.9447
GunPointdtwcnn1d 0.9889 ± 0.0034 +0.0000 0.9889 0.9889
GunPointdtwminirocket 0.9978 ± 0.0034 +0.0000 0.9978 0.9977
GunPointjittercnn1d 0.9911 ± 0.0138 +0.0022 0.9911 0.9910
GunPointjitterminirocket 0.9978 ± 0.0034 +0.0000 0.9978 0.9978
GunPointmixupcnn1d 0.9933 ± 0.0000 +0.0044 0.9933 0.9934
GunPointmixupminirocket 0.9956 ± 0.0034 -0.0022 0.9956 0.9956
GunPointnonecnn1d 0.9889 ± 0.0172 0.9889 0.9887
GunPointnoneminirocket 0.9978 ± 0.0034 0.9978 0.9977
GunPointoversamplecnn1d 1.0000 ± 0.0000 +0.0111 1.0000 1.0000
GunPointoversampleminirocket 0.9978 ± 0.0034 +0.0000 0.9978 0.9977
GunPointscalingcnn1d 0.9978 ± 0.0034 +0.0089 0.9978 0.9977
GunPointscalingminirocket 1.0000 ± 0.0000 +0.0022 1.0000 1.0000
GunPointsmotecnn1d 0.9978 ± 0.0034 +0.0089 0.9978 0.9978
GunPointsmoteminirocket 0.9978 ± 0.0034 +0.0000 0.9978 0.9977
ItalyPowerDemanddtwcnn1d 0.9556 ± 0.0115 -0.0020 0.9556 0.9556
ItalyPowerDemanddtwminirocket 0.9627 ± 0.0020 -0.0020 0.9627 0.9627
ItalyPowerDemandjittercnn1d 0.9589 ± 0.0011 +0.0013 0.9589 0.9588
ItalyPowerDemandjitterminirocket 0.9634 ± 0.0022 -0.0013 0.9634 0.9634
ItalyPowerDemandmixupcnn1d 0.9517 ± 0.0020 -0.0059 0.9517 0.9517
ItalyPowerDemandmixupminirocket 0.9627 ± 0.0034 -0.0020 0.9627 0.9627
ItalyPowerDemandnonecnn1d 0.9576 ± 0.0115 0.9576 0.9575
ItalyPowerDemandnoneminirocket 0.9647 ± 0.0006 0.9647 0.9647
ItalyPowerDemandoversamplecnn1d 0.9598 ± 0.0048 +0.0022 0.9598 0.9598
ItalyPowerDemandoversampleminirocket 0.9647 ± 0.0020 +0.0000 0.9647 0.9647
ItalyPowerDemandscalingcnn1d 0.9598 ± 0.0062 +0.0022 0.9598 0.9598
ItalyPowerDemandscalingminirocket 0.9637 ± 0.0022 -0.0010 0.9637 0.9637
ItalyPowerDemandsmotecnn1d 0.9618 ± 0.0037 +0.0042 0.9618 0.9618
ItalyPowerDemandsmoteminirocket 0.9634 ± 0.0006 -0.0013 0.9634 0.9634
MoteStraindtwcnn1d 0.8954 ± 0.0021 +0.2016 0.8940 0.8920
MoteStraindtwminirocket 0.9271 ± 0.0028 -0.0085 0.9260 0.9233
MoteStrainjittercnn1d 0.8922 ± 0.0050 +0.1984 0.8911 0.8899
MoteStrainjitterminirocket 0.9302 ± 0.0026 -0.0054 0.9294 0.9275
MoteStrainmixupcnn1d 0.8890 ± 0.0152 +0.1952 0.8869 0.8842
MoteStrainmixupminirocket 0.9310 ± 0.0060 -0.0046 0.9302 0.9284
MoteStrainnonecnn1d 0.6938 ± 0.2127 0.6346 0.6986
MoteStrainnoneminirocket 0.9356 ± 0.0032 0.9349 0.9332
MoteStrainoversamplecnn1d 0.8903 ± 0.0069 +0.1965 0.8892 0.8881
MoteStrainoversampleminirocket 0.9369 ± 0.0028 +0.0013 0.9362 0.9346
MoteStrainscalingcnn1d 0.8978 ± 0.0035 +0.2040 0.8969 0.8960
MoteStrainscalingminirocket 0.9430 ± 0.0018 +0.0074 0.9425 0.9412
MoteStrainsmotecnn1d 0.8930 ± 0.0070 +0.1992 0.8916 0.8896
MoteStrainsmoteminirocket 0.9252 ± 0.0033 -0.0104 0.9242 0.9218
PAMAP2dtwcnn1d_har 0.7815 ± 0.0378 +0.0167 0.7700 0.7689
PAMAP2label_shufflecnn1d_har 0.6265 ± 0.0645 -0.1383 0.5413 0.5648
PAMAP2mixupcnn1d_har 0.7685 ± 0.0470 +0.0037 0.7488 0.7523
PAMAP2nonecnn1d_har 0.7648 ± 0.0372 0.7400 0.7317
PAMAP2oversamplecnn1d_har 0.7673 ± 0.0376 +0.0025 0.7366 0.7383
PAMAP2scalingcnn1d_har 0.7685 ± 0.0344 +0.0037 0.7395 0.7356
PAMAP2smotecnn1d_har 0.7769 ± 0.0333 +0.0121 0.7569 0.7505
SonyAIBORobotSurface1dtwcnn1d 0.9434 ± 0.0116 +0.1464 0.9430 0.9504
SonyAIBORobotSurface1dtwminirocket 0.8314 ± 0.0133 +0.0150 0.8313 0.8508
SonyAIBORobotSurface1jittercnn1d 0.9190 ± 0.0173 +0.1220 0.9187 0.9291
SonyAIBORobotSurface1jitterminirocket 0.8131 ± 0.0035 -0.0033 0.8129 0.8348
SonyAIBORobotSurface1mixupcnn1d 0.9229 ± 0.0171 +0.1259 0.9226 0.9325
SonyAIBORobotSurface1mixupminirocket 0.8170 ± 0.0044 +0.0006 0.8168 0.8380
SonyAIBORobotSurface1nonecnn1d 0.7970 ± 0.1656 0.7889 0.8222
SonyAIBORobotSurface1noneminirocket 0.8164 ± 0.0019 0.8162 0.8377
SonyAIBORobotSurface1oversamplecnn1d 0.9224 ± 0.0222 +0.1254 0.9221 0.9320
SonyAIBORobotSurface1oversampleminirocket 0.8131 ± 0.0053 -0.0033 0.8128 0.8350
SonyAIBORobotSurface1scalingcnn1d 0.9107 ± 0.0241 +0.1137 0.9105 0.9218
SonyAIBORobotSurface1scalingminirocket 0.8087 ± 0.0029 -0.0077 0.8083 0.8309
SonyAIBORobotSurface1smotecnn1d 0.9373 ± 0.0269 +0.1403 0.9370 0.9451
SonyAIBORobotSurface1smoteminirocket 0.8203 ± 0.0246 +0.0039 0.8201 0.8408
TwoLeadECGdtwcnn1d 0.9880 ± 0.0125 +0.1615 0.9880 0.9880
TwoLeadECGdtwminirocket 0.9962 ± 0.0013 +0.0015 0.9962 0.9962
TwoLeadECGjittercnn1d 0.9912 ± 0.0079 +0.1647 0.9912 0.9912
TwoLeadECGjitterminirocket 0.9965 ± 0.0000 +0.0018 0.9965 0.9965
TwoLeadECGmixupcnn1d 0.9944 ± 0.0028 +0.1679 0.9944 0.9944
TwoLeadECGmixupminirocket 0.9944 ± 0.0005 -0.0003 0.9944 0.9944
TwoLeadECGnonecnn1d 0.8265 ± 0.2824 0.7708 0.8263
TwoLeadECGnoneminirocket 0.9947 ± 0.0018 0.9947 0.9947
TwoLeadECGoversamplecnn1d 0.9792 ± 0.0159 +0.1527 0.9792 0.9792
TwoLeadECGoversampleminirocket 0.9959 ± 0.0013 +0.0012 0.9959 0.9959
TwoLeadECGscalingcnn1d 0.9792 ± 0.0096 +0.1527 0.9792 0.9792
TwoLeadECGscalingminirocket 0.9977 ± 0.0010 +0.0030 0.9977 0.9977
TwoLeadECGsmotecnn1d 0.9748 ± 0.0315 +0.1483 0.9748 0.9749
TwoLeadECGsmoteminirocket 0.9962 ± 0.0013 +0.0015 0.9962 0.9962
UCI_HARdtwcnn1d_har 0.9127 ± 0.0352 +0.0018 0.9135 0.9141
UCI_HARlabel_shufflecnn1d_har 0.8994 ± 0.0288 -0.0115 0.8996 0.9004
UCI_HARmixupcnn1d_har 0.9093 ± 0.0361 -0.0016 0.9103 0.9106
UCI_HARnonecnn1d_har 0.9109 ± 0.0402 0.9121 0.9126
UCI_HARoversamplecnn1d_har 0.9076 ± 0.0390 -0.0033 0.9091 0.9089
UCI_HARscalingcnn1d_har 0.9163 ± 0.0303 +0.0054 0.9176 0.9175
UCI_HARsmotecnn1d_har 0.9081 ± 0.0401 -0.0028 0.9094 0.9096
WESADdtwcnn1d_har 0.5317 ± 0.0477 +0.0002 0.4881 0.5103
WESADlabel_shufflecnn1d_har 0.5617 ± 0.0606 +0.0302 0.4878 0.5126
WESADmixupcnn1d_har 0.5111 ± 0.0468 -0.0204 0.4716 0.5043
WESADnonecnn1d_har 0.5315 ± 0.0434 0.4809 0.5074
WESADoversamplecnn1d_har 0.5283 ± 0.0440 -0.0032 0.4861 0.5123
WESADscalingcnn1d_har 0.5268 ± 0.0426 -0.0047 0.4845 0.5129
WESADsmotecnn1d_har 0.5289 ± 0.0489 -0.0026 0.4846 0.5127
WISDMdtwcnn1d_har 0.7395 ± 0.1259 -0.0054 0.6761 0.7346
WISDMlabel_shufflecnn1d_har 0.7093 ± 0.1300 -0.0356 0.5665 0.5841
WISDMmixupcnn1d_har 0.7477 ± 0.1195 +0.0028 0.6806 0.7368
WISDMnonecnn1d_har 0.7449 ± 0.1181 0.6747 0.7288
WISDMoversamplecnn1d_har 0.7404 ± 0.1220 -0.0045 0.6708 0.7282
WISDMscalingcnn1d_har 0.7469 ± 0.1267 +0.0020 0.6745 0.7295
WISDMsmotecnn1d_har 0.7492 ± 0.1345 +0.0043 0.6839 0.7349
Waferdtwcnn1d 0.9979 ± 0.0011 +0.0021 0.9945 0.9909
Waferdtwminirocket 0.9987 ± 0.0002 +0.0003 0.9966 0.9962
Waferjittercnn1d 0.9951 ± 0.0009 -0.0007 0.9869 0.9772
Waferjitterminirocket 0.9971 ± 0.0007 -0.0013 0.9926 0.9924
Wafermixupcnn1d 0.9960 ± 0.0012 +0.0002 0.9894 0.9817
Wafermixupminirocket 0.9970 ± 0.0004 -0.0014 0.9922 0.9895
Wafernonecnn1d 0.9958 ± 0.0015 0.9890 0.9816
Wafernoneminirocket 0.9984 ± 0.0004 0.9959 0.9952
Waferoversamplecnn1d 0.9968 ± 0.0008 +0.0010 0.9916 0.9852
Waferoversampleminirocket 0.9985 ± 0.0002 +0.0001 0.9961 0.9952
Waferscalingcnn1d 0.9977 ± 0.0007 +0.0019 0.9939 0.9894
Waferscalingminirocket 0.9982 ± 0.0006 -0.0002 0.9952 0.9939
Wafersmotecnn1d 0.9969 ± 0.0008 +0.0011 0.9917 0.9855
Wafersmoteminirocket 0.9971 ± 0.0007 -0.0013 0.9926 0.9922

表4: 学習比率 100% の主要結果(全 3420 run のうち完了分から集計)。macro-F1 はクラス不均衡なデータ(例 ECG5000)で精度より低くなる。 bal. acc.(balanced accuracy)はクラスごとの再現率の平均で、少数クラスを多数クラスと対等に扱う指標。

RQ1 の答えにあたるのは次の表5 である。Wilcoxon 検定の結果を示す。各行は拡張手法×モデルで、同一(データセット・seed・学習比率)のペア精度差を none と比較したもの。 p 値は Holm–Bonferroni 補正済み。5 条件が α=0.05 で有意であり、いずれも 1D-CNN であった。 集計対象は Phase 2 の 12 データセットのうち、軸が時間である 9 件(非時系列 3 件は付録タブ。除外前の同じ検定と、判定が入れ替わる境界条件も付録に併記した)。

拡張モデル平均Δnp (補正後)有意
oversamplecnn1d +0.0409 135 0.00655
mixupcnn1d +0.0483 135 0.00816
dtwcnn1d +0.0465 135 0.0141
scalingcnn1d +0.0306 135 0.0302
jittercnn1d +0.0355 135 0.05
smotecnn1d +0.0335 135 0.0507
smoteminirocket -0.0027 135 0.264
oversampleminirocket +0.0040 135 0.709
mixupminirocket -0.0006 135 0.766
dtwminirocket +0.0005 135 0.766
jitterminirocket +0.0014 135 0.766
scalingminirocket +0.0015 135 0.766

表5: 拡張なしとの Wilcoxon 検定(Holm 補正)。効果量(平均Δ)と有意性は別物として読む。 注: n=180 のペアは入れ子の学習比率を含み厳密には独立でないため、p 値は反保守的な可能性がある(§8)。

6.2 学習曲線

図1 は学習データ使用比率(横軸 10–100%)に対する test 精度(縦軸)。各線が拡張手法。低比率ほど拡張の効き(曲線の広がり)が相対的に大きい傾向は H1 と整合する。

none oversample jitter scaling mixup dtw smote label_shuffle
CBF / cnn1d
0.6560.98210%25%50%75%100%
CBF / minirocket
0.6460.99810%25%50%75%100%
ECG200 / cnn1d
0.6770.87010%25%50%75%100%
ECG200 / minirocket
0.7930.90310%25%50%75%100%
ECG5000 / cnn1d
0.9160.94110%25%50%75%100%
ECG5000 / minirocket
0.9190.94610%25%50%75%100%
GunPoint / cnn1d
0.5071.00010%25%50%75%100%
GunPoint / minirocket
0.6801.00010%25%50%75%100%
ItalyPowerDemand / cnn1d
0.7410.96210%25%50%75%100%
ItalyPowerDemand / minirocket
0.9180.96510%25%50%75%100%
MoteStrain / cnn1d
0.5030.90310%25%50%75%100%
MoteStrain / minirocket
0.6770.94310%25%50%75%100%
SonyAIBORobotSurface1 / cnn1d
0.6470.94310%25%50%75%100%
SonyAIBORobotSurface1 / minirocket
0.7850.84310%25%50%75%100%
TwoLeadECG / cnn1d
0.6000.99410%25%50%75%100%
TwoLeadECG / minirocket
0.5820.99810%25%50%75%100%
Wafer / cnn1d
0.9710.99810%25%50%75%100%
Wafer / minirocket
0.9741.00910%25%50%75%100%

図1: 学習比率に対する精度の学習曲線(データセット×モデル別)。

7. 考察

UCR での結果は、拡張効果がデータセット・モデル依存で一様でないという Iwana & Uchida [8] の報告と整合する(H2 を支持)。 とくに MiniRocket ではどの拡張も有意でなく、生信号への摂動系拡張が変換ベース特徴に新情報を与えにくい可能性を示唆する。 ベースライン精度は既発表のベンチマーク相場 [2][4] と一致し、実装の妥当性を支持する。 被験者数削減については、点推定では一部手法が削減を示すものの negative control と分離できず、H3(実被験者の代替)は本設定では確証されない。

主要な知見(「追試」= 先行研究の傾向確認、「独自」= 本研究で観測)を確度とともに示す。

F-1 追試 確度 medium
フルサイズの学習データ(ECG5000: 500件, FordA: 3601件)では、精度の改善は全条件で +1pt 未満に留まる一方、悪化側は最大 -3.5pt に達した(F-3)。一貫した改善は観測されなかった(統計検定は Phase 2 で実施予定)
Iwana & Uchida 2021 の『拡張効果は低データ条件で大きく、常に有効とは限らない』と整合。accuracy ベースの観察であり、クラス不均衡な ECG5000 では macro-F1 側で挙動が異なる(例: minirocket none 0.5948 → scaling 0.6257)点に注意。Phase 2 の学習サンプル比率スイープで低データ条件を検証する
F-2 追試 確度 low
最小データセット GunPoint(train 50件)では拡張による改善が観測された(cnn1d: oversample で 0.9889→1.0000、minirocket: scaling で 0.9978→1.0000)
3 seeds のみで差はベースラインの seed 間標準偏差(±0.0192)の範囲内。さらに GunPoint は精度 0.99-1.00 の天井効果があり改善余地が 1-2 サンプル分しかないため、確証は弱い。低データ仮説 H1 と方向が一致する、以上のことは言えない
F-3 独自 確度 medium
FordA + MiniRocket では複数の拡張が性能を悪化させた(oversample -3.5pt, jitter -2.6pt, scaling -2.3pt)
MiniRocket の特徴量が振幅・ノイズ統計に敏感な可能性。拡張はモデル依存で害にもなる、という H2 側の証拠
F-4 追試 確度 high
ベースライン精度は文献相場と整合(GunPoint/MiniRocket 0.998, FordA/MiniRocket 0.949, ECG5000 両モデル 0.94 台)
実装の妥当性を支持。監査 130/130 合格
F-5 独自 確度 high
1D-CNN ではデータ拡張が精度を有意に改善する(時間軸を持つ 9 データセット×5比率×3seeds のペア検定で mixup +4.8pt, dtw +4.7pt, oversample +4.1pt, jitter +3.6pt, scaling +3.1pt が Holm-Bonferroni 補正後も有意, α=0.05)
2520 runs・監査合格。効果量は mixup が最大。非時系列3件(Plane/ArrowHead/Coffee)を含めた全12データセットでは有意手法は mixup +6.2pt, dtw +5.7pt, smote +5.1pt, oversample +4.3pt, scaling +3.7pt で、有意な手法数は 5 で変わらないが smote と jitter が入れ替わる(どちらも p≈0.05 の境界事例)。除外前後の比較は付録タブ参照
F-6 独自 確度 high
MiniRocket ではどの拡張手法も精度を有意に改善しない(全手法で Holm 補正後 非有意、平均Δは -0.2〜+0.5pt)
拡張効果はモデル依存という H2 を強く支持。MiniRocket は畳み込み特徴が既に頑健で、生信号拡張の恩恵が小さい可能性。拡張は『モデルによっては無益』であり万能ではない
F-7 追試 確度 medium
拡張効果(1D-CNN)は学習比率が中〜低程度(25-50%)で相対的に大きい傾向があり、低データ条件で拡張が効くという仮説 H1 と整合する
厳密には単調でなく、フルサイズ(100%)の平均Δが最大である点は Iwana & Uchida の傾向と整合しない。低データで効くという H1 は 25% 付近のピークとしては見えるが、単調な関係ではない。被験者数削減の主張には Phase 4-5 の被験者単位学習曲線が必要
F-8 独自 確度 low
UCI HAR で目標精度 0.90 に必要な実被験者数は拡張なしで約 8.85 名(95%CI 5.7-10.0)。点推定では DTW が最大の削減(N*=7.9, 削減率 10.8%, 約1名節約)、mixup・scaling が小幅な削減を示す
反復 3 回のため N* の bootstrap CI が広く、拡張手法の CI は none の CI と重なる。点推定の方向は『拡張が実被験者を部分的に代替』という主仮説と整合するが、統計的に確定できるレベルではない
F-9 独自 確度 low
oversample と smote は必要被験者数をむしろ増やした(削減率 -4.8%, -2.6%)。全手法が被験者削減に有効なわけではない
F-6(MiniRocket で拡張が無効)と併せ、拡張の効果は手法・モデル・データ依存であり万能ではないという一貫した結論。単純な複製系(oversample)は被験者多様性を増やさないため少被験者条件で不利な可能性
F-10 独自 確度 high
対照 label_shuffle(正しいラベルの元データを保持し複製分にだけ乱ラベルを与える、元データ保持+ラベルノイズの悲観的対照)が 4.3% の見かけの削減を示し、mixup(4.1%)・scaling(3.9%)と同等だった。すなわち約4%以下の削減はクラス情報を壊す/量だけ増やす操作でも再現され、アーティファクトと区別できない
本研究で最も重要な方法論的知見。label_shuffle は『クラス信号ゼロの床』ではなく元データ(正ラベル)+複製分の乱ラベルであり、悲観的・有害寄りの対照である。純粋な『量の水増し』の基準はむしろ oversample で、UCI HAR では -4.8%(N* はむしろ増加)——量を増やすだけでは削減しない。それでも label_shuffle が +4.3% を示すため、この水準以下の削減は真の削減と区別できない。DTW(10.8%)のみが対照を上回るが CI は重なり確定はできない。結論: 本設定ではデータ拡張による被験者削減は『対照を明確に超える』とは言えず、小さな削減の主張は対照越えを条件とすべき
F-11 独自 確度 medium
仮説 H2(SDG 効果 ∝ 汎化ギャップ)は支持されない。全データ条件で、各(データセット×モデル)の拡張なし汎化ギャップ(train−test 精度)と SDG 平均効果の Spearman 相関は 0.04(24点)で無相関。とくに 1D-CNN と MiniRocket の平均ギャップはほぼ同じ(0.047 vs 0.045)なのに、SDG 効果は CNN +8.4pt / MiniRocket −0.1pt と対照的だった
H2 の反証。『どれだけ過剰適合しているか(ギャップ)』は SDG が効くかを説明しない。両モデルは同程度に過剰適合するのに MiniRocket だけ拡張が無効。含意: 効くかどうかはモデルが拡張された変動を『表現・利用できるか』で決まる。MiniRocket の固定ランダム畳み込み特徴は本実験の拡張に対してほぼ不変で、ギャップの大小に関わらず合成サンプルが線形分類器に新情報を与えないと解釈できる。これは H4/特徴量空間分析(issue #7 候補5)への動機付けとなる。ただし本検証は全データ条件のみで、低データ域では未検証(H5 と併せ今後)
F-12 独自 確度 low
第2の被験者データ WISDM v1.1(Kwapisz et al. 2011, 36名=pool24+test12)でも被験者数削減は確定できない。目標 accuracy=0.80 に必要な実被験者数は拡張なしで N*≈14.0(95%CI [11.2,14.7])。点推定の最大削減は smote(+10.5%, N*≈12.6)だが 95%CI [11.2,13.8] は none と重なり、CI 分離で baseline を明確に超える手法は無い。再現できたのは F-8 の帰無(削減を確定できない)のみで、最良手法の順位は再現しない(UCI HAR は DTW 最良/SMOTE 有害寄り、WISDM は SMOTE 最良/DTW≈0)。RQ2 の帰無の外的妥当性を補強する一方、F-10 の核(対照が見かけの削減を示す現象)は WISDM では再現しない
反復3回のため N* の CI は広く(issue #6 と同じ構造的制約)、手法間 N* 差(smote で被験者 1.48 名)は被験者格子間隔(3)・セル内 std・bootstrap CI より小さく、順位づけには実質情報が乏しい(反復増まで順位は報告しない)。smote の +10.5% は accuracy 固有で、WISDM はクラス不均衡のため macro-F1 では順位が変わる: macro_f1@0.70(N*(none)=11.85)では smote のみ +4.1%、scaling -5.2%、dtw -11.0%(最下位)、macro_f1@0.65(N*(none)=9.98)でも smote +0.8%/dtw -2.6%/scaling -3.7% と、いずれも none の CI と大きく重なる。すなわち WISDM の削減は macro-F1 でも確認されず accuracy 基準の帰無と整合(WISDM run=168、reduction_analysis と同一手法)。目標 0.80 は none 曲線のプラトー肩付近で手法差が圧縮され、none 曲線は非単調(中盤で最大、以降低下)なため N* は 12→15 名の単一上向き交差に依存する(J-NSTAR の線形補間)。前処理は dataset に合わせた追試(UCI HAR 非正規化 vs WISDM 窓ごと z 正規化)で同一枠組みの厳密再現ではない。純量水増しの対照は oversample(WISDM ≈0)。label_shuffle は WISDM では -50.5%(N* 増)だが、これは元データ保持+ラベルノイズ対照の乱ラベルが有害に働いた結果で、UCI HAR の見かけ削減の有無を『量水増しアーティファクトの強弱』として対比することはできない。検出力確保(反復増、issue #7 候補1)が両データセット共通の後続課題。
F-13 独自 確度 low
第3の被験者データ PAMAP2(Reiss & Stricker 2012, 9名, subject 109 除外で pool 5+test 3)を加えた3データ横断でも、拡張による被験者数削減は帰無:母集団被験者数(5〜24名)に沿う系統的トレンドは検出されない。PAMAP2 は none の macro-F1 が最小格子 N=2 で既に統一 target 0.70 を超え(N2=0.706)、N*(none) が格子下限に張り付く左側打ち切りのため削減率は推定不能(定性記述に格下げ)。推定可能な UCI HAR・WISDM でも統一ルール下の削減率は実手法で概ね ±14% 以内かつ全手法が none 基準から CI 分離せず、悲観的対照 label_shuffle は WISDM・PAMAP2 で目標未到達・UCI HAR で削減最小と対照として妥当に機能した
【統一ルールの post-hoc 明示】横断比較のため3データとも同一の target 決定ルール(floor_0.05(full-pool none 平均 −0.05))を用いるが、これは PAMAP2 では事前登録どおり(数値算出前・1グリッド run 前に登録)である一方、データ確定済みの UCI HAR・WISDM にとっては事後(post-hoc)の記述的再解析である。統一 target(macro-F1 で UCI HAR 0.85・WISDM 0.70)は各データの事前登録主 target(UCI HAR accuracy 0.90 / WISDM accuracy 0.80)とは異なる。主結論 F-8/F-10/F-12 は各データの事前登録 τ に基づき不変で、本節は別レンズ。ただし統一レンズの結論(帰無)は主解析と一致するため補強方向。【3点記述限定】3データ=3点のため回帰・相関は求めず点+定性考察に限る。3データはクラス数(12/6/6)・センサ(3IMU/加速度+ジャイロ/加速度)・チャネル数(9/6/3)・サンプリング/窓実時間・pool 上限(5/21/24)・目標絶対値が異なり多数の交絡を含むため、削減率差を母集団サイズに帰属できない。統一ルールは baseline が高く pool 上限が低いデータ(PAMAP2・UCI HAR)で N* を格子下限近傍に寄せ(PAMAP2 は左側打ち切り、UCI HAR も N*(none)≈3.4)、削減率を格子分解能で圧縮する。PAMAP2 は加速度±16g 9ch・100→33.3Hz・168窓・窓ごと z 正規化の自前前処理で、rope_jumping は test 側 0 窓のため実効11クラス(macro-F1 分母に影響)。DS-1(F-8/F-10/F-12)の帰無の外的妥当性を第3データで補強するが、削減効果の存在は主張しない。反復5回でも少 N ゆえ CI は広く、検出力は依然限界(issue #6/#7)。
F-14 独自 確度 medium
信号種を変えた第4の被験者データ WESAD(Schmidt et al. 2018, 胸装着 RespiBAN 生理 5ch・15名)では、HAR 向けの枠組み(窓ごと z 正規化 + cnn1d_har)が転移せず full-pool・拡張なし baseline が near-chance(macro-F1 0.4835・accuracy 0.5053 で多数派クラス率 ~0.54 を下回る)。none 曲線は N=2..10 でほぼ平坦、negative control label_shuffle も none と同水準で、モデルがクラス構造を学習していない直接証拠となる。全手法(none・対照含む)で N*(none) が最小格子 N=2 に左側打ち切りとなり削減率は推定不能。DS-3 で言えるのは『拡張が被験者を削減する/しない』ではなく『枠組みの非転移=信号種依存』に限られる
【framing 厳守】そもそもモデルがタスクを学習しておらず(label_shuffle≈none)、削減を論じる前提が成立しないため、これは『データ拡張が被験者数を削減する/しない』の結論ではない。DS-3 の結論は HAR 前処理・モデルの生理信号への非転移(信号種依存)に限定。【near-chance の候補要因】near-chance を『WESAD が難しい』だけに帰さない:HAR 由来の窓ごと z 正規化が EDA / 体温の絶対レベル(ストレスで上昇する皮膚コンダクタンス・体温=生理信号の主情報)を各窓内で消すことが主要因の候補(judgment_calls J-WESAD-NORM / deviations D-WESAD)。原論文は手作り生理特徴 + 混在/LOSO 評価で 3クラス accuracy ~93% を報告しており、near-chance は WESAD 自体でなく前処理・モデル選択に強く依存することを示唆する。【post-hoc 変更なし】比較可能性のため前処理・モデル・評価は HAR 3データと一切変えず固定(#23 の規律)。窓ごと z 正規化は cnn1d_har に合わせた設計で、変えれば性能は上がりうるが本 issue では検証しない(今後の課題)。【交絡】タスク・信号種・クラス数(3)が HAR と異なるため §6.5 横断図には同列で載せず信号種軸の独立小節(§6.6)として提示。左側打ち切りのため削減率は捏造せず『推定不能』を明示(PAMAP2 と同じ扱い)。データは非商用+帰属ライセンス(CC BY ではない)・再配布不可のため生データは非コミット、利用時は Schmidt et al. 2018 の帰属表示が必須。
F-15 独自 確度 medium
被験者ID付き4データ(UCI HAR / WISDM / PAMAP2 / WESAD、pool 5〜24名・信号種=慣性/加速度/生理・タスク=HAR 6/12クラス・affect 3クラス)を統合すると、データ拡張による必要実被験者数の削減は『測定可能なら帰無(UCI HAR・WISDM で全手法の N* CI が none と重複、対照 label_shuffle を CI 分離で超える手法なし)』『それ以外は推定不能(PAMAP2=左側打ち切り、WESAD=near-chance)』であり、悲観的対照 label_shuffle や純量水増しの oversample を明確に超えて実被験者を削減できたデータは1つも無い。マルチモーダル(チャネル横断)拡張は『多モーダル×削減測定可能』な基盤を欠くため対象外とし、本統合で外的妥当性のアークを締める
【レンズ】各データの事前登録 primary target を用いるため主結論 F-8/F-10/F-12 と同一レンズであり、これらは統合でも不変。§6.5 の統一ルール target は UCI HAR/WISDM では post-hoc の別レンズだが結論(帰無)は一致し補強方向。【記述限定】4点(うち2点は推定不能)のため回帰・相関・因果は求めず、母集団サイズや信号種への系統トレンドは非検出/測定不能と明記。交絡(タスク・クラス数・前処理・pool 上限・正規化)によりデータ間の削減率差を単一要因に帰属できない。【WESAD の扱い】信号種が異なり near-chance のため、削減率の横並び比較ではなく『枠組み非転移』の事例として区別(HAR 3データと同列に削減率を比べない)。【削減率 CI の作図】図7の横棒は各手法の N* bootstrap CI を none 点推定で規格化したもので、none 自身の不確実性は網掛け帯で別途表示。作図上 WISDM smote の規格化 CI は 0 を跨がないが none の CI 帯とは重複するため『対照/baseline 越え』には当たらない(F-12 と整合)。【DS-5 対象外の根拠】チャネル横断拡張が削減に効くかを測るには多モーダルかつ N* 推定可能な基盤が要るが、PAMAP2(打ち切り)/WESAD(near-chance)/単一モダリティの UCI HAR・WISDM のいずれも該当せず。将来の発火条件は『多モーダルデータで N*(none) が格子内推定可能かつ label_shuffle≪none(モデルが学習)』(ds5_assessment.md §0、issue #27)。
F-16 独自 確度 high
時間軸を持たないデータセット(輪郭・スペクトル)を主結果から除外しても、RQ1 の定性的結論は変わらない(1D-CNN で複数手法が有意・MiniRocket では全手法非有意)。ただし個々の手法の順位と有意判定は境界で入れ替わる
除外は結果を見たあとの post-hoc な判断だが、基準(軸が時間か)は結果と無関係なデータの構造的性質。除外により効果量は縮小し(mixup +6.2→+4.8pt)、smote が有意から外れ jitter が有意に入る(いずれも p≈0.05)。除外前後の全条件比較は付録タブ 表A1

8. 限界

  • UCR データセットのサンプル数は被験者数ではないため、Phase 1–2 の結果から被験者数削減効果を直接主張することはできない
  • mixup・DTW 拡張は原論文と実装差がある(詳細は deviations.md)。追試結果の比較はこの差分を前提に解釈する必要がある
  • 実行環境は CPU のみであり、1D-CNN のハイパーパラメータ探索は行っていない(拡張条件間の比較は固定条件で公平)
  • Phase 1 は 3 seeds であり、統計検定に足る反復数は Phase 2 で確保する
  • UCR の既定 train/test 分割 1 通りを 42 条件で再利用しているため、最良条件の選択には多重比較の問題がある(Phase 2 で検定と併せて対処)
  • Phase 2 の Wilcoxon 検定は同一データセットの入れ子の学習比率(10–100%)を含むペアを用いており、これらは厳密には独立でない。このため p 値は反保守的(有意を出しやすい)方向に偏る可能性があり、効果量(平均Δ)と併せて解釈する必要がある
  • GunPoint は精度 0.99–1.00 の天井効果があり、改善余地がテスト 1–2 サンプル分しかない。GunPoint での「改善」の解釈には特に注意が必要
  • 拡張強度(ratio=1.0、sigma、alpha、k、window)は各手法 1 点固定であり、「手法の効果」と「強度選択の効果」が交絡している
  • Phase 1 の manifest の git_dirty=true は、実験中に生成される run 成果物(未追跡ファイル)を含んで判定していたことによる。ソースコードは push 済みコミットと一致している。以後の run では未追跡ファイルを無視して判定する
  • Phase 5 の被験者数削減(N*)は反復 3 回のため bootstrap 信頼区間が広く、拡張手法の CI は none の CI と重なる。点推定では DTW 等が数%の削減を示すが統計的に確定できない。反復数を増やす(例: 各被験者数で 10 回以上)ことが確度向上に必要
  • 被験者数学習曲線は UCI HAR・WISDM v1.1・PAMAP2 の 3 データセットで確認済み。ただし再現できたのは「削減を確定できない(帰無)」の一点のみで、最良手法の順位は データセット間で入れ替わる(UCI HAR は DTW 最良/SMOTE 有害寄り、WISDM は SMOTE 最良/DTW≈0)。3 データ=3 点のため回帰・相関は求めず、母集団被験者数(5〜24名)に沿う削減率の系統トレンドは検出されない(記述的主張に限定)。さらに別ドメインへの一般化は未検証
  • WISDM への追試は同一枠組みの厳密再現ではなく、前処理を各データセットに合わせた追試である(UCI HAR は配布元整形済みの非正規化、WISDM は生値のため窓ごと z 正規化。J-WISDM-NORM)。scaling/jitter は正規化後と生データで作用が異なるため、両データの結果差には前処理の非対称も寄与しうる
  • WISDM はクラス不均衡で accuracy が多数クラスに偏る。WISDM で smote が示す点推定の削減(accuracy@0.80 で +10.5%)は accuracy 固有であり、macro-F1 では手法順位が変わる: macro_f1@0.70(N*(none)=11.85)では smote のみ +4.1%・scaling -5.2%・dtw -11.0%(最下位)、macro_f1@0.65(N*(none)=9.98)でも smote +0.8%/dtw -2.6%/scaling -3.7% と、いずれも none の CI と大きく重なる。すなわち WISDM の削減は macro-F1 でも確認されない(accuracy 基準の帰無と整合)。不均衡データでは accuracy と macro-F1 / balanced accuracy を併記して解釈する必要がある
  • WISDM の none 学習曲線は被験者数に対して非単調(中盤で最大に達し以降やや低下)で、目標 0.80 の交差は 12→15 名の単一の上向き交差に依存する。N* は隣接点の線形補間(J-NSTAR)で定めるため、この非単調性は N* 不確実性の一因である。また 0.80 は none 曲線のプラトー肩付近にあたり手法差が圧縮されやすい
  • 目標精度 0.90(UCI HAR)/ 0.80(WISDM)は各データで比較的到達しやすい水準であり、より難しいタスク・目標では削減効果の様相が変わりうる
  • 対照 label_shuffle は「クラス信号ゼロの床」ではなく、正しいラベルの元データを保持し複製分にだけ乱ラベルを与える「元データ保持+ラベルノイズ」の悲観的・有害寄りの対照である。純粋な「量の水増し」の基準はむしろ oversample(単純複製)で、UCI HAR では -4.8%・WISDM では ≈0 と、量を増やすだけでは N* は下がらない。UCI HAR では label_shuffle でさえ約 4.3% の見かけの削減を示し、mixup(4.1%)・scaling(3.9%)と同等——この水準以下の削減はアーティファクトと区別できない。DTW(10.8%)のみが対照を上回るが CI は重なり確定できない(F-10)。対照 1 本(label_shuffle)に加え、純ノイズ拡張・時間シャッフル等の対照拡充が今後の課題(issue #7 候補)
  • PAMAP2(issue #21 DS-2)は被験者 9 名・subject 109 除外で pool 5 と少 N であり、N∈{2,3,4,5} の粗い格子では削減率を推定できない。none の macro-F1 が最小格子 N=2 で既に統一 target 0.70 を超え(N2=0.706)、N*(none) が格子下限に張り付く左側打ち切りのため、削減率は事前登録の停止条件どおり算出せず定性記述に格下げした。これは捏造回避であり、少 N・高 baseline という構造的限界に起因する(反復5回でも CI は広い)
  • 横断図・横断表(§6.5)は3データの比較可能性のため統一 target ルール(floor_0.05(full-pool none 平均 −0.05))を用いるが、これは PAMAP2 では事前登録どおりである一方、データ確定済みの UCI HAR・WISDM にとっては事後(post-hoc)の記述的再解析である。統一 target(macro-F1 で UCI HAR 0.85・WISDM 0.70)は各データの事前登録主 target(UCI HAR accuracy 0.90・WISDM accuracy 0.80)と異なる。主結論 F-8/F-10/F-12 は各データの事前登録 τ に基づき不変で、横断の統一ルール版は別レンズ(結論の帰無は主解析と一致するため補強方向)。統一ルールは baseline が高く pool 上限が低いデータ(PAMAP2・UCI HAR)で N* を格子下限近傍に寄せ削減率を格子分解能で圧縮する点も交絡である
  • PAMAP2 は 12 活動 protocol サブセットを対象とするが、希少活動 rope_jumping は固定 test 側(103/104/105)で 0 窓のため実効 11 クラスであり、macro-F1 の分母(クラス平均)に影響する。3 データはクラス数(12/6/6)・センサ(3IMU/加速度+ジャイロ/加速度)・チャネル数(9/6/3)・サンプリングと窓実時間・pool 上限が異なり、これらの交絡により削減率差を母集団サイズに帰属することはできない
  • WESAD(issue #21 DS-3, 非HAR 生理信号)では HAR 前処理・モデルが転移せず、full-pool・拡張なし baseline が near-chance(macro-F1 0.4835・accuracy 0.5053 で多数派クラス率 ~0.54 を下回る)。none 曲線は N=2..10 でほぼ平坦、negative control label_shuffle も none と同水準で、モデルがクラス構造を学習していない。よって全手法が最小格子 N=2 で左側打ち切りとなり削減率は推定不能で、WESAD では拡張の被験者削減効果を評価できない(前提となるタスク学習が成立しない)。候補要因として HAR 由来の窓ごと z 正規化が EDA / 体温の絶対レベル(生理信号の主情報)を各窓内で消すことが挙げられる(J-WESAD-NORM / D-WESAD)。ただし HAR 3データとの比較可能性のため前処理・モデルは固定し変更していない(post-hoc 変更なし)。DS-3 で言えるのは削減の有無ではなく枠組みの非転移=信号種依存であり、前処理・モデルを生理信号向けに変えた検証は今後の課題(#23)。WESAD は非商用+帰属ライセンス(CC BY ではない)で生データは非コミット
  • 削減率が測定できるのは baseline が十分高く N* が被験者格子内に落ちるデータに限られる(§6.7 統合)。本研究の4データのうち削減が測定可能だったのは UCI HAR・WISDM の2つのみで、PAMAP2 は少 N・高 baseline による左側打ち切り、WESAD は near-chance でいずれも推定不能だった——「削減できたデータは無い」は帰無(測定できたが対照を超えない)と推定不能(そもそも測れない)の両方を含み、両者を区別して読む必要がある。したがって「拡張で削減できない」という帰結は、削減が測定可能な高 baseline・十分 N の条件で確認したものに限られ、測定不能条件へは外挿しない。マルチモーダル(チャネル横断)拡張は「多モーダル×削減測定可能」な基盤(PAMAP2 は打ち切り・WESAD は near-chance・UCI HAR/WISDM は単一モダリティ寄りでいずれも非該当)を欠くため本研究では対象外とした(ds5_assessment.md / issue #27。将来の発火条件=多モーダルで N* 推定可能かつ label_shuffle≪none)

9. まとめ

時系列データ拡張の効果は手法・モデル・データに強く依存する。1D-CNN では複数手法が精度を有意に改善するが MiniRocket では改善せず、 被験者数削減に至っては対照と区別できるレベルの効果は本設定では得られなかった。この「削減を確定できない(帰無)」という結論は 第2の被験者データ WISDM v1.1 [13] でも再現され、単一データセット固有でないことを確認した(ただし前処理を各データセットに合わせた追試であり、 再現したのは帰無であって最良手法の順位ではない。順位は評価指標にも依存する。§6.4)。信号種を変えた WESAD(生理信号)では baseline が near-chance で削減の前提すら成立せず、HAR 向け枠組みが転移しない(信号種依存。§6.6)。4データを統合すると、削減は測定可能なら帰無・それ以外は推定不能で、対照を明確に超えて実被験者を削減できたデータは無い(§6.7)。以上は、削減を主張する際に 「対照越え」と反復数の確保が不可欠であることを示す。今後は反復数を増やした検出力設計、macro-F1 / balanced accuracy を含む指標横断の評価、 拡張強度と手法効果の分離、および第3の被験者データや別ドメインへの拡張が課題である。

参考文献

  1. [1]H. A. Dau, A. Bagnall, K. Kamgar, C.-C. M. Yeh, Y. Zhu, S. Gharghabi, C. A. Ratanamahatana, and E. Keogh, "The UCR Time Series Archive," IEEE/CAA Journal of Automatica Sinica, vol. 6, no. 6, pp. 1293–1305, 2019. https://www.cs.ucr.edu/~eamonn/time_series_data_2018/
  2. [2]A. Bagnall, J. Lines, A. Bostrom, J. Large, and E. Keogh, "The great time series classification bake off: a review and experimental evaluation of recent algorithmic advances," Data Mining and Knowledge Discovery, vol. 31, no. 3, pp. 606–660, 2017.
  3. [3]A. Dempster, F. Petitjean, and G. I. Webb, "ROCKET: exceptionally fast and accurate time series classification using random convolutional kernels," Data Mining and Knowledge Discovery, vol. 34, pp. 1454–1495, 2020.
  4. [4]A. Dempster, D. F. Schmidt, and G. I. Webb, "MiniRocket: A Very Fast (Almost) Deterministic Transform for Time Series Classification," in Proc. 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining (KDD), 2021, pp. 248–257.
  5. [5]N. V. Chawla, K. W. Bowyer, L. O. Hall, and W. P. Kegelmeyer, "SMOTE: Synthetic Minority Over-sampling Technique," Journal of Artificial Intelligence Research, vol. 16, pp. 321–357, 2002.
  6. [6]H. Zhang, M. Cissé, Y. N. Dauphin, and D. Lopez-Paz, "mixup: Beyond Empirical Risk Minimization," in Proc. International Conference on Learning Representations (ICLR), 2018.
  7. [7]T. T. Um, F. M. J. Pfister, D. Pichler, S. Endo, M. Lang, S. Hirche, U. Fietzek, and D. Kulić, "Data Augmentation of Wearable Sensor Data for Parkinson's Disease Monitoring using Convolutional Neural Networks," in Proc. 19th ACM International Conference on Multimodal Interaction (ICMI), 2017, pp. 216–220.
  8. [8]B. K. Iwana and S. Uchida, "An empirical survey of data augmentation for time series classification with neural networks," PLOS ONE, vol. 16, no. 7, e0254841, 2021.
  9. [9]G. Forestier, F. Petitjean, H. A. Dau, G. I. Webb, and E. Keogh, "Generating synthetic time series to augment sparse datasets," in Proc. IEEE International Conference on Data Mining (ICDM), 2017, pp. 865–870.
  10. [10]H. Ismail Fawaz, G. Forestier, J. Weber, L. Idoumghar, and P.-A. Muller, "Deep learning for time series classification: a review," Data Mining and Knowledge Discovery, vol. 33, no. 4, pp. 917–963, 2019.
  11. [11]M. Middlehurst, A. Ishaq, P. Schäfer et al., "aeon: a Python toolkit for learning from time series," Journal of Machine Learning Research, vol. 25, no. 289, pp. 1–10, 2024. https://www.aeon-toolkit.org/
  12. [12]D. Anguita, A. Ghio, L. Oneto, X. Parra, and J. L. Reyes-Ortiz, "A Public Domain Dataset for Human Activity Recognition Using Smartphones," in Proc. 21st European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning (ESANN), Bruges, Belgium, 2013, pp. 437–442. https://archive.ics.uci.edu/dataset/240/human+activity+recognition+using+smartphones
  13. [13]J. R. Kwapisz, G. M. Weiss, and S. A. Moore, "Activity Recognition using Cell Phone Accelerometers," ACM SIGKDD Explorations Newsletter, vol. 12, no. 2, pp. 74–82, 2011. https://www.cis.fordham.edu/wisdm/dataset.php
  14. [14]A. Reiss and D. Stricker, "Introducing a New Benchmarked Dataset for Activity Monitoring," in Proc. 16th Int. Symp. on Wearable Computers (ISWC), Newcastle, UK, 2012, pp. 108–109. Dataset: PAMAP2 Physical Activity Monitoring, UCI Machine Learning Repository, DOI:10.24432/C5NW2H (License: CC BY 4.0). https://archive.ics.uci.edu/dataset/231/pamap2+physical+activity+monitoring
  15. [15]P. Wagner, N. Strodthoff, R.-D. Bousseljot, D. Kreiseler, F. I. Lunze, W. Samek, and T. Schaeffter, "PTB-XL, a large publicly available electrocardiography dataset," Scientific Data, vol. 7, no. 154, 2020. https://physionet.org/content/ptb-xl/1.0.1/
  16. [16]P. Schmidt, A. Reiss, R. Duerichen, C. Marberger, and K. Van Laerhoven, "Introducing WESAD, a Multimodal Dataset for Wearable Stress and Affect Detection," in Proc. 20th ACM International Conference on Multimodal Interaction (ICMI), 2018, pp. 400–408. Dataset: WESAD (Wearable Stress and Affect Detection), DOI:10.1145/3242969.3242985 (License: scientific/non-commercial use with attribution; not CC BY). https://ubi29.informatik.uni-siegen.de/usi/data_wesad.html

本レポートは実験結果ファイル(runs/・artifacts/)から自動生成され、数値の手入力は行わない。

評価に使ったデータセット

本研究が扱う時系列データを、全データセット同じ構成(役割 / どんなデータか / タスク / 1レコードの構造 / クラス / 実データの波形 / 注意点)で並べる。

説明文は references/dataset_profiles.yaml、件数・チャネル・分割は data/metadata/*.json、波形とクラス分布は report/assets/data/dataset_samples.json(実データから生成)に由来する。波形・数値はすべて学習側(train / pool)split のみから取っており、test データは表示にも使っていない(spec §8)。

UCR ベンチマーク(RQ1: 精度効果の系統評価)

UCR Time Series Classification Archive の単変量データセット。被験者IDを持たず、 公式の train/test 分割が定義済み。本研究では「拡張がどの条件で精度を改善するか」 (RQ1)を横断的に測るために使う。全系列は読み込み時に系列ごと z 正規化される。 各クラスラベルの意味は UCR アーカイブの データセット説明に基づく(ラベル値そのものは 実データから読み出しており、意味の対応付けのみが文献由来)。 分割はアーカイブの公式 train/test をそのまま使う。学習側が極端に小さいもの(CBF は train 30 / test 900 など)もあるが、既発表の数値と比較できることを優先して再分割しない。

ECG5000

ECG5000 [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習500 件 テスト4500 件 チャネル1 ch 系列長140 点 クラス5
本研究での役割:
Phase 1 の最小追試3データセットの1つ。心電図という実信号の代表例。
どんなデータか:
BIDMC うっ血性心不全データベース由来の心拍を1拍ずつ切り出した心電図。 1系列 = 1心拍。
分類タスク:
1心拍の波形から、その拍の型を5クラス(正常 + 異常4種)に分類する。
1レコードの構造:
単変量 1ch × 系列長140点。ラベルは心拍の型。
ラベル意味学習側の件数
1 正常拍(N)。学習データの大半を占める 292
2 R-on-T 型の心室期外収縮(R-on-T PVC) 177
3 心室期外収縮(PVC) 10
4 上室性期外収縮または補充収縮(SP/Esc) 19
5 分類不能拍(UB) 2

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=2922n=1773n=104n=195n=20系列終端
クラス分布(学習側)
1292 (58%)2177 (35%)310 (2%)419 (4%)52 (0%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -0.113-2.837-3.787-4.365-4.392-3.487-2.189-1.825
#1 -1.105-4.011-4.301-4.523-4.037-3.246-1.572-0.996
#2 -0.569-2.603-3.888-4.601-4.202-3.163-1.749-1.496
注意点: クラス分布が強く偏っており(正常拍が支配的)、accuracy は多数派クラスに引きずられる。 少数クラスは学習データ中の実数が二桁に満たないものもある。

FordA

FordA [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習3601 件 テスト1320 件 チャネル1 ch 系列長500 点 クラス2
本研究での役割:
Phase 1 の最小追試3データセットの1つ。学習データが最大(3601件)で、拡張が効きにくい高データ条件の代表。
どんなデータか:
エンジン騒音を計測した車載センサ信号。系列長500点と本研究で最長。
分類タスク:
エンジン音の波形から、特定の異常症状が存在するかどうかを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長500点。ラベルは症状の有無。
ラベル意味学習側の件数
-1 症状なし 1846
1 症状あり 1755

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

-1n=18461n=17550系列終端
クラス分布(学習側)
-11846 (51%)11755 (49%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -0.798-0.665-0.3730.0410.5270.9851.3541.580
#1 0.8060.6350.3740.038-0.341-0.742-1.111-1.397
#2 0.7290.111-0.500-1.070-1.580-1.993-2.304-2.506
注意点: train が 3601 件と十分に大きく、追加データの限界効用が小さい条件。 本研究では MiniRocket との組合せで拡張が有害になる例として現れた(F-4)。

GunPoint

GunPoint [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習50 件 テスト150 件 チャネル1 ch 系列長150 点 クラス2
本研究での役割:
Phase 1 の最小追試3データセットの1つ。少データ(50件)側の代表。
どんなデータか:
2名の俳優が「銃を抜いて構える」動作と「指を差す」動作を行う様子をモーション キャプチャし、手の x 座標を時系列化したもの。
分類タスク:
手の動きの軌跡から、動作が Gun(抜銃)か Point(指差し)かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長150点。ラベルは動作種別。
ラベル意味学習側の件数
1 Gun(銃を抜いて構える) 24
2 Point(指を差す) 26

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=242n=260系列終端
クラス分布(学習側)
124 (48%)226 (52%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -0.650-0.644-0.640-0.640-0.640-0.641-0.645-0.646
#1 -0.647-0.648-0.649-0.650-0.649-0.646-0.642-0.640
#2 -0.781-0.781-0.780-0.780-0.778-0.775-0.768-0.765
注意点: train 50 件と小さく、被験者は2名のみ。本研究で拡張の改善傾向が見えた数少ない データセットだが、改善幅はノイズ範囲(F-3)。

ECG200

ECG200 [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習100 件 テスト100 件 チャネル1 ch 系列長96 点 クラス2
本研究での役割:
Phase 2 横断比較。少データ心電図。
どんなデータか:
1拍分の心電図(ECG5000 とは別の収集)。
分類タスク:
1心拍の波形から、正常心拍か心筋梗塞かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長96点。
ラベル意味学習側の件数
-1 異常(心筋梗塞) 31
1 正常心拍 69

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

-1n=311n=690系列終端
クラス分布(学習側)
-131 (31%)169 (69%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 0.5050.5450.7261.4362.1482.2931.9461.477
#1 0.1480.8090.3700.2450.027-0.2760.097-0.752
#2 0.3180.2440.3721.0691.6871.7691.7071.621
注意点: train 100 件と小さく、seed 間のばらつきが大きい。

TwoLeadECG

TwoLeadECG [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習23 件 テスト1139 件 チャネル1 ch 系列長82 点 クラス2
本研究での役割:
Phase 2 横断比較。本研究で最も学習データが少ない(23件)、本質的な少データ条件。
どんなデータか:
2誘導の心電図記録から切り出した心拍(単変量として提供される)。
分類タスク:
心拍波形が2つの誘導のどちらに由来するかを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長82点。
ラベル意味学習側の件数
1 誘導1由来 12
2 誘導2由来 11

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=122n=110系列終端
クラス分布(学習側)
112 (52%)211 (48%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 0.6930.6210.6210.5730.6930.6450.7160.788
#1 -0.112-0.037-0.075-0.0620.0390.0510.1400.241
#2 -0.495-0.458-0.458-0.440-0.404-0.331-0.258-0.221
注意点: train 23 件・test 1139 件と極端に非対称。少データでの拡張効果を見るには好都合だが、 1件の増減が精度を大きく動かすため分散が大きい。

ItalyPowerDemand

ItalyPowerDemand [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習67 件 テスト1029 件 チャネル1 ch 系列長24 点 クラス2
本研究での役割:
Phase 2 横断比較。系列長24点と最短。
どんなデータか:
イタリアの12か月分の電力需要を、1日24時間 = 24点の系列として切り出したもの。
分類タスク:
1日の需要曲線から、その日が10月〜3月(冬季)か4月〜9月(夏季)かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長24点(1時間刻みの1日)。
ラベル意味学習側の件数
1 10月〜3月 34
2 4月〜9月 33

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=342n=330系列終端
クラス分布(学習側)
134 (51%)233 (49%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -0.726-1.209-1.402-1.627-1.499-1.402-1.1120.047
#1 -1.014-1.457-1.614-1.640-1.666-1.405-1.040-0.363
#2 1.3470.5820.199-0.088-0.183-0.279-0.088-1.427
注意点: 系列長が短く、窓ベースの拡張(DTW 整列等)の自由度が小さい。

MoteStrain

MoteStrain [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習20 件 テスト1252 件 チャネル1 ch 系列長84 点 クラス2
本研究での役割:
Phase 2 横断比較。少データ(20件)側の代表。
どんなデータか:
無線センサノード(Berkeley Mote)が計測した環境データ。
分類タスク:
センサ系列がどちらのセンサ(湿度計/温度計)由来かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長84点。
ラベル意味学習側の件数
1 センサ1(湿度) 10
2 センサ2(温度) 10

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=102n=100系列終端
クラス分布(学習側)
110 (50%)210 (50%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 0.4010.5070.5290.6110.5760.8090.7260.692
#1 -1.101-1.259-1.426-1.511-1.363-1.201-1.043-0.809
#2 0.0820.0580.019-0.018-0.045-0.059-0.124-0.424
注意点: train 20 件。欠測・ノイズを含む実運用センサのデータ。

SonyAIBORobotSurface1

SonyAIBORobotSurface1 [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習20 件 テスト601 件 チャネル1 ch 系列長70 点 クラス2
本研究での役割:
Phase 2 横断比較。加速度センサ系で、被験者データ(HAR)と信号種が近い。
どんなデータか:
四足歩行ロボット AIBO に搭載した3軸加速度計の x 軸を歩行中に記録したもの。
分類タスク:
歩行中の加速度波形から、床面がカーペットかセメントかを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長70点。
ラベル意味学習側の件数
1 セメント床 6
2 カーペット床 14

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=62n=140系列終端
クラス分布(学習側)
16 (30%)214 (70%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 1.0012.2902.9352.2901.6460.141-0.718-1.148
#1 -0.061-0.3471.9383.6521.9380.510-0.633-1.204
#2 0.6161.3272.0382.2752.0381.8010.379-0.806
注意点: train 20 件。加速度という点で HAR に近いが、被験者ではなくロボット由来。

CBF

CBF [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習30 件 テスト900 件 チャネル1 ch 系列長128 点 クラス3
本研究での役割:
Phase 2 横断比較。合成データで、クラス構造が既知の対照的な位置づけ。
どんなデータか:
Cylinder-Bell-Funnel。3つの形状パターンをノイズ付きで生成した合成時系列。
分類タスク:
波形がシリンダ型・ベル型・ファネル型のどれかを3クラス分類する。
1レコードの構造:
単変量 1ch × 系列長128点。
ラベル意味学習側の件数
1 Cylinder(矩形状の立ち上がり) 10
2 Bell(緩やかな立ち上がりと急降下) 12
3 Funnel(急な立ち上がりと緩やかな降下) 8

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

1n=102n=123n=80系列終端
クラス分布(学習側)
110 (33%)212 (40%)38 (27%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -0.466-0.557-0.846-0.869-0.940-0.820-0.265-1.263
#1 -0.900-0.688-1.357-1.464-1.170-1.409-1.829-0.835
#2 -0.467-0.570-0.032-0.638-0.605-0.268-0.268-0.935
注意点: 合成データのため、実データ特有の被験者差・機器差を含まない。

Wafer

Wafer [1] UCR アーカイブの利用条件に従う(研究利用) → このデータでの学習と評価
学習1000 件 テスト6164 件 チャネル1 ch 系列長152 点 クラス2
本研究での役割:
Phase 2 横断比較。学習1000件と大きく、かつ強い不均衡を持つ条件。
どんなデータか:
半導体製造の各工程で1枚のウェハを加工する間に記録した装置センサ値。
分類タスク:
センサ系列から、そのウェハ加工が正常か異常かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長152点。
ラベル意味学習側の件数
-1 異常 97
1 正常 903

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

-1n=971n=9030系列終端
クラス分布(学習側)
-197 (10%)1903 (90%)
サンプル値の抜粋

train split, channel 0, 先頭3サンプル×先頭8時点(z正規化後)

#0 -1.608-1.676-1.699-1.705-1.705-1.709-1.709-1.709
#1 1.0881.0881.0881.0691.0691.0691.0691.069
#2 0.3640.3640.3640.3950.3640.3640.3640.364
注意点: 正常が圧倒的多数の不均衡データ。accuracy はほぼ多数派率で決まるため、 改善幅の解釈には注意が要る。

被験者ID付きデータ(RQ2: 必要被験者数の削減評価)

1サンプルがどの被験者由来かを追跡できるデータ。同一被験者が train と test に 跨がらない分割(group split)を強制でき、「所定性能に必要な実被験者数 N*」を 測れる。本研究の RQ2 はこの4データセットで評価した。

UCI HAR (Human Activity Recognition Using Smartphones)

UCI_HAR [12] CC BY 4.0 → このデータでの学習と評価
pool 被験者21 名 被験者分割pool 21 / test 9 名 pool 窓数7352 チャネル9 ch 系列長128 点 クラス6
本研究での役割:
RQ2 の主対象。事前登録した目標 τ=0.90 のもとで N*(必要被験者数)と削減率を推定した (F-8/F-9/F-10)。
どんなデータか:
30名の被験者が腰にスマートフォン(Samsung Galaxy S II)を装着し、6種の日常動作を 行った際の慣性センサ記録。加速度計とジャイロを50Hzで計測し、2.56秒(128点)の窓に 切り出したものが公式に配布されている。
分類タスク:
128点×9チャネルの慣性センサ窓から、その窓の動作6クラスを分類する。学習に使う 被験者数 N を変えながら、目標精度に到達するのに必要な N* を測る。
1レコードの構造:
1レコード = 1窓。9チャネル(body_acc x/y/z、body_gyro x/y/z、total_acc x/y/z) × 128点。付随して被験者ID(1〜30)と動作ラベルを持つ。公式配布には561次元の 手設計特徴量も含まれるが、本研究は生の慣性信号のみを使う。

チャネル定義: body_acc_x, body_acc_y, body_acc_z, body_gyro_x, body_gyro_y, body_gyro_z, total_acc_x, total_acc_y, total_acc_z

ラベル意味学習側の件数
WALKING 平地歩行 1226
WALKING_UPSTAIRS 階段昇り 1073
WALKING_DOWNSTAIRS 階段降り 986
SITTING 着座 1286
STANDING 起立 1374
LAYING 横臥 1407

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

WALKINGn=1226WALKING_UPSTAIRSn=1073WALKING_DOWNSTAIRSn=986SITTINGn=1286STANDINGn=1374LAYINGn=14070系列終端

1窓のチャネル別波形(WALKING クラスの代表窓)

body_acc_xbody_acc_ybody_acc_zbody_gyro_xbody_gyro_ybody_gyro_ztotal_acc_xtotal_acc_ytotal_acc_z
クラス分布(学習側)
WALKING1226 (17%)WALKING_UPSTAIRS1073 (15%)WALKING_DOWNSTAIRS986 (13%)SITTING1286 (17%)STANDING1374 (19%)LAYING1407 (19%)
サンプル値の抜粋

pool(学習側)split、チャネル0、先頭3窓×先頭8時点(窓ごとz正規化後)

#0 0.0000.0100.0090.0050.0110.0040.0050.006
#1 0.0010.0050.0030.0020.0030.0020.0020.001
#2 0.0040.002-0.000-0.004-0.007-0.0030.0010.001
注意点: 公式の被験者非跨り分割(train 21名 / test 9名)をそのまま使う。静的姿勢 (SITTING/STANDING/LAYING)は加速度の平均値が主な手がかりで、動的動作より 分離しやすい。目標 τ=0.90 は6クラスとしては比較的到達しやすい水準。

出典: Anguita et al. (2013), ESANN; UCI ML Repository dataset 240, DOI:10.24432/C54S4K

WISDM v1.1 (Actitracker)

WISDM [13] CC BY 4.0 → このデータでの学習と評価
pool 被験者24 名 被験者分割pool 24 / test 12 名 pool 窓数3515 チャネル3 ch 系列長200 点 クラス6 サンプリング20 Hz
本研究での役割:
RQ2 の外的妥当性の第2データ。UCI HAR と独立に事前登録した τ=0.80 で再評価し、 帰無結論を再現した(F-12)。
どんなデータか:
36名の被験者がスマートフォンを前ポケットに入れ、6種の動作を行った際の3軸加速度 記録(約20Hz)。公式の train/test 分割はない。
分類タスク:
200点(約10秒)×3チャネルの加速度窓から動作6クラスを分類する。UCI HAR と同じく 被験者数を変えて N* を測る。
1レコードの構造:
生ファイルは1行 = (被験者ID, 動作ラベル, タイムスタンプ, x, y, z) の CSV 形式。 本研究は同一(被験者, 動作)の連続区間内で200点の非重複窓に切り出し、窓ごとに チャネル別 z 正規化する。

チャネル定義: accel_x, accel_y, accel_z

ラベル意味学習側の件数
Walking 平地歩行 1395
Jogging ジョギング 1074
Upstairs 階段昇り 389
Downstairs 階段降り 297
Sitting 着座 208
Standing 起立 152

クラス別の代表波形(各クラスの中心に最も近い1サンプル、チャネル0)

Walkingn=1395Joggingn=1074Upstairsn=389Downstairsn=297Sittingn=208Standingn=1520系列終端

1窓のチャネル別波形(Walking クラスの代表窓)

accel_xaccel_yaccel_z
クラス分布(学習側)
Walking1395 (40%)Jogging1074 (31%)Upstairs389 (11%)Downstairs297 (8%)Sitting208 (6%)Standing152 (4%)
サンプル値の抜粋

pool(学習側)split、チャネル0、先頭3窓×先頭8時点(窓ごとz正規化後)

#0 -0.1301.2801.253-0.110-0.2510.381-0.110-0.083
#1 -0.8020.4870.649-0.048-1.7430.942-0.1130.201
#2 0.3210.416-0.1501.7010.0120.8970.2110.640

前処理: non-overlapping windows within (subject,activity) runs; normalize=per_window_z

注意点: 公式分割がないため、seed 0 の固定シャッフルで test 12名 / pool 24名に分けた (事前登録済み)。生ファイルには壊れた行が約1%含まれ、読み込み時にスキップする。 Walking/Jogging が多数を占めるクラス不均衡がある。

出典: Kwapisz, Weiss & Moore (2011), SIGKDD Explorations 12(2); WISDM v1.1

PAMAP2 Physical Activity Monitoring

PAMAP2 [14] CC BY 4.0 → このデータでの学習と評価
被験者分割pool 5 / test 3 名 pool 窓数1361 チャネル9 ch 系列長168 点 クラス12 サンプリング33.333 Hz (原 100.0 Hz)
本研究での役割:
RQ2 の外的妥当性の第3データ(少N端点)。pool 5名と小さく、N* が格子下限で 左側打ち切りとなり削減率は推定不能(F-13)。
どんなデータか:
9名の被験者が手首・胸・足首の3箇所に IMU を装着し、12種の日常/運動活動を行った 記録(100Hz)。心拍計も併用されているが本研究では使わない。
分類タスク:
168点(約5秒)×9チャネルの加速度窓から活動12クラスを分類する。
1レコードの構造:
生ファイルは活動ごとの .dat で、1行 = (タイムスタンプ, 活動ID, 心拍, 各IMUの 54列)。本研究は3箇所×3軸の ±16g 加速度9列のみを使い(ジャイロ・磁気・心拍・ 向きは除外)、100Hz を 1/3 に間引いて約33.3Hz とし、168点の非重複窓に切る。

チャネル定義: hand_acc16_x, hand_acc16_y, hand_acc16_z, chest_acc16_x, chest_acc16_y, chest_acc16_z, ankle_acc16_x, ankle_acc16_y, ankle_acc16_z

ラベル意味学習側の件数
lying 横臥
sitting 着座
standing 起立
walking 歩行
running 走行
cycling 自転車
nordic_walking ノルディックウォーキング
ascending_stairs 階段昇り
descending_stairs 階段降り
vacuum_cleaning 掃除機がけ
ironing アイロンがけ
rope_jumping 縄跳び

このデータセットの波形・サンプル値は本リポジトリに含めていない(取得コストまたは再配布不可のため)。上記の構造情報は data/metadata/pamap2.json に記録された実測値。

前処理: protocol-12 activities only; transient/optional dropped; stride-3 decimation; non-overlapping 168-sample windows within (subject,activity) runs; NaN windows dropped; normalize=per_window_z

注意点: 被験者109は記録が10窓・1活動しかないため機械的に除外した(精度に依存しない判断)。 被験者ごとに実施した活動が異なり、活動の欠損が多い。ライセンス上ライブラリ経由の 自動取得は可能だが 1.6GB あり、本レポートでは波形の抜粋を載せていない。

出典: Reiss & Stricker (2012), ISWC/PETRA; UCI ML Repository dataset 231, DOI:10.24432/C5NW2H

WESAD (Wearable Stress and Affect Detection)

WESAD [16] 学術・非商用利用(帰属表示必須、再配布不可) → このデータでの学習と評価
被験者分割pool 10 / test 5 名 pool 窓数728 チャネル5 ch 系列長2100 点 クラス3 サンプリング70.0 Hz (原 700.0 Hz)
本研究での役割:
RQ2 の外的妥当性の第4データ(非HAR の生理信号)。HAR 向けの枠組みが転移せず near-chance となり、削減以前にタスクが学習されていないことが分かった(F-14)。
どんなデータか:
15名の被験者に胸部装着型デバイス(RespiBAN)を着け、ベースライン・ストレス誘発 (TSST)・娯楽(コメディ視聴)の3条件を体験させた際の生理信号記録(700Hz)。
分類タスク:
2100点(30秒)×5チャネルの生理信号窓から、情動状態3クラスを分類する。
1レコードの構造:
被験者ごとの pickle ファイルに、胸部5チャネル(ECG/EDA/EMG/RESP/TEMP)と 手首デバイスの信号、ラベル列が入る。本研究は胸部5chとラベル{1,2,3}のみを使い、 700Hz を反エイリアス処理付きで70Hzへ間引き、30秒の非重複窓に切る。

チャネル定義: ECG, EDA, EMG, RESP, TEMP

ラベル意味学習側の件数
baseline 平常状態
stress ストレス負荷(TSST: 面接・暗算課題)
amusement 娯楽(コメディ動画視聴)

このデータセットの波形・サンプル値は本リポジトリに含めていない(取得コストまたは再配布不可のため)。上記の構造情報は data/metadata/wesad.json に記録された実測値。

前処理: chest physiology 5ch; labels {1,2,3} only (baseline/stress/amusement), {0,4,5,6,7} dropped; anti-aliased 700->70.0 Hz decimation; 2100-sample windows (overlap=0.0) within (subject,label) runs; NaN windows dropped; normalize=per_window_z

注意点: **再配布不可**のライセンス(非商用・帰属表示)のため、生データも波形の抜粋も 本リポジトリには含めない(チェックサムとメタデータのみ)。また本研究の前処理は HAR 用の「窓ごとz正規化」をそのまま適用しており、EDA や体温の絶対レベルという 生理信号の主要な情報を消している可能性が高い。これが near-chance の候補要因。

出典: Schmidt, Reiss, Duerichen, Marberger & Van Laerhoven (2018), Introducing WESAD, ICMI 2018, pp. 400-408, DOI:10.1145/3242969.3242985; UCI ML Repository dataset 465

ソース: references/dataset_profiles.yaml ・ data/metadata/*.json ・ report/assets/data/dataset_samples.json ・ 生成日時 2026-08-24 06:52 UTC

評価した時系列データ拡張手法

既存の時系列データ拡張手法を、全手法同じ構成(考え方 / 手順 / ラベルの決め方 / ハイパーパラメータ / 前提 / 本実装の差分 / 実測の効果)で並べる。分類はサーベイ[8]の大分類に対応させた。

説明文は references/augmentation_profiles.yaml、パラメータ値は config/augmentations.yaml、効果は results.json、入出力例は report/assets/data/augmentation_examples.json(実験と同じ実装・同じパラメータで実データを拡張した出力)に由来する。

振幅領域の摂動

値そのものに小さな変換を加える。時間軸の構造は保ったまま、センサノイズや 個体差に相当する変動を模す。実装が軽く、信号の意味を壊しにくい。

jitter(ガウスノイズ付加)

[7]

各時点に独立なガウスノイズを足す。

考え方:
センサの計測ノイズを模した最も基本的な摂動。波形の大局的な形は保ったまま、 細部を揺らして過剰適合を抑える。
手順:
選んだサンプルの全時点・全チャネルに平均0・標準偏差 sigma の正規乱数を加算する。
ラベル:
元サンプルのラベルをそのまま継承。
暗黙の前提:
クラスを決める情報が高周波の微細構造ではなく、大局的な波形にあること。 微細構造が効くタスク(心電図の細かい棘波など)では情報を壊しうる。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0
sigma 加えるノイズの標準偏差(z正規化後の信号に対する相対値)。 0.03

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +3.5pt 0.00624 有意
minirocket +0.1pt 0.255 非有意

本研究での位置づけ: サーベイで最も基本的な magnitude 系手法として追試対象に選定。

scaling(振幅スケーリング)

[7]

波形全体をチャネルごとにランダムな倍率で伸縮する。

考え方:
センサ感度の個体差や装着位置のずれによる振幅差を模す。時間方向の形は完全に 保たれ、縦軸だけが変わる。
手順:
チャネルごとに平均1・標準偏差 sigma の正規乱数を1つ引き、そのチャネル全体に掛ける。
ラベル:
元サンプルのラベルをそのまま継承。
暗黙の前提:
クラスが振幅の絶対値ではなく波形の形で決まること。絶対レベルが情報を持つ信号 (皮膚電気活動や体温など)では有害になりうる。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0
sigma スケール係数のばらつき(1.0 中心)。 0.1

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +3.1pt 0.00335 有意
minirocket +0.1pt 0.293 非有意

UCI_HAR の被験者数削減: N*=8.51 (削減率 +3.9%)

本研究での位置づけ: jitter と対になる magnitude 系手法。窓ごとz正規化と組み合わせると効果が 打ち消されやすい点は考察で触れている。

パターン合成(サンプル間の混合)

複数の実サンプルを組み合わせて中間的なサンプルを作る。クラス内の多様性を 「実在するサンプルの間」を埋める形で増やす。

mixup(サンプル間の線形補間)

[6]

同一クラスの2サンプルを線形に混ぜて中間サンプルを作る。

考え方:
画像分野で提案された手法。2つの実サンプルを結ぶ直線上の点を新しい学習例と することで、クラス内の分布を滑らかに埋める。
手順:
同一クラスから2サンプルを選び、Beta(alpha, alpha) から引いた混合比 lam で lam*A + (1-lam)*B を計算する。
ラベル:
同一クラス内でのみ混ぜるため、両者のラベルは一致する。そのラベルをそのまま 与える(ハードラベル)。
暗黙の前提:
2サンプルの中間が同じクラスとして妥当であること(クラス領域が凸に近いこと)。 時系列では位相がずれた2波形の平均が「どちらでもない波形」になりうる。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0
alpha 混合比を引く Beta 分布の形状。小さいほど端(元サンプル寄り)に偏る。 0.2

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +4.8pt 0.000742 有意
minirocket -0.1pt 0.192 非有意

UCI_HAR の被験者数削減: N*=8.48 (削減率 +4.1%)

本実装の差分: 原論文の mixup はクラスを跨いで混ぜ、ラベルも同じ比率で混ぜたソフトラベルを 使う。本実装は同一クラス限定・ハードラベルに簡略化している (artifacts/deviations.md)。

本研究での位置づけ: 1D-CNN で最大の改善を示した手法(F-5)。ただし被験者数削減では対照を越えて いない。

dtw(DTW 整列に基づく系列平均)

[9]

動的時間伸縮で位相を揃えてから2サンプルを平均する。

考え方:
時系列を単純平均すると位相ずれで波形がぼやける。DTW で時間軸を対応付けてから 平均すると、形を保った中間サンプルが得られる。
手順:
同一クラスの2サンプルを選び、チャネルごとに DTW の対応経路を求めて第2系列を 第1系列の時間軸へ写像し、両者を平均する。
ラベル:
同一クラス内の合成なので、そのクラスのラベルを与える。
暗黙の前提:
クラス内の差異が主に時間的な伸縮であること。伸縮では説明できない差異 (振幅や欠損)には効かない。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0
window DTW の整列に許す時間ずれの幅(系列長に対する割合)。 0.1

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +4.7pt 0.00141 有意
minirocket +0.1pt 0.199 非有意

UCI_HAR の被験者数削減: N*=7.90 (削減率 +10.8%)

本実装の差分: 原論文(Forestier et al. 2017)は重み付き DBA で多数サンプルの重心を作る。 本実装は2サンプルのペアワイズ平均に簡略化している(artifacts/deviations.md)。

本研究での位置づけ: UCI HAR で点推定の削減率が最大だった手法(F-8)。ただし CI は none と重なる。

smote(近傍内挿)

[5]

同一クラスの k 近傍へ向かって内挿し、合成サンプルを作る。

考え方:
不均衡データ対策の古典手法。特徴空間で近い同一クラスのサンプル間を内挿し、 少数クラス周辺の密度を上げる。
手順:
サンプルを1つ選び、同一クラス内の k 近傍から1つを無作為に選び、両者を結ぶ 線分上の一様乱数点を合成サンプルとする。近傍探索は生信号を平坦化した ベクトル空間で行う。
ラベル:
元サンプルのクラスを継承。
暗黙の前提:
生信号のユークリッド距離が「似た波形」を意味すること。位相ずれに弱く、 時系列では近傍が意味的に近いとは限らない。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0
k 内挿相手を選ぶ近傍数。 5

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +3.4pt 0.00724 非有意
minirocket -0.3pt 0.044 非有意

UCI_HAR の被験者数削減: N*=9.08 (削減率 -2.6%)

本実装の差分: 原論文の SMOTE は少数クラスのみに適用し、特徴量空間で動作する。本実装は 全クラスへ適用し、生信号ベクトル空間で近傍探索する(artifacts/deviations.md)。

本研究での位置づけ: WISDM で点推定の削減率が最大だった手法。ただし指標を macro-F1 に変えると順位が入れ替わる。

単純増量

新しい情報を加えず、データ量だけを増やす。学習の正則化効果と「情報が増えた 効果」を切り分けるための基準として使う。

none(拡張なし)

学習データをそのまま使うベースライン。

考え方:
拡張の効果を測る基準線。すべての比較はこの条件との差で表される。
手順:
学習データを一切変更せずモデルに渡す。
ラベル:
変更なし。
暗黙の前提:
なし(基準)。

入出力例(GunPoint の1サンプル)

元サンプル

UCI_HAR の被験者数削減: N*=8.85 (削減率 +0.0%)

本研究での位置づけ: 全比較の基準。N*(none) が削減率の分母になる。

oversample(単純複製)

既存の学習サンプルをそのまま複製して数を増やす。

考え方:
新しい情報はゼロだが、学習データ量は増える。「量が増えたこと自体の効果」と 「合成で情報が増えた効果」を分離するための基準。
手順:
学習集合から復元抽出でサンプルを選び、コピーをそのまま追加する。
ラベル:
元サンプルのラベルをそのまま継承。
暗黙の前提:
情報を増やさないので、これを超えられない拡張は「量の水増し以上のことをして いない」と判断できる。
パラメータ意味本実験の値
ratio 元の学習件数に対して追加する合成サンプルの割合(1.0 で倍量)。 1.0

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

実測の効果(accuracy、拡張なしとの差、Holm 補正後)

モデル平均差p判定
cnn1d +4.1pt 0.000546 有意
minirocket +0.4pt 0.142 非有意

UCI_HAR の被験者数削減: N*=9.27 (削減率 -4.8%)

本研究での位置づけ: 純粋な量水増しの基準線。レッドチーム検証(issue #23)以降、削減率の比較は label_shuffle ではなくこの oversample を「量だけの効果」の基準に据えている。

対照(negative control)

効果があってはいけない操作。これが改善を示したら、測っているものは クラス情報ではなく別の何か(正則化アーティファクト)だと分かる。

label_shuffle(negative control)

実サンプルの複製に無作為なラベルを付けて追加する対照。

考え方:
クラス情報を持たない(むしろ壊す)操作。これが削減を示すなら、その削減幅は クラス情報ではなくデータ量やラベルノイズの正則化効果で説明できる。
手順:
oversample と同じく複製を追加するが、追加分のラベルだけを一様乱数で置き換える。 元のサンプルとその正しいラベルはそのまま残る。
ラベル:
追加分のみ無作為ラベル。元データのラベルは変更しない。
暗黙の前提:
健全なパイプラインならこの操作は性能を改善しない。改善するなら評価系に アーティファクトがある。
パラメータ意味本実験の値
ratio 追加する合成サンプルの割合。 1.0

入出力例(GunPoint の1サンプル)

元サンプル 生成されたサンプル ・ 50 件 → 100 件(+50)

UCI_HAR の被験者数削減: N*=8.47 (削減率 +4.3%)

本実装の差分: 「クラス信号ゼロの床」ではない点に注意(レッドチーム検証 issue #23 で訂正)。 元データは正しいラベルのまま残るため、これはラベルノイズを上乗せした 悲観的対照であり、量の水増し基準は oversample の方が適切。

本研究での位置づけ: 本研究の中心的な仕掛け。UCI HAR ではこの対照ですら約4.3%の見かけの削減を 示し、それ以下の削減はアーティファクトと区別できないという判定基準になった(F-10)。

ソース: references/augmentation_profiles.yaml ・ config/augmentations.yaml ・ results.json ・ report/assets/data/augmentation_examples.json ・ 生成日時 2026-08-24 06:52 UTC

データセットごとの学習と評価

データセットごとに何を入力して何を当てるモデルを学習し、どの分割・どの指標で評価したかを明示し、そのデータセット単体の結果を並べる。全 14 データセット・2786 run が対象。

データの中身は「データセット」タブ、拡張手法の中身は「拡張手法」タブ、被験者数削減(RQ2)の結果は「被験者数削減」タブを参照。数値はすべて results.json から集計している。

評価プロトコル(共通)

UCR ベンチマーク(RQ1: 精度効果の系統評価)

UCR Time Series Classification Archive の単変量データセット。被験者IDを持たず、 公式の train/test 分割が定義済み。本研究では「拡張がどの条件で精度を改善するか」 (RQ1)を横断的に測るために使う。全系列は読み込み時に系列ごと z 正規化される。 各クラスラベルの意味は UCR アーカイブの データセット説明に基づく(ラベル値そのものは 実データから読み出しており、意味の対応付けのみが文献由来)。 分割はアーカイブの公式 train/test をそのまま使う。学習側が極端に小さいもの(CBF は train 30 / test 900 など)もあるが、既発表の数値と比較できることを優先して再分割しない。

被験者ID付きデータ(RQ2: 必要被験者数の削減評価)

1サンプルがどの被験者由来かを追跡できるデータ。同一被験者が train と test に 跨がらない分割(group split)を強制でき、「所定性能に必要な実被験者数 N*」を 測れる。本研究の RQ2 はこの4データセットで評価した。

共通のリーク防止: test データは fit・拡張・合成元・early stopping・ハイパラ/手法選択のいずれにも使わない。被験者ID付きデータでは同一被験者が学習側と評価側に跨がらないことをコードで検査する(spec §8)。
解く問題:
波形がシリンダ型・ベル型・ファネル型のどれかを3クラス分類する。
学習の入力:
1チャネル × 128点の系列 → 3クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9619 ± 0.0072 -0.0118 0.9616
cnn1d jitter 0.9804 ± 0.0013 +0.0067 0.9803
cnn1d mixup 0.9756 ± 0.0051 +0.0019 0.9755
cnn1d none 0.9737 ± 0.0139 基準 0.9735
cnn1d oversample 0.9822 ± 0.0019 +0.0085 0.9822
cnn1d scaling 0.9807 ± 0.0028 +0.0070 0.9807
cnn1d smote 0.9626 ± 0.0117 -0.0111 0.9625
minirocket dtw 0.9967 ± 0.0000 -0.0014 0.9967
minirocket jitter 0.9978 ± 0.0000 -0.0003 0.9978
minirocket mixup 0.9974 ± 0.0006 -0.0007 0.9974
minirocket none 0.9981 ± 0.0006 基準 0.9982
minirocket oversample 0.9981 ± 0.0006 +0.0000 0.9982
minirocket scaling 0.9978 ± 0.0000 -0.0003 0.9978
minirocket smote 0.9967 ± 0.0000 -0.0014 0.9967

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は oversample/cnn1d の +0.9pt、 最大悪化は dtw/cnn1d の -1.2pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

CBF / cnn1d
0.6560.98210%25%50%75%100%
CBF / minirocket
0.6460.99810%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで CBF の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +30 0.033 1.000
jitter +30 0.033 1.000
scaling +30 0.033 1.008
mixup +30 0.067 0.986
dtw +30 0.067 0.975
smote +30 0.050 0.968
label_shuffle +30 0.017 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

ECG200

ECG200 → データの説明
解く問題:
1心拍の波形から、正常心拍か心筋梗塞かを2クラス分類する。
学習の入力:
1チャネル × 96点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.8367 ± 0.0252 +0.0167 0.8136
cnn1d jitter 0.8267 ± 0.0058 +0.0067 0.8064
cnn1d mixup 0.8467 ± 0.0058 +0.0267 0.8257
cnn1d none 0.8200 ± 0.0300 基準 0.7935
cnn1d oversample 0.8500 ± 0.0265 +0.0300 0.8301
cnn1d scaling 0.8267 ± 0.0153 +0.0067 0.8039
cnn1d smote 0.8700 ± 0.0200 +0.0500 0.8579
minirocket dtw 0.8867 ± 0.0058 -0.0166 0.8754
minirocket jitter 0.8867 ± 0.0115 -0.0166 0.8749
minirocket mixup 0.8933 ± 0.0208 -0.0100 0.8831
minirocket none 0.9033 ± 0.0058 基準 0.8940
minirocket oversample 0.8933 ± 0.0058 -0.0100 0.8828
minirocket scaling 0.8933 ± 0.0058 -0.0100 0.8822
minirocket smote 0.8967 ± 0.0306 -0.0066 0.8860

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は smote/cnn1d の +5.0pt、 最大悪化は dtw/minirocket の -1.7pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

ECG200 / cnn1d
0.6770.87010%25%50%75%100%
ECG200 / minirocket
0.7930.90310%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで ECG200 の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +100 0.005 1.000
jitter +100 0.005 1.000
scaling +100 0.005 1.004
mixup +100 0.065 0.985
dtw +100 0.065 0.974
smote +100 0.010 0.994
label_shuffle +100 0.070 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

ECG5000

ECG5000 → データの説明
解く問題:
1心拍の波形から、その拍の型を5クラス(正常 + 異常4種)に分類する。
学習の入力:
1チャネル × 140点の系列 → 5クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 252 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9377 ± 0.0035 -0.0037 0.5747
cnn1d jitter 0.9381 ± 0.0006 -0.0033 0.5494
cnn1d mixup 0.9376 ± 0.0026 -0.0038 0.5525
cnn1d none 0.9414 ± 0.0020 基準 0.5566
cnn1d oversample 0.9392 ± 0.0020 -0.0022 0.5529
cnn1d scaling 0.9370 ± 0.0029 -0.0044 0.5494
cnn1d smote 0.9331 ± 0.0050 -0.0083 0.5498
minirocket dtw 0.9398 ± 0.0009 -0.0051 0.6127
minirocket jitter 0.9431 ± 0.0021 -0.0018 0.6192
minirocket mixup 0.9435 ± 0.0013 -0.0014 0.6241
minirocket none 0.9449 ± 0.0007 基準 0.5948
minirocket oversample 0.9445 ± 0.0008 -0.0004 0.6203
minirocket scaling 0.9456 ± 0.0005 +0.0007 0.6257
minirocket smote 0.9441 ± 0.0008 -0.0008 0.6192

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は scaling/minirocket の +0.1pt、 最大悪化は smote/cnn1d の -0.8pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

ECG5000 / cnn1d
0.9160.94110%25%50%75%100%
ECG5000 / minirocket
0.9190.94610%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで ECG5000 の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +500 0.017 1.000
jitter +500 0.017 1.000
scaling +500 0.017 1.001
mixup +500 0.267 0.987
dtw +500 0.267 0.967
smote +500 0.026 0.996
label_shuffle +500 0.274 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

解く問題:
エンジン音の波形から、特定の異常症状が存在するかどうかを2クラス分類する。
学習の入力:
1チャネル × 500点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 = 42 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9369 ± 0.0016 +0.0023 0.9369
cnn1d jitter 0.9356 ± 0.0046 +0.0010 0.9356
cnn1d mixup 0.9351 ± 0.0009 +0.0005 0.9351
cnn1d none 0.9346 ± 0.0032 基準 0.9345
cnn1d oversample 0.9346 ± 0.0004 +0.0000 0.9345
cnn1d scaling 0.9318 ± 0.0015 -0.0028 0.9317
cnn1d smote 0.9366 ± 0.0029 +0.0020 0.9366
minirocket dtw 0.9374 ± 0.0009 -0.0116 0.9373
minirocket jitter 0.9235 ± 0.0087 -0.0255 0.9234
minirocket mixup 0.9348 ± 0.0040 -0.0142 0.9348
minirocket none 0.9490 ± 0.0016 基準 0.9489
minirocket oversample 0.9136 ± 0.0066 -0.0354 0.9135
minirocket scaling 0.9260 ± 0.0054 -0.0230 0.9259
minirocket smote 0.9447 ± 0.0008 -0.0043 0.9447

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は dtw/cnn1d の +0.2pt、 最大悪化は oversample/minirocket の -3.5pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで FordA の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +3601 0.004 1.000
jitter +3601 0.004 1.000
scaling +3601 0.004 1.002
mixup +3601 0.013 0.964
dtw +3601 0.013 0.963
smote +3601 0.002 0.962
label_shuffle +3601 0.004 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

GunPoint

GunPoint → データの説明
解く問題:
手の動きの軌跡から、動作が Gun(抜銃)か Point(指差し)かを2クラス分類する。
学習の入力:
1チャネル × 150点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 252 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9889 ± 0.0034 +0.0000 0.9889
cnn1d jitter 0.9911 ± 0.0138 +0.0022 0.9911
cnn1d mixup 0.9933 ± 0.0000 +0.0044 0.9933
cnn1d none 0.9889 ± 0.0172 基準 0.9889
cnn1d oversample 1.0000 ± 0.0000 +0.0111 1.0000
cnn1d scaling 0.9978 ± 0.0034 +0.0089 0.9978
cnn1d smote 0.9978 ± 0.0034 +0.0089 0.9978
minirocket dtw 0.9978 ± 0.0034 +0.0000 0.9978
minirocket jitter 0.9978 ± 0.0034 +0.0000 0.9978
minirocket mixup 0.9956 ± 0.0034 -0.0022 0.9956
minirocket none 0.9978 ± 0.0034 基準 0.9978
minirocket oversample 0.9978 ± 0.0034 +0.0000 0.9978
minirocket scaling 1.0000 ± 0.0000 +0.0022 1.0000
minirocket smote 0.9978 ± 0.0034 +0.0000 0.9978

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は oversample/cnn1d の +1.1pt、 最大悪化は mixup/minirocket の -0.2pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

GunPoint / cnn1d
0.5071.00010%25%50%75%100%
GunPoint / minirocket
0.6801.00010%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで GunPoint の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +50 0.000 1.000
jitter +50 0.000 1.000
scaling +50 0.000 1.013
mixup +50 0.010 0.992
dtw +50 0.010 0.977
smote +50 0.070 0.997
label_shuffle +50 0.030 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

ItalyPowerDemand

ItalyPowerDemand → データの説明
解く問題:
1日の需要曲線から、その日が10月〜3月(冬季)か4月〜9月(夏季)かを2クラス分類する。
学習の入力:
1チャネル × 24点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9556 ± 0.0115 -0.0020 0.9556
cnn1d jitter 0.9589 ± 0.0011 +0.0013 0.9589
cnn1d mixup 0.9517 ± 0.0020 -0.0059 0.9517
cnn1d none 0.9576 ± 0.0115 基準 0.9576
cnn1d oversample 0.9598 ± 0.0048 +0.0022 0.9598
cnn1d scaling 0.9598 ± 0.0062 +0.0022 0.9598
cnn1d smote 0.9618 ± 0.0037 +0.0042 0.9618
minirocket dtw 0.9627 ± 0.0020 -0.0020 0.9627
minirocket jitter 0.9634 ± 0.0022 -0.0013 0.9634
minirocket mixup 0.9627 ± 0.0034 -0.0020 0.9627
minirocket none 0.9647 ± 0.0006 基準 0.9647
minirocket oversample 0.9647 ± 0.0020 +0.0000 0.9647
minirocket scaling 0.9637 ± 0.0022 -0.0010 0.9637
minirocket smote 0.9634 ± 0.0006 -0.0013 0.9634

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は smote/cnn1d の +0.4pt、 最大悪化は mixup/cnn1d の -0.6pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

ItalyPowerDemand / cnn1d
0.7410.96210%25%50%75%100%
ItalyPowerDemand / minirocket
0.9180.96510%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで ItalyPowerDemand の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +67 0.007 1.000
jitter +67 0.007 1.000
scaling +67 0.007 1.012
mixup +67 0.022 0.992
dtw +67 0.022 0.978
smote +67 0.007 0.996
label_shuffle +67 0.022 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

MoteStrain

MoteStrain → データの説明
解く問題:
センサ系列がどちらのセンサ(湿度計/温度計)由来かを2クラス分類する。
学習の入力:
1チャネル × 84点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.8954 ± 0.0021 +0.2016 0.8940
cnn1d jitter 0.8922 ± 0.0050 +0.1984 0.8911
cnn1d mixup 0.8890 ± 0.0152 +0.1952 0.8869
cnn1d none 0.6938 ± 0.2127 基準 0.6346
cnn1d oversample 0.8903 ± 0.0069 +0.1965 0.8892
cnn1d scaling 0.8978 ± 0.0035 +0.2040 0.8969
cnn1d smote 0.8930 ± 0.0070 +0.1992 0.8916
minirocket dtw 0.9271 ± 0.0028 -0.0085 0.9260
minirocket jitter 0.9302 ± 0.0026 -0.0054 0.9294
minirocket mixup 0.9310 ± 0.0060 -0.0046 0.9302
minirocket none 0.9356 ± 0.0032 基準 0.9349
minirocket oversample 0.9369 ± 0.0028 +0.0013 0.9362
minirocket scaling 0.9430 ± 0.0018 +0.0074 0.9425
minirocket smote 0.9252 ± 0.0033 -0.0104 0.9242

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は scaling/cnn1d の +20.4pt、 最大悪化は smote/minirocket の -1.0pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

MoteStrain / cnn1d
0.5030.90310%25%50%75%100%
MoteStrain / minirocket
0.6770.94310%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで MoteStrain の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +20 0.075 1.000
jitter +20 0.075 1.000
scaling +20 0.075 0.991
mixup +20 0.075 0.991
dtw +20 0.075 0.937
smote +20 0.025 0.970
label_shuffle +20 0.025 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

PAMAP2 Physical Activity Monitoring

PAMAP2 → データの説明
解く問題:
168点(約5秒)×9チャネルの加速度窓から活動12クラスを分類する。
学習の入力:
9チャネル × 168点の系列 → 12クラスの分類
評価の分割:
被験者非跨り分割(seed 0 固定・事前登録)(被験者を跨がない held-out 被験者で評価)
モデル:
cnn1d_har
条件:
拡張 7 種 × seed 5 個 × 被験者数 4 段階(2〜5名) = 140 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d_har dtw 0.7815 ± 0.0378 +0.0167 0.7700
cnn1d_har label_shuffle 0.6265 ± 0.0645 -0.1383 0.5413
cnn1d_har mixup 0.7685 ± 0.0470 +0.0037 0.7488
cnn1d_har none 0.7648 ± 0.0372 基準 0.7400
cnn1d_har oversample 0.7673 ± 0.0376 +0.0025 0.7366
cnn1d_har scaling 0.7685 ± 0.0344 +0.0037 0.7395
cnn1d_har smote 0.7769 ± 0.0333 +0.0121 0.7569

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は dtw/cnn1d_har の +1.7pt、 最大悪化は label_shuffle/cnn1d_har の -13.8pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

このデータセットの分布変化は未算出(生データの取得コストまたは再配布不可のため。データセットタブの波形と同じ制約)。

このデータセットは被験者数削減(RQ2)の対象。必要被験者数 N* と削減率は「被験者数削減」タブを参照。

SonyAIBORobotSurface1

SonyAIBORobotSurface1 → データの説明
解く問題:
歩行中の加速度波形から、床面がカーペットかセメントかを2クラス分類する。
学習の入力:
1チャネル × 70点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9434 ± 0.0116 +0.1464 0.9430
cnn1d jitter 0.9190 ± 0.0173 +0.1220 0.9187
cnn1d mixup 0.9229 ± 0.0171 +0.1259 0.9226
cnn1d none 0.7970 ± 0.1656 基準 0.7889
cnn1d oversample 0.9224 ± 0.0222 +0.1254 0.9221
cnn1d scaling 0.9107 ± 0.0241 +0.1137 0.9105
cnn1d smote 0.9373 ± 0.0269 +0.1403 0.9370
minirocket dtw 0.8314 ± 0.0133 +0.0150 0.8313
minirocket jitter 0.8131 ± 0.0035 -0.0033 0.8129
minirocket mixup 0.8170 ± 0.0044 +0.0006 0.8168
minirocket none 0.8164 ± 0.0019 基準 0.8162
minirocket oversample 0.8131 ± 0.0053 -0.0033 0.8128
minirocket scaling 0.8087 ± 0.0029 -0.0077 0.8083
minirocket smote 0.8203 ± 0.0246 +0.0039 0.8201

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は dtw/cnn1d の +14.6pt、 最大悪化は scaling/minirocket の -0.8pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

SonyAIBORobotSurface1 / cnn1d
0.6470.94310%25%50%75%100%
SonyAIBORobotSurface1 / minirocket
0.7850.84310%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで SonyAIBORobotSurface1 の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +20 0.025 1.000
jitter +20 0.025 1.000
scaling +20 0.025 0.991
mixup +20 0.175 0.995
dtw +20 0.175 0.978
smote +20 0.000 0.980
label_shuffle +20 0.125 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

TwoLeadECG

TwoLeadECG → データの説明
解く問題:
心拍波形が2つの誘導のどちらに由来するかを2クラス分類する。
学習の入力:
1チャネル × 82点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9880 ± 0.0125 +0.1615 0.9880
cnn1d jitter 0.9912 ± 0.0079 +0.1647 0.9912
cnn1d mixup 0.9944 ± 0.0028 +0.1679 0.9944
cnn1d none 0.8265 ± 0.2824 基準 0.7708
cnn1d oversample 0.9792 ± 0.0159 +0.1527 0.9792
cnn1d scaling 0.9792 ± 0.0096 +0.1527 0.9792
cnn1d smote 0.9748 ± 0.0315 +0.1483 0.9748
minirocket dtw 0.9962 ± 0.0013 +0.0015 0.9962
minirocket jitter 0.9965 ± 0.0000 +0.0018 0.9965
minirocket mixup 0.9944 ± 0.0005 -0.0003 0.9944
minirocket none 0.9947 ± 0.0018 基準 0.9947
minirocket oversample 0.9959 ± 0.0013 +0.0012 0.9959
minirocket scaling 0.9977 ± 0.0010 +0.0030 0.9977
minirocket smote 0.9962 ± 0.0013 +0.0015 0.9962

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は mixup/cnn1d の +16.8pt、 最大悪化は mixup/minirocket の -0.0pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

TwoLeadECG / cnn1d
0.6000.99410%25%50%75%100%
TwoLeadECG / minirocket
0.5820.99810%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで TwoLeadECG の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +23 0.043 1.000
jitter +23 0.043 1.000
scaling +23 0.043 0.992
mixup +23 0.022 0.999
dtw +23 0.022 0.997
smote +23 0.043 0.996
label_shuffle +23 0.065 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

UCI HAR (Human Activity Recognition Using Smartphones)

UCI_HAR → データの説明
解く問題:
128点×9チャネルの慣性センサ窓から、その窓の動作6クラスを分類する。学習に使う 被験者数 N を変えながら、目標精度に到達するのに必要な N* を測る。
学習の入力:
9チャネル × 128点の系列 → 6クラスの分類
評価の分割:
公式の被験者非跨り分割(被験者を跨がない held-out 被験者で評価)
モデル:
cnn1d_har
条件:
拡張 7 種 × seed 3 個 × 被験者数 7 段階(3〜21名) = 147 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d_har dtw 0.9127 ± 0.0352 +0.0018 0.9135
cnn1d_har label_shuffle 0.8994 ± 0.0288 -0.0115 0.8996
cnn1d_har mixup 0.9093 ± 0.0361 -0.0016 0.9103
cnn1d_har none 0.9109 ± 0.0402 基準 0.9121
cnn1d_har oversample 0.9076 ± 0.0390 -0.0033 0.9091
cnn1d_har scaling 0.9163 ± 0.0303 +0.0054 0.9176
cnn1d_har smote 0.9081 ± 0.0401 -0.0028 0.9094

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は scaling/cnn1d_har の +0.5pt、 最大悪化は label_shuffle/cnn1d_har の -1.1pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで UCI_HAR の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +7352 0.006 0.997
jitter +7352 0.006 1.003
scaling +7352 0.006 1.000
mixup +7352 0.025 0.990
dtw +7352 0.025 0.992
smote +7352 0.005 0.959
label_shuffle +7352 0.024 0.997

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

このデータセットは被験者数削減(RQ2)の対象。必要被験者数 N* と削減率は「被験者数削減」タブを参照。

WESAD (Wearable Stress and Affect Detection)

WESAD → データの説明
解く問題:
2100点(30秒)×5チャネルの生理信号窓から、情動状態3クラスを分類する。
学習の入力:
5チャネル × 2100点の系列 → 3クラスの分類
評価の分割:
被験者非跨り分割(seed 0 固定・事前登録)(被験者を跨がない held-out 被験者で評価)
モデル:
cnn1d_har
条件:
拡張 7 種 × seed 5 個 × 被験者数 9 段階(2〜10名) = 315 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d_har dtw 0.5317 ± 0.0477 +0.0002 0.4881
cnn1d_har label_shuffle 0.5617 ± 0.0606 +0.0302 0.4878
cnn1d_har mixup 0.5111 ± 0.0468 -0.0204 0.4716
cnn1d_har none 0.5315 ± 0.0434 基準 0.4809
cnn1d_har oversample 0.5283 ± 0.0440 -0.0032 0.4861
cnn1d_har scaling 0.5268 ± 0.0426 -0.0047 0.4845
cnn1d_har smote 0.5289 ± 0.0489 -0.0026 0.4846

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は label_shuffle/cnn1d_har の +3.0pt、 最大悪化は mixup/cnn1d_har の -2.0pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

このデータセットの分布変化は未算出(生データの取得コストまたは再配布不可のため。データセットタブの波形と同じ制約)。

このデータセットは被験者数削減(RQ2)の対象。必要被験者数 N* と削減率は「被験者数削減」タブを参照。

WISDM v1.1 (Actitracker)

WISDM → データの説明
解く問題:
200点(約10秒)×3チャネルの加速度窓から動作6クラスを分類する。UCI HAR と同じく 被験者数を変えて N* を測る。
学習の入力:
3チャネル × 200点の系列 → 6クラスの分類
評価の分割:
被験者非跨り分割(seed 0 固定・事前登録)(被験者を跨がない held-out 被験者で評価)
モデル:
cnn1d_har
条件:
拡張 7 種 × seed 3 個 × 被験者数 8 段階(3〜24名) = 168 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d_har dtw 0.7395 ± 0.1259 -0.0054 0.6761
cnn1d_har label_shuffle 0.7093 ± 0.1300 -0.0356 0.5665
cnn1d_har mixup 0.7477 ± 0.1195 +0.0028 0.6806
cnn1d_har none 0.7449 ± 0.1181 基準 0.6747
cnn1d_har oversample 0.7404 ± 0.1220 -0.0045 0.6708
cnn1d_har scaling 0.7469 ± 0.1267 +0.0020 0.6745
cnn1d_har smote 0.7492 ± 0.1345 +0.0043 0.6839

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は smote/cnn1d_har の +0.4pt、 最大悪化は label_shuffle/cnn1d_har の -3.6pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで WISDM の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +3515 0.004 1.000
jitter +3515 0.004 1.000
scaling +3515 0.004 1.004
mixup +3515 0.191 0.964
dtw +3515 0.191 0.951
smote +3515 0.006 0.943
label_shuffle +3515 0.179 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

このデータセットは被験者数削減(RQ2)の対象。必要被験者数 N* と削減率は「被験者数削減」タブを参照。

解く問題:
センサ系列から、そのウェハ加工が正常か異常かを2クラス分類する。
学習の入力:
1チャネル × 152点の系列 → 2クラスの分類
評価の分割:
UCR 公式の train/test 分割(公式 test splitで評価)
モデル:
cnn1d, minirocket
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
モデル拡張精度 Δ vs nonemacro-F1
cnn1d dtw 0.9979 ± 0.0011 +0.0021 0.9945
cnn1d jitter 0.9951 ± 0.0009 -0.0007 0.9869
cnn1d mixup 0.9960 ± 0.0012 +0.0002 0.9894
cnn1d none 0.9958 ± 0.0015 基準 0.9890
cnn1d oversample 0.9968 ± 0.0008 +0.0010 0.9916
cnn1d scaling 0.9977 ± 0.0007 +0.0019 0.9939
cnn1d smote 0.9969 ± 0.0008 +0.0011 0.9917
minirocket dtw 0.9987 ± 0.0002 +0.0003 0.9966
minirocket jitter 0.9971 ± 0.0007 -0.0013 0.9926
minirocket mixup 0.9970 ± 0.0004 -0.0014 0.9922
minirocket none 0.9984 ± 0.0004 基準 0.9959
minirocket oversample 0.9985 ± 0.0002 +0.0001 0.9961
minirocket scaling 0.9982 ± 0.0006 -0.0002 0.9952
minirocket smote 0.9971 ± 0.0007 -0.0013 0.9926

学習比率 100% での seed 平均(± は seed 間標準偏差)。 このデータセットでの最大改善は dtw/cnn1d の +0.2pt、 最大悪化は mixup/minirocket の -0.1pt。 有意性は複数データセットをまとめた検定(レポートタブ §6)で判定しており、この表単体からは読み取れない。

Wafer / cnn1d
0.9710.99810%25%50%75%100%
Wafer / minirocket
0.9741.00910%25%50%75%100%

学習比率(10〜100%)に対する精度。線は拡張手法。

拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで Wafer の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +1000 0.006 1.000
jitter +1000 0.006 1.000
scaling +1000 0.006 1.002
mixup +1000 0.181 0.972
dtw +1000 0.181 0.931
smote +1000 0.007 0.997
label_shuffle +1000 0.199 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

ソース: results.json(runs / summary / learning_curves)・references/dataset_profiles.yaml・report/assets/data/distribution_shift.json ・ 生成日時 2026-08-24 06:52 UTC

被験者数削減(RQ2)

「所定の分類性能に必要な実被験者数を、データ拡張でどれだけ削減できるか」を4つの被験者ID付きデータで評価した結果。評価枠組み(N* の定義・事前登録・対照越え判定)はレポートタブ §3 を参照。

本タブの数値はすべて results.json の reduction ブロックから生成しており、HTML への手入力はない。

1. 主対象: UCI HAR での被験者数削減(RQ2)

被験者ID付きの UCI HAR [12](30名の慣性センサ行動認識)で、事前登録した目標 accuracy = 0.90 に到達するのに必要な実被験者数 N* を、拡張なしと各手法で比較する。 削減率 = 1 − N*(手法) / N*(none)。目標値は Anguita ら [12] の報告水準に基づき実験前に固定した (artifacts/pre_registration.md)。基準は N*(none) = 8.85 名(95%CI 5.68–10.04)。

0.840.890.9536912151821被験者数目標 0.9dtwlabel_shufflemixupnoneoversamplescalingsmote
図2: 被験者数に対する精度の学習曲線と目標線。
拡張N*95% CI削減率節約被験者数
dtw 7.9 3.0–9.62 +10.8% +0.95
label_shuffle 8.47 7.31–11.12 +4.3% +0.38
mixup 8.48 3.0–9.01 +4.1% +0.37
none 8.85 5.68–10.04 +0.0% +0.00
oversample 9.27 7.6–10.42 -4.8% -0.42
scaling 8.51 3.0–9.85 +3.9% +0.34
smote 9.08 7.94–10.0 -2.6% -0.23

表6: 必要被験者数 N* と削減率。N* の CI は反復数が少なく広いため、多くの手法で none の CI と重なる。負の削減率は必要被験者数の増加(有害)を意味する。

対照による健全性検証

負の対照 label_shuffle は、正しいラベルの元データをそのまま残し複製分にだけ乱ラベルを与える(=元データ保持+ラベルノイズの悲観的・有害寄りの対照であり、クラス信号を全く持たない床ではない)。 純粋な「量の水増し」の基準はむしろ oversample(既存サンプルの単純複製)で、UCI HAR では -4.8%(必要被験者数はむしろ増加)。 その label_shuffle でさえ +4.3% の見かけの削減を示した。 すなわちこの対照と同水準以下の削減は、ラベルを壊す/量だけ増やす操作でも生じうるアーティファクトであり真の削減と区別できない(表6 で対照以下の削減率を示す手法がこれに該当する)。 したがって削減の主張は「対照を明確に超えること」を条件とすべきで(§3.3)、本設定でそれを満たす手法はない。 点推定で label_shuffle を上回るのは DTW のみだが、その信頼区間は対照と重なり確定しない。

2. 外的妥当性: WISDM での追試

UCI HAR 単一データセットへの依存を減らすため、第2の被験者ID付きデータ WISDM v1.1 [13] (36名のスマホ加速度・6活動、pool 24 名 + test 12 名)で削減評価を追試する。前処理は各データセットに合わせており(UCI HAR は配布元整形済みの非正規化、WISDM は生値のため窓ごと z 正規化。§5.1・再現ノートタブ J-WISDM-NORM)、同一枠組みの厳密な再現ではなく、前処理を dataset に適合させた追試である点に注意する。目標 accuracy = 0.80 は UCI HAR の 0.90 を流用せず実験前に独立して固定した(artifacts/pre_registration.md)。基準は N*(none) = 14.04 名(95%CI 11.18–14.68)。図3 の学習曲線に示すとおり none の精度は被験者数に対して非単調(中盤で最大に達し以降やや低下)で、目標 0.80 の交差は 12→15 名の単一の上向き交差に依存する。N* はこの区間の線形補間で定めており(J-NSTAR)、非単調性は N* 不確実性の一因である。加えて 0.80 は none 曲線のプラトー肩付近にあたり手法差が圧縮されやすい。

0.510.690.863691215182124被験者数目標 0.8dtwlabel_shufflemixupnoneoversamplescalingsmote
図3: WISDM の被験者数に対する精度の学習曲線と目標線。none は非単調で、目標線との交差は 12→15 名区間に依存する。
拡張N*95% CI削減率節約被験者数
dtw 14.14 13.32–15.32 -0.8% -0.11
label_shuffle 21.13 13.4–22.04 -50.5% -7.09
mixup 15.14 11.74–16.57 -7.9% -1.11
none 14.04 11.18–14.68 +0.0% +0.00
oversample 14.15 8.86–16.25 -0.8% -0.12
scaling 13.73 12.44–14.35 +2.2% +0.30
smote 12.55 11.23–13.81 +10.5% +1.48

表7: WISDM の必要被験者数 N* と削減率。点推定の最大削減も none の CI と重なり、CI 分離で基準を明確に超える手法はない。

表7 のとおり、WISDM でも点推定の削減率は手法間で符号がばらつき、いずれの手法も none の 95%CI と分離しない。 ここで再現できたのは「削減を確定できない(帰無)」の一点のみである。最良手法の順位は再現しておらず、UCI HAR では DTW が最良・SMOTE がむしろ有害寄りだったのに対し、WISDM では SMOTE が点推定で最大(+10.5%)・DTW はほぼ 0 と入れ替わる。手法間の N* 差(最大でも被験者 1〜2 名弱)は被験者格子の間隔(3 名)・セル内のばらつき・反復 3 回の bootstrap CI のいずれより小さく、反復数を増やすまで手法順位は報告しない

またこの smote の点推定削減は accuracy 固有である。WISDM はクラス不均衡で accuracy が多数クラスに偏る。同じ被験者数曲線を macro-F1 で再集計すると手法順位が変わり、smote のみが僅かに正で dtwscaling は負に転じる(いずれも none の信頼区間と大きく重なる。閾値別の数値は F-12・限界節)。すなわち WISDM の被験者数削減は macro-F1 でも確認されず、accuracy 基準の帰無と整合する。不均衡データでは accuracy と macro-F1 / balanced accuracy を併記して解釈すべきである。

2データセットで一貫するのは帰無のみ

純粋な「量の水増し」の対照は oversample であり、WISDM では -0.8%(ほぼ 0)——量を増やすだけでは N* は下がらない。 悲観的対照 label_shuffle(元データ保持+ラベルノイズ)は WISDM では -50.5% と必要被験者数がむしろ増える。これは複製分の乱ラベルが有害に働いた結果であって、UCI HAR で見た見かけの削減の有無を「量水増しアーティファクトの強弱」として対比できるものではない(対照の性質が「量の水増し」ではなくラベルノイズだからである)。 いずれにせよ「拡張が所定性能に必要な実被験者を明確に代替する」ことは UCI HAR・WISDM のどちらでも確証されない。再現したのは帰無であって手法順位ではなく、RQ2 の結論(本設定では削減を統計的に確定できない)が単一データセット固有でないことを示す。反復数が少なく CI が広い点は両データ共通の限界(issue #6/#7)。

3. 横断: PAMAP2 を加えた3データの削減率 vs 母集団被験者数

第3の被験者データ PAMAP2 [14](屋内外18活動のうち標準の12活動 protocol サブセット、被験者9名)を横断比較に加える。ローダは一次配布 .dat から自前前処理し(加速度 ±16g 9ch・100→33.3Hz・168サンプル窓・窓ごと z 正規化)、活動サポートの欠損する subject 109 を機械的に除外(除外基準は再現ノートタブ J-PAMAP2-EXCLUDE109)、test = 3 名(103/104/105)・pool = 5 名で N∈{2,3,4,5}×5反復。クラス不均衡(rope_jumping は test 側 0 窓で実効11クラス)のため主指標は macro-F1。目標 macro-F1 = 0.70 は「pool 全員・拡張なしの test 平均から 0.05 引き 0.05 刻みで切り捨てる」統一ルールで、数値算出前・1 グリッド run 前に事前登録した(UCI HAR の 0.90・WISDM の 0.80 は流用しない)。

統一ルール target の扱い(比較可能性のための別レンズ)

3データの削減率を同じ軸で並べるため、横断図・横断表では 3データとも同一の target 決定ルール(floor_0.05(full_pool_none_mean - 0.05))を用いる。このルールは PAMAP2 では事前登録どおりだが、データ確定済みの UCI HAR・WISDM にとっては事後(post-hoc)の記述的再解析であり、両データの統一 target(macro-F1 で UCI HAR 0.85・WISDM 0.70 等)は各データの事前登録した主 target(UCI HAR accuracy 0.90 / WISDM accuracy 0.80)とは異なる。主結論(F-8/F-10/F-12)は各データの事前登録 τ に基づき不変で、本節はそれとは別レンズである。ただし統一レンズで得られる結論(削減は帰無)は主解析と一致するため、解釈は補強方向に働く。

3データはサンプリング(50/20/100→33.3Hz)・窓長・チャネル数(6/3/9)・クラス数(6/6/12)・pool 上限(21/24/5)・目標の絶対値が異なる。同一枠組みの厳密再現ではなく、各データに前処理を適合させた追試であり、これらは交絡として削減率差の原因を母集団サイズに帰属することを妨げる。3データ=3点のため回帰・相関は求めず、点+定性考察に限る。

-24%-14%-4%+6%+15%none 基準母集団(pool)被験者数削減率 = 1 − N*(aug)/N*(none)PAMAP2pool 5推定不能(左側打ち切り)UCI_HARpool 21WISDMpool 24oversamplescalingmixupdtwsmotelabel_shuffle
図4: 削減率 vs pool 被験者数(accuracy、統一ルール target)。y=0 が none 基準。PAMAP2 は N*(none) が格子下限で左側打ち切り=推定不能のため点を置かず網掛けで示す。交絡(クラス数・センサ・窓・pool 上限)により削減率差を被験者数に帰属できない。
-12%-6%+0%+7%+13%none 基準母集団(pool)被験者数削減率 = 1 − N*(aug)/N*(none)PAMAP2pool 5推定不能(左側打ち切り)UCI_HARpool 21WISDMpool 24oversamplescalingmixupdtwsmotelabel_shuffle
図5: 削減率 vs pool 被験者数(macro_f1、統一ルール target)。y=0 が none 基準。PAMAP2 は N*(none) が格子下限で左側打ち切り=推定不能のため点を置かず網掛けで示す。交絡(クラス数・センサ・窓・pool 上限)により削減率差を被験者数に帰属できない。
データ指標pool統一targetN*(none) [95%CI] oversamplescalingmixupdtwsmotelabel_shuffle
PAMAP2 accuracy 5 0.70 ≤2(左側打ち切り) 推定不能 推定不能 推定不能 推定不能 推定不能 推定不能
PAMAP2 (主) macro_f1 5 0.70 ≤2(左側打ち切り) 推定不能 推定不能 推定不能 推定不能 推定不能 推定不能
UCI_HAR (主) accuracy 21 0.85 3.47 [3.0–4.89] +10.3% +13.6% +13.6% +13.6% +11.9% +6.3%
UCI_HAR macro_f1 21 0.85 3.4 [3.0–4.81] +11.8% +11.8% +11.8% +11.8% +11.8% +3.4%
WISDM (主) accuracy 24 0.75 11.13 [8.4–12.78] -0.3% -7.6% -5.2% -11.3% +5.5% -21.8%
WISDM macro_f1 24 0.70 11.85 [10.67–14.41] -4.9% -5.2% -7.8% -11.0% +4.1% 未到達

表8: 統一ルール target による横断削減率(pool 昇順)。「(主)」は各データの主指標を示す。「統一target」列は横断比較用の値であり、UCI HAR・WISDM では各データの事前登録主 target(accuracy 0.90 / 0.80)とは異なる post-hoc の値である(上記注記)。oversample は純量水増しの基準、label_shuffle は元データ保持+ラベルノイズの悲観的対照。「未到達」は目標未到達で N* が定義できないこと(PAMAP2・WISDM macro-F1 の label_shuffle)。推定可能なセルでは、どの手法の N* 95%CI も N*(none) と重なる。UCI HAR の削減率が一様に正なのは、統一 target 0.85 が UCI HAR では N≈3(格子下限)で到達し N* が下限近傍に圧縮されるためで、真の削減の証拠ではない。

PAMAP2 は削減率を数値で断定できない。 none の macro-F1 が最小格子 N=2 で既に目標 0.70 を超え(N2=0.706)、N*(none) が格子下限 N=2 に張り付く(左側打ち切り)。事前登録した停止条件どおり、削減率は算出せず定性記述に格下げする。これは PAMAP2 固有の捏造回避ではなく、少 N(pool 5)・高 baseline という構造的限界である。悲観的対照 label_shuffle は PAMAP2 で目標未到達(N* 定義不能)であり、対照として妥当に機能した。

3データで一貫するのは帰無:母集団サイズに沿う系統トレンドは非検出

推定可能な UCI HAR・WISDM でも、統一ルール下の削減率は正負にばらつき(実手法で概ね ±14% 以内)、どの手法も none 基準(y=0)から CI 分離しない。PAMAP2 は左側打ち切りで削減率を解像できない。統一ルールは target 決定手続きを揃える一方、baseline が高く pool 上限が低いデータ(PAMAP2・UCI HAR)では N* が格子下限近傍に寄り、削減率が格子分解能で圧縮される。3点・広 CI から、母集団被験者数(5〜24名)に沿った削減率の系統的トレンドは読み取れない。悲観的対照 label_shuffle は WISDM・PAMAP2 で目標未到達、UCI HAR で削減最小と、対照として一貫して妥当。以上は DS-1(F-8/F-10/F-12)で見た帰無の外的妥当性を第3データで補強するものであり、削減効果の存在を主張するものではない。強い因果・外挿はしない(F-13)。

4. 信号種依存: 生理信号 WESAD

§6.4–6.5 の3データはいずれも加速度など運動由来の HAR である。信号種を変えた外的妥当性として、第4の被験者データ WESAD [16](胸装着 RespiBAN の生理信号、被験者15名)で同じ削減評価の枠組みを適用する。設定:胸生理 5ch(ECG/EDA/EMG/RESP/TEMP)、700→70Hz 反エイリアス間引き、30秒非重複窓、窓ごと z 正規化、3クラス(baseline/stress/amusement)、model=cnn1d_har、seed-0 で K=5 名を held-out・残り10名を pool、N∈{2..10}×5反復×6拡張+negative control=315 run 完走(git_dirty=false・失敗0)。HAR 3データとの比較可能性を保つため、前処理・モデル・評価は一切変えていない(post-hoc 変更なし)。

前提が成立しない:モデルがタスクを学習していない(near-chance)

full-pool・拡張なしの baseline が near-chance である。macro-F1 = 0.483(目標 0.40)、accuracy = 0.505(目標 0.45、多数派クラス率 ≈0.54 を下回る)。図6 のとおり none 曲線は N=2..10 でほぼ平坦(~0.44–0.49)で、被験者を増やしても改善しない。さらに乱ラベルの悲観的対照 label_shufflenone とほぼ重なる(~0.44–0.53)——これはモデルがクラス構造を学習していない直接証拠である。したがって本データで論じられるのは「拡張が被験者を削減するか否か」ではなく、そもそも削減を論じる前提(タスク学習)が成立しないという点である。

0.400.470.532345678910被験者数目標 0.40dtwmixupoversamplescalingsmotelabel_shufflenone
図6: WESAD の被験者数に対する macro_f1(3クラス、target=0.40)。none(太実線)は平坦、悲観的対照 label_shuffle(破線)がこれと重なる=near-chance。他手法(淡色)も同帯に密集し分離しない。全手法が最小格子 N=2 で既に目標線を上回るため N* は左側打ち切り。
拡張N*(macro_f1)削減率
dtw ≤2 (左側打ち切り) 推定不能
label_shuffle ≤2 (左側打ち切り) 推定不能
mixup ≤2 (左側打ち切り) 推定不能
none ≤2 (左側打ち切り) 推定不能
oversample ≤2 (左側打ち切り) 推定不能
scaling ≤2 (左側打ち切り) 推定不能
smote ≤2 (左側打ち切り) 推定不能

表9: WESAD の N* と削減率(macro_f1)。全手法(none・対照含む)で N*(none) が最小格子 N=2 に張り付く左側打ち切り——none が N=2 で既に target を超えるため。事前登録の停止条件どおり削減率は算出せず「推定不能」とし、捏造(見かけの 0% や正値)をしない。accuracy 指標でも同様に全手法左側打ち切り。

DS-3 で言えるのは「枠組みの非転移(信号種依存)」に限る

WESAD で拡張の効果は評価不能である(前提となるタスク学習が成立しない)。DS-3 の結論は「拡張が被験者数を削減する/しない」ではなく、HAR 向けの枠組み(窓ごと z 正規化 + cnn1d_har)が生理信号に転移せず near-chance にとどまる=信号種依存という一点に限定される。near-chance を「WESAD が難しいから」だけに帰さない:候補要因として、HAR 由来の窓ごと z 正規化が EDA / 体温の絶対レベル(ストレスで上昇する皮膚コンダクタンス・体温——生理信号の主情報)を各窓内で消すことが挙げられる(再現ノートタブ J-WESAD-NORM / deviations D-WESAD に記録)。原論文 [16] は手作り生理特徴で 3クラス accuracy ~93% を報告しており、near-chance は WESAD 自体の限界ではなく前処理・モデルの選択に強く依存することを示唆する。それでも比較可能性のため枠組みは固定し(前処理変更なし=#23 の規律)、信号種を変えた別軸として本結果を記録する。WESAD は交絡(タスク・信号種・クラス数)を避けるため §6.5 の HAR 横断図には同列で載せていない。データは非商用+帰属ライセンス(CC BY ではない)で、生データは非コミット・利用時は Schmidt et al. 2018 の帰属表示が必須。

5. 4データ統合

§6.3–6.6 の4つの被験者ID付きデータ(UCI HAR / WISDM / PAMAP2 / WESAD)を1つのビューに束ね、「データ拡張による必要実被験者数の削減」の外的妥当性を締めくくる。母集団被験者数(pool 5〜24名)・信号種(慣性/加速度/生理)・タスク(HAR 6/12クラス・affect 3クラス)を跨いでも、削減は「測定可能な場合は帰無(対照を CI 分離で超える手法なし)」「それ以外は推定不能(左側打ち切り/near-chance)」であり、悲観的対照 label_shuffle や純量水増しの oversample を明確に超えて実被験者を削減できたデータは 1 つも無い。ここで帰無は「削減を測れたが差が対照と区別できない」、推定不能は「そもそも削減を測る前提(baseline が目標を安定して跨ぐ・モデルが学習している)が崩れている」を指す——「削減できたデータは無い」はこの両方を含む。

レンズと解釈の限定

本節は各データの事前登録した primary target(UCI HAR accuracy 0.90 / WISDM accuracy 0.80 / PAMAP2 macro_f1 0.70 / WESAD macro_f1 0.40)を用いる——すなわち主結論 F-8/F-10/F-12 と同一レンズであり、これらは本統合でも不変である。§6.5 の統一ルール target は UCI HAR / WISDM にとっては post-hoc の別レンズだが、そこでも結論(削減は帰無)は一致した。解釈は記述的・帰無前提に限る:4点(うち 2点は推定不能)のため回帰・相関・因果は求めず、母集団サイズや信号種に沿う系統トレンドは非検出/測定不能とする。交絡(タスク・クラス数・前処理・pool 上限・正規化)により、データ間の削減率差を単一要因に帰属することはできない。WESAD は信号種が異なり near-chance のため、削減率での横並び比較ではなく「枠組み非転移」の事例として区別して置く。

-63%-29%+5%+38%+72%none 基準(削減 0)← 実被験者が増(悪化)実被験者が減(削減) →削減率 = 1 − N*(aug)/N*(none)UCI HAR(accuracy 0.90, pool 21)dtwmixupscalingsmoteoversamplelabel_shuffle(対照)WISDM(accuracy 0.80, pool 24)dtwmixupscalingsmoteoversamplelabel_shuffle(対照)PAMAP2(macro_f1 0.70, pool 5)削減率は推定不能(左側打ち切り)WESAD(macro_f1 0.40, pool 10)削減率は推定不能(near-chance)
図7: 4データ統合の削減率フォレストプロット(各データの事前登録 primary target)。点=削減率の点推定、横棒=95%CI(各手法の N* bootstrap CI を none 点推定で規格化)、網掛け帯=none 自身の N* 不確実性。測定可能な UCI HAR・WISDM では、どの手法の CI も none の帯と重複し、悲観的対照 label_shuffle を CI 分離で超える手法は無い。PAMAP2(左側打ち切り)・WESAD(near-chance)は偽の削減値を置かず「推定不能」と明示する。
データpool信号種 クラス主指標(target) 削減の測定結論対照との関係
UCI HAR 21 慣性 6ch(加速度+ジャイロ) 6 accuracy 0.90 測定可能 (N*(none)≈8.85) 帰無 全手法の N* CI が none と重複。悲観的対照 label_shuffle を CI 分離で超える手法なし
WISDM 24 加速度 3ch 6 accuracy 0.80 測定可能 (N*(none)≈14.04) 帰無 同上。点推定最良の手法も CI が none と重複、対照越えなし
PAMAP2 5 多IMU 9ch(加速度+ジャイロ+磁気) 12 macro_f1 0.70 推定不能 推定不能(左側打ち切り) none が最小格子 N で既に target 超過。対照も target 未到達で削減を示さず
WESAD 10 胸部生理 5ch(ECG/EDA/EMG/RESP/TEMP) 3 macro_f1 0.40 推定不能 推定不能(near-chance / 枠組み非転移) label_shuffle ≈ none(モデル未学習)。削減の前提が不成立

表10: 4データ統合。すべての数値(pool・target・N*)は results.json の各データ reduction ブロックから自動生成。測定可能な 2 データはいずれも帰無(対照越えなし)、残る 2 データは推定不能。削減率で対照を明確に超えたデータは皆無。信号種・クラス数はデータ構造の記述。各データの取得・前処理・config・N* 推定手順は §6.3–6.6 と「再現・前処理ノート」タブを参照。

マルチモーダル(チャネル横断)拡張を対象外とする根拠

「センサ/モダリティを跨ぐ拡張が被験者数削減に効くか」を測るには、多モーダルかつ削減が測定可能な基盤——多チャネル入力の上で none baseline の N* が格子内に推定でき、モデルが実際にタスクを学習している——が要る。しかし本統合の 4 データはこの条件を満たさない:多モーダルの PAMAP2 は左側打ち切り、真の異種モダリティを持つ WESAD はnear-chanceで、いずれも削減を測る土台を欠く。削減が測れる UCI HAR・WISDM は単一モダリティに近くチャネル横断拡張の対象になりにくい(加速度とジャイロは物理量が異なり、混ぜると信号として壊れやすい)。したがってマルチモーダル拡張は本研究の対象外とし、この統合まとめで外的妥当性のアークを締める(実行価値の評価は付随メモ ds5_assessment.md)。将来の発火条件:多モーダルデータで N*(none) が格子内に推定でき、かつ label_shuffle ≪ none(モデルがクラス構造を学習)を確認できた時に限り、チャネル群単位・ラベル保存のセンサ間拡張を起動する。

ソース: results.json(reduction / reduction_wisdm / reduction_pamap2 / reduction_wesad / reduction_cross)・artifacts/findings.json ・ 生成日時 2026-08-24 06:52 UTC

付録: 時間軸を持たないデータセット

UCR アーカイブには、時間ではない軸に沿って並んだ「系列」が含まれる。本研究が扱った 13 データセットのうち次の 3 件がこれにあたり、主結果の集計から除外してこの付録に移した。データ・実験・結果はすべて残してある。

除外の理由

データセット実際の軸元データ
Plane 輪郭(角度方向) 航空機のシルエット輪郭を中心からの距離系列に変換したもの(形状の時系列化)。
ArrowHead 輪郭(角度方向) 考古学的な矢じりの画像輪郭を、中心からの距離系列に変換したもの。
Coffee 波数(FTIR スペクトル) コーヒー豆の赤外分光(FTIR)スペクトル。

時間領域のデータ拡張は「系列が時間に沿って並んでいる」ことを前提にする。とくに DTW 整列に基づく合成はクラス内の差異が時間的な伸縮であると仮定しており、輪郭やスペクトルではこの前提が成り立たない。 拡張手法の前提が満たされないデータを主結果の集計に混ぜると、「時系列拡張の効果」という問いへの答えが濁るため、主結果から外した。

post-hoc の開示: この除外は実験を走らせ結果を見たあとに決めたものであり、事前登録された手続きではない。 ただし除外の基準(軸が時間かどうか)はデータの構造的な性質で、結果の値とは無関係に決まる。判断の影響が見えるよう、除外前(全 12 データセット)の検定結果を下に併記する。

除外が主結果に与える影響

Phase 2 の横断比較は 12 データセットで実施し、うち 3 件が非時系列だった(主結果は残る 9 件)。同じ Wilcoxon 検定・Holm 補正を、除外前後の両方で示す。

拡張モデル 平均Δ(主結果 9件)有意 平均Δ(全 12件)有意
oversamplecnn1d +4.09pt +4.27pt
mixupcnn1d +4.83pt +6.23pt
dtwcnn1d +4.65pt +5.65pt
scalingcnn1d +3.06pt +3.68pt
jittercnn1d +3.55pt +3.86pt
smotecnn1d +3.35pt +5.11pt
smoteminirocket -0.27pt -0.18pt
oversampleminirocket +0.40pt +0.49pt
mixupminirocket -0.06pt +0.07pt
dtwminirocket +0.05pt +0.11pt
jitterminirocket +0.14pt +0.12pt
scalingminirocket +0.15pt +0.20pt

表A1: 非時系列データを除く前後の比較(accuracy、Holm 補正後)。両者とも p 値は各集合の中で補正している。

有意判定が入れ替わった条件: jitter/cnn1d(除外後のみ有意、p=0.05 vs 0.0693)、smote/cnn1d(除外前のみ有意、p=0.0507 vs 0.00234)。 いずれも p が 0.05 近傍の境界事例で、除外によって効果の有無が定性的に変わったとは読まない。

データセットの説明

Plane

Plane [1] 軸: 輪郭(角度方向)
どんなデータか:
航空機のシルエット輪郭を中心からの距離系列に変換したもの(形状の時系列化)。
分類タスク:
輪郭系列から機種7クラスを分類する。
1レコードの構造:
単変量 1ch × 系列長144点(輪郭を一周する角度方向の距離)。

クラス別の代表系列(各クラスの中心に最も近い1サンプル)

1n=152n=143n=94n=165n=136n=187n=200系列終端

時間軸ではなく空間(輪郭)を系列化したデータ。時間的な拡張の解釈は間接的になる。

ArrowHead

ArrowHead [1] 軸: 輪郭(角度方向)
どんなデータか:
考古学的な矢じりの画像輪郭を、中心からの距離系列に変換したもの。
分類タスク:
輪郭系列から矢じりの型式3クラスを分類する。
1レコードの構造:
単変量 1ch × 系列長251点。

クラス別の代表系列(各クラスの中心に最も近い1サンプル)

0n=121n=122n=120系列終端

train 36 件。Plane と同様、時間ではなく空間の系列。

Coffee

Coffee [1] 軸: 波数(FTIR スペクトル)
どんなデータか:
コーヒー豆の赤外分光(FTIR)スペクトル。
分類タスク:
スペクトルからアラビカ種かロブスタ種かを2クラス分類する。
1レコードの構造:
単変量 1ch × 系列長286点(波数方向のスペクトル)。

クラス別の代表系列(各クラスの中心に最も近い1サンプル)

0n=141n=140系列終端

train 28 件。軸が時間ではなく波数のため、時間的整列に基づく拡張の前提が弱い。

学習と評価の結果

主結果からは外したが、実験そのものは他のデータセットと同一条件で実施している(計 630 run)。

ArrowHead

ArrowHead → データの説明
学習の入力:
1チャネル × 251点の系列 → 3クラスの分類
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
結果表を開く(14 条件)
モデル拡張精度Δ vs none
cnn1ddtw 0.7276 +0.2533
cnn1djitter 0.4838 +0.0095
cnn1dmixup 0.5562 +0.0819
cnn1dnone 0.4743 基準
cnn1doversample 0.5867 +0.1124
cnn1dscaling 0.5200 +0.0457
cnn1dsmote 0.6419 +0.1676
minirocketdtw 0.8895 +0.0000
minirocketjitter 0.8724 -0.0171
minirocketmixup 0.8971 +0.0076
minirocketnone 0.8895 基準
minirocketoversample 0.9048 +0.0153
minirocketscaling 0.8990 +0.0095
minirocketsmote 0.8819 -0.0076
ArrowHead / cnn1d
0.3030.72810%25%50%75%100%
ArrowHead / minirocket
0.5310.90510%25%50%75%100%
拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで ArrowHead の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +36 0.069 1.000
jitter +36 0.069 1.000
scaling +36 0.069 1.018
mixup +36 0.042 0.999
dtw +36 0.042 0.991
smote +36 0.069 0.998
label_shuffle +36 0.042 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

Coffee

Coffee → データの説明
学習の入力:
1チャネル × 286点の系列 → 2クラスの分類
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
結果表を開く(14 条件)
モデル拡張精度Δ vs none
cnn1ddtw 0.8214 +0.2857
cnn1djitter 0.8452 +0.3095
cnn1dmixup 1.0000 +0.4643
cnn1dnone 0.5357 基準
cnn1doversample 0.8452 +0.3095
cnn1dscaling 1.0000 +0.4643
cnn1dsmote 1.0000 +0.4643
minirocketdtw 1.0000 +0.0000
minirocketjitter 1.0000 +0.0000
minirocketmixup 1.0000 +0.0000
minirocketnone 1.0000 基準
minirocketoversample 1.0000 +0.0000
minirocketscaling 1.0000 +0.0000
minirocketsmote 1.0000 +0.0000
Coffee / cnn1d
0.4881.00010%25%50%75%100%
Coffee / minirocket
0.7861.00010%25%50%75%100%
拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで Coffee の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +28 0.071 1.000
jitter +28 0.071 1.000
scaling +28 0.071 1.002
mixup +28 0.036 1.000
dtw +28 0.036 0.998
smote +28 0.036 1.000
label_shuffle +28 0.018 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

学習の入力:
1チャネル × 144点の系列 → 7クラスの分類
条件:
拡張 7 種 × seed 3 個 × 学習比率 5 段階 = 210 run
結果表を開く(14 条件)
モデル拡張精度Δ vs none
cnn1ddtw 1.0000 +0.0000
cnn1djitter 1.0000 +0.0000
cnn1dmixup 1.0000 +0.0000
cnn1dnone 1.0000 基準
cnn1doversample 1.0000 +0.0000
cnn1dscaling 1.0000 +0.0000
cnn1dsmote 1.0000 +0.0000
minirocketdtw 1.0000 +0.0000
minirocketjitter 1.0000 +0.0000
minirocketmixup 1.0000 +0.0000
minirocketnone 1.0000 基準
minirocketoversample 1.0000 +0.0000
minirocketscaling 1.0000 +0.0000
minirocketsmote 1.0000 +0.0000
Plane / cnn1d
0.7051.00010%25%50%75%100%
Plane / minirocket
0.9771.01010%25%50%75%100%
拡張によるデータ分布の変化を見る

各拡張手法を実験と同じ実装・同じパラメータで Plane の学習側 split 全体に適用し、合成後の集合と元の集合を比べた。クラス分布のズレは全体変動距離(0=変化なし〜1=別物)、広がりの変化はチャネル0の標準偏差の比(1.0=変化なし、1超で広がる)。

拡張追加サンプル クラス分布のズレ広がりの変化(std比)
oversample +105 0.033 1.000
jitter +105 0.033 1.000
scaling +105 0.033 1.003
mixup +105 0.038 0.999
dtw +105 0.038 0.999
smote +105 0.029 0.998
label_shuffle +105 0.062 1.000

クラス分布のズレが目立つのは mixupdtwlabel_shuffle: これらは実装上、合成先のクラスを(元の出現比率ではなく)クラス間で均等に選ぶため、クラス不均衡が大きいデータほどズレが大きく出る(拡張手法タブ参照)。oversamplejitterscalingsmote は元の分布からほぼ比例して抽出するため、ズレは小さい。

ソース: config/datasets.yaml(temporal フラグ)・results.json・references/dataset_profiles.yaml・report/assets/data/distribution_shift.json ・ 生成日時 2026-08-24 06:52 UTC

本研究を別環境で再現・移植するための実務情報。再現手順・データ前処理の補足と不定性・「エイヤッと決めた」判断・原論文からの実装差分をまとめる。 内容はすべて artifacts/*.yaml*.md から自動生成され、HTML への手入力は行わない(維持手順は skill /reproducibility-notes)。

再現手順

クリーンな環境から本研究の主要結果を再現する手順。すべて config/*.yaml で条件を定義し、 各 run は一意 run_id + manifest(git_commit・seed・依存チェックサム)を持つ。乱数 seed は run 単位で固定され、同一 commit・同一 config なら結果は決定的に再現される。

python3.11 depsuv.lock で固定(torch は CPU 版、aeon 1.5、scikit-learn、PyTorch) runtimeCPU のみ(GPU 不要)。実測目安: Phase 1 約1.5h / Phase 2 約2h / 被験者数実験は cnn1d_har 軽量版で数十分〜
  1. S1 環境構築
    make setup

    uv sync で Python 依存を、report/ で npm install により Tailwind CLI を導入する。

  2. S2 UCR データ取得と checksum 記録
    make download

    UCR アーカイブを aeon 経由で取得し data/raw にキャッシュ、checksum を記録する。UCI HAR は被験者数実験の初回実行時に自動ダウンロードされる(CC BY 4.0、data/metadata/uci_har.json に出典記録)。

  3. S3 テスト(リーク防止ガードを含む)
    make test

    被験者跨ぎリーク検査・拡張手法・統計・manifest スキーマの全テスト。実験前にここが green であることを確認する。

  4. S4 smoke 品質ゲート(ネットワーク不要)
    make smoke

    合成データ(sine vs square)で基盤の動作を確認する Phase 0 ゲート。config/experiments/smoke.yaml。

  5. S5 Phase 1 実験格子(UCR 最小追試)
    make phase1

    UCR 3データセット × 7拡張 × 2モデル × 3seeds = 126 runs。resume 対応。config/experiments/phase1.yaml。

  6. S6 Phase 2 実験格子(横断比較)
    make phase2

    12データセット × 5学習比率 × 7拡張 × 2モデル × 3seeds = 2520 runs。config/experiments/phase2.yaml。

  7. S7 被験者数削減実験(Phase 4-5)
    uv run python scripts/run_subject_experiment.py --config config/experiments/subject_count.yaml

    UCI HAR で被験者数 N∈{3,6,9,12,15,18,21} × 3反復の学習曲線。negative control は config/experiments/negative_control.yaml を追加実行する。目標 accuracy=0.90 は事前登録済み(artifacts/pre_registration.md)。

  8. S7b WISDM 被験者数削減の再現(Phase 6 / issue
    uv run python scripts/run_subject_experiment.py --config config/experiments/wisdm_subject_count.yaml

    第2の被験者データ WISDM v1.1 で N∈{3,6,9,12,15,18,21,24} × 3反復の学習曲線。WISDM は初回実行時に自動ダウンロード(CC BY 4.0、data/metadata/wisdm.json に出典記録)。目標 accuracy=0.80 は UCI HAR と独立に事前登録済み。同一の loader dispatch(data/subject_datasets.py)を経由。

  9. S7c PAMAP2 被験者数削減の横断追加(Phase 6 / issue
    uv run python scripts/run_subject_experiment.py --config config/experiments/pamap2_subject_count.yaml

    第3の被験者データ PAMAP2 で N∈{2,3,4,5} × 5反復の学習曲線。PAMAP2 は初回実行時に自動ダウンロード(UCI #231, CC BY 4.0, DOI:10.24432/C5NW2H, archive sha256=76b3580b…; data/metadata/pamap2.json に出典・per-subject 活動サポート記録)。加速度±16g 9ch・100→33.3Hz・168窓・窓ごとznorm、subject 109 は活動サポートで機械除外。主指標 macro-F1、target は full-pool none baseline から登録ルールで確定。negative control は config/experiments/pamap2_negative_control.yaml。target 決定用 baseline のみは config/experiments/pamap2_target_baseline.yaml。同一 loader dispatch(data/subject_datasets.py)経由。

  10. S7d WESAD 被験者数削減の外的妥当性(信号種軸, Phase 6 / issue
    uv run python scripts/run_subject_experiment.py --config config/experiments/wesad_subject_count.yaml

    第4の被験者データ WESAD(非HAR 生理信号)で N∈{2..10} × 5反復の学習曲線。胸 RespiBAN 生理 5ch(ECG/EDA/EMG/RESP/TEMP)、label {1,2,3}=baseline/stress/amusement の 3クラス、700→70Hz 反エイリアス間引き・30秒非重複窓・窓ごと znorm、seed-0 で K=5 held-out。主指標 macro-F1(不均衡)、target は full-pool none baseline から登録ルール(平均−0.05 を 0.05 刻み切り捨て)で確定(UCI HAR 0.90/WISDM 0.80/PAMAP2 0.70 は流用しない)。negative control は config/experiments/wesad_negative_control.yaml、target 決定用 baseline のみは config/experiments/wesad_target_baseline.yaml。同一 loader dispatch(data/subject_datasets.py)経由。データは著者配布 Sciebo zip(~2.5GB、DOI:10.1145/3242969.3242985、data/metadata/wesad.json に checksum・実在被験者ID・クラス別窓数を記録)。**ライセンスは非商用+帰属・再配布不可のため生データは非コミット。SX.pkl は Python2 pickle で latin1 デコード。**

  11. S8 集計・監査・レポート生成
    make all-report

    audit → aggregate → build report の順で実行。runs/・artifacts/ から HTML を自動生成する(数値の手入力なし)。

  12. S9 整合性検証
    make validate

    artifacts/ の整合性(manifest・予測ファイル・メトリクス範囲)を検査する。

再現の不変条件

  • 全 run に一意 run_id と manifest(条件・環境・git_commit・依存チェックサム)。同一 run_id への並行書き込みは pid ロックで拒否。
  • 実験グリッド実行前にコード変更をコミットし、manifest の git_commit がソースを一意に特定できる状態を保つ。
  • test データは fit・拡張・合成元・early stopping・ハイパラ/手法選択のいずれにも使わない(spec §8)。

データ前処理の補足と不定性

前処理は src/signal_aug/data/ に実装され、config ではなくコードで定義される。以下は 再現時に効く前処理の要点と、実装上の判断・不定性である。すべての正規化・当てはめは 学習データにのみ行い、test データには波及しない設計になっている。

処理対象内容不定性・注意
正規化(z 正規化) UCR データセット 各系列・各チャネルごとに時間軸方向で平均0・分散1へ正規化(_znorm)。train と test に同一処理を当てるが、統計量は系列単位で完結するためデータセット統計の共有(=リーク)は生じない。 サンプル単位正規化のため系列全体の振幅情報は落ちる。振幅が判別に効くデータでは前処理の選択が精度に影響しうる。
正規化(z 正規化) UCI HAR(被験者数実験の主対象) 9チャネル慣性信号(body_acc/body_gyro/total_acc の x/y/z)を原スケール(g 単位)のまま用い、z 正規化は適用しない。 UCR とは正規化方針が異なる。total_acc は重力込み・body_acc は重力除去済みという配布元の前処理に依存しており、追加正規化を入れると学習曲線・N* が変わりうる。ここは意図的な判断(judgment_calls: J-HAR-NORM)。
窓化(windowing) UCI HAR 配布元が生成した固定窓(128サンプル=2.56秒、50% オーバーラップ)をそのまま使用し、再窓化はしない。窓ごとに被験者IDが付与される。 同一被験者の重複窓が複数現れるが、被験者跨ぎリークは group split で防止(同一被験者は train と test に同時に現れない)。窓長・オーバーラップは配布元定義に固定。
正規化(z 正規化) WISDM v1.1(第2の被験者データ、issue #21 DS-1) 3チャネル加速度を窓ごと・チャネルごとに平均0・分散1へ z 正規化(_znorm_window)。各窓が自分の統計のみ使うためリークは生じない。UCI HAR(非正規化)とは方針が異なる(judgment_calls: J-WISDM-NORM)。使用データは WISDM v1.1(Kwapisz et al. 2011, 36名)であり、より大規模な 2019 年の biometrics 版(Weiss et al. 2019, 51名)とは別データである。 WISDM 生値は m/s^2 スケールで CNN 初段の想定より大きいため正規化する。振幅情報は落ちるが波形パターンが主判別要因。UCI HAR(非正規化)と WISDM(窓ごと z 正規化)で前処理が非対称なため、scaling/jitter のような振幅系の摂動は正規化後と生データで作用が異なる。したがって WISDM への展開は『同一枠組みの厳密再現』ではなく『前処理を dataset に合わせた追試』であり、結果比較時に留意する。
窓化(windowing) WISDM v1.1 生の逐次データを (subject,activity) 連続区間ごとに 200サンプル(約10秒@20Hz)の非重複窓へ再窓化。区間内窓化のため各窓は単一活動・単一被験者。不正行(全体の約1%)はスキップ(judgment_calls: J-WISDM-WINDOW)。 窓長・非重複は WISDM 標準に準拠。オーバーラップを入れると窓数増だが相関増。被験者跨ぎリークは group split で防止。
被験者選択(学習曲線) WISDM v1.1 公式 split が無いため seed-0 シャッフルで 12被験者を固定 held-out test、残り24被験者を pool とする(data/metadata/wisdm.json に記録)。pool から丸ごと N 被験者を seed 決定的に抽選(judgment_calls: J-WISDM-SPLIT)。 test 被験者の引きで到達精度が変わりうるが pool 側の被験者数曲線が主対象。反復3回のため N* の CI は広い見込み(検出力確保は issue #7 候補1 の後続課題)。
ラベル符号化 全データセット 出現クラスをソートして 0..K-1 に写像。UCI HAR は元ラベル 1..6 を 0..5 へシフト。 クラス順序は決定的(ソート順)。混同行列・クラス別指標を他実装と比較する際はこの順序に注意。
層化サブサンプリング(学習比率スイープ) Phase 2(UCR) 学習データのみを対象に、クラスごとに seed 由来の決定的サンプリングで比率を絞る。各クラス最低1サンプルを保持。test には一切適用しない。 小比率ではクラスあたり枚数が少なく、部分集合の引きにより分散が出る。seed 固定で再現可能。
train/val 分割(early stopping 用) 1D-CNN 学習データから層化抽出した検証セットで early stopping を行う。val は train 由来のみで、test は early stopping に使わない(spec §8)。 val_fraction は config 定義。分割 seed により学習の停止点が変わりうるが run seed で固定。
被験者選択(学習曲線) UCI HAR(Phase 4-5) 被験者数 N の各点で、プール(公式 train の21被験者)から丸ごと N 被験者を seed 決定的に抽選する。サンプル単位ではなく被験者単位で増やす。 反復は3回のみで N* の信頼区間が広い(本研究の主要な限界)。固定 held-out test は公式 test の9被験者。
被験者選択・前処理(PAMAP2, issue PAMAP2(Phase 6) 54列 .dat をパース → transient(0)・optional 6活動を除外し 12 protocol 活動へ写像 → 加速度 ±16g 9ch(hand/chest/ankle x/y/z)を選択(orientation/HR/±6g/gyro/mag 除外)→ 100→33.3Hz(stride-3)間引き → (subject,activity) 連続区間内で 168サンプル非重複窓 → 選択チャネルに NaN を含む窓は破棄 → 窓ごと z 正規化。subject 109 は活動サポート実測(総窓10・1/12活動)で機械的に除外し pool=5[101,102,106,107,108]/test=3[103,104,105](seed-0)。被験者単位で N を増やす。 被験者8名(除外後)は下限付近で N* CI が広い。rope_jumping は除外後 pool 4窓・test 0窓と希少でクラス欠落が macro-F1 を不安定化しうる。反復5回・CI 提示で緩和。前処理条件(チャネル数・レート・窓長)は UCI HAR/WISDM と非対称で横断比較の交絡(『dataset に合わせた追試』の位置づけ)。
被験者選択・前処理(WESAD, issue WESAD(Phase 6, 非HAR 生理信号) 被験者ごと SX.pkl を pickle.load(encoding='latin1')(Python2 pickle)でパース → 胸 RespiBAN 生理 5ch(ECG/EDA/EMG/RESP/TEMP)を選択(胸 ACC・手首 E4 は除外)→ label {1,2,3}(baseline/stress/amusement)のみ採用し 0..2 へ写像({0,4,5,6,7}=transient/meditation/ignore は破棄)→ (subject,label) 連続区間ごとに 700→70Hz を反エイリアス LPF(scipy.signal.decimate, zero-phase IIR)経由で間引き → 30秒(2100サンプル)非重複窓 → 選択チャネルに NaN を含む窓は破棄 → 窓ごと・チャネルごと z 正規化。seed-0 で K=5 被験者を固定 held-out test、残り10名を pool(subject_counts={2..10}, repeats=5)。被験者単位で N を増やす。実在被験者ID(S2–S17 の欠番あり 15名)・クラス別窓数は data/metadata/wesad.json に実測記録。 被験者15名(pool10)は下限付近で N* CI が広い見込み。少数派 amusement は少 N でサポートが薄く macro-F1 を不安定化しうる(反復5+CI で緩和、それでも不安定なら停止条件)。30秒非重複で窓が不足し N* 推定不能なら 30秒/50%重複を judgment call(J-WESAD-DS)として許容(被験者非跨りは厳守、重複は窓相関増として注記)。単純間引きは ECG/EMG 高域を折り返すため反エイリアス LPF を挟む。信号種(生理 vs 運動)・タスク(情動3クラス vs 行動)・チャネル数(5)が HAR 3データと異なり §6.5 横断図には同列で載せず信号種で層別する(『dataset に合わせた追試』かつ『信号種軸の外的妥当性』の位置づけ)。ライセンスは非商用+帰属(CC BY ではない)・再配布不可のため生データは非コミット。
欠損・異常値処理 全データセット UCR アーカイブ・UCI HAR とも配布時点で整形済みのため、欠損補完・外れ値除去は行わない。 独自データへ移植する場合は、この前提(前処理済み・欠損なし)が成り立つか確認が必要。

「エイヤッと決めた」判断(judgment calls)

以下は、原理的に一意には決まらず本プロジェクトが判断で固定した設定である。追試・移植の際は これらが結論(とくに被験者数削減の可否)にどれだけ効くかを sensitivity 欄で確認すること。 事前登録済み(preregistered=true)の項目は結果を見る前に固定しており、事後調整はしていない。

J-TARGET 目標性能 τ(被験者数削減の判定基準) 事前登録

決定: test accuracy = 0.90 を目標に固定。

理由: Anguita et al. (2013) が561次元特徴+SVM で約0.90を報告。生信号+深層は0.90–0.95が相場。文献由来の丸い値。

他の選択肢: 0.85 / 0.95、あるいは macro-F1 基準。

結論への影響: 高。N* は学習曲線上の閾値到達点なので τ を上げ下げすると N* と削減率が動く。事前登録で恣意性を排除。

artifacts/pre_registration.md

J-REPEATS 被験者数の反復回数 事前登録

決定: 各被験者数 N で3反復(異なる被験者部分集合)。

理由: CPU 実行時間と網羅性のバランス。

他の選択肢: 10–20 反復で検出力を確保。

結論への影響: 高。反復3回のため N* の信頼区間が広く、多くの手法で none や negative control と重なる。削減を確定できない最大の理由(Phase 6 の課題)。

artifacts/pre_registration.md / limitations.md

J-METHODS 被験者データへ持ち込む拡張手法の選定

決定: mixup / dtw / smote / oversample / scaling の5手法。jitter は除外、none は基準として常時含む。

理由: Phase 2 で 1D-CNN において Holm 補正後も有意だった手法を採用。被験者データの主モデルが 1D-CNN のため CNN の結果で選定。

他の選択肢: MiniRocket 基準で選ぶ(ただし MiniRocket では全手法非有意)、または全7手法を持ち込む。

結論への影響: 中。選定はモデル依存。MiniRocket では拡張効果が出ないため、モデルを変えると持ち込む手法集合が変わりうる。

decision_log.md(2026-07-12)/ config Phase 4

J-WISDM-TARGET WISDM v1.1 の目標性能 τ(issue 事前登録

決定: test accuracy = 0.80 を目標に固定(UCI HAR の 0.90 は流用しない)。

理由: WISDM v1.1 は手作り特徴+被験者混在で ~0.90+ の文献値だが、生信号 CNN+被験者分離では相場が下がる。天井/床を避け曲線最急部を狙う round 値。結果を見る前に登録。

他の選択肢: 0.75 / 0.85、または macro-F1 基準。UCI HAR の 0.90 を流用(不適: データ・評価条件が異なる)。

結論への影響: 高。N* は τ 到達点なので値で削減率が動く。UCI HAR と独立に事前登録して恣意性を排除。加えて 0.80 は none 曲線のプラトー肩付近にあたり手法差が圧縮されやすい(急峻部でより敏感になりうる)。判定指標も accuracy 固定だが、WISDM はクラス不均衡のため macro-F1 では手法順位が変わる(smote のみ僅かに正、dtw が最下位。いずれも none の CI と重なり削減は macro-F1 でも非確認)。指標依存は限界節・F-12 に記録。

artifacts/pre_registration.md(WISDM 節)

J-WISDM-WINDOW WISDM の窓化 事前登録

決定: (subject,activity) 連続区間内で 200 サンプル(約10秒)非重複窓。

理由: 20Hz で 200 サンプルは WISDM 標準の窓長。非重複でセット内窓相関を避け、区間内窓化で単一ラベルを保証。

他の選択肢: 50% オーバーラップ(サンプル数増だが窓相関増)、窓長 128/256。

結論への影響: 中。窓長・重複は窓数と相関構造を変え学習曲線に影響しうる。被験者跨ぎリークは group split で別途防止。

src/signal_aug/data/wisdm.py(make_windows)

J-WISDM-NORM WISDM の正規化方針(UCI HAR とは逆) 事前登録

決定: 窓ごと・チャネルごとに z 正規化を適用する。

理由: WISDM 生値は m/s^2 スケール(~±20)で CNN 初段の想定より大きい。窓単位正規化はリーク無し(各窓が自分の統計のみ使用)。UCI HAR は配布元整形済みのため非正規化(J-HAR-NORM)だが、WISDM は生値のため方針が異なる。

他の選択肢: 非正規化(スケール差で学習不安定の恐れ)、被験者/データセット統計での正規化(リーク or 追加設計が必要)。

結論への影響: 中。振幅情報が落ちるが HAR は波形パターンが主判別要因。UCI HAR(非正規化)と WISDM(窓ごと z 正規化)で前処理が非対称なため、scaling/jitter のような振幅系の摂動は正規化後と生データで作用が異なる。ゆえに WISDM への展開は『同一枠組みの厳密再現』ではなく『前処理を dataset に合わせた追試』と位置づける。両データの結果差には前処理の非対称も寄与しうる。

src/signal_aug/data/wisdm.py(_znorm_window)

J-WISDM-SPLIT WISDM の固定 test 被験者選定(公式 split 無し) 事前登録

決定: seed-0 シャッフルでソート済み被験者から 12 名を test、残り 24 名を pool。

理由: WISDM に公式 train/test split が無いため。12/36 ≈ UCI HAR の約30% test 比率に合わせた。決定的で再現可能、data/metadata/wisdm.json に記録。

他の選択肢: 別 seed、別比率(例 9/27)、被験者を跨ぐ交差検証。

結論への影響: 中。test 被験者の引きで到達精度が変わりうるが、pool 側の被験者数曲線が主対象。seed 固定で再現。

src/signal_aug/data/wisdm.py(_split_subjects)

J-HAR-NORM UCI HAR の正規化方針

決定: 生信号(g 単位)のまま z 正規化を適用しない。

理由: 配布元が total_acc(重力込み)/ body_acc(重力除去)として整形済みで、被験者間の物理スケールを保持したいため。

他の選択肢: UCR と同様に系列単位 z 正規化を当てる。

結論への影響: 中。正規化を入れると学習曲線と N* が変わりうる。前処理タブの不定性と対応(preprocessing_notes: UCI HAR)。

src/signal_aug/data/uci_har.py

J-DTW DTW ベース拡張の実装

決定: 同一クラス2サンプルの DTW 整列平均(ペアワイズ簡略版)。

理由: Forestier et al. (2017) の DBA(多サンプル重心)の計算コストを避けた簡略版。

他の選択肢: DBA による多サンプル重心平均。

結論への影響: 中。多様性が DBA より低く、DTW の削減効果を過小評価している可能性。点推定では DTW が最大削減だが確定はしない。

deviations.md / decision_log.md

J-MIXUP mixup の実装

決定: 同一クラスペアに限定しハードラベルを維持。

理由: RidgeClassifier がソフトラベル非対応で、モデル間の条件を揃えるため。

他の選択肢: 原論文(Zhang et al. 2018)の異クラス凸結合+ソフトラベル。

結論への影響: 中。効果は原論文より控えめになりうる。

deviations.md / decision_log.md

J-SMOTE raw-SMOTE の適用範囲

決定: 生信号の平坦化ベクトル空間で全クラスに適用。

理由: 特徴量空間を介さず信号レベルで拡張を統一するため。

他の選択肢: 原論文(Chawla et al. 2002)どおり特徴量空間・少数クラスのみ。

結論への影響: 低〜中。不均衡データでの挙動が原論文と異なる。

deviations.md

J-CNN 1D-CNN の構成

決定: 3ブロック(Conv-BN-ReLU-Pool)+ GAP の標準構成。

理由: 特定論文の厳密再現ではなく Fawaz et al. (2019) の FCN 系を簡略化した標準ベースライン。

他の選択肢: ResNet / InceptionTime 等のより深い時系列分類器。

結論への影響: 中。モデル容量は拡張効果の出方に影響しうる(H2: 効果はモデル依存)。

deviations.md

J-SMOKE-EPOCHS smoke 用 CNN の epoch 数

決定: 15 epochs。

理由: 3 epochs では合成データでも未学習(精度0.475)だったため。

他の選択肢: 早期打ち切り / 固定10。

結論への影響: 無(smoke は基盤動作確認のみで、研究結果には使わない)。

decision_log.md / config/models.yaml

J-DATASETS Phase 2 データセット12件の選定

決定: 小〜中規模・ドメイン多様・2値/多クラス混在で12件を選定。FordA は学習コスト過大のため除外。

理由: 低データ条件を検証しやすく、CPU で現実的な実行時間に収めるため。

他の選択肢: UCR 全128データセット、または FordA を含む大規模データ。

結論への影響: 中。データセット集合により平均的な拡張効果の見え方が変わる(H2)。

decision_log.md(2026-07-12)/ config/experiments/phase2.yaml

J-NSTAR N*(必要被験者数)の推定法 事前登録

決定: 学習曲線の隣接点を線形補間して目標到達点を求める。

理由: 少数の測定点から閾値到達被験者数を素直に推定するため。

他の選択肢: 対数/べき乗則フィット、単調回帰(isotonic)。

結論への影響: 中〜高。曲線が非単調・ノイジーだと補間点が振れる。実際 WISDM の none 曲線は非単調(中盤で最大に達し以降やや低下)で、目標 0.80 の交差は 12→15 名の単一の上向き交差に依存する。複数交差時は最初の到達点を採る(interpolate)。この非単調性は N* 不確実性の一因で、手法間 N* 差(WISDM smote で被験者 1.48 名)は被験者格子間隔(3)・セル内 std・bootstrap CI より小さいため、反復増まで手法順位は報告しない。bootstrap で CI を付す。

pre_registration.md / reporting/aggregate.py

J-PAMAP2-TARGET PAMAP2 の目標性能 τ とその選択ルール(issue 事前登録

決定: 主指標 macro-F1。target = full-pool(N=5, aug=none)の held-out macro-F1 平均 − 0.05 を 0.05 刻みで切り捨てた値(ルールを数値確定前に登録)。UCI HAR 0.90 / WISDM 0.80 は流用しない。

理由: PAMAP2 は 12活動でクラス不均衡のため主指標を macro-F1 に(#23 V2 の教訓)。target は none baseline のみに依存する手続きで決め、拡張手法の結果に依存させない(手法有利化の排除)。曲線急峻部に置き天井/床を回避。

他の選択肢: 固定丸め値(0.60/0.65 等)、accuracy 基準、−0.10 マージン。

結論への影響: 高。N* は τ 到達点なので値で削減率が動く。ルール駆動で恣意性を排除。target 絶対値は 3 データで異なるが削減率(無次元)で横断比較する。実測: full-pool none macro-F1 平均 0.766 に対しルールで target=0.70 となったが、none 曲線は最小格子点 N=2 で既に平均 0.706(≥target)。→ **N*(none) は格子下限 2 に左側打ち切り**され、{2..5} の測定レンジでは sub-target 域を捉えられず**削減率は推定不能**(事前登録の停止条件どおり定性記述に格下げ)。negative control label_shuffle は target 未到達(N*=None)で対照として妥当。この左側打ち切りは『τ を下げ過ぎた』ではなくルール適用結果であり、少 N・高 baseline データでの構造的限界。

artifacts/pre_registration.md(PAMAP2 DS-2 節)/ config/experiments/pamap2_subject_count.yaml / results.json(reduction_pamap2)

J-PAMAP2-EXCLUDE109 subject 109 の除外(データ有無で機械決定) 事前登録

決定: subject 109 を除外(pool=5 [101,102,106,107,108]、test=3 [103,104,105]、subject_counts={2,3,4,5})。

理由: 実測で 109 は総窓数 10・12活動中 1活動のみ(rope_jumping のみ)、他被験者 247–301 窓・8–12 活動と桁違いに欠損(生ファイル 3.9MB 対 118–207MB)。事前登録した基準『欠ける活動数が著しい/窓数が極端に少なければ除外』に機械的に該当。精度ではなくデータ有無で決定。

他の選択肢: 保持(pool=6)。ただし 109 はほぼ全活動欠落で学習に寄与せずクラス欠落を悪化させる。

結論への影響: 中。pool を 5 に減らすと N 格子分解能が下がる。ただし 109 保持は活動サポートを大きく歪めるため除外がデータ的に妥当。除外後 rope_jumping が希少化(pool 4窓・test 0窓)し macro-F1 を不安定化しうる点は限界として記録。

data/metadata/pamap2.json(per_subject_activity_support)/ pre_registration.md

J-PAMAP2-CHANNELS PAMAP2 のチャネル選択 事前登録

決定: 加速度 ±16g のみ 9ch(hand/chest/ankle × x/y/z)。orientation(無効4/IMU)・HR・±6g・ジャイロ・磁気を除外。

理由: WISDM(加速度3ch)/UCI HAR(加速度+ジャイロ6ch)との加速度ドメイン整合、モデル入力の単純化。±16g は ±6g の飽和クリップを回避。orientation は公式に無効、HR は 9Hz 非同期で大半 NaN。

他の選択肢: 加速度+ジャイロ 18ch(情報量重視)。チャネル数は横断比較の交絡。

結論への影響: 中。チャネル集合で分類難度が変わり削減率にも影響しうる。チャネル数差(9/6/3)は横断図の交絡として図注明記。

src/signal_aug/data/pamap2.py(DEFAULT_CHANNELS)/ config

J-PAMAP2-WINDOW PAMAP2 の窓化・ダウンサンプル 事前登録

決定: 100→33.3Hz(stride-3 間引き)、168サンプル(~5.0s)非重複窓、(subject,activity) 連続区間内、NaN 含む窓は破棄。

理由: 窓の実時間長を WISDM(10s)/UCI HAR(2.56s)と近づけ横断交絡を減らす(完全一致は不可能)。33.3Hz は複数実装の慣例。非重複でセット内窓相関を回避、区間内窓化で単一ラベル保証。NaN(無線ドロップアウト)窓破棄はリーク無しで単純。

他の選択肢: 窓長 128/256、50% オーバーラップ、線形補間による NaN 補完、6g レンジ併用。

結論への影響: 中。窓長・レートは窓数と学習曲線に影響。被験者跨ぎリークは group split で別途防止。

src/signal_aug/data/pamap2.py(make_windows/downsample_factor)

J-PAMAP2-NORM PAMAP2 の正規化方針 事前登録

決定: 窓ごと・チャネルごと z 正規化(WISDM と同じ、リーク無し)。

理由: PAMAP2 生加速度スケールを吸収。各窓が自分の統計のみ使用しリーク無し。WISDM と揃え DS-1/DS-2 の前処理を一貫させる。

他の選択肢: 非正規化、被験者/データセット統計での正規化(リーク or 追加設計)。

結論への影響: 中。振幅情報が落ちるが HAR は波形パターンが主判別要因。UCI HAR(非正規化)とは非対称のため『前処理を dataset に合わせた追試』と位置づける(WISDM と同じ扱い)。

src/signal_aug/data/pamap2.py(_znorm_window)

J-CROSS-UNIFIED 横断図(§6.5)の統一 target ルールと UCI HAR/WISDM への post-hoc 適用(issue

決定: 3データの削減率を同一軸で並べるため、横断図・横断表では3データとも同一ルール target=floor_0.05(full-pool none 平均 −0.05)を用いる。results.json['reduction_cross'] として run manifest から再集計(手入力なし)。

理由: 削減率(1−N*(aug)/N*(none))は無次元だが、target 決定手続きが揃わないと横断比較が不公平。統一ルールは none baseline のみ依存で手法有利化がない。PAMAP2 ではこのルールを事前登録済み。

他の選択肢: 各データの事前登録 τ をそのまま横断に使う(手続き不統一)/ 共通の固定丸め target(データ間で難度が非対称)。

結論への影響: 高(解釈)。UCI HAR・WISDM はデータ確定済みのため、統一ルール適用は両データにとって post-hoc の記述的再解析であり、統一 target(macro-F1 で UCI HAR 0.85・WISDM 0.70)は事前登録主 target(accuracy 0.90/0.80)と異なる。主結論 F-8/F-10/F-12 は各データの事前登録 τ に基づき不変で、横断の統一ルール版は別レンズ(結論の帰無は主解析と一致し補強方向)。統一ルールは baseline が高く pool 上限が低いデータ(PAMAP2・UCI HAR)で N* を格子下限近傍に寄せ削減率を格子分解能で圧縮する(PAMAP2 は左側打ち切りで推定不能、UCI HAR も N*(none)≈3.4)。3点のため回帰・相関は求めない。

src/signal_aug/reporting/aggregate.py(_cross_dataset_reduction)/ results.json(reduction_cross)/ report §6.5 / findings F-13

J-WESAD-TASK WESAD のタスク定義(issue 事前登録

決定: 3クラス baseline(label 1)/ stress(2)/ amusement(3) のみ採用し 0..2 へ写像。label {0,4,5,6,7}(transient/meditation/ignore)は窓化せず破棄。

理由: 原論文の主タスクで『非HAR 生理信号』の外的妥当性に直球。binary(stress vs non-stress)は報告 F1 が天井(~95%)で target を曲線急峻部に置きにくい。3クラスは raw-CNN + 被験者非跨りでより低い動作点に落ち床/天井を回避しやすい。meditation を混ぜないことでタスク定義を曖昧化しない。

他の選択肢: binary stress vs non-stress(non-stress に meditation を含める/含めない)。3クラス full-pool none が天井/床に張り付く場合の切替候補。

結論への影響: 高。クラス数・定義で分類難度と target が変わる。amusement は少数派でクラス不均衡(→主指標 macro-F1)。

src/signal_aug/data/wesad.py(LABEL_IDS/LABEL_TO_CLASS)/ pre_registration.md(WESAD DS-3)

J-WESAD-CHANNELS WESAD のモダリティ・チャネル選択 事前登録

決定: 胸 RespiBAN の生理 5ch = ECG/EDA/EMG/RESP/TEMP のみ。胸 ACC(運動)と手首 E4(BVP/EDA/TEMP/ACC)は除外。modality=chest 固定。

理由: DS-3 の主眼が『非HAR 生理信号』。ACC は運動=HAR 的で主張を濁す。手首 E4 はレート不揃い・低品質。マルチモーダル拡張は DS-5 の主題で切り分け。5ch の defensible な既定。

他の選択肢: 胸5ch+胸ACC(HAR的運動混入)、手首 E4。チャネル数(5)は HAR 3データ(3/6/9ch)と異なり横断交絡。

結論への影響: 中。チャネル集合で分類難度・削減率が変わりうる。§6.5 HAR 横断図に同列で載せず信号種で層別(別表/別図)。

src/signal_aug/data/wesad.py(DEFAULT_CHANNELS/_CHEST_KEY)/ ds3_design.md §2.2

J-WESAD-DS WESAD のダウンサンプル・窓長・重複 事前登録

決定: 700→70Hz(factor-10)を反エイリアス LPF(scipy.signal.decimate, zero-phase IIR Chebyshev-I)経由で間引き。30秒窓(2100サンプル)非重複(overlap=0)を既定。窓不足で N* 不能なら 30秒/50%重複を judgment call で許容(被験者非跨りは厳守、重複は注記)。

理由: 700Hz 生は窓が巨大(2100サンプル)。EDA/TEMP/RESP は数Hz 未満で 70Hz 十分、ECG は QRS 微細形状は落ちるが心拍リズム・HR 変動は保持。単純間引き(stride)は ECG/EMG 高域を折り返すため反エイリアス LPF が定石。30秒非重複で被験者あたり窓数を確保しつつセット内窓相関を回避。

他の選択肢: DSレート 64Hz(手首BVP整合)/100Hz(ECG形状保持・窓大);窓長 60秒(慣例だが窓少);50%重複(窓増だが相関増)。

結論への影響: 中〜高。窓長・重複は窓数と N* 分解能に直結。少 N・少数派 amusement で窓数が CNN 学習下限に近く、打ち切りリスク(実測は Stage 2)。

src/signal_aug/data/wesad.py(_decimate_block/make_windows/downsample_factor)/ ds3_design.md §2.2

J-WESAD-NORM WESAD の正規化方針 事前登録

決定: 窓ごと・チャネルごと z 正規化(WISDM/PAMAP2 と同じ、リーク無し)。選択チャネルに NaN を含む窓は破棄。

理由: 生理信号はチャネル間スケール差が桁で大きい(ECG mV vs EDA μS vs TEMP °C)ため必須。各窓が自分の統計のみ使いリーク無し。E4 不使用のため NaN は主に無いが安全側でガード。

他の選択肢: 非正規化、被験者/データセット統計での正規化(リーク or 追加設計)、NaN の補間、チャネル別に正規化方針を分ける(EDA/TEMP は絶対レベル保持・ECG/EMG は z 正規化)。

結論への影響: **高(観察)。** full-pool none baseline が near-chance(macro-F1 0.4835, accuracy 0.5053 < 多数派率 0.54)。窓ごと z 正規化は **EDA/TEMP の絶対レベル**(ストレスで上昇する皮膚コンダクタンス・体温はストレス識別の主要手がかり)を各窓内で消すため、near-chance の一因の疑いがある。HAR(波形パターンが主判別)では有効だが、生理信号(絶対レベルが情報)では不利に働きうる。**ただしユーザー判断で HAR 3データとの比較可能性のため枠組みを一切変えず固定**(前処理・モデル・評価を揃える)。この観察は『効果は信号種依存(生理信号では動作点が低い)』という DS-3 の結論の一部として記録し、前処理は変更しない(deviations D-WESAD)。UCI HAR(非正規化)とは非対称で『dataset に合わせた追試』の位置づけ。

src/signal_aug/data/wesad.py(_znorm_window)/ deviations.md(D-WESAD)/ runs/metrics(full-pool none)

J-WESAD-SPLIT WESAD の test 分割・被験者選択 事前登録

決定: seed-0 シャッフルで K=5 被験者を固定 held-out test、残り 10名を pool。subject_counts={2..10}、repeats=5。WISDM/PAMAP2 と同手続き。実在被験者ID(S2–S17 の欠番あり 15名)は実データで確定。

理由: K/N=5/15≈1/3 で WISDM(12/36)・PAMAP2(3/9)と held-out 比率が揃い横断手続きを一貫。pool=10 で N 格子を {2..10} と細かく取れる。repeats=5 は少被験者で点が粗いため各点 CI を締める。

他の選択肢: K=4/pool11(pool レンジ↑だが test 小で指標分散↑)。

結論への影響: 中。test 被験者の引きで到達性能が変わりうるが pool 側の被験者数曲線が主対象。欠番ID・実在被験者集合は Stage 2 で実データから確定し metadata に記録。

src/signal_aug/data/wesad.py(_split_subjects)/ pre_registration.md(WESAD DS-3)

J-WESAD-TARGET WESAD の目標性能 τ とその選択ルール(issue 事前登録

決定: 主指標 macro-F1(不均衡・amusement 少数)、accuracy 併記。target = full-pool(N=10, aug=none, 5反復)の held-out macro-F1 平均 − 0.05 を 0.05 刻みで切り捨てた値。ルールを数値確定前に登録。UCI HAR 0.90 / WISDM 0.80 / PAMAP2 0.70 は流用しない。

理由: target は none baseline のみに依存する手続きで決め、拡張手法の結果に非依存(手法有利化の排除)。曲線急峻部に置き天井/床を回避。3クラス不均衡で macro-F1 主・accuracy 副(#23 V2)。

他の選択肢: 固定丸め値、accuracy 基準、−0.10 マージン。

結論への影響: 高。N* は τ 到達点。少 N・少数派クラスで macro-F1 が跳ねると N* が不安定。full-pool none が floor 付近(マージン<0.05)や曲線が寝る場合は N* 推定不能として定性記述に格下げ(停止条件)。**実測**: full-pool none macro-F1 平均 0.4835(sd 0.0218)・accuracy 0.5053 でルールにより target=0.40(margin +0.084、floor 付近ではない)。ただし baseline は **near-chance**(J-WESAD-NORM 参照)であり、near-chance 曲線上で N* 交差が定まらない/左側打ち切りなら削減率は捏造せず『推定不能』を明示(PAMAP2 と同じ扱い)。

artifacts/pre_registration.md(WESAD DS-3 節)/ config/experiments/wesad_subject_count.yaml / runs/metrics(full-pool none)

原論文からの実装差分

追試結果の解釈時に参照する、原論文・標準的手法からの実装上の差分(artifacts/deviations.md)。追試と独自検証の区別はレポートタブの知見カード(追試/独自バッジ)を参照。

  • **mixup**: 原論文(Zhang et al. 2018)は異クラス間の凸結合とソフトラベルを用いるが、本実装は同一クラスペアに限定しハードラベルを維持する。RidgeClassifier がソフトラベルを扱えないため、モデル間で条件を揃える目的。効果は原論文より控えめになる可能性がある。
  • **DTW ベース拡張**: Forestier et al. 2017 の DBA(DTW Barycenter Averaging)による合成ではなく、同一クラス 2 サンプルの DTW 整列平均(ペアワイズ簡略版)。多サンプル平均より多様性は低い。
  • **raw-SMOTE**: SMOTE(Chawla et al. 2002)を生信号の平坦化ベクトル空間へ適用。原論文は特徴量空間・少数クラスのみが対象だが、本実装は全クラスに適用する。
  • **1D-CNN**: 特定論文の再現ではなく、時系列分類で標準的な 3 ブロック構成(Conv-BN-ReLU-Pool + GAP)。Fawaz et al. 2019 のレビューにおける FCN 系の簡略版。
  • **WESAD 前処理・評価(issue #21 DS-3)**: 著者配布 `.pkl`(ICMI'18 dataset)から自前前処理。原論文(Schmidt et al. 2018)との差分: (1) 原著は**手作り特徴(HRV/EDA 統計量等)+ 被験者混在/LOSO 評価**で 3クラス accuracy ~93%・binary F1 ~95% を報告するが、本実装は**生信号 5ch + 1D-CNN + 被験者非跨り(pool/test 分離)**評価のため動作点は下がる(target 設定に利用、精度は直接比較しない)。(2) チャネルは**胸 RespiBAN 生理 5ch(ECG/EDA/EMG/RESP/TEMP)のみ**で、原著が併用する胸 ACC・手首 E4(BVP/EDA/TEMP/ACC)は除外(『非HAR 生理信号』の主張のため)。(3) 700→70Hz 反エイリアス間引き・30秒非重複窓は横断比較用の近似で原著の特定設定の再現ではない。(4) タスクは 3クラス baseline/stress/amusement のみ({0,4,5,6,7}=transient/meditation/ignore は破棄)。信号種・タスク・クラス数・チャネル数が HAR 3データと異なるため §6.5 横断図には同列で載せず信号種で層別する。ライセンスは**非商用+帰属・再配布不可**(CC BY ではない)で生データは非コミット、レポート/論文で Schmidt et al. 2018 の帰属表示必須。
  • **D-WESAD(near-chance baseline の観察、前処理は変えない)**: full-pool none baseline が **near-chance**(macro-F1 0.4835、accuracy 0.5053 < 多数派率 0.54)。原論文の高性能(~93%)は手作り特徴 + 混在評価であり、生5ch + 1D-CNN + **窓ごと z 正規化** + 被験者非跨りでは動作点が大きく下がる。とくに z 正規化が **EDA/TEMP の絶対レベル**(ストレスで上昇する主要手がかり)を窓内で消すことが near-chance の候補要因。**ユーザー判断で HAR 3データとの比較可能性のため枠組み(前処理・モデル・評価)を一切変えず、事前登録どおり 3クラス・前処理変更なしで完遂**する。この near-chance は隠さず『効果は信号種依存(生理信号では動作点が低い)』という DS-3 の結論の一部として扱う。near-chance 上で N* が定まらなければ削減率は算出せず『推定不能』を明示(judgment_calls J-WESAD-NORM/J-WESAD-TARGET)。
  • **PAMAP2 前処理(issue #21 DS-2)**: 一次配布 `.dat` から自前前処理(Zenodo 等の前処理済み版は不使用、透明性のため)。標準的追試との差分: (1) チャネルは加速度 ±16g 9ch のみ(±6g・ジャイロ・磁気・orientation・HR を除外)、(2) 100→33.3Hz 間引き・168サンプル窓は文献ごとに異なる窓長を横断比較のため実時間で近似的に揃えたもので原著の特定設定の再現ではない、(3) subject 109 を活動サポート欠損により除外(原著は 9 被験者全体を対象)、(4) rope_jumping は除外後希少化。原著(Reiss & Stricker 2012)のベンチマークとは前処理・被験者集合・チャネルが異なるため精度は直接比較しない。

ソース: artifacts/reproduction_steps.yaml・preprocessing_notes.yaml・judgment_calls.yaml・deviations.md ・ 生成日時 2026-08-24 06:52 UTC