Our aim is to extract text gradients from the transformers part of the HuggingFace Framework.
from egggs_c import get_grad, word_importance_ranking
The user is required to input the following parameters:-
model
: HuggingFace Modeltokenizer
: HuggingFace Tokenizertext_input
: Sentence that you wish to extract gradients overlabels
: Labels over which loss is computed (default = None
)
model = transformers.AutoModelForSequenceClassification.from_pretrained("lvwerra/distilbert-imdb")
tokenizer = transformers.AutoTokenizer.from_pretrained("lvwerra/distilbert-imdb")
output = get_grad(model, tokenizer, ["One of the other reviewers has mentioned that after watching just 1 Oz episode you'll be hook"])
Inputs that can be fed:
- Single sentence or multiple sentences
- Self predicted class labels or pre-defined input class labels
importance_scores, reranked_words = word_importance_ranking(output, tokenizer)
python main.py