Создание информационных панелей для интерпретации модели машинного обучения
В настоящее время создание модели машинного обучения легко из-за различных библиотек python, представленных на рынке, таких как sklearn, lazypredict и т. Д. Эти библиотеки просты в использовании и используются для создания различных типов моделей наряду с различными типами визуализаций и определения исполнение модели. Если вы не знаете, как работает ленивое прогнозирование, ознакомьтесь со статьей, приведенной ниже.
Основная проблема в настоящее время заключается в том, что модели нелегко интерпретировать, что затрудняет понимание и интерпретацию логики и того, как модель работает, для нетехнического специалиста.
Информационная панель Explainer - это библиотека Python с открытым исходным кодом, которая создает информационные панели модели машинного обучения, которые можно использовать для легкого понимания и анализа важных факторов, с которыми работает модель, таких как важность функции, производительность модели, визуализации и т. Д.
В этой статье мы будем использовать объяснительную информационную панель для создания информационных панелей машинного обучения и понять, как работает модель.
Давайте начнем…
Установка необходимых библиотек
Мы начнем с установки панели объяснения с помощью pip. Команда, приведенная ниже, сделает это.
pip install explainerdashboard
Импорт необходимых библиотек
На этом этапе мы импортируем необходимые библиотеки и функции для создания модели машинного обучения и панели мониторинга.
from sklearn.ensemble import RandomForestClassifier from explainerdashboard import ClassifierExplainer, ExplainerDashboard from explainerdashboard.datasets import titanic_survive, titanic_names
Создание модели и приборной панели
Это последний шаг, на котором мы создадим модель машинного обучения, а затем интерпретируем эту модель, создав панель мониторинга.
- Создание модели
feature_descriptions = { "Sex": "Gender of passenger", "Gender": "Gender of passenger", "Deck": "The deck the passenger had their cabin on", "PassengerClass": "The class of the ticket: 1st, 2nd or 3rd class", "Fare": "The amount of money people paid", "Embarked": "the port where the passenger boarded the Titanic. Either Southampton, Cherbourg or Queenstown", "Age": "Age of the passenger", "No_of_siblings_plus_spouses_on_board": "The sum of the number of siblings plus the number of spouses on board", "No_of_parents_plus_children_on_board" : "The sum of the number of parents plus the number of children on board", } X_train, y_train, X_test, y_test = titanic_survive() train_names, test_names = titanic_names() model = RandomForestClassifier(n_estimators=50, max_depth=5) model.fit(X_train, y_train)
2. Создание панели инструментов
from sklearn.ensemble import RandomForestClassifier from explainerdashboard import ClassifierExplainer, ExplainerDashboard from explainerdashboard.datasets import titanic_survive, titanic_names feature_descriptions = { "Sex": "Gender of passenger", "Gender": "Gender of passenger", "Deck": "The deck the passenger had their cabin on", "PassengerClass": "The class of the ticket: 1st, 2nd or 3rd class", "Fare": "The amount of money people paid", "Embarked": "the port where the passenger boarded the Titanic. Either Southampton, Cherbourg or Queenstown", "Age": "Age of the passenger", "No_of_siblings_plus_spouses_on_board": "The sum of the number of siblings plus the number of spouses on board", "No_of_parents_plus_children_on_board" : "The sum of the number of parents plus the number of children on board", } X_train, y_train, X_test, y_test = titanic_survive() train_names, test_names = titanic_names() model = RandomForestClassifier(n_estimators=50, max_depth=5) model.fit(X_train, y_train) explainer = ClassifierExplainer(model, X_test, y_test, cats=['Deck', 'Embarked', {'Gender': ['Sex_male', 'Sex_female', 'Sex_nan']}], cats_notencoded={'Embarked': 'Stowaway'}, descriptions=feature_descriptions, labels=['Not survived', 'Survived'], idxs = test_names, index_name = "Passenger", target = "Survival", ) db = ExplainerDashboard(explainer, title="Titanic Explainer", shap_interaction=False, ) db.run(port=8050)
В приведенном ниже видео я показал панель инструментов, созданную с помощью панелей объяснения.
Здесь вы можете наглядно визуализировать создание приборной панели с помощью пояснительной приборной панели. Мы можем четко анализировать различные свойства модели и другие параметры.
Попробуйте это с разными наборами данных и создайте красивые информационные панели для интерпретации модели. Если у вас возникнут трудности, дайте мне знать в разделе ответов.
Эта статья написана в сотрудничестве с Пиюшем Ингале.
Прежде чем ты уйдешь
Спасибо за чтение! Если вы хотите связаться со мной, свяжитесь со мной по адресу [email protected] или в моем профиле LinkedIn. Вы можете просмотреть мой профиль Github для различных проектов по науке о данных и руководств по пакетам. Кроме того, не стесняйтесь изучать мой профиль и читать разные мои статьи, связанные с наукой о данных.