Объясните особенности моего объекта keras с пакетом lime R

После получения accuracy метрика из моего keras бинарная модель классификации, мне нужно знать, что модель сделала прогнозы. Итак, я заинтересован в переменной важности. я использую lime пакет.

library(lime)

explainer <- lime (
  x  = x_train, 
  model  = model_keras, 
  bin_continuous  = FALSE)

explanation <- explain (
    x_test[1:20,], # Show first 20 samples
    explainer    = explainer, 
    n_labels     = 1, 
    n_features   = 5) 

Explain Функция дает мне следующую ошибку в py_get_attr_impl function: AttributeError: объект 'function' не имеет атрибута 'func_name'.

Я собрал keras модель с R, но эта проблема, кажется, что ошибка происходит от версии Python. Проблемы с Reticulate пакет?

1 ответ

Он работает с питоном 2.7, но генерирует ошибку с питоном 3+.

Собственно атрибут функции func_name был переименован в Python 3+ в __name__,

Пакет lime (models.R) имеет строку:

if (keras::get_layer(x, index = -1)$activation$func_name == 'linear')

Я удалил $func_name и код работал для меня. Я полагаю, что это не лучший обходной путь, однако возможное решение, которое приходит на ум:

if (keras::get_layer(x, index = -1)$activation$__name__ == 'linear')

не работал с R.

Другие вопросы по тегам