次元の呪い(curse of dimensionality)

次元の呪い(curse of dimensionality)は、特徴量の次元が高くなるにつれて距離・体積・サンプル密度の常識的な感覚が崩れ、距離ベースのアルゴリズムが機能しなくなる現象群の総称です。1961 年に Bellman が制御理論の文脈で命名した古い用語です。機械学習の文脈では、「特徴量を増やすほど精度が上がるとは限らない、むしろ kNN や RBF(Radial Basis Function)カーネルがほぼ動かなくなる」という現実問題として現れます。 ...

2026年5月25日 · 更新: 2026年8月5日 · 7 分 · nchika

対数・指数関数の性質と log-odds(log / exp / logit)

対数関数 log(x) と指数関数 exp(x) は互いに逆関数の関係にあり、機械学習では「積を和に変換する」「桁の違うスケールを揃える」「確率を log-odds に変換する」といった用途で繰り返し登場します。特に分類器の出力を「線形和としてモデル化する」発想は、p / (1 - p) を対数化した log-odds(対数オッズ)で表す形で実装されており、ロジスティック回帰 の中核を成します。ここでは、機械学習で出てくる場面に絞って対数・指数の性質を整理します。具体的には、(1) log と exp の対応関係、(2) 「積を和に」変える代数的性質、(3) シグモイドと logit による確率↔log-odds の往復、(4) 浮動小数点の数値安定性を保つための log 空間計算、の 4 点です。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

標準化と特徴量スケーリング - Standardization

特徴量スケーリングは、複数の特徴量のスケール(値の取り得る範囲・分散)を揃える前処理です。代表は標準化(standardization, Z-score)と正規化(normalization, Min-Max)の 2 つで、scikit-learn ではそれぞれ StandardScaler と MinMaxScaler が対応します。前処理の順序として、まず 欠損値処理 で NaN を埋めた後にスケーリングを当てる、というのが定石となります。 ...

2026年5月24日 · 更新: 2026年8月5日 · 8 分 · nchika

情報理論(information theory): エントロピー・KL ダイバージェンス・相互情報量

情報理論(information theory)は、Claude Shannon が 1948 年に創始した「情報を定量化する」枠組みです。中核となる量がエントロピー(entropy, 不確実性)、KL ダイバージェンス(2 分布の距離)、相互情報量(mutual information, 2 変数の依存性)の 3 つで、機械学習の損失関数・特徴量選択・決定木の分割基準・変分推論などに直接現れます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

カテゴリ変数のエンコーディング(categorical encoding)

カテゴリ変数のエンコーディング(categorical encoding)は、文字列やカテゴリ値で表された特徴量を数値ベクトルに変換する前処理操作の総称です。機械学習モデルの大半(ロジスティック回帰 / kNN / ニューラルネット / GradientBoosting など)は数値入力を前提とするため、category='electronics' や prefecture='東京' のような値はそのままでは渡せません。 ...

2026年5月25日 · 更新: 2026年8月5日 · 8 分 · nchika

ベクトルと行列の演算(内積・行列積)

ベクトル(vector)は数を 1 列に並べたもの、行列(matrix)は数を 2 次元に並べたものです。機械学習では、データ 1 件を「特徴量ベクトル」、データ集合を「行列」、モデルの重みを「ベクトル」または「行列」で表すのが標準で、内積・行列積といった演算がほぼすべてのアルゴリズムの計算基盤になっています。ここでは、(1) ベクトルの加算・スカラー倍、(2) 内積の代数と幾何の両面、(3) 行列の積と線形変換としての見方、(4) 機械学習で頻出する「データ行列 × 重みベクトル」のパターン、の 4 点を整理します。線形回帰・ロジスティック回帰・ニューラルネット・PCA・SVM(Support Vector Machine、サポートベクターマシン)、いずれも X @ w という形の行列ベクトル積が中核に座っています。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

欠損値処理(missing values): MCAR / MAR / MNAR と imputation

欠損値(missing values)は実データに付き物の汚れで、何も対処せずに学習器に渡すと多くの実装でエラーになるか、無視されてサンプル数が激減します。「平均で埋める」「行ごと削除する」のような単純な対応も状況次第では正しい選択になります。ただし、欠損が起きるメカニズム(MCAR / MAR / MNAR)を理解せずに当てると分析結果がバイアスします。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

固有値・固有ベクトルと固有値分解(eigenvalue / eigenvector / spectral decomposition)

固有ベクトル(eigenvector)は、ある正方行列 A をかけても向きが変わらないベクトルのことで、固有値(eigenvalue)はその「向きが変わらないベクトル」が A によってスカラー倍された倍率です。式で書くと、 ...

2026年5月26日 · 更新: 2026年8月5日 · 6 分 · nchika

特徴量選択(feature selection)

