Значения SHAP для десятилетия запуска, типа ракеты и организации

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

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

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

  • удаление повторяющихся записей;
  • проверка успешности миссии (3 других типа — «Отказ», «Частичный отказ» и «Отказ перед запуском» — считаются провалом миссии);
  • преобразование времени запуска в десятилетия;
  • извлечение типа ракеты из сведений о полете;
  • кодирование редких категориальных переменных (организация и тип ракеты) с не более чем 50 различными категориями в каждом столбце и не менее 25 записи в каждой категории;
  • наконец, удаление неиспользуемых столбцов.

В результате мы получили очищенный набор данных, содержащий около 4300 космических запусков.

Шаг 2 — настройка модели машинного обучения

Здесь данные были случайным образом разделены между обучающей и тестовой выборками, а затем смоделированы с помощью модели CatBoostClassifier, которая явно учитывает категориальные признаки. Показатель ROC AUC полученной модели составляет около 0,69, что является улучшением по сравнению с базовой моделью с показателем ROC AUC, равным 0,5 (при условии того же процента отказов 10 % за каждый запуск).

Согласно документации пакета SHAP, в отличие от CatBoostRegressor, значения SHAP для CatBoostClassifier измеряются не в самой частоте отказов — для ее получения необходимо дополнительно вычислить значение сигмоидной функции, sigmoid(x) = (np.exp(-x)+1)**(-1).

Однако в нашем конкретном случае из-за небольшой базовой частоты отказов соответствующие значения SHAP можно приблизительно интерпретировать как относительное увеличение или уменьшение частоты отказов по отношению к базовому значению. Например, значение SHAP +0,1 будет приблизительно означать относительное увеличение x1,1 (+10%) по сравнению с базовым коэффициент отказов.

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

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

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

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

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

Что касается десятилетий запуска, неудивительно, что наибольшая частота отказов связана с ракетами, запущенными в раннюю космическую эру — 1950-е, 1960-е и 1970-е годы. :

Что касается типов ракет, примечательно, что наибольшая частота отказов связана с Молния, Протон К/ Ракеты Блок Д, Атлас-ЛВ3, Агена-Б и Восток:

Наконец, что касается запускающих организаций, примечательно, что наибольшая частота отказов связана с ISAS (для сообщества рентгеновских астрономов, это не удивительно, учитывая судьбу Astro-E, Astro-E2 «Сузаку» и Astro-H «Hitomi»), за которыми следуют спутники General Dynamics, Sea Launch, ВВС США, ISRO , Роскосмос и SpaceX:

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

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