$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Umfassende theoretische Grundlagen
QAS-Komponente: Das QAS-Framework besteht aus drei Segmenten, wie in Abbildung 3 dargestellt: i) Frageverarbeitungsmodul (QPM), ii) Dokumentenverarbeitungsmodul (DPM) und iii) Antwortextraktions- und Formulierungsmodul (AEFM). Das System erhält Fragen, die in zwei Hauptkategorien fallen: Faktoid und Nicht-Faktoid. Faktoide Fragen verwenden in der Regel Fragewörter wie was, wo, wann oder wer, während nicht-faktoide Fragen Wörter wie "wie" und "warum" verwenden.
DPM: Aus der bereitgestellten Liste kann der Benutzer eine bestimmte Passage auswählen. Als Nächstes wird jedes Token in der Passage mit einem Part-of-Speech-Tagger (POS) markiert. Um Verben zu extrahieren, identifizieren Sie alle Token, die als Verben gekennzeichnet sind. Kombinieren Sie diese Verben mit einer Liste unkonventioneller Verben und wenden Sie Logik auf regelmäßige Verben an. Erstellen Sie eine Datenstruktur (Array), die die extrahierten Verben, ihre Zeitformen und ihre -ing-Formen enthält.
QPM: Das System erhält Input in Form einer Frage vom Benutzer. Der Text wird mithilfe der StringTokenizer-Klasse tokenisiert, und die resultierenden Token werden in einer separaten Datenstruktur gespeichert. Diese Datenstruktur wird dann zur weiteren Verwendung innerhalb des Programms zurückgegeben.
AEFM: Der erste Schritt besteht darin, das Verb in der gegebenen Frage zu identifizieren. Das Verb, das kürzlich identifiziert wurde, wird nun mit den Token abgeglichen, die während der Dokumentverarbeitungsphase generiert wurden. Der gewählte Fall für eine bestimmte Art von Sachfrage (z. B. was oder wann) wird verwendet, um die Antwort präziser zu extrahieren und zu konstruieren.
Vor der Wahl der Art der Befragung wird der Benutzer zunächst aufgefordert, die Passage seiner Wahl auszuwählen. Das QPM ist für die Bearbeitung der Frage des Nutzers und die Weiterleitung an die AEFM verantwortlich. Das AEFM verwendet die Extraktionen, die aus dem DPM abgerufen wurden, und die verarbeiteten Dokumente, die das Tagged-Format des ursprünglichen Eingabedokuments enthalten. Das Modul übergibt die erforderlichen Algorithmen an das Formulierungsmodul, um die gewünschte Antwort zu erhalten.

Abbildung 3: Komponenten der Qualitätssicherung. Die Abbildung veranschaulicht den vierstufigen Prozess eines QA-Systems: Frage, Frageverarbeitung, Antwortverarbeitung und Antwort. In der Fragebearbeitung klassifiziert das System die Frage. In der Antwortverarbeitung werden Dokumente und Passagen gesucht und überprüft, um die Antwort zu erstellen. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
BERT-Modell: Um die Assoziationen zwischen Wörtern in einem Text zu ermitteln, verwendet die BERT-Methode einen Transformator. Es gibt zwei Mechanismen in einem Transformator - einen Encoder und einen Decoder28, aber nur der Encoder wird für BERT benötigt. BERT verfolgt einen wechselseitigen Ansatz und scannt den Eingabetext systematisch, um sich selbst die Bedeutung von Wörtern in ihrem Kontext beizubringen. Der Encoder verwendet als Eingabe eine Reihe von Token, die vektorisiert wurden. Die Vektoren werden dann in das neuronale Netz eingespeist, das eine Reihe von Vektoren erzeugt, die die Eingabe widerspiegeln. Der Ausgabevektor eines Wortes ändert sich je nach dem Satz, in dem es vorkommt. Der Vektor eines Wortes kann je nach Kontext, in dem es erscheint, variieren. Zum Beispiel hat "like" in "Er spielt gerne Cricket" einen anderen Vektor als "like" in "Sein Gesicht wurde rot wie eine Tomate". Der Ansatz beginnt mit einer Phase der Textverarbeitung, bevor es in die Phase der Modellerstellung übergeht. Die Schritte, die BERT zum Verarbeiten von Text ausführt, werden im nächsten Abschnitt28 erläutert.
Textverarbeitung: Das BERT-Modell stellt den Eingabetext in Übereinstimmung mit einem vorgeschriebenen Satz von Prinzipien dar. Darüber hinaus trägt dieser Faktor zur verbesserten Leistung des Modells bei. Die Eingabeeinbettung in BERT besteht aus einem Amalgam aus drei verschiedenen Arten von Einbettungen28.
Positionseinbettungen (PEs): Um die auftragsbezogenen Informationen in den Einbettungen zu lernen, werden PEs verwendet. PEs werden verwendet, um Informationen über die Ordnung wiederherzustellen, die in Transformatoren verloren gegangen sind. BERT entwickelt spezifische PEs speziell für jeden Punkt in der Eingabesequenz. BERT besitzt die Fähigkeit, die Positionsinformationen von Wörtern innerhalb eines Satzes durch die Verwendung von PEs zu vermitteln. Auf diese Weise kann BERT die Reihenfolge oder Reihenfolge von Wörtern effektiv erfassen und darstellen.
Satzeinbettungen (SEs): Um das Modell bei der Unterscheidung zwischen dem ersten und dem zweiten Satz zu unterstützen, lernt BERT zusätzlich eine Einbettung, die für jeden von ihnen einzigartig ist. Es ist auch in der Lage, gepaarte Sätze als Eingaben für Aktivitäten wie QA zu akzeptieren.
Token-Embeddings (TEs): TEs werden für jedes Token im WordPiece-Token-Vokabular unterrichtet. Das WordPiece-Token-Vokabular besteht aus Unterworteinheiten, die von Wörtern abgeleitet sind, die im Korpus gefunden wurden. Zur Veranschaulichung wird diese Vokabelsammlung alle denkbaren Unterwörter des Begriffs Frage umfassen, einschließlich Questio, Questi und so weiter.
Die Eingabedarstellung eines Tokens wird erstellt, indem seine Einbettungen auf Segment- und Positionsebene addiert werden. Aus diesem Grund handelt es sich um einen umfangreichen Einbettungsansatz, der dem Modell eine Fülle von Informationen zur Verfügung stellt. Abbildung 49 zeigt die Einbettungen des BERT-Modells.

