Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 決定境界 | セクション
Pythonによる分類

book決定境界

メニューを表示するにはスワイプしてください

ロジスティック回帰の結果をプロット。次の2つの特徴量を持つ例を考察。

ロジスティック回帰を構築した後、決定境界をプロット可能。これは各クラスの領域を示し、新しいインスタンスがそのクラスとして予測される範囲を表現。例えば、上記データに適用したロジスティック回帰の決定境界は以下の通り。

この線が2つのクラスを完全に分離していることが確認可能。このような場合、データセットは線形分離可能と呼称。ただし、常にそうとは限らない。もしデータセットが次のような場合はどうなるか。

上図は、少し異なるデータセットに対する決定境界です。ここではデータが線形分離不可能であるため、ロジスティック回帰による予測は完全ではありません。残念ながら、デフォルトではロジスティック回帰はより複雑な決定境界を予測できません。したがって、これが得られる最良の予測となります。

ただし、ロジスティック回帰は線形回帰から派生しており、モデルが単純すぎるという問題に対する解決策があります。この解決策が多項式回帰であり、その式を用いてzzを計算することで、より複雑な決定境界の形状を得ることができます:

z=β0+β1x1+β2x2+β3x12+β4x1x2+β5x22z = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_3 x_1^2 + \beta_4 x_1 x_2 + \beta_5 x_2^2

多項式回帰と同様に、PolynomialFeaturesトランスフォーマーを使って特徴量に多項式項を追加できます。これにより、モデルがより複雑なパターンを学習できるようになります。

from sklearn.preprocessing import PolynomialFeatures

X_poly = PolynomialFeatures(2, include_bias=False).fit_transform(X)

このコードは、元の入力特徴量Xに対して以下を追加します:

  • 二乗項(例:x2x^2
  • 交互作用項(例:x1x2x_1 \cdot x_2、複数特徴量がある場合)

例えば、Xがもともと2つの特徴量[x1,x2][x_1, x_2]を持つ場合、PolynomialFeatures(2, include_bias=False)を適用すると、[x1,x2,x12,x1x2,x22][x_1, x_{2}, x_{1}\\^{2} , x_{1} x_{2}, x_{2}\\^{2}]となります。

これにより、ロジスティック回帰のようなモデルが非線形な関係を捉え、より柔軟で曲線的な決定境界を生成できるようになります。ただし、多項式の次数を上げすぎると、訓練データに過剰適合してしまう(過学習)問題が発生します。そのため、通常はまず低い次数から試し、モデルを慎重に評価します。

question mark

ロジスティック回帰で多項式特徴量が必要となる理由は何ですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  11

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 1.  11
some-alt