忍者ブログ
統計、機械学習、AIを学んでいきたいと思います。 お役に立てば幸いです。

【DS検定対策】NULLデータの罠!「欠測値」が引き起こす分析の偏り

データベースでおなじみの「空欄(NULL)」。データが足りないからといって、そのレコードを無視して分析すると、結果が完全に歪んでしまうことがあります。それが欠測によるバイアスです。

1. 【 問題 】

アンケートや実験データにおいて、回答の記入漏れや測定エラーなどの「欠測値(欠損値)」が多く含まれる場合、その欠測が発生した原因を考慮せずに、単に欠測値のあるデータを除外して(残ったデータだけで)分析を行うことで、結果に偏りが生じる現象を何と呼ぶでしょうか?

① 欠測値バイアス(欠損による偏り)
② 確定バイアス
③ 回答バイアス
④ 出版バイアス


2. 【 解答 】

正解: ① 欠測値バイアス(欠損による偏り)

3. 整理:なぜ「空欄(NULL)」を除外すると偏るのか?

データが消えた(欠測した)のには、高確率で「人間的な理由やシステムのクセ」が存在します。それを無視して `IS NOT NULL` で削ると、集団の実態を見誤ります。

【 欠測がバイアスを生む具体例 】

事例:年収と顧客満足度のアンケート
あるサービスの顧客満足度を調査した際、「年収」の項目に空欄(欠測)が非常に多かった。
:実は「サービスに不満がある低所得層」が年収を書かずに回答(あるいは途中で離脱)していた場合、空欄をすべて除外して集計すると、「高所得者で、かつ満足している人」だけの偏ったデータになり、平均年収も満足度も実態より高く計算されてしまいます。

4. データサイエンティストはどう戦うか?(欠測値の処理)

試験や実務では、このバイアスを防ぐための「前処理(補完)」がセットで問われます。
1. リストワイズ削除(完全情報解析): 欠測があるレコードを丸ごと消す方法。欠測が完全にランダム(MCAR)でない限り、今回のようなバイアスが発生します。
2. 平均値補完 / 中央値補完: 空欄に、他のデータの平均値などを埋める方法。簡単ですが、データのばらつき(分散)が不自然に小さくなる弱点があります。
3. 多重代入法 / 予測モデルによる補完: 他のカラムの値から、機械学習などを使って空欄の数値を予測して埋める、より高度でバイアスが起きにくい手法です。


5. DS検定形式:実戦4択クイズ

問:データの欠測メカニズムにおいて、体重の重い人が体重の入力を拒否するように、「欠測するかどうかが、その欠測した値自体に依存している(他のデータを見ても欠測の理由を説明できない)」最も扱いが難しい欠測の性質を何と呼ぶか。

① MCAR(完全にランダムな欠測)   ② MAR(条件付きでランダムな欠測)   ③ MNAR(ランダムではない欠測)   ④ 確定論的欠測

【 正解: ③ 】

解説: 「隠したい数値そのもののせいでデータが消える」状態をMNAR(Missing Not At Random:ランダムではない欠測)と呼びます。これがまさに、今回問題にした「最も強いバイアス」を引き起こす原因となります。


6. まとめ

DS検定において「欠測値を含むデータが多い場合に、それを単純に除外することで生じる偏り」というテーマが出たら「欠測値バイアス」の罠を疑いましょう。データが「ない」ということ自体に重要な意味(メッセージ)が隠されているケースが多いことを、しっかり意識しておきましょう!


PR

【DS検定対策】多すぎる変数を賢く選別!「段階的回帰(ステップワイズ法)」の仕組み

予測モデルを作る際、変数は多ければ多いほど良いとは限りません。本当に必要な変数だけをシステムが自動で選ぶ技術、それが段階的回帰(ステップワイズ法)です。

1. 【 問題 】

重回帰分析などの変数選択において、すべての変数(特徴量)を一気に投入するのではなく、モデルの予測精度(AICなどの統計量)が最も向上するように、変数を1つずつ順番に追加、または削除しながら最適な変数の組み合わせを自動的に探索する手法を何と呼ぶでしょうか?