Abbildung 4: BERT-Einbettungen. Die Abbildung zeigt, wie Eingabeeinbettungen für ein Transformatormodell erstellt werden. Es beginnt mit einer Eingabesequenz: [CLS] der [MASK] Himmel ist bewölkt [SEP], es wird regnen [SEP]. Jedes Token in der Sequenz erhält eine eigene Einbettung, z. B. Ethe oder E[MASK]. Dann werden für jeden Satz Satzeinbettungen hinzugefügt, z. B. EA für den ersten und EB für den zweiten. Positionseinbettungen, die mit E0 bisE 9 beschriftet sind, sind ebenfalls enthalten, um die Position jedes Tokens anzuzeigen. All dies wird kombiniert, um die endgültigen Eingabeeinbettungen zu bilden. Diese Zahl wurde von9 geändert. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
QAS-Entwurf mit BERT: Untersuchen Sie diese Frage zur Veranschaulichung in Verbindung mit einem Absatz aus einem Wikipedia-Eintrag über die Football League28.
Frage: Wo wurde die Football League gegründet?
Passage: 1888 wurde in England die Football League gegründet und war der erste von vielen professionellen Fußballwettbewerben. Im Laufe des 20. Jahrhunderts entwickelten sich einige der verschiedenen Arten des Fußballs zu einigen der beliebtesten Mannschaftssportarten der Welt.
Antwort: England
Das BERT-Modell nutzt die Token-Extraktion sowohl aus der Frage als auch aus dem Kontext und kombiniert sie anschließend zu einer einheitlichen Eingabe. Wie bereits erwähnt, beginnt der Prozess mit der Verwendung eines [CLS]-Tokens, der als Indikator für den Beginn eines Satzes dient. Zusätzlich wird ein [SEP]-Trennzeichen verwendet, um die Frage und die Passage eindeutig zu trennen. Zusätzlich zum [SEP]-Token enthält BERT SEs, um zwischen der Frage und der Passage28 , die die Antwort enthält, zu unterscheiden. BERT verwendet zwei SEs, eines für die Frage und eines für die Passage, um eine klare Unterscheidung zwischen ihnen zu treffen. Die Einbettungen werden anschließend mit einer One-Hot-Darstellung28 von Token kombiniert, um zwischen der Frage und der Passage zu unterscheiden. Dieser Prozess ist in Abbildung 5 dargestellt.

Abbildung 5: Darstellung der BERT-Eingabe. Die Abbildung zeigt, wie Eingabeeinbettungen für ein BERT-basiertes QAS generiert werden. Es beginnt mit dem Token [CLS], dann die Frage Wie viele? [SEP], und die Passage BERT groß ist, jeweils mit ihren Satzeinbettungen (A für die Frage, B für die Passage). Token-, Satz- und Positionseinbettungen werden kombiniert, um die endgültige Eingabe vorzunehmen. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
Anschließend wird die kombinierte eingebettete Darstellung28 der Frage und des Kontexts als Eingabe in das BERT-Modell verwendet. Die letzte verborgene Schicht von BERT wird so modifiziert, dass SoftMax zur Generierung von Wahrscheinlichkeitsverteilungen verwendet wird. Diese Verteilungen bestimmen die Start- und Endindizes einer Teilzeichenfolge innerhalb des Eingabetextsatzes, der eine Antwort darstellt, wie in Abbildung 6 für eine visuelle Darstellung dargestellt.

