- コンピュータが 統計的学習(statistical learning) の手法を用いて、データからパターンを自動的に識別し、予測を行う過程を視覚的に説明している
- 住宅データセットを使って、ニューヨークとサンフランシスコの住宅を区別するモデル を作る過程を段階的に可視化している
- 決定木(decision tree) を中心に、分岐点(split point)、枝(branch)、リーフノード(leaf node)などの概念を通じて、学習と予測の過程を具体的に示している
- モデルの精度を高める過程で 過学習(overfitting) の問題を視覚的に示し、訓練データとテストデータの違いを説明している
- 機械学習の核心概念を直感的に理解できるよう設計された インタラクティブな可視化学習資料 である
機械学習の基本概念
- 機械学習は、コンピュータが 統計的学習手法 を適用してデータのパターンを自動的に識別し、それを基に 正確な予測 を行う技術である
- 例として、住宅データを用いて ニューヨークとサンフランシスコの住宅を分類 するモデルを構築する
- このような分類作業は、機械学習では classification(分類) 問題と呼ばれる
直感的な区別と特徴量(feature)
- サンフランシスコは地形的に 丘が多く標高が高い
- したがって、住宅の 標高(elevation) は両都市を区別する有用な基準になり得る
- たとえば、標高が240フィート以上ならサンフランシスコに分類できる
- ここに 平方フィート当たりの価格(price per square foot) を加えると、より精密な区別が可能になる
- 標高が240フィート以下で、かつ平方フィート当たり $1776 以上ならニューヨークに分類される
- データの各次元は feature(特徴量)、predictor(予測変数)、variable(変数) と呼ばれる
境界(boundary)とモデル学習
- 標高と価格を基準に、散布図(scatterplot) 上へ境界を可視化できる
- データの境界を数学的に識別することが、統計的学習の核心 である
- 実際のデータセットは7つの次元を持ち、これを基にモデルを 訓練(training) する
- 散布図行列(scatterplot matrix) を通じて、各変数間の関係を視覚的に探索する
決定木(Decision Tree)の動作原理
- 機械学習はデータからパターンを見つけるために 統計的学習 を活用し、その方法の一つが 決定木 である
- 決定木は、一度に一つの変数を基準に if-then ルール を適用してデータを分岐させる
- 例: 「もし標高が一定値以上ならサンフランシスコ」というルールを適用する
- このような分岐点は split point(分割点) と呼ばれ、木の各枝(branch)を形成する
分割の精度とトレードオフ
- 初期の分割(例: 240フィート基準)では、一部のサンフランシスコの住宅を誤分類する(false negatives)
- 逆に、すべてのサンフランシスコの住宅を含めようとすると、ニューヨークの住宅も含まれてしまう(false positives)
- 最適分割(best split) とは、各枝のデータが可能な限り 同質的(homogeneous) になるようにすることである
- これを計算する方法として ジニ指数(Gini index)、交差エントロピー(cross entropy) などがある
再帰(Recursion)と木の成長
- アルゴリズムは各部分データセットに対してこの過程を繰り返し、再帰的(recursion) に木を拡張していく
- 低い標高では平方フィート当たりの価格が、高い標高では総価格が次の分割変数として選ばれる
- 分割を繰り返すほど、木の 予測精度(prediction accuracy) は向上する
- 1段階追加すると84%、複数段階追加すると96%まで向上
- すべての分岐を追加すれば100%の精度を達成できる
- 最終的な分岐点は リーフノード(leaf node) であり、各ノードは多数派クラスに従って住宅を分類する
予測と検証
- 訓練済みの決定木は、各データポイントを木の分岐に沿ってたどりながら 都市を予測 する
- 訓練に使われたデータは training data、新しいデータは test data として区別される
- モデルは訓練データでは完璧に機能しても、新しいデータでは性能が落ちることがある
- これは 過学習(overfitting) のためであり、モデルが不要な細部まで学習してしまったためである
要約と次の段階
- 機械学習は データの境界を見つけてパターンを識別 し、予測を行う
- 決定木 は if-then ルールによってデータを分類する代表的な方法である
- 過学習 は意味のない区別まで学習してしまい、汎化性能が低下する現象である
- 次の記事では、過学習と バイアス・バリアンストレードオフ(bias/variance tradeoff) の関係を扱う予定である
1件のコメント
Hacker Newsのコメント
R2D3の制作者の一人です。今日この投稿を見られてうれしいです。ここかBlueskyで質問を受け付けます
これは本当に傑作です。機械学習を紹介するたびにこのインタラクティブな解説を使っています。似た資料のまとめがここにあります
以前、自分が作ったS-TIER学習リソース一覧について触れたことがあります。
S-TIERは、アニメーション、可視化、インタラクティブ要素が完璧に組み合わさったコンテンツのことです。
A-TIERは有益ではあるものの、より視覚性が低く、意見中心のブログは一番下に置いています。
自分が選ぶS-TIERサイトは次のとおりです:
growingswe.com/blog, ciechanow.ski/archives, mlu-explain.github.io, seeing-theory.brown.edu, svg-tutorial.com, lumafield.com/scan-of-the-month/health-wearables
この基準でHNのすべてのブログリンクを自動分類するブックマークマネージャーを作りたいです
以前自分が作ったプロジェクトの中で気に入っている2つは、Fill in the BlankとGrokkingです
ブックマークしました。ほとんどのLLM解説記事にはこうした視覚的な参考資料が不足しています。
たいていは1万語の論文か、1行のツイート要約しかなく、その中間がありません
これは2015年の作品です。技術的にも概念的にも時代を先取りした仕事でした
本当にすばらしいです。データ可視化とAI/MLの交差点という興味深い分野です。
参考になりそうなものとしては、mlu-explain.github.io、visxai.io、Google PAIRのexplorables、GA Techのpoloclubがあります
こういう記事がもっと増えてほしいです。自分は視覚的学習が好きです。
Build Your Own Reactの記事を思い出しました。直接の関連はありませんが、似たスタイルで追いやすいブログです。こういう形式の記事は学習効率が高いです
これまで見た決定木の説明として最高レベルです。
スクロールしながら分割の過程を視覚的に見せるアニメーションは、教科書の長い説明よりずっと直感的です
これらのインタラクティブな解説は、今でもMLの概念を直感的に理解させる最高の例です。
数式から始める技術記事より、こうしたアプローチのほうがずっと効果的です
Transformerのアテンションメカニズムのような高次の概念をR2D3スタイルで説明した資料があるのか気になります