Совместная работа с Анной Козак и Пшемыславом Биецеком.

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

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

Этот метод можно описать в 6 шагов:
Шаг 1. Предоставьте набор необработанных табличных данных.

Шаг 2. Обучите супервизору сложную модель машинного обучения на основе предоставленных данных. Эта модель не требует интерпретации и рассматривается как черный ящик.

Шаг 3 Используйте SAFE для поиска преобразований переменных. (A) Для непрерывных переменных используйте профили частичной зависимости, чтобы найти точки изменения, которые обеспечивают наилучшее группирование для интересующей переменной. (B) Для категориальных переменных используйте кластеризацию, чтобы объединить некоторые уровни.

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

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

Шаг 6 Наслаждайтесь полностью интерпретируемой и точной моделью!

Пример использования данных о бронировании отелей

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

Интерпретируемая ванильная логистическая регрессия достигла значения AUC, равного 0,6 и 0,5 на тестовой и экспериментальной выборках соответственно. Согласно этим результатам, модель переоборудована и не может быть использована (кстати, это хороший момент, чтобы порекомендовать эту песню Рафаэля Морала о переобучении). Линейная модель плохо объясняет отмены, что может быть связано с большой нелинейностью данных. Поэтому мы будем использовать метод SAFE для преобразования переменных, чтобы помочь линейной модели уловить нелинейности.

Давайте использовать случайный лес в качестве гибкой модели супервизора. Ниже приведен пример БЕЗОПАСНОГО преобразования категориальной переменной тип депозита, который указывает, внес ли клиент депозит, чтобы гарантировать бронирование. Преобразование производится на основе прогнозов случайного леса. Переменная, состоящая из трех уровней, была объединена в два уровня, которые делят клиентов на тех, кто внес депозит, и тех, кто этого не сделал.

БЕЗОПАСНЫЕ преобразования категориальных переменных основаны на профилях PDP. Ниже показано преобразование переменной номер недели даты прибытия. Преобразования отражают времена года, которые по-разному влияют на вероятность отмены. Одна непрерывная переменная преобразуется в пять новых двоичных переменных, которые отражают сезонность отмен. Из-за модели случайного леса наименьший шанс отмены находится между 22-й и 39-й неделей года, что соответствует началу июня и концу сентября. Этот диапазон совпадает с сезоном отпусков, когда целые семьи отправляются в отпуск.

Две указанные выше переменные являются только примерами, мы начали с 26 переменных из исходного набора данных, а после преобразования с помощью метода SAFE мы получили 22 переменных. Логистическая регрессия, построенная на преобразованных переменных, достигла AUC = 0,68, поэтому это интерпретируемая модель, которую можно использовать для прогнозирования того, будет ли отменено бронирование.

Программное обеспечение

В качестве варианта использования мы использовали пакет rSAFE R. Коды доступны в репозитории на GitHub. Метод SAFE также реализован на Python (Пакет SafeTransformer).

Ссылка

Чтобы узнать больше о SAFE ML, его приложениях и тестах, мы рекомендуем вам прочитать статью
Алисия Госевска, Анна Козак, Пшемыслав Биецек, Чем проще, тем лучше: устранение компромисса между интерпретируемостью и производительностью с помощью автоматизированных разработка функций, Системы поддержки принятия решений, 2021, 113556, ISSN 0167–9236, https://doi.org/10.1016/j.dss.2021.113556.

Особая благодарность Катаржине Пенкала за полезные комментарии.

Если вас интересуют другие сообщения об объяснимом, справедливом и ответственном машинном обучении, подпишитесь на #ResponsibleML на Medium.

Чтобы увидеть больше материалов, связанных с R, посетите https://www.r-bloggers.com.