ContextCite Einblicke in die Zuordnung von Modellantworten zum Ausgangskontext

Kategorien:
No items found.
Freigegeben:
September 5, 2024
Artikel über ContextCite: Attribution von Modellgenerierungen zum Kontext

ContextCite: Ein Überblick über die Attribution von Modellgenerierungen zum Kontext

Einführung

Wie nutzen Sprachmodelle die als Kontext bereitgestellten Informationen, um eine Antwort zu generieren? Können wir feststellen, ob eine bestimmte generierte Aussage tatsächlich im Kontext verankert ist, eine Fehlinterpretation darstellt oder frei erfunden ist? Um diese Fragen zu beantworten, wurde das Problem der Kontextattribution eingeführt: Das Ziel ist es, die Teile des Kontexts zu identifizieren, die ein Modell dazu gebracht haben, eine bestimmte Aussage zu generieren. In diesem Artikel stellen wir ContextCite vor, eine einfache und skalierbare Methode zur Kontextattribution, die auf jedes vorhandene Sprachmodell angewendet werden kann.

Was ist Kontextattribution?

Intuitiv besteht das Ziel der Kontextattribution darin, einen Teil der generierten Antwort auf ein Stück des Kontexts zurückzuführen. Angenommen, wir haben einen Kontext und eine Anfrage. Der Kontext könnte beispielsweise eine Sammlung von Artikeln über die letzten Olympischen Spiele sein, und die Anfrage könnte lauten: „Wer hat die meisten Medaillen gewonnen?“ Um die Kontextattribution durchzuführen, partitionieren wir den Kontext in einzelne Quellen. Diese Quellen können Artikel, Absätze, Sätze oder sogar einzelne Wörter sein. In diesem Artikel betrachten wir die Quellen als Sätze.

ContextCite: Methode zur Kontextattribution

ContextCite umfasst mehrere Schritte zur Durchführung der Kontextattribution:

  1. Generieren einer Antwort für den gegebenen Kontext und die Anfrage.
  2. Zufälliges Ablatieren der Quellen im Kontext (d. h. eine Fraktion der Quellen ausschließen und einen modifizierten Kontext ohne sie konstruieren).
  3. Berechnung der Wahrscheinlichkeit, die ursprüngliche Antwort zu generieren. Dies wird mehrmals wiederholt, um einen „Trainingsdatensatz“ von Ablationsmasken und den daraus resultierenden Wahrscheinlichkeiten zu erstellen.
  4. Anpassung eines Surrogatmodells zur Schätzung der Wahrscheinlichkeit, die ursprüngliche Antwort als Funktion der Ablationsmaske zu generieren.

Anwendungsfälle von ContextCite

ContextCite bietet mehrere nützliche Anwendungen:

  • Verifizierung generierter Aussagen
  • Verbesserung der Antwortqualität durch das Pruning des Kontexts
  • Erkennung von Vergiftungsangriffen

Bewertung der Qualität von Attributionen

Wie können wir die Qualität einer Attributionsmethode bewerten? Eine Möglichkeit besteht darin, zu beobachten, was passiert, wenn wir die höchsten bewerteten Quellen entfernen. Wenn das Entfernen dieser Quellen die Wahrscheinlichkeit der ursprünglichen Antwort signifikant verringert, bedeutet dies, dass diese Quellen tatsächlich wichtig sind. Diese Methode dient als Grundlage für die Bewertung der Genauigkeit von ContextCite.

Sparsity zur Rettung

Eine natürliche Frage ist: Wie viele zufällige Kontextablations müssen wir berechnen, um ein genaues Surrogatmodell zu erhalten? ContextCite kann ein genaues Surrogatmodell mit einer signifikant geringeren Anzahl von Ablationen durch die Nutzung der zugrunde liegenden Sparsity lernen. In vielen Fällen kann eine vom Modell generierte Aussage gut durch nur eine Handvoll Quellen erklärt werden. Dies bedeutet, dass die meisten Quellen nur geringen Einfluss auf eine bestimmte Aussage haben sollten. Daher können wir Lasso verwenden, um ein sparsames (aber dennoch genaues) lineares Surrogatmodell mit einer sehr geringen Anzahl von Ablationen zu lernen.

Schlussfolgerung

ContextCite bietet eine innovative Methode zur Attribution von Modellgenerierungen zum Kontext, die eine Vielzahl von Anwendungen ermöglicht. Durch die Verifizierung von Aussagen, Verbesserung der Antwortqualität und Erkennung von Vergiftungsangriffen trägt ContextCite dazu bei, Sprachmodelle zuverlässiger und vertrauenswürdiger zu machen.

Bibliographie

- https://gradientscience.org/contextcite/ - https://openreview.net/pdf/6fdf74cc0c74be308d3a5973b30fab4392909e89.pdf - https://github.com/MadryLab/context-cite - https://openreview.net/forum?id=PbIe0MNDQx&referrer=%5Bthe%20profile%20of%20Kristian%20Georgiev%5D(%2Fprofile%3Fid%3D~Kristian_Georgiev1) - https://arxiv.org/html/2405.17980v1 - https://arxiv.org/html/2404.01019v1 - https://direct.mit.edu/coli/article/49/4/777/116438/Measuring-Attribution-in-Natural-Language - https://assets.amazon.science/ed/c3/7232c163413b94ed203eb1ea46a0/towards-improved-multi-source-attribution-for-long-form-answer-generation.pdf - https://python.langchain.com/v0.2/docs/tutorials/rag/ - https://sigir-2024.github.io/program_papers.html
Was bedeutet das?