Linear Regression

線形回帰の可視化

OLS・GD・SGDのインタラクティブシミュレーション。

線形回帰は入力 x と出力 y の直線的な関係を推定します。

y = ax + b

ここで a は傾き、b は切片です。このシミュレータでは、追加した各点が学習サンプルとなり、最適な a と b を見つけます。

モデルは平均二乗誤差(MSE)を最小化します:

$$ MSE(a,b) = \frac{1}{n}\sum_{i=1}^{n}(y_i-(ax_i+b))^2 $$

二乗により大きな誤差が強く罰せられ、滑らかな最適化対象になります。損失が低いほど良い当てはまりです。

  • OLS: 閉形式解で一括計算。
  • Batch GD: 各エポックで全サンプルを使用、安定だが重い。
  • SGD: シャッフルした単一サンプル更新、高速だがノイズが大きい。

同じ点で各手法の学習曲線を比較しましょう。

  1. 点を追加するか、デモデータを読み込みます。
  2. まず OLS を実行して基準線を得ます。
  3. GD/SGD に切り替えて学習率とエポックを調整します。
  4. テストモードで実測値と予測値を確認します。

クリックして点を追加します。点を長押しすると削除できます。


損失(MSE)
モデル
点数: 0
傾き(a): -
切片(b): -
R2: -
直近の損失: -
手法メモ
OLS

共分散と分散から求める閉形式解:

$$ a = \frac{\sum (x_i-\bar{x})(y_i-\bar{y})}{\sum (x_i-\bar{x})^2}, \quad b = \bar{y} - a\bar{x} $$