Dataiku予測結果タブの解説
【Dataiku】ML予測結果画面の見方を徹底解説。モデルの精度をどう判断すべきか?Machine Learning Basicsの学習内容をベースに、各評価指標の読み解き方を整理しました。予測モデルの良し悪しを判断するためのガイドです。
目次
はじめに
Dataikuを使えば、コードを書かずにクリックだけで機械学習(ML)モデルを作成できます。しかし、いざモデルを作ってみて、こう思ったことはないでしょうか。
「結果画面になんかすごいグラフが出たけど、これって結局いいの?悪いの?」
私自身、AutoMLでモデルを作るところまではスムーズにいけたものの、表示された「Results」タブの詳細な数値をどう判断すればいいのか分からず、立ち止まってしまいました。
そこで今回は、Dataikuの学習コンテンツ「Machine Learning Basics」を通して学んだ、結果画面の正しい見方とモデル精度の判断基準についてアウトプットします。同じように「画面の見方が分からない」と悩んでいる方の参考になれば幸いです。
この記事では、Summaryと、EXPLAINABILITYタブを解説します。
Summary
アルゴリズムや学習日といったモデルの基本情報が表示されます。また、レポートページには、モデルの解釈、パフォーマンス、およびモデルに関する詳細情報のセクションも含まれています。

Feature importance
「EXPLAINABILITY」セクションの「Feature importance」タブには3つのチャートが表示され、それぞれがモデルの挙動や、入力データと予測結果の関係について詳細な情報を可視化して教えてくれます。
Absolute feature importance
最初のチャートである「Absolute feature importance」は、各変数がモデルの予測にどの程度強く影響しているかを測定したものです。表示のパーセンテージはShapley value(その変数のモデル予測における重要度)の絶対値の平均をもとに計算されています。
以下のチャートでは、「Number of inpatient visits(入院回数)」という特徴量が、病院の再入院率と最も強い相関関係にあることがわかります。

画面を下にスクロールすると、「Feature effects(特徴量の影響)」および「Feature dependence(特徴量の依存関係)」の2つのチャートが表示され、特徴量の重要度をより深く掘り下げてモデルの予測を評価することができます。
Feature effects
Feature effectsは、個々の特徴量の値が予測にどのような影響を与えるかを示します。プロット上の各点はデータセットの1行(レコード)を表しており、その色は特徴量の値を反映しています。中心から離れるほど、そのデータ点が予測に対して(正または負の方向に)より大きな影響を与えたことを意味します。

Feature dependence
Feature dependenceでは、データセットから選択した特定の特徴量に対し、その値がモデルに与える重要度の指標である「シャプレイ値(Shapley value)」を関数としてプロットすることができます。
この値は、「0」を基準にプラスとマイナスで意味が逆転します。
プラスの値(0より上):
ターゲット(例:再入院する=1)の確率を高める働きをしています。
値が大きいほど、「再入院しそうだ!」と判定させています。
マイナスの値(0より下):
ターゲットの確率を下げる(=再入院しないだろう)方向に働いています。
値が小さい(マイナスに大きい)ほど、「再入院はなさそうだ」と強く判定させています。
0付近:
予測結果にほとんど影響を与えていません(平均的な状態)。

画像の結果となった場合の解釈を以下に示します。
入院回数が「0回」のとき(一番左):
Shapley値は マイナス(約 -0.2) です。
意味:「入院歴がないことは、再入院リスクを下げる要因になっている」とモデルは判断しています。
入院回数が「1回以上」になると:
Shapley値はプラスに転じます。
意味:「1回でも入院歴があると、再入院リスクを高める要因になる」と判断しています。
回数が増えるほど(右に行くほど):
プラスの値がどんどん大きくなっています。
意味:「入院回数が多ければ多いほど、より強く再入院を予測する」というモデルになっています。
このグラフの結論: 入院回数(Number of inpatient visits)は、0回なら再入院のリスクを下げ、回数が増えるとリスクを大きく上げるという明確な相関があり、Shapley値の変動幅も大きいため、このモデルにとって非常に重要な(外してはいけない)特徴量であると言えます。
Partial dependence plots
「Partial dependence plots(部分依存性プロット)」は、個々の特徴量がモデルの予測に与える影響を理解するのに役立ちます。例えば、「Age(年齢)」という特徴量の部分依存性プロットを算出すると、60歳から80歳にかけて再入院の可能性が上昇することがわかります。

