knitr::opts_chunk$set(echo = TRUE, message = FALSE)
limeaid is an R package for assessing explanations created using the R package lime. The current implementation was developed to be used with classification models with a binary response and continuous features.
# Installation instructions devtools::install_github("goodekat/limeaid")
library(cowplot) library(lime) library(limeaid) library(randomForest) # Iris training and testing iris_test <- iris[1:5, 1:4] iris_train <- iris[-(1:5), 1:4] iris_lab <- iris[[5]][-(1:5)] # Fit a random forest model to the iris training data set.seed(20200334) rf <- randomForest(Species ~ ., data = cbind(iris_train, Species = iris_lab)) # Run apply_lime on the iris data lime_applied <- apply_lime(train = iris_train, test = iris_test, model = rf, label = "virginica", n_features = 2, sim_method = c('quantile_bins', 'equal_bins', 'kernel_density'), nbins = 2:4, gower_pow = c(1, 5), return_perms = TRUE, seed = 20200334) # Extract the explanations from the apply_lime output explanations <- lime_applied$explain
# Create a heatmap of the features chosen plot_feature_heatmap(explanations) # Create another heatmap but order the features using a seriation method plot_feature_heatmap(explanations, order_method = "PCA")
# Create a plot of metrics for comparing the lime implementations plot_metrics(explanations, add_lines = TRUE, line_alpha = 0.5)
# Plots of several explanations of interest (2-4 quantile bins) plot_grid(plot_explain_scatter(explanations[1:2,]), plot_explain_scatter(explanations[11:12,]), plot_explain_scatter(explanations[21:22,]), nrow = 1) # Plots of several explanations of interest (2-4 equal bins) plot_grid(plot_explain_scatter(explanations[31:32,]), plot_explain_scatter(explanations[41:42,]), plot_explain_scatter(explanations[51:52,]), nrow = 1)
# Plots of an explanation of interest (kernel density) plot_explain_scatter(explanations[121:122,])
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.