Значения SHAP размера ОЗУ, рейтинга и компании

В этой статье я использую обновленный набор данных, содержащий цены на мобильные (сотовые) телефоны, взятые с сайта Flipkart.com. Набор данных также общедоступен на Kaggle. Полную информацию об анализе можно найти в этой общедоступной записной книжке Kaggle.

Шаг 1 — предварительная обработка данных

Здесь предварительная обработка данных состоит из следующих шагов:

  • удаление повторяющихся записей;
  • выбор меток (цены на мобильные телефоны в индийских рупиях) и преобразование их в журнал 10 ( x->np.log10(x) так, чтобы 1 индийская рупия преобразовывалась в 0,0, 10 индийских рупий в 2,0 и т. д.);
  • стандартизация названий компаний путем перевода их в верхний регистр;
  • кодирование редких категориальных переменных (название компании и объем оперативной памяти) с не более чем 50 различными категориями в каждом столбце и не менее 10 записей в каждой категории;
  • наконец, удаление неиспользуемых столбцов.

В результате мы получили очищенный набор данных, содержащий около 740 сотовых телефонов по цене от 700 индийских рупий (8,4 доллара США) до 150 000 индийских рупий (1 800 долларов США).

Шаг 2 — настройка модели машинного обучения для прогнозирования цены сотового телефона с логарифмическим преобразованием.

Данные, подготовленные на предыдущем шаге, случайным образом распределяются между обучающей и тестовой выборками и моделируются с помощью модели CatBoostRegressor, которая явно учитывает категориальные признаки. Среднеквадратическая ошибка (RMSE) полученной модели составляет около 0,172 dex, что улучшение по сравнению со среднеквадратичной ошибкой базовой модели, равной примерно 0,503 dex (при условии, что такая же цена около 9 600 индийских рупий (116 долларов США) за каждую запись, представленную в наборе данных).

Шаг 3 — объяснение полученной модели машинного обучения

Здесь мы используем метод Shapley Additive ExPlanations (SHAP), один из наиболее распространенных для изучения объяснимости моделей машинного обучения. Таким образом, единицы значения SHAP выражаются в пунктах dex.

Во-первых, мы изучаем диапазон значений SHAP для основных функций, которые нас интересуют:

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

Остановимся подробнее на этих индивидуальных особенностях.

Что касается объема ОЗУ, неудивительно, что самые высокие цены на сотовые телефоны связаны с максимальным доступным объемом ОЗУ, 256 ГБ и 128 ГБ:

Что касается рейтингов телефонов, примечательно, что самые высокие цены на мобильные телефоны связаны с самыми высокими рейтингами, при этом средняя разница в цене между самыми высокими и самый низкий рейтинг около 0,59 dex, или 10**0.59 = 3.9 раз:

Наконец, что касается названия компании, то неудивительно, что самые высокие цены на телефоны связаны с iPhone производства Apple, в среднем 0,14 dex или 10**0.14 = 1.4 раз выше, чем у следующего по величине (Vivo) с таким же объемом ОЗУ и средним рейтингом:

Я надеюсь, что эти результаты могут быть полезны для вас. В случае вопросов/комментариев, не стесняйтесь писать в комментариях ниже или свяжитесь со мной напрямую через LinkedIn или Twitter.

Вы также можете подписаться на мои новые статьи или стать приглашенным участником Medium.