グラフの基本構成
横軸 (X軸): Age(年齢)
左が0歳、右が100歳くらいです。
左の縦軸 : Partial dependence(予測への影響度)
上に行くほど: 「再入院しやすい(1になりやすい)」とモデルが判断しています。
下に行くほど: 「再入院しにくい(0になりやすい)」とモデルが判断しています。
右の縦軸 : Distribution(データの量)
背景にある灰色の棒グラフ用の目盛りです。
青い折れ線(トレンド)の読み方
この青い線が、「年齢とリスクの関係性」です。
〜50歳くらいまで(左側の平らな部分):
線はずっと低い位置(マイナス圏)で横ばいです。
意味: 「50歳以下であれば、年齢による再入院リスクの上昇は特にない(むしろリスクは低い)」と判断されています。
60歳〜80歳(急激に上がる部分):
階段状にググッと上がっています。
意味: 「60代を超えると、年齢が上がるにつれて再入院リスクが急激に高まる」ことを示しています。
80歳以降(右端):
高い位置で止まっています(最後少し下がっているようにも見えます)。
意味: 「80代以上は高リスク層である」という判定です。
背景の「灰色の棒グラフ」の重要性
灰色の棒は、「その年齢のデータが実際にどれくらいあったか(分布)」 を示しています。
40歳〜90歳付近: 灰色の棒が高いです。
意味: ここのデータはたくさんあるので、青い線の形(トレンド)は信頼できます。
0歳〜20歳付近: 灰色の棒がほとんど見えません。
意味: 若い患者のデータはほぼありません。
注意点: 左側の青い線は平らになっていますが、データが少なすぎるため、「この部分の予測傾向はあまり信用しないほうがいい(たまたまこうなっているだけかも)」 と疑う視点が必要です。
Feature Importance(特徴量重要度)との違い
Feature Importance : 「年齢は重要ですか?」→「はい、トップ3に入るくらい重要です!」(重要度のランキング)
Partial Dependence : 「じゃあ、年齢が上がるとどうなるの?」→「60歳を超えると急にリスクが上がります!」(具体的な変化の中身)
まとめ
「50代までは年齢によるリスク差はないが、60歳を超えると一気にリスクが跳ね上がるため、60歳以上を重点的なフォロー対象とすべきである」
このように、具体的な「閾値(しきい値)」を見つけるのに非常に役立つグラフです。
Subpopuration analysis
「Subpopuration analysis(部分母集団分析)」を行うことで、異なるサブグループ間でのモデルの挙動を評価することができます。例えば、性別に基づいたモデルのパフォーマンスを分析することが可能です。分析の結果、モデルは性別を問わず概ね同様の挙動を示していますが、男性の患者においてパフォーマンスがわずかに低下していることがわかります。
この画面の目的は、「モデルが特定のグループに対して不公平な予測をしていないか(公平性・バイアス)」をチェックすることです。

