Пакет Lime не может получить прогнозы для CaretStack - PullRequest
0 голосов
/ 05 марта 2019

Я построил модель ансамбля Caret, соединив модели вместе.

Модель успешно работала, и я получил обнадеживающие результаты.

Проблема возникла, когда я попытался использовать Lime для интерпретации черного ящикапрогнозы.Я получил сообщение об ошибке «Класс модели должен иметь метод model_type»

Единственный раз, когда я сталкивался с такой ошибкой, был при использовании Lime в H20.Впоследствии ребята из Lime выпустили обновление, поддерживающее H20 в Lime.

Кто-нибудь знает, была ли проделана какая-либо работа по включению CaretStack для использования с Lime?Или знаете, как обойти эту проблему.

1 Ответ

1 голос
/ 07 марта 2019

Согласно документации Lime, это поддерживаемые модели

Из коробки известь поддерживает следующие объекты модели:

  1. поезд из каретки

  2. WrappedModel от mlr

  3. xgb. Бустер от xgboost

  4. H2OModel от h2o

  5. keras.engine.training.Model от keras

  6. lda от MASS (используется для примеров с низкой зависимостью)

Если ваша модель не относится к вышеперечисленному, вам нужно реализовать поддержку самостоятельно.Если в модели есть интерфейс предиката, имитирующий интерфейс объекта Foret.train () из каретки, вам будет достаточно обернуть вашу модель в as_classifier () / as_regressor (), чтобы получить поддержку.

В противном случае вам потребуется реализовать метод предиката_моделя () и, возможно, метод model_type () (если последний опущен, модель должна быть заключена в as_classifier () / as_regressor () при каждом ее использовании)in lime ()).

Решение вашего вопроса:

В вашем случае CaretStack имеет интерфейс предикторов, имитирующий интерфейс Forex.train (), поэтому оберните вашмодель в as_classifier () или as_regressor () должна быть достаточной

...