決定係数
次のコードを実行したときの出力として、正しいものを1つ選べ。
import numpy as np
from sklearn.linear_model import LinearRegression
X = np.array([[1], [2], [3]])
y = np.array([2, 4, 6])
m = LinearRegression().fit(X, y)
print(round(m.score(X, y), 3), round(float(m.predict([[10]])[0]), 3))
- A
0.0 20.0 - B
1.0 10.0 - C
1.0 20.0 - D
2.0 20.0
正解と解説を見る
正解:C
回帰の score は、決定係数 R²。1 が完全な当てはめ。訓練データでの値は、汎化性能の指標にはならない。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `import numpy as np` | — |
| 2 | `from sklearn.linear_model import LinearRegres…` | — |
| 3 | `X = np.array([[1], [2], [3]])` | X = [[1], [2], [3]] |
| 4 | `y = np.array([2, 4, 6])` | y = [2, 4, 6] |
| 5 | `m = LinearRegression().fit(X, y)` | X = [[1], [2], [3]], y = [2, 4, 6] |
| 6 | `print(round(m.score(X, y), 3), round(float(m.…` | X = [[1], [2], [3]], y = [2, 4, 6] |
| 結果 | 実際の出力 | 1.0 20.0 |
- A
誤り。当てはまりは完全。
- B
誤り。x = 10 なら y = 20。
- C
正しい。y = 2x を完全に当てはめられるので、決定係数は 1。x = 10 で 20。
- D
誤り。決定係数は 1 以下。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。