① 段階的回帰(ステップワイズ法)
② 主成分分析(PCA)
③ ロジスティック回帰
④ プルーニング(枝刈り)


2. 【 解答 】

正解: ① 段階的回帰(ステップワイズ法)

3. 整理:ステップワイズ法の3つのアプローチ

ステップワイズ法には、変数をどう動かすかによって主に3つの戦術があります。

手法名変数の選び方の特徴
増加法
(前向き選択)
変数ゼロの状態からスタート。モデルの精度を最も上げる変数を「次々に追加」していき、これ以上精度が上がらなくなったらストップする手法。
減少法
(後ろ向き消去)
最初にすべての変数を全部投入した状態からスタート。予測に「最も貢献していない(不要な)変数」を1つずつ「削除」していく手法。
増減法
(ステップワイズ)
上記のハイブリッド。変数を1つずつ「追加」しつつ、過去に入れた変数が不要になっていないかを毎回チェックして「削除」も行う最も賢い手法。

4. なぜ変数を絞り込む必要があるのか?

「データがたくさんあるなら、全部の変数を回帰式に入れればいいのでは?」と思いがちですが、それは危険です。
関係のないノイズのような変数までたくさん入れてしまうと、前回の問題で扱った過学習(オーバーフィッティング)の原因になったり、変数同士が数理的に衝突する多重共線性(マルチコ)という不具合を引き起こします。そのため、段階的回帰を使って「少数精鋭の変数」に絞り込むことが実務でも非常に重要になります。


5. DS検定形式:実戦4択クイズ

問:段階的回帰(ステップワイズ法)において、変数を追加・削除する際の「予測精度の良さ(モデルのシンプルさと当てはまりの良さのバランス)」を評価するために、最もよく使われる代表的な統計指標はどれか。

① 決定係数($R^2$)   ② 赤池情報量基準(AIC)   ③ 標準偏差   ④ 相関係数

【 正解: ② 】

解説: ステップワイズ法では、一般的に「AIC(Akaike Information Criterion)」という指標が最小になるように変数を出し入れします。決定係数(①)は変数を増やせば増やすほど勝手に数値が上がってしまうため、変数の選別基準としては適切ではありません。


6. まとめ

DS検定において「精度を上げるために変数を次々に追加(選択)または削除する」という自動選別のキーワードが出たら「段階的回帰(ステップワイズ法)」です。手元にあるデータの過学習を防ぎ、シンプルで本番に強いモデルを作るための王道アプローチとして覚えておきましょう!


【機械学習の知識】数式なしでわかるブートストラップ・リサンプリングの仕組みとアルゴリズム

限られたデータから統計的な推測を行いたい。しかし、何度もデータを集め直すのは現実的に不可能。その限界を「何度も復元抽出する」というアイデアで突破するのが、ブートストラップ・リサンプリングです。

1. 【 概要 】

ブートストラップ・リサンプリングとは、手元にある元のデータセット(サンプルサイズ n)から、重複を許して(元に戻しながら)ランダムにデータを取り出し、新しい疑似的なデータセットを何度も作り出す手法です。これにより、手元のデータだけでは分からなかった「統計量のばらつき(分散や信頼区間)」を視覚的・計算的に評価できるようになります。


2. 【 基本アルゴリズム 】

サンプルサイズを n とする。
(1) n 個の標本を抽出して、その平均を記録する。標本を元に戻す。
(2) この処理を N 回繰り返す。
(3) N 個の結果を使って、統計量などを計算する。

3. 整理:各ステップで何が行われているのか?

一見するとシンプルな処理ですが、データサイエンスにおいて非常に強力な効果を発揮します。それぞれのステップを具体的に見ていきましょう。

【 アルゴリズムの具体的な処理内容 】

ステップ(1):復元抽出と記録
元のデータからランダムに1個選び、記録したら「また元のデータの中に戻す」という操作(復元抽出)を n 回 繰り返して新しいデータセットを作ります。この新しいデータセットの平均値などの統計量を計算し、記録します。同じデータが2回以上選ばれることもあれば、1度も選ばれないデータもあります。