特徴量選択(feature selection)は、使える特徴量の中からモデルにとって有用な部分集合を選び出し、それ以外を捨てる前処理です。目的は (1) 過学習 の抑制、(2) 学習・推論コストの削減、(3) モデルの説明性向上、(4) 次元の呪い の緩和、の 4 点に集約されます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

線形回帰(linear regression)

線形回帰(linear regression)は、入力特徴量の線形和でターゲットを予測する最も基本的な教師あり回帰モデルです。 ŷ = w_1 x_1 + w_2 x_2 + ... + w_d x_d + b = w · x + b ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

偏微分と勾配(partial derivative / gradient)

偏微分(partial derivative)は、複数の変数を持つ関数 f(x, y, ...) を「ある 1 変数だけ動かして、他は固定する」と決めて、その 1 変数についての変化率を取った量です。勾配(gradient, ∇f)は、全変数についての偏微分をベクトルに並べたもので、そのベクトルが「f が最も急に増える向き」を指す性質を持ちます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

最急降下法・確率的勾配降下法(gradient descent / SGD)

最急降下法(gradient descent, GD)は、関数 f(x) を最小化するために「現在地から見て最も急に下る方向(= 負の勾配 -∇f)に少しずつ進む」反復アルゴリズムです。確率的勾配降下法(stochastic gradient descent, SGD)は、勾配を全データではなくランダムな 1 サンプル(または小バッチ)から推定して更新する派生で、大規模データでの学習に欠かせない手法となります。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

LogisticRegression - ロジスティック回帰

LogisticRegression(ロジスティック回帰)は、線形回帰 の出力をシグモイド関数で 0〜1 の確率に押し込めることで二値分類を可能にしたモデルです。線形回帰の枠組みをほぼそのまま使いつつ、「実数の予測値」を「クラスに属する確率」に変換する点だけが異なります。名前に「回帰」と付いています。ただし、実用上は二値分類の代表的なベースラインモデルとして使われます。 ...

2026年5月24日 · 更新: 2026年8月5日 · 8 分 · nchika

凸関数と凸最適化(convex functions / convex optimization)

凸関数(convex function)は、グラフが「下に凸」(U 字型)で、任意の 2 点を結んだ弦が関数の上にくる関数のことです。凸関数の最大の特徴は「局所最小値が必ず大域最小値」になる点で、これが凸最適化が「解ける」「保証がある」と言われる根拠となります。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

kNN - k近傍法(k-Nearest Neighbors)

kNN(k近傍法、k-Nearest Neighbors)は、新しい点を予測するとき、訓練データの中で「その点に最も近い k 個のサンプル」を見て、多数決(分類)または平均(回帰)で答えを決める手法です。 モデルを学習で作るのではなく、訓練データをそのまま記憶しておくのが特徴です。「怠惰な学習(lazy learning)」とも呼ばれます。 ...

2026年5月24日 · 更新: 2026年8月5日 · 3 分 · nchika

決定木(decision tree)

決定木(decision tree)は、入力空間を「if-then-else」の分割で繰り返し切り分け、葉ノードに到達した時点でクラス(分類)または値(回帰)を出すモデルです。学習は「分割すると不純度が最も下がる特徴量と閾値」を貪欲的に選ぶことを再帰的に繰り返すアルゴリズムで、最終的には軸に平行な階段状の決定境界を作ります。 ...

2026年5月26日 · 更新: 2026年8月6日 · 7 分 · nchika

大数の法則と中心極限定理(LLN / CLT)

大数の法則(Law of Large Numbers, LLN)と中心極限定理(Central Limit Theorem, CLT)は、統計学の 2 大基本定理です。両者とも「独立同分布のサンプル X_1, X_2, ..., X_n の平均」が大きな n でどう振る舞うかを記述します。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

サポートベクターマシン(SVM, support vector machine)

サポートベクターマシン(SVM, support vector machine)は、2 クラスのデータを「マージン(境界と最も近い点との距離)が最大になる超平面」で分離する分類器です。1990 年代から 2000 年代前半にかけて分類の標準アルゴリズムとして広く使われ、カーネルトリック(kernel trick)により非線形分離まで自然に拡張できる柔軟性を持ちます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

仮説検定・p 値・信頼区間(hypothesis testing / p-value / confidence interval)

仮説検定(hypothesis testing)は、ある主張(帰無仮説)が正しいと仮定したときに、観測されたデータがどれくらい「ありえない」かを定量化して結論を出す統計的手続きです。p 値(p-value)はその「ありえなさ」を 1 つの確率として表した量、信頼区間(confidence interval)は推定値の周りに「真値があると考えられる範囲」を区間で示したものとなります。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika

RandomForest - ランダムフォレスト

