Интерпретируемые модели — различия между версиями
Строка 1: | Строка 1: | ||
− | '''Интерпретируемая модель''' - модель обладающая свойством '''интерпретируемости''' | + | '''Интерпретируемая модель''' - модель обладающая свойством '''интерпретируемости'''. |
'''Интерпретируемость''' - это свойство модели, которое показывает, что структуру данной модели может объяснить человек. | '''Интерпретируемость''' - это свойство модели, которое показывает, что структуру данной модели может объяснить человек. | ||
Строка 8: | Строка 8: | ||
Если модель машинного обучения работает хорошо, почему мы просто не доверяем модели и игнорируем факторы, из-за которых она приняла то или иное решение? | Если модель машинного обучения работает хорошо, почему мы просто не доверяем модели и игнорируем факторы, из-за которых она приняла то или иное решение? | ||
− | "Проблема в том, что только одна метрика измерения, такая как, точность классификации, это неполное описание большинства реальных задач" | + | "Проблема в том, что только одна метрика измерения, такая как, точность классификации, это неполное описание большинства реальных задач". |
<ref name="inv">Doshi-Velez and Kim "Towards A Rigorous Science of Interpretable Machine Learning" 2017 Page 5</ref> | <ref name="inv">Doshi-Velez and Kim "Towards A Rigorous Science of Interpretable Machine Learning" 2017 Page 5</ref> | ||
=== Когда нужна интерпретируемость === | === Когда нужна интерпретируемость === | ||
− | * Когда целью является получение каких либо знаний с помощью изучения построенной модели | + | * Когда целью является получение каких либо знаний с помощью изучения построенной модели. |
* Когда алгоритм оптимизировал неполную цель. Например, когда автомобильный инженер получает предсказания об параметрах двигателя, но ему нужно построит в целом наилучший автомобиль. | * Когда алгоритм оптимизировал неполную цель. Например, когда автомобильный инженер получает предсказания об параметрах двигателя, но ему нужно построит в целом наилучший автомобиль. | ||
− | * Для безопасности сложных систем. Такие системы, в большинстве случаев, нельзя протестировать от начала до конца. | + | * Для безопасности сложных систем. Такие системы, в большинстве случаев, нельзя протестировать от начала до конца. Вычислительно тяжело просмотреть все возможное входные данные и сценарии развития событий. |
=== Когда интерпретируемость не требуется === | === Когда интерпретируемость не требуется === | ||
− | * Влияние модели мало, а сама интерпретация стоит денег (мл в онлайн магазинах / предложение новых покупок на основе предыдущих) | + | * Влияние модели мало, а сама интерпретация стоит денег (мл в онлайн магазинах / предложение новых покупок на основе предыдущих). |
− | * проблема хорошо разработана и люди и так все понимают (специалистов обучают ещё в университетах) | + | * проблема хорошо разработана и люди и так все понимают (специалистов обучают ещё в университетах). |
− | * класс модели широко применяется: линейные модели (стоимость квартиры: очевидно это метраж, расстояние до метро, школы, детского сада и т. д., но когда параметром много, то уже сложно всё это держать в голове) | + | * класс модели широко применяется: [[Линейная регрессия|линейные модели]] (стоимость квартиры: очевидно это метраж, расстояние до метро, школы, детского сада и т. д., но когда параметром много, то уже сложно всё это держать в голове). |
− | * обман системы (кому давать кредит, качество работы сотрудника, поисковое ранжирование) | + | * обман системы (кому давать кредит, качество работы сотрудника, поисковое ранжирование). |
== Примеры моделей == | == Примеры моделей == | ||
Строка 34: | Строка 34: | ||
=== Пример эффективной в предсказании но не интерпретируемой модели === | === Пример эффективной в предсказании но не интерпретируемой модели === | ||
− | Допустим есть данные и задача бинарной классификации, и 99% объектов имеют класс 1, остальные 0. | + | Допустим есть данные и задача бинарной [[Общие_понятия#.D0.A2.D0.B8.D0.BF.D1.8B_.D0.B7.D0.B0.D0.B4.D0.B0.D1.87|классификации]], и 99% объектов имеют класс 1, остальные 0. |
Модель a(x) = 1, имеет точность 99%, но проинтерпретировать ее нельзя для каких-то наших исследований, особенно если нас интересуют, как возникает класс 0. Такая модель не интерпретируема, так как не информативна. | Модель a(x) = 1, имеет точность 99%, но проинтерпретировать ее нельзя для каких-то наших исследований, особенно если нас интересуют, как возникает класс 0. Такая модель не интерпретируема, так как не информативна. | ||
Строка 41: | Строка 41: | ||
* Предсказуемость и моделируемость: свойства при которых человек способен предсказывать поведение и ошибки модели, а так же умение "симулировать" их. Например TODO | * Предсказуемость и моделируемость: свойства при которых человек способен предсказывать поведение и ошибки модели, а так же умение "симулировать" их. Например TODO | ||
− | * Разложимость и модульность: свойства при которых человек способен декомпазировать модель на интепретируемые компоненты. Например | + | * Разложимость и модульность: свойства при которых человек способен декомпазировать модель на интепретируемые компоненты. Например [[Дерево решений и случайный лес| деревья решений]] или [[Линейная регрессия|линейный модели]] для небольшой размерности. |
− | * Доверие: | + | * Доверие: |
* Информативность: из модели можно выявить вспомогательную информацию полезную для принятия какого-либо решения. | * Информативность: из модели можно выявить вспомогательную информацию полезную для принятия какого-либо решения. |
Версия 04:09, 4 января 2021
Интерпретируемая модель - модель обладающая свойством интерпретируемости.
Интерпретируемость - это свойство модели, которое показывает, что структуру данной модели может объяснить человек. При этом структура модели не противоречит данным, на которых данная модель построена и сохраняет некоторые свойства предоставленных данных. При интерпретации модели могут быть объяснены принципы и закономерности, которые использует сама модель для предсказания на конкретных данных.
Содержание
Практическая польза
Если модель машинного обучения работает хорошо, почему мы просто не доверяем модели и игнорируем факторы, из-за которых она приняла то или иное решение? "Проблема в том, что только одна метрика измерения, такая как, точность классификации, это неполное описание большинства реальных задач". [1]
Когда нужна интерпретируемость
- Когда целью является получение каких либо знаний с помощью изучения построенной модели.
- Когда алгоритм оптимизировал неполную цель. Например, когда автомобильный инженер получает предсказания об параметрах двигателя, но ему нужно построит в целом наилучший автомобиль.
- Для безопасности сложных систем. Такие системы, в большинстве случаев, нельзя протестировать от начала до конца. Вычислительно тяжело просмотреть все возможное входные данные и сценарии развития событий.
Когда интерпретируемость не требуется
- Влияние модели мало, а сама интерпретация стоит денег (мл в онлайн магазинах / предложение новых покупок на основе предыдущих).
- проблема хорошо разработана и люди и так все понимают (специалистов обучают ещё в университетах).
- класс модели широко применяется: линейные модели (стоимость квартиры: очевидно это метраж, расстояние до метро, школы, детского сада и т. д., но когда параметром много, то уже сложно всё это держать в голове).
- обман системы (кому давать кредит, качество работы сотрудника, поисковое ранжирование).
Примеры моделей
Пример интерпретируемой модели
Пример эффективной в предсказании но не интерпретируемой модели
Допустим есть данные и задача бинарной классификации, и 99% объектов имеют класс 1, остальные 0. Модель a(x) = 1, имеет точность 99%, но проинтерпретировать ее нельзя для каких-то наших исследований, особенно если нас интересуют, как возникает класс 0. Такая модель не интерпретируема, так как не информативна.
Другие свойства моделей
- Предсказуемость и моделируемость: свойства при которых человек способен предсказывать поведение и ошибки модели, а так же умение "симулировать" их. Например TODO
- Разложимость и модульность: свойства при которых человек способен декомпазировать модель на интепретируемые компоненты. Например деревья решений или линейный модели для небольшой размерности.
- Доверие:
- Информативность: из модели можно выявить вспомогательную информацию полезную для принятия какого-либо решения.
- Cтабильность: статисические и оптимизационные свойства
Примечания
- ↑ Doshi-Velez and Kim "Towards A Rigorous Science of Interpretable Machine Learning" 2017 Page 5
Источники информации
- Doshi-Velez and Kim "Towards A Rigorous Science of Interpretable Machine Learning" 2017[1]
- Sanmi Koyejo "Interpretability" MACHINE LEARNING SUMMER SCHOOL 2019 [2]