ステップ(2):N回の繰り返し
ステップ(1)の「n個選んで平均を記録する」という一連の処理を、十分に大きな回数(N回。一般的に数百〜数千回)繰り返します。手元にN個の「疑似的な平均値のデータ」が集まることになります。

ステップ(3):統計量の計算
集まった N 個 の結果の分布を見ることで、その統計量がどれくらいバラつくのか(標準誤差)を求めたり、95%信頼区間を推定したりします。

4. 関連して押さえたい「アンサンブル学習(バギング)への応用」

このブートストラップ・リサンプリングは、統計推定だけでなく、機械学習において高い予測精度を誇るアルゴリズムの基礎にもなっています。
代表例が「バギング(Bootstrap Aggregating)」です。バギングでは、ブートストラップ法によって大量の異なるデータセットを作り出し、それぞれで決定木などの弱学習器を並列に訓練します。これらを組み合わせたモデルが、機械学習で非常によく使われる「ランダムフォレスト」です。


5. 補足:一度も選ばれないデータ(約37%)の秘密

サンプルサイズ n が十分に大きいとき、ブートストラップ抽出において元のデータから「一度も選ばれないデータ」は理論上、全体の約36.8%(約37%)存在します(数式では (1 - 1/n)^n が 1/e に収束するため)。
機械学習のランダムフォレストなどでは、この選ばれなかった約37%のデータを「Out-of-Bag(OOB)データ」と呼び、モデルの性能をテストするための検証用データとして有効活用しています。


6. まとめ

データサイエンスや機械学習の現場において「元に戻しながら何度もデータを集め直す手法」と言えば、このブートストラップ・リサンプリングです。手元にある限られたデータからでも、計算機のパワー(反復処理)を使って統計的な信頼性を評価したり、強力なアンサンブルモデルを作ったりできる重要なアルゴリズムですので、確実に仕組みを押さえておきましょう!


【DS検定対策】消えたデータの声を聴け!「脱落バイアス」の罠

分析対象者が途中でいなくなってしまう。その「離脱」自体が偏りを生み出す原因になる。それが脱落バイアスです。

1. 【 問題 】

データ収集や実験のプロセスにおいて、調査対象者が「途中で離脱(脱落)」したことにより、最後まで残った対象者だけのデータに偏りが生じ、正しい分析結果が得られなくなる現象(バイアス)を何と呼ぶでしょうか?

① 生存者バイアス(サバイバーシップ・バイアス)
② 脱落バイアス(アトリッション・バイアス)
③ 回答バイアス
④ 確証バイアス


2. 【 解答 】

正解: ② 脱落バイアス(アトリッション・バイアス)

3. 整理:なぜ「脱落」がバイアスを生むのか?

もし、脱落(離脱)が完全にランダムであれば大きな問題にはなりませんが、現実には「離脱するだけの理由」がそこにあるため、結果が歪みます。

【 ビジネスや研究での具体例 】

事例1:教育アプリの効果測定
難関資格の学習アプリで、1ヶ月継続した人の合格率が「90%」だった!
:実は「内容が難しすぎて挫折した人」が途中で大量に脱落(アンインストール)していた場合、最後まで残った「元から優秀な人」だけの結果を見ている可能性があります。

事例2:新薬の臨床試験
ある薬を3ヶ月服用してもらう実験で、副作用が非常に強かった人が途中で通院をやめてしまった。
:最終的に無事完走した人のデータだけを集計すると、「副作用が少なくて効果が高い魔法の薬」に見えてしまう危険があります。

4. 関連して押さえたい「選択バイアス」

脱落バイアスは、統計学における「選択バイアス(Selection Bias)」という大きな分類の1つです。
似た言葉に、歴史的なエピソード(爆撃から生還した戦闘機の補強など)で有名な「生存者バイアス」がありますが、生存者バイアスが「すでに生き残ったもの(結果)」だけを後から見てしまうことに対し、脱落バイアスは「時間の経過とともに進行形で対象者がいなくなっていくプロセス(縦断調査など)」に注目する点が特徴です。


