Введение:

Кредитный риск относится к риску невыполнения обязательств по кредиту или кредитной линии. В финансовой отрасли важно оценивать кредитный риск заемщиков, чтобы принимать обоснованные решения о кредитовании. В этом проекте мы будем использовать методы машинного обучения для анализа кредитного риска на основе исторических данных.

Код:

Во-первых, мы начнем с импорта необходимых библиотек и чтения данных:

import pandas as pd
import numpy as np
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import confusion_matrix
# read in the data
df = pd.read_csv("credit_data.csv")

Далее мы предварительно обработаем данные, стандартизировав функции и закодировав метки:

# standardize the features
scaler = StandardScaler()
X = df.drop("default", axis=1)
X = scaler.fit_transform(X)
# encode the labels
le = LabelEncoder()
y = le.fit_transform(df["default"])

Теперь мы можем разделить данные на тренировочный и тестовый наборы:

# split the data into training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

Затем мы можем обучить классификатор случайного леса на обучающих данных:

# train a random forest classifier
clf = RandomForestClassifier(n_estimators=100, random_state=42)
clf.fit(X_train, y_train)

Наконец, мы можем оценить модель на тестовом наборе и распечатать матрицу путаницы:

# evaluate the model on the test set
y_pred = clf.predict(X_test)
conf_mat = confusion_matrix(y_test, y_pred)
print("Confusion Matrix:")
print(conf_mat)

Вывод:

В этом проекте мы использовали методы машинного обучения для анализа кредитного риска на основе исторических данных. Мы предварительно обработали данные, обучили классификатор случайного леса и оценили модель на тестовом наборе. Матрицу путаницы можно использовать для оценки эффективности модели и определения областей, требующих улучшения. Прогнозируя кредитный риск, финансовые учреждения могут принимать более обоснованные кредитные решения и потенциально снижать риск дефолта.