Abbildung 6: Workflow für die BERT-Verarbeitung für die Qualitätssicherung. Die Abbildung zeigt, wie das BERT-Modell für die Qualitätssicherung funktioniert. Es stellt eine Eingabesequenz dar, die eine Frage enthält, die durch ein Klassifizierungstoken [CLS] am Anfang und ein [SEP]-Trennzeichen am Ende gekennzeichnet ist, gefolgt von einem Kontext, der durch einen anderen [SEP] getrennt ist. Die Token in dieser Sequenz werden in Einbettungen umgewandelt. Das Modell sagt dann die Start- und Endposition der Antwort innerhalb der Passage voraus. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
Vektor-Datenbank (VD): Ein VD17,18 ist ein spezialisiertes System zum effizienten Speichern, Verwalten, Indizieren und Abfragen von hochdimensionalen Vektordarstellungen von Daten. Vektoren werden häufig aus Deep-Learning-Modellen generiert und kapseln semantische oder kontextuelle Informationen über die Daten. Jede Dimension eines Vektors repräsentiert ein bestimmtes Merkmal. Einbettungen sind numerische Darstellungen von Objekten wie Text, Bildern, Videos und Audiodateien. Diese Einbettungen werden in verschiedenen Anwendungen verwendet, darunter maschinelles Lernen (ML), NLP, Empfehlungssysteme, Computer Vision und IR. VDs erleichtern effektive Ähnlichkeitssuchen und semantische Abfragen, indem sie ähnliche Objekte nahe beieinander im Vektorraum gruppieren. Facebook AI Similarity Search (FAISS)29 ist ein prominenter VD, der in dieser Studie verwendet wird, um den relevantesten Kontext für Nutzeranfragen zu identifizieren. Tabelle 2 skizziert die Hauptmerkmale von VDs und ihre Anwendungsfälle.
| Merkmal | Beschreibung |
| Hochdimensionale Daten | Verarbeitet Daten mit Hunderten oder Tausenden von Dimensionen. |
| Ungefährer nächster Nachbar (KNN) | Ermöglicht schnelle Ähnlichkeitssuchen durch Annäherung an Entfernungen. |
| Skalierbarkeit | Unterstützt große Datensätze mit Milliarden von Vektoren. |
| Integration | Lässt sich häufig in KI/ML-Frameworks und -Tools integrieren, um nahtlose Arbeitsabläufe zu ermöglichen. |
| Echtzeit-Abfragen | Bietet Vektorsuchen mit geringer Latenz für interaktive Anwendungen. |
Tabelle 2: Hauptmerkmale von VD. Die Tabelle hebt wichtige Funktionen von VD hervor. Dazu gehören der Umgang mit hochdimensionalen Daten, das Ausführen schneller Ähnlichkeitssuchen mit ANN-Algorithmen, das Skalieren auf große Datensätze, das Arbeiten mit KI- und ML-Tools und die Unterstützung schneller Echtzeitabfragen für die interaktive Nutzung.
Metriken zur Leistungsbewertung: Das SCD-QA-System wurde anhand von zwei primären Metriken bewertet: EM-Score14 und Modelllatenz15. Der EM-Score, eine Standardmetrik in QA-Studien, bewertet die Vorhersagegenauigkeit, indem er den Anteil der vorhergesagten Antworten misst, die genau mit der Grundwahrheit übereinstimmen. Für eine Reihe von N Fragen wird die EM-Punktzahl in Gleichung 1 formal wie folgt definiert:
wobei
(1)
Diese Metrik weist eine Punktzahl von 1 für eine exakte Übereinstimmung mit der Referenzantwort und 0 für jede Differenz zu.
Die Metrik "Latenz" quantifiziert die gesamte Verarbeitungszeit, die das System benötigt, um eine Antwort auf eine einzelne Abfrage zu generieren. Diese Metrik wird als mittlere verstrichene Zeit über alle Abfragen hinweg berechnet, wie in Gleichung 2 dargestellt:
(2)
Dabei sind Tstarti und Tendi die Zeitstempel, die den Beginn bzw. das Ende der Verarbeitung der i-ten Abfrage markieren. Die Latenz wird in s angegeben und erfasst die Reaktionsfähigkeit des Systems, die alle Phasen von der Eingabeverarbeitung bis zur Antwortgenerierung umfasst.
Methode
Um die SCD-QA zu implementieren, sind die folgenden Teststudien in diese Arbeit eingeflossen.
SCD-QA-Datensatz: Ein vorgeschlagener Datensatz30 wird für die Implementierung des SCD-QA-Systems eingeführt. Dieser Datensatz stammt aus einem Textkorpus mit Ph.D.-Regeln für 20228 für studentische Richtlinien des NIT Arunachal Pradesh, Indien. Um das SCD-QA-System einzurichten, ist es notwendig, eine JSON-Datei zu generieren, die alle relevanten Informationen in einem präzisen Format enthält. Der Datensatz wird mit dem Open-Source-Framework Haystack annotation tool (Version 2.18.1)31 aus dem Textkorpus generiert. Dieses Werkzeug erleichtert die Erstellung des SCD-QA-Datensatzes im Stil des SQuAD14. Die Schritte zum Erstellen eines mit Anmerkungen versehenen Datasets vom Typ SQuAD aus der PDF-Datei sind in Abbildung 7 dargestellt, und die Struktur unseres Datasets im SQuAD-Stil ist in Abbildung 8 dargestellt.

