Ridge の係数の縮小
次のコードを実行したときの出力として、正しいものを1つ選べ。
import numpy as np
from sklearn.linear_model import Ridge, LinearRegression
X = np.array([[0], [1], [2], [3]])
y = np.array([0, 2, 4, 6])
print(bool(abs(Ridge(alpha=100).fit(X, y).coef_[0]) < abs(LinearRegression().fit(X, y).coef_[0])))
- A
False - B
None - C
True - D
ValueErrorが発生する。
正解と解説を見る
正解:C
Ridge 回帰は L2 正則化で係数を小さくする。alpha を大きくすると正則化が強くなり、過学習を抑えられる。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import numpy as np` | — |
| 2 | `from sklearn.linear_model import Ridge, Linea…` | — |
| 3 | `X = np.array([[0], [1], [2], [3]])` | X = [[0], [1], [2], [3]] |
| 4 | `y = np.array([0, 2, 4, 6])` | y = [0, 2, 4, 6] |
| 5 | `print(bool(abs(Ridge(alpha=100).fit(X, y).coe…` | X = [[0], [1], [2], [3]], y = [0, 2, 4, 6] |
| 結果 | 実際の出力 | True |
- A
誤り。正則化で係数の大きさは小さくなる。
- B
誤り。比較の結果は真偽値。
- C
正しい。L2 正則化(Ridge)は、係数を小さく抑える。
alphaが大きいほど、強く抑える。 - D
誤り。1 つの特徴量でも
Ridgeは使える。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。