Моделирование кредитного риска на Python
Michael Crabtree
Data Scientist, Ford Motor Company
loan_status| Кредит | Реальный статус | Предсказанный статус | Стоимость погашения | Цена продажи | Прибыль/убыток |
|---|---|---|---|---|---|
| 1 | 0 | 1 | $1,500 | $250 | -$1,250 |
| 2 | 0 | 1 | $1,200 | $250 | -$950 |
xgboost, здесь используется как xgb.fit() — так же, как модель логистической регрессии# Create a logistic regression model
clf_logistic = LogisticRegression()
# Train the logistic regression
clf_logistic.fit(X_train, np.ravel(y_train))
# Create a gradient boosted tree model
clf_gbt = xgb.XGBClassifier()
# Train the gradient boosted tree
clf_gbt.fit(X_train,np.ravel(y_train))
.predict() и .predict_proba().predict_proba() возвращает значение от 0 до 1.predict() возвращает 1 или 0 для loan_status# Predict probabilities of default
gbt_preds_prob = clf_gbt.predict_proba(X_test)
# Predict loan_status as a 1 or 0
gbt_preds = clf_gbt.predict(X_test)
# gbt_preds_prob
array([[0.059, 0.940], [0.121, 0.989]])
# gbt_preds
array([1, 1, 0...])
learning_rate: меньшие значения делают каждый шаг более консервативнымmax_depth: глубина каждого дерева; большее значение — сложнее модельxgb.XGBClassifier(learning_rate = 0.2,
max_depth = 4)
Моделирование кредитного риска на Python