Abbildung 7: Schritte zum Erstellen eines kommentierten Datensatzes aus einer PDF-Datei. Die Abbildung zeigt einen schrittweisen Arbeitsablauf für die Erstellung eines annotierten Datensatzes im SQuAD-Stil mit den Haystack-Werkzeugen. Es beschreibt den Prozess vom Extrahieren von Text aus PDFs, dem Bereinigen und Aufteilen in Passagen, dem manuellen Annotieren von Frage-Antwort-Paaren, dem Speichern der Anmerkungen im SQuAD-JSON-Format und schließlich dem Exportieren des Datensatzes für das Modelltraining. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.

Abbildung 8: Struktur des QA-Datensatzes von Faktoiden. Die Abbildung zeigt eine JSON-Datenstruktur, die einen Absatz und ein QA-Paar aus einem Datensatz darstellt. Es hat einen Absatzabschnitt, der eine Reihe von Fragen und Antworten enthält. Eine Frage lautet: Was ist die Mindestpunktzahl, die erforderlich ist, um die Zulassung zum Ph.D. Science zu erhalten? Jede Frage hat eine ID und ein Array von Antworten. Die Antwort enthält eine Dokument-ID, eine Frage-ID, den Text mit 60 %-Punkten, die Startposition der Antwort und eine nicht angegebene Antwortkategorie. Das Flag is_impossible ist auf false festgelegt. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
Das Dataset ist als Liste von Wörterbüchern strukturiert, wobei jedes Wörterbuch Schlüsselfelder wie Daten, Absätze, Frage, answer_id, document_id, question_id, Text, answer_start, answer_end, is_impossible und Kontext enthält.
data: Es enthält die gesamten Informationen zu Fragen und Antworten.
paragraphs: Ein bestimmter Kontext, zusammen mit seinen Fragen und Antworten.
Frage: Eine bestimmte Frage.
answer_id: Eine eindeutige Identifikationsnummer für jeden Antworttext.
document_id: Eine eindeutige Identifikationsnummer für jeden Kontext.
question_id: Eine eindeutige Identifikationsnummer für jede Frage.
text: Der Antworttext.
answer_start: Der Startpunkt der richtigen Antwort im Kontext.
answer_end: Die Endstelle der richtigen Antwort im Kontext.
is_impossible: Sie gibt an, ob die Antwort auf die gestellte Frage im Kontext verfügbar ist oder nicht.
context: Der Textkorpus, aus dem eine Antwort gefunden werden kann.
Alle 80 Fragen im vorgeschlagenen Datensatz folgen dem Faktoid- und Nicht-Faktoid-Frageformat. Beispiele für einige Arten von formulierten Fragen sind in Tabelle 3 dargestellt.
| Fragen |
| Wer ist PS? |
| Wie groß ist die Schriftgröße des State-of-the-Art-Dokuments? |
| Wie viele Tage hat der Mutterschaftsurlaub? |
Tabelle 3: Beispielfrage aus dem Datensatz. Die Tabelle zeigt Beispiele für zwei Arten von Fragen: Die erste und zweite sind faktoide Fragen, während die dritte eine nicht-faktoide Frage ist.
FAISS: FAISS (Version faiss_cpu-1.9.0)29,32, entwickelt von Facebook AI Research (FAIR), ist eine Open-Source-Bibliothek, die eine effiziente Ähnlichkeitssuche und Clustering von dichten Vektoren ermöglicht. Es wurde speziell für die effektive Verwaltung großer, hochdimensionaler Daten entwickelt. Dieses System ermöglicht eine schnelle und skalierbare KNN-Suche in Datensätzen, die Millionen oder Milliarden von Vektoren umfassen. Es wird häufig in Anwendungen im Zusammenhang mit Einbettungen eingesetzt, einschließlich NLP, Empfehlungssystemen und Bild- oder Videoabruf. FAISS bietet mehrere Indizierungsmethoden, darunter Flat (Brute Force), Inverted File (IVF), Hierarchical Navigable Small World Graphs (HNSW) und Product Quantization (PQ). Diese Methoden ermöglichen es Benutzern, die Suchleistung entsprechend der Datengröße, Dimensionalität und Hardwarespezifikationen zu optimieren. In dieser Studie wird die flache Indizierung verwendet, die eine Brute-Force-Suche unter Verwendung der L2-Distanz (euklidisch) durchführt, um die nächsten Nachbarn zu identifizieren. Die Skalierbarkeit des Systems unterstützt sowohl CPU- als auch GPU-Implementierungen und ermöglicht so leistungsstarke Berechnungen über umfangreiche Datensätze hinweg. Darüber hinaus bietet es Flexibilität, um das Gleichgewicht zwischen Geschwindigkeit und Genauigkeit basierend auf spezifischen Anwendungsanforderungen zu optimieren. FAISS wird häufig im NLP verwendet, um die semantische Ähnlichkeit in Einbettungen wie BERT oder Word2Vec zu bewerten. FAISS wird in QAS verwendet, um Vektordarstellungen von Dokumenten oder Sätzen zu speichern und zu verwalten. Es führt approximative ANN-Suchen33 durch, um den relevantesten Kontext für Benutzerfragen abzurufen, und verbessert die semantische Suche mit Einbettungen aus Transformatormodellen, wie z. B. BERT. FAISS ist aufgrund seiner Vielseitigkeit ein grundlegendes Werkzeug in KI- und ML-Workflows.
BERT-large-uncased-whole-word-masking-finetuned- SQuAD-Modell: Die vorliegende Arbeit verwendet ein vortrainiertes Sprachmodell, bekannt als BERT-large-uncased-whole-word-masking finetuned-squad9 , um ein faktoides QAS unter Verwendung des in der Studie vorgeschlagenen Datensatzes zu entwickeln. Das BERT-Modell wurde einem Vortraining mit BookCorpus, einem Datensatz von 11.038 unveröffentlichten Büchern9, sowie der englischen Wikipedia unterzogen, mit Ausnahme von Listen, Tabellen und Überschriften. Das fragliche Modell ist ohne Fall, was bedeutet, dass es nicht zwischen den Wörtern Englisch und Englisch unterscheidet. Bei dem Modell handelt es sich um ein vortrainiertes Transformer-Modell, das mit einer beträchtlichen Menge englischer Daten unter Verwendung eines selbstüberwachten Ansatzes trainiert wurde. Das Modell wurde ausschließlich auf Rohtexten ohne menschliche Anmerkungen vortrainiert. Dies ermöglicht es, eine große Menge öffentlich zugänglicher Daten zu nutzen. Der Vortrainingsprozess umfasst die automatische Generierung von Eingaben und Beschriftungen aus den bereitgestellten Texten. Das Modell wurde mit zwei spezifischen Zielen trainiert9:
MLM: Bei diesem Prozess werden 15 %9 der Wörter im Eingabesatz nach dem Zufallsprinzip maskiert. Das Modell verarbeitet dann den gesamten maskierten Satz und sagt die maskierten Wörter voraus. Dieser Ansatz unterscheidet sich von herkömmlichen rekurrenten neuronalen Netzen (RNNs), die Wörter in der Regel sequenziell verarbeiten, und von autoregressiven Modellen wie GPT, die eine interne Maskierung zukünftiger Token verwenden. Die Funktionalität ermöglicht es dem Modell, eine bidirektionale Darstellung des Satzes zu erhalten.
NSP: In der Vortrainingsphase kombiniert das Modell zwei getarnte Sätze als Eingaben. In einigen Fällen stehen diese Sätze im Originaltext nebeneinander, was auf einen direkten Zusammenhang hinweist. In anderen Fällen sind sie es nicht, was bedeutet, dass es keine ursprüngliche Nähe oder keinen Kontext gibt, der sie verbindet. Im nächsten Schritt sagt das Modell voraus, ob die beiden Sätze logisch kohärent sind.
Das vorliegende Modell zeichnet sich durch die nachträgliche Konfiguration aus: Die Modellarchitektur besteht aus 24 Schichten, mit einer versteckten Dimension von 1024. Es verwendet 16 Aufmerksamkeitsköpfe und verfügt über insgesamt 336 Millionen Parameter9.
WordPiece wird verwendet, um die Texte mit einem Wortschatz von 30.000 Wörtern in den Vorverarbeitungsschritten zu tokenisieren. Die Eingaben des Modells würden dann wie folgt aussehen: [CLS] Satz A [SEP] Satz B [SEP]. Die einzige Voraussetzung ist, dass die Gesamtlänge der kombinierten Sätze weniger als 512 Token9 beträgt. Das spezifische, vortrainierte Modell liefert die anschließende Ausgabe: Die erreichte F1-Punktzahl beträgt 93,15 %, während die Punktzahl für die genaue Übereinstimmung 86,91 % beträgt9.
Distilbert/distilbert-base-cased-distilled-squad-Modell: Das DistilBERT10-Modell ist eine kompaktere, schnellere und effizientere Variante des BERT 9-Modells, das entwickelt wurde, um den Großteil der semantischen Verständnisfähigkeit von BERT beizubehalten, während es weniger ressourcenintensiv und besser für praktische Anwendungen mit begrenzter Rechenkapazität geeignet ist. Die Version distilbert-base-cased-distilled-squad wurde auf dem SQuAD14 für QA-Aufgaben fein abgestimmt. Das Modell nutzt die Transformatorarchitektur, einschließlich einer verringerten Größe von 66 Millionen Parametern im Gegensatz zu den 110 Millionen von BERT, während 97 % der Wirksamkeit von BERT beim Sprachverständnis beibehalten werden. DistilBERT erreicht dies mit einer Methode, die als Wissensdestillation bekannt ist und Informationen aus dem größeren BERT-Modell an das kompaktere DistilBERT-Modell überträgt. Aufgrund seiner geringeren Größe kann es Informationen schneller ableiten und verbraucht weniger Speicher, was es perfekt für Anwendungen mit begrenzten Ressourcen wie Mobil- oder Edge-Geräte macht. Das Modell, das sorgfältig auf den SQuAD 1.1-Datensatz abgestimmt wurde, zeigt außergewöhnliche Fähigkeiten in extraktiven QA-Aufgaben, bei denen das Ziel darin besteht, ein Textsegment aus einem bestimmten Kontext zu lokalisieren, das eine Frage beantwortet. DistilBERT erreicht etwa 85 % der F1-Punktzahl von BERT auf der SQuAD-Bestenliste und behält trotz seiner reduzierten Größe einen erheblichen Teil der sprachlichen Kapazität von BERT bei. Dieses Modell ist eine außergewöhnlich effiziente Lösung für QA-Aufgaben auf Produktionsebene, die sowohl die Leistung als auch die Recheneffizienz optimiert.
Deepset/roberta-base-squad2: Das deepset/roberta-base-squad2 Modell12,13 ist eine fein abgestimmte Variante der RoBERTa-Architektur. Es wurde speziell für das SQuAD14 2.0-Dataset entwickelt, das sowohl beantwortete als auch unbeantwortbare Fragen enthält. Dieses verbesserte RoBERTa-Framework eliminiert die9 NSP-Jobs von BERT. Es verwendet auch dynamische Maskierung während des Trainings, um die Effizienz und Leistung bei NL-Verständnisaufgaben zu steigern. Das Modell hat 125 Millionen Parameter und verwendet einen bidirektionalen Transformator. Dies ermöglicht es ihm, Kontextinformationen aus beiden Richtungen zu erfassen und sich bei extraktiven QA-Aufgaben auszuzeichnen.
Die Feinabstimmung von SQuAD 2.0 ermöglicht es dem Modell, die richtige Antwortspanne innerhalb eines gegebenen Kontexts zu identifizieren und zu erkennen, wenn es keine Antwort gibt. Es verwendet einen Byte Pair Encoding (BPE)-Tokenizer, der die Tokenisierung von Unterwörtern verarbeitet und die Groß- und Kleinschreibung beibehält. Dies verbessert seine Fähigkeit, ungewöhnliche und komplexe Wörter zu verarbeiten. Das Modell schneidet gut ab und erreicht etwa 85 % bis 90 % F1 und 80 % bis 85 % EM. Seine Fähigkeit, unbeantwortbare Fragen zu erkennen, und sein effektiver Einsatz machen es wertvoll für den Kundenservice, das Abrufen von Wissen und virtuelle Assistenten.
Der effektivste Weg, SQuAD-fein abgestimmte BERT-Modelle für die Qualitätssicherung einzusetzen, ist die Verwendung der Hugging Face Transformers-Pipeline34. Dieses Framework optimiert die Tokenisierung, die Eingabeformatierung, das Laden von Modellen und die Nachbearbeitung der Ausgabe. Diese Modelle sind weithin für ihre Wirksamkeit in der extraktiven Qualitätssicherung anerkannt, bei der die Antwort eine Textspanne ist, die direkt aus dem gegebenen Kontext abgerufen wird. Um die Implementierung zu unterstützen, werden im folgenden Verfahren die Schritte zum Ausführen von BERT-Modellen beschrieben.
Eingabe und Einrichtung: Für diesen Vorgang sind vier Haupteingaben und Setup-Parameter erforderlich: der Modellname, der als Zeichenfolgenbezeichner aus dem Hugging Face Hub angegeben wird (z. B. google-bert/bert-large-uncased-whole-word-masking-finetuned-squad, distilbert/distilbert-base-cased-distilled-squad oder deepset/roberta-base-squad2); die Frage (Q), die als Zeichenfolge bereitgestellt wird, die die Abfrage enthält; und der Kontext (C), eine Zeichenfolge, die den relevanten Text oder die relevante Passage darstellt. Das primär verwendete Werkzeug ist die High-Level-Pipeline-Funktion aus der Hugging Face-Transformatorenbibliothek (Version 4.57.0) in Python (Version 3.12.12).
Ablauf: Ausführung (Hugging Face Pipeline): Der Prozess besteht aus sechs Hauptschritten und verwendet die Hugging Face-Pipeline, um die Komplexität der QA-Aufgabe zu bewältigen:
Bibliothek installieren: Beginnen Sie mit der Installation der erforderlichen Bibliothek mit dem Befehl pip install transformers. Diese Installation ermöglicht den Zugriff auf die Modelle und die optimierte Pipeline-Funktionalität.
Import-Pipeline: Importieren Sie die Rohrleitungsfunktion mit: aus Transformatoren importieren Sie die Rohrleitung.
QA-Pipeline initialisieren: Initialisieren Sie die QA-Pipeline mit qa_pipeline = pipeline("question-answering", model=""). Mit diesem Befehl werden das Modell und der Tokenizer heruntergeladen, sodass sie für die Inferenz bereit sind.
Eingabe definieren: Frage setzen = ... und Kontext = ... , um die Daten des Modells vorzubereiten.
Inferenz ausführen: Übergeben Sie die Frage und den Kontext an die Pipeline mit result = qa_pipeline(question=question, context=context). Das Modell verarbeitet die Eingabe und gibt eine Antwort.
Antwort ausziehen: Rufen Sie die Antwortzeichenfolge aus dem Ausgabewörterbuch mit folgendem Befehl ab: answer = result['answer'].
Ausgabe: Der Prozess erzeugt mehrere Ausgabeparameter in der folgenden Reihenfolge: Antwort (die extrahierte Textspanne aus dem Kontext, die als Zeichenfolge dargestellt wird), Bewertung (ein Gleitkommawert, der die Zuverlässigkeit des Modells in seine Vorhersage quantifiziert) und Start- und Endindizes (Ganzzahlen, die die Zeichenpositionen der Antwortspanne innerhalb des Kontexts angeben).
Satz-Transformatoren/all-MiniLM-L6-v2: Der all-MiniLM-L6-v235 ist ein vortrainierter Satztransformator aus der Sentence-Transformers-Bibliothek (Version 5.1.1)36. Es ist für eine effiziente und präzise Texteinbettung optimiert. Es wurde auf dem MiniLM-Framework von Microsoft entwickelt und umfasst sechs Transformatorschichten und 384-dimensionale Einbettungen. Dieses Design bietet ein ausgewogenes Verhältnis zwischen Leistung und Rechenleistung und eignet sich daher für Echtzeitanwendungen. Das Modell wurde mit über einer Milliarde Phrasenpaaren aus Datensätzen wie SNLI, MultiNLI, STS-Benchmarks und Web-Crawling-Daten trainiert. Als Ergebnis demonstriert es seine Kompetenz in semantischer Ähnlichkeit, Gruppierung und suchbezogenen Aufgaben. Aufgrund seiner geringen Größe (~22 MB) und der verbesserten Inferenzleistung vereinfacht das all-MiniLM-L6-v2 Anwendungen wie semantische Suche, Duplikaterkennung und Textkategorisierung. Obwohl es leichtgewichtig ist, bietet es eine hohe Genauigkeit bei Benchmarks wie STS-B und SICK-R, was es zu einer effektiven Wahl sowohl für skalierbare Szenarien als auch für Szenarien mit begrenzten Ressourcen macht. Der Arbeitsablauf zum Generieren der Einbettung mit Sentence-Transformer ist in Abbildung 9 unten dargestellt.

