title = "
In this step, the goal is to identify which tokens in the generated text were influenced by the preceding context.
First, a context-aware generation is produced using the model's inputs augmented with available context. Then, the same generation is force-decoded using the contextless inputs. During both processes, a contrastive metric (KL-divergence is used as default for the Context sensitivity metric
parameter) are collected for every generated token. Intuitively, higher metric scores indicate that the current generation step was more influenced by the presence of context.
The generated tokens are ranked according to their metric scores, and the most salient tokens are selected for the next step (This demo provides a Context sensitivity threshold
parameter to select tokens above N
standard deviations from the in-example metric average, and Context sensitivity top-k
to pick the K most salient tokens.)
In the example shown in the figure, elle
is selected as the only context-sensitive token by the procedure.
Once context-sensitive tokens are identified, the next step is to link every one of these tokens to specific contextual cues that justified its prediction.
This is achieved by means of contrastive feature attribution (Yin and Neubig, 2022). More specifically, for a given context-sensitive token, a contrastive alternative to it is generated in absence of input context, and a function of the probabilities of the pair is used to identify salient parts of the context (By default, in this demo we use saliency
, i.e. raw gradients, for the Attribution method
and contrast_prob_diff
, i.e. the probability difference between the two options, for the Attributed function
).
Gradients are collected and aggregated to obtain a single score per context token, which is then used to rank the tokens and select the most influential ones (This demo provides a Attribution threshold
parameter to select tokens above N
standard deviations from the in-example metric average, and Attribution top-k
to pick the K most salient tokens.)
In the example shown in the figure, the attribution process links elle
to dishes
and assiettes
in the source and target contexts, respectively. This makes sense intuitively, as they
in the original input is gender-neutral in English, and the presence of its gendered coreferent disambiguates the choice for the French pronoun in the translation.
This demo provides a convenient UI for the Inseq implementation of PECoRe (the inseq attribute-context
CLI command).
In the demo tab, fill in the input and context fields with the text you want to analyze, and click the Run PECoRe
button to produce an output where the tokens selected by PECoRe in the model generation and context are highlighted. For more details on the parameters and their meaning, check the Parameters
tab.
Consider the following example, showing inputs and outputs of the CORA Multilingual QA model provided as default in the interface, using default settings.
The PECoRe CTI step identified two context-sensitive tokens in the generation (287
and ,
), while the CCI step associated each of those with the most influential tokens in the context. It can be observed that in both cases similar tokens from the passage stating the number of inhabitants are identified as salient (235
and ,
for the generated 287
, while had
is also found salient for the generated ,
).
📂 Download output
button allows you to download the full JSON output produced by the Inseq CLI. It includes, among other things, the full set of CTI and CCI scores produced by PECoRe, tokenized versions of the input context and generated output and the full arguments used for the CLI call.🔍 Download HTML
button allows you to download an HTML view of the output similar to the one visualized in the demo.
Context sensitivity threshold
parameter to ensure only very sensitive tokens are picked up in longer replies.Attribution threshold
parameter to be more lenient in the selection for shorter contexts.Generation context
parameter. This is a requirement for the demo because the splitting between output context and current cannot be reliably performed in an automatic way. However, the inseq attribute-context
CLI command actually support various strategies, including prompting users for a split and/or trying an automatic source-target alignment. This demo is useful for testing out various models and methods for PECoRe attribution, but the inseq attribute-context
CLI command is the way to go if you want to run experiments on several examples, or if you want to exploit the full customizability of the Inseq API.
The utility we provide in this section allows you to generate Python and Shell code calling the Inseq CLI with the parameters you set in the interface. This is useful to understand how to use the Inseq API and quickly get up to speed with running PECoRe on your own models and data.
Once you are satisfied with the parameters you set (including context/query strings in the 🐑 Demo
tab), just press the button and get your code snippets ready for usage! 🤗
To refer to the PECoRe framework for context usage detection, cite:
@inproceedings{sarti-etal-2023-quantifying,
title = "Quantifying the Plausibility of Context Reliance in Neural Machine Translation",
author = "Sarti, Gabriele and
Chrupa{\l}a, Grzegorz and
Nissim, Malvina and
Bisazza, Arianna",
booktitle = "The Twelfth International Conference on Learning Representations (ICLR 2024)",
month = may,
year = "2024",
address = "Vienna, Austria",
publisher = "OpenReview",
url = "https://openreview.net/forum?id=XTHfNGI3zT"
}
inseq attribute-context
, including this demo), please also cite:
@inproceedings{sarti-etal-2023-inseq,
title = "Inseq: An Interpretability Toolkit for Sequence Generation Models",
author = "Sarti, Gabriele and
Feldhus, Nils and
Sickert, Ludwig and
van der Wal, Oskar and
Nissim, Malvina and
Bisazza, Arianna",
booktitle = "Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics (Volume 3: System Demonstrations)",
month = jul,
year = "2023",
address = "Toronto, Canada",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2023.acl-demo.40",
pages = "421--435",
}