में एच 2o मॉडलिंग पर LIME का कार्यान्वयन मैं आर में एच 2o (गहरी शिक्षा) का उपयोग करके बनाए गए मॉडल पर LIME को कार्यान्वित करना चाहता हूं। मॉडल में डेटा का उपयोग करने के लिए, मैंने h2oFrames बनाए और इसे उपयोग करने से पहले इसे डेटाफ्रेम में परिवर्तित कर दिया LIME (चूना फ़ंक्शन, क्योंकि LIME का समझा कार्य H2oFrame को पहचान नहीं सकता है)। यहां मैं फ़ंक्शनआर
अगला चरण स्पष्टीकरण उत्पन्न करने के लिए परीक्षण डेटा पर व्याख्या कार्य का उपयोग करने में सक्षम हूं। यहां आर डेटाफ्रेम के साथ-साथ h2oFrame का उपयोग करने के लिए एक त्रुटि फेंकता है।
यह जब एक dataframe उपयोग करते हुए उत्पन्न त्रुटि है:
Error in UseMethod("permute_cases") : no applicable method for 'permute_cases' applied to an object of class "H2OFrame"
if(!require(pacman)) install.packages("pacman")
pacman::p_load(h2o, lime, data.table, e1071)
data(iris)
h2o.init(nthreads = -1)
h2o.no_progress()
# Split up the data set
iris <- as.h2o(iris)
split <- h2o.splitFrame(iris, c(0.6, 0.2), seed = 1234)
iris_train <- h2o.assign(split[[1]], "train") # 60%
iris_valid <- h2o.assign(split[[2]], "valid") # 20%
iris_test <- h2o.assign(split[[3]], "test") # 20%
output <- 'Species'
input <- setdiff(names(iris),output)
model_dl_1 <- h2o.deeplearning(
model_id = "dl_1",
training_frame = iris_train,
validation_frame = iris_valid,
x = input,
y = output,
hidden = c(32, 32, 32),
epochs = 10, # hopefully converges earlier...
score_validation_samples = 10000,
stopping_rounds = 5,
stopping_tolerance = 0.01
)
pred1 <- h2o.predict(model_dl_1, iris_test)
list(dimension = dim(pred1), pred1$predict)
#convert to df from h2ofdataframe
train_org<-as.data.frame(iris_train)
#converting train h2oframe to dataframe
sapply(train_org,class) #checking the class of train_org
test_df <- as.data.frame(iris_test)
#converting test data h2oFrame to dataframe
test_sample <- test_df[1:1,]
#works
#lime is used to get explain on the train data
explain <- lime(train_org, model_dl_1, bin_continuous = FALSE, n_bins =
5, n_permutations = 1000)
# Explain new observation
explanation <- explain(test_sample, n_labels = 1, n_features = 1)
h2o.shutdown(prompt=F)
कर सकते हैं:
Error in chk.H2OFrame(x) : must be an H2OFrame
यह जब एक h2oframe उपयोग करते हुए उत्पन्न त्रुटि है कोई भी याचिका से मुझे एक समाधान या उचित dataFrame
कृपया पूरी तरह से पुन: उत्पादित कोड उदाहरण के साथ-साथ चूने और एच 2o आर पैकेज के बारे में संस्करण जानकारी प्रदान करें। –
आपको अपनी पोस्ट में कोड को अपडेट करने की आवश्यकता है ताकि यह पुन: उत्पन्न हो - यह कोई डेटासेट हो सकता है (आईरिस ठीक होगा)। कृपया यहां एमसीवी के बारे में स्टैक ओवरफ़्लो दिशानिर्देश देखें: https://stackoverflow.com/help/mcve अगर मैं कोड को डीबग करने में आपकी सहायता के लिए अपना कोड कॉपी/पेस्ट नहीं कर सकता, तो यह एक एमसीवीई नहीं है। –
@ErinLeDell, प्रतिक्रिया के लिए धन्यवाद, मैं परिवर्तन कर दूंगा। – gattaca