RandomForest は、複数の決定木を組み合わせて予測するアンサンブル学習 の代表的手法(Bagging)。 アンサンブル手法は、複数のモデルの出力をまとめて、単体より安定・高精度を狙う方法です。 Bagging(Bootstrap Aggregating)は、ブートストラップで作った複数の学習セットで別々のモデルを学習し、予測を平均/多数決で集約する考え方です。 それぞれの木は「ブートストラップサンプル」と「特徴量のランダム選択」で多様性を持たせ、分類は多数決、回帰は平均でまとめます。 ...

2026年5月24日 · 更新: 2026年8月5日 · 7 分 · nchika

GradientBoosting - 勾配ブースティング

GradientBoosting(勾配ブースティング)は、浅い 決定木 のような弱い学習器を 1 本ずつ順番に足していき、前のモデルが取りこぼした「誤差(残差)」を次の木で説明させることで予測精度を高める教師あり学習の手法です。最終的な予測は、これまで足したすべての木の出力を足し合わせた加法モデル F(x) = f_1(x) + f_2(x) + ... + f_M(x) として表されます。 ...

2026年5月24日 · 更新: 2026年8月5日 · 10 分 · nchika

アンサンブル学習(ensemble learning): bagging / boosting / stacking

アンサンブル学習(ensemble learning)は、複数の弱いモデル(weak learner)を組み合わせて 1 つの強いモデルを作る一般的な枠組みです。アプローチは大きく 3 系統に分かれます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

時系列予測(time series forecasting)

時系列予測(time series forecasting)は、「過去の観測値から未来の値を予測する」教師あり学習の一系統です。需要予測、株価、気温、サーバー負荷、医療モニタリングなど、ビジネスでも研究でも頻出します。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

k-means - K-means/k平均法

k-means(k平均法)は、データを「k個のクラスタ」に分け、各クラスタの中心(重心)に最も近い点同士を集める教師なし学習の手法です。 目的は「クラスタ内のばらつきを最小化し、クラスタ間の分離を良くする」ことです。分類器ではなく、分割・要約のための手法です。 ...

2026年5月24日 · 更新: 2026年8月5日 · 5 分 · nchika

PCA - Principal Component Analysis/主成分分析

PCA(主成分分析)は、多次元データの「ばらつき(分散)が大きい方向」を見つけ、座標軸をその方向へ回転させてから、重要な軸だけ残す方法です。 目的は「情報量(分散)をできるだけ保ったまま、次元を減らす」ことです。PCAは予測や分類のモデルではなく、前処理として使われます。 ...

2026年5月24日 · 更新: 2026年8月5日 · 4 分 · nchika

DBSCAN(density-based spatial clustering)

DBSCAN(Density-Based Spatial Clustering of Applications with Noise)は、点の密度に基づいてクラスタを構成するクラスタリングアルゴリズムです。k-means と違い「クラスタ数 k を事前に決める必要がない」「非凸(曲がった)形状のクラスタも見つけられる」「外れ値(noise)を別カテゴリとして扱う」という 3 つの強みを持ち、形状が不規則だったりノイズが混じるデータで威力を発揮します。 ...

2026年5月26日 · 更新: 2026年8月5日 · 5 分 · nchika

階層的クラスタリング(hierarchical clustering)

階層的クラスタリング(hierarchical clustering)は、データ点を徐々にマージしていく(または分割していく)ことで、樹形図(dendrogram)として全階層のクラスタ構造を可視化するアルゴリズムです。k-means や DBSCAN のように「事前に k やパラメータを決める」必要がなく、樹形図を見てから「どこで切るか」で粒度を選べます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 6 分 · nchika

t-SNE と UMAP: 非線形次元削減

t-SNE(t-distributed Stochastic Neighbor Embedding)と UMAP(Uniform Manifold Approximation and Projection)は、高次元データを 2 〜 3 次元に圧縮して可視化するための非線形次元削減アルゴリズムです。PCA が線形変換に限定されるのに対し、t-SNE / UMAP は曲がった多様体(manifold)構造を保ったまま低次元化できます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 6 分 · nchika

異常検知(anomaly detection): Isolation Forest / LOF / One-Class SVM

異常検知(anomaly detection, outlier detection)は、「正常データから外れた点」を検出する教師なし学習の一系統です。不正検知、故障予測、ネットワーク侵入検知、品質管理、医療診断など、「興味のあるクラスのサンプルが極端に少ない / 事前にラベルが取れない」場面で使われます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 7 分 · nchika

特徴量重要度(feature importance)と permutation importance

特徴量重要度(feature importance)は、「学習済みモデルにとってどの特徴量がどれだけ予測に効いているか」を定量化する値です。モデルの説明性を上げる、不要な特徴量を捨てる、データ収集の優先順位を決める、といった目的で使われます。 ...

2026年5月26日 · 更新: 2026年8月5日 · 8 分 · nchika