Explicabilitate pentru text și imagini cu LIME

AI Explicabil în Python

Fouad Trad

Machine Learning Engineer

Modele bazate pe text

  • Procesează și interpretează limbajul scris
  • Exemplu: Analiza sentimentelor
  • Modele de tip cutie neagră
  • LimeTextExplainer explică astfel de modele
    • Identifică impactul fiecărui cuvânt asupra predicției

Model de analiză a sentimentelor care primește o recenzie și prezice sentimentul corespunzător („Pozitiv" sau „Negativ").

AI Explicabil în Python

Explainer de text LIME

from lime.lime_text import LimeTextExplainer

text_instance = "This product has great features but a poor design."
def model_predict(instance): ... return class_probabilities
explainer = LimeTextExplainer()
exp = explainer.explain_instance(
text_instance,
model_predict
)
exp.as_pyplot_figure()

output_sentiment.png

AI Explicabil în Python

Modele bazate pe imagini

  • Foarte complexe
  • Interpretează date vizuale
  • Exemplu: Clasificarea alimentelor
  • LimeImageExplainer explică astfel de modele
    • Identifică zonele din imagine care influențează predicțiile

Model de clasificare a alimentelor care primește imaginea unei pizza și prezice tipul de aliment.

AI Explicabil în Python

Explainer de imagini LIME

from lime.lime_image import LimeImageExplainer

explainer = LimeImageExplainer()
explanation = explainer.explain_instance(
image,
model_predict,
num_samples=50
)
temp, _ = explanation.get_image_and_mask(
explanation.top_labels[0],
hide_rest=True
)

Imagine cu înghețată.

AI Explicabil în Python

Explainer de imagini LIME

from lime.lime_image import LimeImageExplainer

explainer = LimeImageExplainer()
explanation = explainer.explain_instance(
  image, 
  model_predict,  
  num_samples=50
)

temp, _ = explanation.get_image_and_mask(
  explanation.top_labels[0], 
  hide_rest=True
)

plt.imshow(temp)

Imagine cu înghețată în care părțile mai puțin relevante sunt mascate cu negru.

AI Explicabil în Python

Să exersăm!

AI Explicabil în Python

Preparing Video For Download...