5. DS検定形式:実戦4択クイズ

問:WebサービスのA/Bテストにおいて、新機能(B案)のページが非常に重く、読み込みに時間がかかったため、多くのユーザーが途中でブラウザを閉じて離脱してしまった。この状況で、ページを最後まで読み込んでコンバージョン(購入)したユーザーだけのデータで効果測定を行う際に発生するバイアスとして最も適切なものはどれか。

① 確証バイアス   ② 脱落バイアス   ③ 社会的妥当性バイアス   ④ 出版バイアス

【 正解: ② 】

解説: 「読み込みが遅くてイライラして途中で離脱した人」の存在を無視し、最後まで粘り強く待ってくれた熱狂的なユーザーだけの数値で評価してしまうため、これも典型的な脱落バイアスです。


6. まとめ

DS検定やデータ分析の現場において「途中で対象者が離脱したことで生じる偏り」という記述が出たら、それは「脱落バイアス」を指します。データサイエンスでは、手元にある綺麗なデータだけでなく、「消えてしまったデータ(離脱した人)の理由」にこそ、システム改善の最大のヒントが隠されていることを忘れないようにしましょう!

【DS検定対策】まずは手元のデータで評価!「訓練誤差」の意味と付き合い方

AIモデルを作ったら、まずは手元にあるデータを使ってどれくらい予測が当たっているかを計算します。その時に算出されるのが「訓練誤差」です。

1. 【 問題 】

機械学習のモデル評価において、「モデルの学習(訓練)に用いたデータそのもの」をモデルに入力した際に生じる、予測値と正解データとの間の誤差のことを何と呼ぶでしょうか?

① 汎化誤差(はんかごさ)
② 訓練誤差(学習誤差)
③ 評価誤差(テスト誤差)
④ 残差(ざんさ)


2. 【 解答 】

正解: ② 訓練誤差(学習誤差)

3. 整理:訓練誤差と「過学習(オーバーフィッティング)」の関係

訓練誤差は、モデルが手元のデータをどれくらい「カンペキに暗記できたか」を表す指標です。そのため、以下のような落とし穴が存在します。

【 訓練誤差のキャラクター 】

学習が進むとどうなる?
AIが手元のデータをどんどん学習していくと、訓練誤差は基本的にゼロに向かって下がり続けます

「訓練誤差=0」は本当にハッピー?
いいえ!手元のデータを完璧に覚え込みすぎた結果、データに含まれる「ノイズ(偶然のブレ)」まで学習してしまい、いざ本番環境で「新しい未知のデータ」を入力したときに全く予測が当たらなくなる現象が起きます。これを過学習(オーバーフィッティング)と呼びます。

4. 対比して覚えたい「汎化誤差」

訓練誤差の対義語として必ず出題されるのが「汎化誤差(はんかごさ)」です。
これは、学習には一切使っていない「未知のデータ」に対する予測誤差のことです。データサイエンティストが本当に目指すべきゴールは、訓練誤差をゼロにすることではなく、この「汎化誤差を最小にすること」です。


5. DS検定形式:実戦4択クイズ

問:学習を繰り返すうちに、「訓練誤差」は下がり続けているにもかかわらず、「汎化誤差(テスト誤差)」が途中から上昇し始めてしまった。この状態を説明する言葉として最も適切なものはどれか。

① アンダーフィッティング(学習不足)   ② オーバーフィッティング(過学習)   ③ 勾配消失   ④ 負の転移

【 正解: ② 】

解説: まさに過学習が起きている瞬間の特徴です。この現象を防ぐために、あらかじめデータを「訓練用」と「テスト用」に分割して別々に誤差を監視する「交差検証(クロスバリデーション)」などの技術が使われます。


6. まとめ

DS検定において「学習時の訓練データと正解データの誤差」という記述が出たら、シンプルに「訓練誤差」です。これ単体が低ければ良いというわけではなく、未知のデータに対する「汎化誤差」とセットで比較・評価するものだという大原則を押さえておきましょう!