Нехай пакет shapash python зробить роботу за вас

Не приходьте на наступну презентацію непідготовленим

Дуже важливо розуміти, що робить ваша модель. Чим більше інформації ви маєте для оцінки своєї моделі, тим краще ви зможете її налаштувати. Навіть якщо ви глибоко розумієте внутрішню роботу алгоритмів, ваші ділові партнери цього не роблять. Потрібно вміти привабливо і цікаво подати свої знахідки.

Бувають випадки, коли ділові партнери володіють більшим знанням предмета, який може допомогти надати контекст функції. Якщо вони дійсно розуміють, що ви передаєте, вони можуть допомогти вам налаштувати модель ще далі.

Одне з найпоширеніших запитань, які я чую: «Які дані входять до моделі?» що перекладається як «Які функції є найважливішими?». Ви повинні бути готові відповісти на це запитання так, щоб вони зрозуміли. Шапаш надає кілька цікавих результатів, які можуть допомогти вам поінформувати свою аудиторію.

Навіщо пробувати шапаш?

Завжди шукаючи цікаві пакети для використання в своїй повсякденній роботі, я натрапив на шапаш. І якщо ви мене знаєте, то знаєте, що я не люблю клопотів. Пакет має бути простим у використанні, інакше він не матиме шансів на швидке підтвердження концепції. Лише кілька рядків коду додають сценарію вашої моделі як інтерактивну, так і звітну можливість пояснення.

Я вважаю, що це варте того, щоб ви витратили час, щоб перевірити пакет і його пропозиції. Налаштування просте (пам’ятайте, я не надто люблю клопоти). Я детально описав кроки нижче.

монтаж

Як завжди, рекомендуємо створити нове віртуальне середовище. Я включив посилання на процес встановлення в розділі «Посилання» нижче. Для цього прикладу я використовую Jupyter, тому мені потрібно лише встановити ipywidgets (і ввімкнути) і shapash.

Додайте цей простий блок коду.

Після навчання моделі (у цьому прикладі «регресора») додайте простий блок коду для компіляції та виконання SmartExplainer. Нижче в цій статті додається повний приклад коду.

from shapash.explainer.smart_explainer import SmartExplainer
# shapash Step 1: Declare SmartExplainer Object
xpl = SmartExplainer()
# shapash Step 2: Compile Model, Dataset, Encoders
xpl.compile(    x=Xtest,    
                model=regressor,    
                preprocessing=encoder, #optional
                y_pred=y_pred) 
# shapash Step 3: Display interactive output
app = xpl.run_app()

Запустіть код

Ви повинні запустити свій код від прийому даних, розробки функцій і навчання моделі до оцінювання моделі. Далі, коли ви виконаєте run_app(), відобразиться посилання на додаток.

Просто клацніть це посилання, щоб відкрити вікно браузера з результатом. Ви зможете переміщатися між різними візуалізаціями.

БОНУС — фрагмент коду для створення HTML-звіту

Якщо ви хочете поділитися знахідкою з колегами, ви можете створити звіт HTML, щоб поділитися.

# Step 4: Generate the Shapash Report
xpl.generate_report(
        output_file='medium_spending_scores_report2.html',
        project_info_file='shapash_project_info.yml',
        x_train=Xtrain,
        y_train=ytrain,
        y_test=ytest,
        title_story="Spending Scores Report",
        title_description="""This is just an easy sample.
            It was generated using the Shapash library.""",
        metrics=[
            {
                'path': 'sklearn.metrics.mean_absolute_error',
                'name': 'Mean absolute error',
            }])

Повний приклад коду

Блокнот Jupyter і файли:



Версія .py:

Посилання





Висновок

Я думаю, що shapash має місце в наборі інструментів пояснюваності моделі. Якщо ви не можете пояснити свою роботу нетехнічним колегам, ваші результати можуть залишитися непоміченими. Ніхто не хоче, щоб це сталося.

Люди, яких я бачу, просуваючи свою кар’єру в області науки про дані на робочому місці, це ті, чиї презентації сяють і звертаються безпосередньо до конкретної аудиторії. Отже, сяйте!