Kostenlos

Машинное обучение доступным языком

Text
Als gelesen kennzeichnen
Schriftart:Kleiner AaGrößer Aa

Сравнение моделей

Напоследок давайте сопоставим метрики эффективности улучшенных дерева решений и многослойного перцептрона. В этом нам поможет восхитительная библиотека plotly и ее функция Figure(). Мы закладываем в нее все метрики той или иной модели. xaxis_tickangle задаст наклон названию метрики для осью x. bargroupgap – расстояние между столбиками.

metrics=['Accuracy','CV accuracy','Precision','Recall','F1','ROC AUC']

fig = go.Figure(data=[

go.Bar(name='GridSearchCV + Дерево решений', x=metrics,y=[gs_tree.score(X_test, y_test), gs_tree.best_score_, precision_score(y_test, gs_tree_pred), recall_score(y_test, gs_tree_pred), f1_score(y_test, gs_tree_pred), gs_tree_auc]),

go.Bar(name='GridSearchCV + Нейронная сеть', x=metrics,y=[gs_mlp.score(X_test,y_test), gs_mlp.best_score_, precision_score(y_test, gs_mlp_pred), recall_score(y_test, gs_mlp_pred), f1_score(y_test, gs_mlp_pred), gs_mlp_auc])])

fig.update_layout(title_text='Метрики обеих моделей', barmode='group', xaxis_tickangle=-45, bargroupgap=0.05)

fig.show()

Модели “идут нос к носу” в контексте пяти метрик. Выделить победителя в числовом выражении можно (это дерево решений, обозначено синим). Из этой ситуации можно сделать несколько выводов:

• для такого типа данных decision tree подходит лучше

• если не столь важны такие метрики, как accuracy, recall, F1-мера, лучше использовать MLP и опираться на AUC ROC.


Заключение

Теперь мы знаем, что банки думают о своих клиентах в контексте продажи кредитов. В дальнейшем аналитики сопоставляют список купивших со списком тех, кто скорее всего купит. Подгруппу не купивших, но демонстрирующих признаки скорой сделки, “дожимают” рассылками, звонками и другими средствами. Мы только что решили задачу uplift-моделирования (uplift modeling), то есть помогли отделу продаж расходовать свои ресурсы допродаж эффективнее.

На этом основы машинного обучения вы восприняли, поздравляю! Пускай небольшой объём станет стимулом усвоить этот базис получше.

Вот так выглядит полноценная “конвейерная” аналогия. Надеюсь, она поможет вам быстрее запомнить, кто есть кто:



Делюсь своими любимыми ресурсами:

• towardsdatascience.com / medium.com, чтобы изучить концепции предельно доступным языком

• kaggle.com, чтобы испытать себя на соревнованиях и просто найти датасет для пробы пера.

• machinelearningmastery.com, чтобы осваивать концепции углубленно, с формулами и хорошо комментированным кодом.

• stackoverflow.com, чтобы получить ответы и предположения на самые тонкие вопросы разработки.

Если понятие забылось или оказалось непонятным, добивайтесь другой формы изложения с помощью поисковых систем. Google прекрасно выделяет определения из статей и собирает их в так называемые аккордеоны прямо посреди страницы с результатами.

И напоследок: сопроводив термин словом explained (например, ‘standard deviation explained’), вы на первой же странице найдете статью, которая разъясняет тему в действительно простой краткой манере. Вот так выглядят аккордеоны ‘People also ask’ («люди также спрашивают»):