Abbildung 9: Schritt des Einbettungsprozesses unter Verwendung des Satztransformatormodells. Die Abbildung veranschaulicht den Workflow zum Generieren von Texteinbettungen mit dem Framework für Satztransformatoren. Es beschreibt den Prozess vom Importieren von Bibliotheken und dem Laden eines vortrainierten Modells bis hin zur Aufbereitung von Textdaten, dem Generieren von Einbettungen, dem Konvertieren in NumPy-Arrays und dem Speichern für nachgelagerte Aufgaben wie Indizierung oder Ähnlichkeitssuche. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.
Vorgeschlagener Algorithmus: Diese Studie skizziert eine in Algorithmus 1 vorgeschlagene Methodik für die Entwicklung des SeCD-basierten SCD-QA-Systems, das in der Lage ist, sowohl faktoide als auch nicht-faktoide Fragen zu beantworten, die von Benutzern gestellt werden.
ALGORITHMUS 1: Algorithmus des vorgeschlagenen SeCD-basierten SCD-QA-Systems
Eingabe: Satz der unformatierten Kontextdatei (C) und der Abfrage des Benutzers (Q).
Ausgang: Die ausgewählte optimale transformatorbasierte LLM (M') und die von M' erzeugte Antwort.
Vorverarbeitungskontexte: Kommentieren Sie den rohen Kontextsatz C, um einen strukturierten Datensatz im DSQuAD-Format zu erstellen.
DSQuAD = fannonat (C)
Kontexteinbettungen generieren: Verwenden Sie einen Satz-Transformerf embed, um jeden Kontext c
DSQuAD in eine Einbettung ec umzuwandeln.

Einbettungen speichern: Speichern Sie Ec in einer Vektordatenbank V für eine effiziente Ähnlichkeitssuche.

Abfrageeinbettung generieren: Transformieren Sie die Abfrage Q des Benutzers in eine Einbettung eq mit demselben Satztransformator.

Context Retrieval: Ruft die relevanteste Kontexteinbettung
aus der Datenbank V basierend auf der Ähnlichkeit zu eq ab.

wobei sim(eq,e c) die Ähnlichkeitsfunktion ist.
Übergeben Sie den Kontext an LLMs: Geben Sie den abgerufenen Kontext
in 3 transformatorbasierte LLMs ein: Google-BERT (M1), DistilBERT (M2), RoBERTa (M3) und ein traditionelles Modell: TF-IDF+Cosine Similarity (M4)

Modellauswertung: Vergleichen Sie die Antworten {R1,R 2,R 3,R 4} mit einer Auswertungsfunktion feval, die jede Antwort bewertet.

Wählen Sie das beste Modell aus: Identifizieren Sie das Modell M' mit der höchsten Bewertungsnote S'

Endgültige Ausgabe generieren: Verwenden Sie M', um die endgültige Antwort R basierend auf

Ende
Der vorgeschlagene Algorithmusprozess skizziert einen systematischen Ansatz (Abbildung 10) für die Auswahl eines idealen transformatorbasierten LLM, um Benutzerfragen zu beantworten. Es umfasst Vorverarbeitung, Embedding-basiertes Kontextabrufen und Multi-Model-Assessment, um qualitativ hochwertige und kontextuell relevante Antworten zu garantieren. Im Folgenden wird der Schritt-für-Schritt-Prozess zur Verdeutlichung erklärt:
Datenaufbereitung und -vorverarbeitung: Die erste Phase umfasst die Verarbeitung von textuellen Rohdaten.
Eingabe: Die Rohtextdateien8 werden in das System adaptiert.
Annotation Tool31: Die Eingabe wird in einen strukturierten Datensatz im SQuAD14-Format transformiert. In diesem Schritt werden QA-Paare erstellt. Außerdem werden relevante Textdaten in klar definierten Kontextblöcken organisiert.
Ausgabe: Das Dataset ist nun bereit, Einbettungen zu erstellen.
Generierung von Kontexteinbettungen: Um einen effizienten und skalierbaren Kontextabruf zu ermöglichen, wird ein trainiertes Satz-Transformer-Modell35,36 auf den annotierten Datensatz angewendet. Dieser Transformator wandelt Text in hochdimensionale Einbettungen um, die semantische Bedeutung erfassen. Die Einbettungen werden in VD, FAISS29,32 gespeichert, um eine schnelle ähnlichkeitsbasierte Suche zu ermöglichen.
Verarbeitung von Benutzeranfragen: Wenn ein Benutzer eine Frage einreicht, wird die Frage von demselben Satzwandler35,36 verarbeitet. Dadurch wird eine entsprechende Einbettung in denselben Vektorraum29, 32 erzeugt wie die Kontexteinbettungen. Dieses Design stellt sicher, dass die Abfrage mit relevanten Kontexteinträgen abgeglichen werden kann.
Kontextabfrage mit Vektorähnlichkeit: Anhand einer Ähnlichkeitsmetrik (z. B. Kosinusähnlichkeit) vergleicht das System die Abfrageeinbettung mit gespeicherten Kontexteinbettungen. Das System wählt den relevantesten Kontext basierend auf dem höchsten Ähnlichkeitswert aus. Dadurch wird sichergestellt, dass nur relevanter Kontext an Downstreammodelle übergeben wird. Der Prozess reduziert den Rechenaufwand und verbessert die Relevanz.
Modellauswertung über mehrere LLMs hinweg: Der ausgewählte Kontext wird von drei transformatorbasierten LLMs ausgewertet: Google-BERT28, DistilBERT10 und RoBERTa12. Es wird auch durch ein traditionelles schlüsselwortbasiertes TF-IDF37 mit einem Kosinus-Ähnlichkeitsmodell bewertet. Jedes Modell verarbeitet den Kontext und generiert eine Antwort auf die Frage des Benutzers.
Vergleichende Bewertung: Die Antworten aus den vier LLM-Modellen werden anhand von zwei Schlüsselmetriken bewertet. Zunächst wird das semantische Matching mit EM14 bewertet. Zweitens wird die Modelllatenz anhand der mittleren Reaktionszeiten15 analysiert.
Modellauswahl und endgültige Ausgabe: Das Modell mit der besten Leistung wird als geeignetes LLM für die Frage des Benutzers ausgewählt. Die endgültige Antwort des ausgewählten Modells wird berücksichtigt. Dies gewährleistet ein Gleichgewicht zwischen Recheneffizienz und Antwortqualität.

Abbildung 10: Arbeitsablauf des SCD-QA-Systems unter Verwendung transformatorbasierter Modelle. Die Abbildung zeigt, wie das SCD-QA-System funktioniert. Zunächst wird eine unformatierte Kontextdatei von einem Annotationswerkzeug verarbeitet, um ein Dataset im SQuAD-Format zu erstellen. Ein Satztransformator erzeugt dann Einbettungen, die in einer FAISS-Vektordatenbank gespeichert werden. Wenn ein Benutzer eine Frage stellt, erstellt das System eine Einbettung für diese und wählt den relevantesten Kontext aus. Es vergleicht drei transformatorbasierte Modelle – Google-BERT, DistilBERT und RoBERTa – und einen traditionellen TFIDF + Kosinus-Ähnlichkeitswert – und verwendet das leistungsstärkste Modell, um die Antwort zu liefern. Bitte klicken Sie hier, um eine größere Version dieser Abbildung anzuzeigen.