Я использую текстовую модель для анализа настроений из HuggingFaceface, и следующий код из Captum для некоторой атрибуции функций. < /p>
Мой код выглядит следующим образом: < /p>
from captum.attr import visualization
from IPython.display import display, HTML
...
tokenizer = AutoTokenizer.from_pretrained(model, add_prefix_space=True)
model = AutoModelForTokenClassification.from_pretrained(model)
counter = 0
results = []
for item in tokenized_datasetTest: #iterate through my dataset test samples
input_ids = torch.tensor([item['input_ids']]).to(device)
attention_mask = torch.tensor([item['attention_mask']]).to(device)
baseline_id = tokenizer.unk_token_id # Set the baseline to the toke
baseline_ids = torch.tensor([baseline_id] * sen_len, device=DEVICE)
label = labelsTest[counter]
ablation_attributor = AblationAttributor(model)
ablation_attributions = ablation_attributor.attribute(input_ids, baseline_ids, 3)
model.enable_input_require_grads()
ig_attributor = IGAttributor(model)
ig_attributions = ig_attributor.attribute(input_ids, baseline_ids, 0)
words = []
for tkn in input_ids[0]:
words.append(tokenizer.decode(tkn))
visualize_attribution(words, ig_attributions)
counter = counter + 1
< /code>
и функция Visualize_attribution выглядит следующим образом: < /p>
def visualize_attribution(sen: List[str], attributions: torch.Tensor, normalize: bool = True, human_readable = True):
attributions = attributions.squeeze()
if normalize:
attributions /= torch.max(attributions.abs())
if human_readable:
sen = detokenize(sen, single_string=False)
raw_html = visualization.format_word_importances(
sen, attributions
)
html = HTML(raw_html)
display(HTML)
< /code>
Я хочу сохранить результаты визуализации как изображение вместо отображения их в HTML -файле. Как этот HTML -файл можно хранить в виде изображения?
Подробнее здесь: https://stackoverflow.com/questions/796 ... n-hard-dis
Хранение результатов интегрированных атрибутов градиента с использованием каптума на жестком диске ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение