Есть ли способ дать причину каждому прогнозу в модели машинного обучения? - PullRequest
0 голосов
/ 20 апреля 2020

Я работаю над проектом, в котором мне нужно указать причину для каждой строки данных, которая получает прогноз из моей модели машинного обучения. Я использую модель регрессии Logisti c (двоичная классификация), чтобы получить мои прогнозы, и порог отсечения составляет 0,6. Я попытался использовать SHAP и ELI5 для определения наиболее важных функций, но это глобально для всех точек данных. Я хочу указать причину для каждого пункта данных, почему он был классифицирован как 1. Я не совсем уверен, как сделать его локально интерпретируемым для людей, чтобы понять прогноз.

1 Ответ

0 голосов
/ 20 апреля 2020

Я думаю, что это возможно с некоторыми допущениями:

1. we use LR instead of NN
2. each variable "X" treated as binary variable

Для уравнения LR:

y = 1/1+exp(-wi*xi)

Поскольку xi принадлежит {0, 1}, мы могли бы считать w_i важностью функции .

Для каждого упомянутого вами экземпляра мы могли бы ранжировать x_i по w_i и определить, равен ли x_i в этом экземпляре 0 или 1. Тогда для объяснения следует использовать верхнюю 10 (возможно, 50) x_i.

...