各項目の意味
表の左から順に見ていきます。
Modality(グループ):
分析対象のカテゴリです。ここでは全データ(100%)を Female(53%)と Male(47%)に分けています。
Actually 1(実測値の正解率):
現実のデータで、ターゲットが「1(=再入院あり)」だった割合です。
例:女性の47%、男性の45%が実際に再入院していました。
Predicted 1(モデルの予測率):
モデルが「1(=再入院する)」と予測した割合です。
例:女性に対しては73%、男性に対しては71%の確率で「再入院する」と予測を出しています。
ポイント: 実測(Actually)よりも予測(Predicted)が全体的に高く出ており、このモデルは「少し心配性(過剰にリスクありと判定しがち)」な傾向があることがわかります。
Metric(性能指標: ROC AUC, Accuracyなど):
そのグループだけを見たときのモデルの成績表です。ここが最も重要なチェックポイントです。
この結果から読み取れること(健全性の判断)
この画面で見るべきは、「男性と女性でスコアに大きな差がないか?」 です。
ROC AUC(精度):
Female: 0.71
Male: 0.71
判定: 全く同じです。モデルは男女どちらに対しても同じ精度で予測できています。
Accuracy(正解率):
Female: 0.61
Male: 0.61
判定: これも同じです。
結論: このモデルは、性別によって予測の得意・不得意がなく、「公平(Fair)なモデルである」 と言えます。
Individual explanations
モデル全体の変数の重要度は、モデルの全体的な挙動を把握する上で有用な指標となりますが、個々の予測結果に対する詳細な洞察を与えるものではありません。Dataikuでは、個別の予測に対する根拠(Individual explanations)を生成することが可能です。
対象は、高いスコアと低いスコアが出た特定のデータです。
この分析の目的は、「極端な結果になった原因(どの特徴量の影響か?)」 を個別に特定することです。

グラフ(分布図)の見方
中央にある灰色の山のようなグラフは、テストデータの予測確率の分布(Density Chart)です。
横軸 (Predicted probability): モデルが出した予測確率(0%〜100%)。
- 左側 (0.00): 「絶対に再入院しない(0)」と予測された人たち。
- 右側 (1.00): 「絶対に再入院する(1)」と予測された人たち。
縦軸 (Probability density): その確率に該当するデータがどれくらい密集しているか(人数の多さ)。
山の形: 真ん中(0.4〜0.5付近)が高いので、どちらとも言えない迷っているデータが多いことがわかります。
色付きのバー(青とオレンジ)の意味
この画面では、「極端な予測結果が出た人たち(外れ値)」に焦点を当てて分析しようとしています。
青いエリア (Low probabilities):
予測確率が非常に低い(0に近い)グループ。つまり「最も安全(再入院なし)」と判定された人たちです。
スライダーで範囲を調整できます(画像では上位11行が対象)。
オレンジのエリア (High probabilities):
予測確率が非常に高い(1に近い)グループ。つまり「最も危険(再入院あり)」と判定された人たちです。
ここもスライダーで範囲を調整できます(画像では上位11行が対象)。
この画面でやること(分析の流れ)
この画面はまだ「結果」ではなく、「どのデータを分析するか選ぶ画面」です。
範囲を決める: 青とオレンジのスライダーを動かして、「どのくらい極端な予測結果の人を分析したいか」を決めます。
計算方法を選ぶ: 上部の Method: ICE / Shapley で計算手法を選びます(通常はICEでOKですが、より厳密に見たければShapleyを選びます)。
実行する: 右上の 「COMPUTE(計算)」ボタン を押します。
COMPUTEを押した後に何がわかるか?
ボタンを押すと、画面が切り替わり、選ばれたデータ(ここでは青とオレンジの約22人分)について、以下のような「個別の診断書」が表示されます。
例:ある「オレンジ枠(高リスク)」の患者Aさんの場合
予測確率: 95%(非常に高い)
主な理由:
入院回数が「5回」だったから
年齢が「80代」だったから
緊急搬送だったから
このように、「なぜこの人は95%という高いスコアがついたのか?」 を、その人の特徴量(変数)ごとのプラスマイナスで分解して見ることができます。
まとめ
以上が、DataikuにおけるAutoMLの「Results」タブの基本的な見方と解釈のポイントです。
結果画面のどこを見れば良いかが分かると、モデル作成がより楽しくなりますし、精度の改善ポイントも見つけやすくなります。「Machine Learning Basics」は基礎固めに非常に役立つコンテンツでした。「PERFORMANCE」タブや「MODEL INFORMATION」タブなど、モデルの精度評価や構造を理解する項目は順次掲載していこうと考えています。
今後は、今回読み解いた結果をもとに行う「モデルの再調整」や「特徴量の追加」など、精度向上に向けたプロセスについても学んでいきたいと思います。
最後まで読んでいただき、ありがとうございました。
