-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Labels
kind/bugSomething isn't workingSomething isn't working
Milestone
Description
Hi,
I've installed trustyai-explainability-python via pip install,
I have a simple script:
import numpy as np
weights = [ 0.48813504 , 2.15189366 , 1.02763376 , 0.44883183 , -0.76345201 ]
print(weights)
def linear_model(x):
return np.dot(x, weights)
model_input = [[0.29208386, 0.25937293, 0.13194835, 0.43230385, 0.24575673]]
print(model_input)
model_output = linear_model(model_input)
print(model_output)
from trustyai.model import Model
model = Model(fn=linear_model)
model_output = model(model_input)
print(model_output)
from trustyai.explainers import LimeExplainer
lime_explainer = LimeExplainer(samples=1000, normalise_weights=False)
lime_explanation = lime_explainer.explain(
inputs = model_input[0],
outputs = model_output,
model = model)
print(lime_explanation.as_dataframe())which fails with:
---------------------------------------------------------------------------
java.lang.UnsupportedOperationException Traceback (most recent call last)
File ForkJoinWorkerThread.java:188, in java.util.concurrent.ForkJoinWorkerThread.run()
java.lang.UnsupportedOperationException: java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.<init>(long, int) not available
The above exception was the direct cause of the following exception:
Exception Traceback (most recent call last)
File CompletableFuture.java:2073, in java.util.concurrent.CompletableFuture.get()
Exception: Java Exception
The above exception was the direct cause of the following exception:
java.util.concurrent.ExecutionException Traceback (most recent call last)
Cell In[2], [line 4](vscode-notebook-cell:?execution_count=2&line=4)
[1](vscode-notebook-cell:?execution_count=2&line=1) from trustyai.explainers import LimeExplainer
[3](vscode-notebook-cell:?execution_count=2&line=3) lime_explainer = LimeExplainer(samples=1000, normalise_weights=False)
----> [4](vscode-notebook-cell:?execution_count=2&line=4) lime_explanation = lime_explainer.explain(
[5](vscode-notebook-cell:?execution_count=2&line=5) inputs = model_input[0],
[6](vscode-notebook-cell:?execution_count=2&line=6) outputs = model_output,
[7](vscode-notebook-cell:?execution_count=2&line=7) model = model)
[8](vscode-notebook-cell:?execution_count=2&line=8) print(lime_explanation.as_dataframe())
File [~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/trustyai/explainers/lime.py:351](https://file+.vscode-resource.vscode-cdn.net/Users/mmortari/git/trustyai-20240113-tutorial/~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/trustyai/explainers/lime.py:351), in LimeExplainer.explain(self, inputs, outputs, model)
[348](https://file+.vscode-resource.vscode-cdn.net/Users/mmortari/git/trustyai-20240113-tutorial/~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/trustyai/explainers/lime.py:348) _prediction = simple_prediction(inputs, outputs, feature_names, output_names)
[350](https://file+.vscode-resource.vscode-cdn.net/Users/mmortari/git/trustyai-20240113-tutorial/~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/trustyai/explainers/lime.py:350) with Model.ArrowTransmission(model, inputs):
--> [351](https://file+.vscode-resource.vscode-cdn.net/Users/mmortari/git/trustyai-20240113-tutorial/~/.pyenv/versions/3.11.6/lib/python3.11/site-packages/trustyai/explainers/lime.py:351) return LimeResults(self._explainer.explainAsync(_prediction, model).get())
java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.<init>(long, int) not available
reproducer:
tai.ipynb.zip
java --version
openjdk 21.0.1 2023-10-17
OpenJDK Runtime Environment Homebrew (build 21.0.1)
OpenJDK 64-Bit Server VM Homebrew (build 21.0.1, mixed mode, sharing)
pip show trustyai
Name: trustyai
Version: 0.3.0
Summary: Python bindings to the TrustyAI explainability library.
Home-page:
Author:
Author-email: Rui Vieira <[email protected]>
License: Apache License Version 2.0
Location: /Users/mmortari/.pyenv/versions/3.11.6/lib/python3.11/site-packages
Requires: Jpype1, jupyter-bokeh, matplotlib, numpy, pandas, pyarrow
Required-by:
Metadata
Metadata
Assignees
Labels
kind/bugSomething isn't workingSomething isn't working
Type
Projects
Status
Todo
