Spaces:
Runtime error
Runtime error
File size: 991 Bytes
2facc36 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import os, spacy
from transformers import AutoTokenizer, AutoModelForSequenceClassification, TextClassificationPipeline
import torch.nn.functional as F
import torch
from lime.lime_text import LimeTextExplainer
# Load spaCy once
try:
nlp = spacy.load("en_core_web_lg")
except OSError:
os.system("python -m spacy download en_core_web_lg")
nlp = spacy.load("en_core_web_lg")
# Load the transformer model once
MODEL_NAME = "distilbert-base-uncased-finetuned-sst-2-english"
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
model = AutoModelForSequenceClassification.from_pretrained(MODEL_NAME)
pipe = TextClassificationPipeline(model=model, tokenizer=tokenizer, top_k=None)
# LIME explainer
explainer = LimeTextExplainer(class_names=['negative', 'positive'])
# Predictor function used by LIME
def predictor(texts):
outputs = model(**tokenizer(texts, return_tensors="pt", padding=True))
probas = F.softmax(outputs.logits, dim=1).detach().numpy()
return probas
|