Python 的模型驗證
Kasey Jones
Data Scientist
參數是:
參數是在擬合模型時產生:
from sklearn.linear_model import LinearRegression
lr = LinearRegression()
lr.fit(X, y)
print(lr.coef_, lr.intercept_)
[[0.798, 0.452]] [1.786]
在模型擬合前,參數不存在:
lr = LinearRegression()
print(lr.coef_, lr.intercept_)
AttributeError: 'LinearRegression' object has no attribute 'coef_'
超參數:
| 超參數 | 說明 | 可能值(預設) |
|---|---|---|
| n_estimators | 森林中的決策樹數量 | 2+(10) |
| max_depth | 決策樹的最大深度 | 2+(None) |
| max_features | 分裂時要考慮的特徵數 | 參見文件 |
| min_samples_split | 允許分裂所需的最少樣本數 | 2+(2) |
超參數調校:
depth = [4, 6, 8, 10, 12] samples = [2, 4, 6, 8] features = [2, 4, 6, 8, 10]# 指定超參數 rfc = RandomForestRegressor( n_estimators=100, max_depth=depth[0], min_samples_split=samples[3], max_features=features[1])rfr.get_params()
{'bootstrap': True,
'criterion': 'mse'
...
}
rfr.get_params()
{'bootstrap': True,
'criterion': 'mse',
'max_depth': 4,
'max_features': 4,
'max_leaf_nodes': None,
'min_impurity_decrease': 0.0,
'min_impurity_split': None,
'min_samples_leaf': 1,
'min_samples_split': 8,
...
}
Python 的模型驗證