Fortgeschrittene Themen
Auf dieser Seite möchten wir weitere Details zu den Klassen und Funktionen geben, die sich im GItHub-Repository befinden.
inference/linker.py
Klasse EntityLinker
Erstellt eine Pipeline aus einem Entity-Recognition-Transformer und einem Sentence-Transformer zum Embedding von Text.
Initialisierungsparameter
entity_model : str, default='tabiya/roberta-base-job-ner' Pfad zu einem vortrainierten AutoModelForTokenClassification Modell oder ein AutoModelCrfForNer Modell. Dieses Modell wird zur Entitätserkennung innerhalb des Eingabetexts verwendet.
similarity_model : str, default='all-MiniLM-L6-v2' Pfad oder Name eines Sentence-Transformer-Modells, das zum Embedding von Text verwendet wird. Der Sentence Transformer wird verwendet, um Embeddings für die extrahierten Entitäten und die Referenzmengen zu berechnen. Das Modell 'all-mpnet-base-v2' ist verfügbar, befindet sich jedoch nicht im Cache, daher sollte es mit dem Parameter from_cache=False zumindest beim ersten Mal.
crf : bool, default=False Ein Flag, das angibt, ob ein AutoModelCrfForNer Modell anstelle eines Standard- AutoModelForTokenClassification. CRF (Conditional Random Field)-Modelle werden verwendet, wenn die Aufgabe sequenzielle Vorhersagen mit Abhängigkeiten zwischen den Ausgaben erfordert.
evaluation_mode : bool, default=False Wenn auf True, gesetzt wird, gibt der Linker die Kosinusähnlichkeitswerte zwischen den Embeddings zurück. Dieser Modus ist nützlich, um die Qualität der Verknüpfungen zu bewerten.
k : int, default=32 Gibt die Anzahl der aus den Referenzmengen abzurufenden Elemente an. Dieser Parameter begrenzt die Anzahl der besten Übereinstimmungen, die bei der Verknüpfung von Entitäten berücksichtigt werden.
from_cache : bool, default=True Wenn auf True, gesetzt wird, werden die vorab berechneten Embeddings aus dem Cache geladen, um Zeit zu sparen. Wenn auf False, gesetzt wird, werden die Embeddings on-the-fly berechnet, was für Effizienz GPU-Zugriff erfordert und zeitaufwendig sein kann.
output_format : str, default='occupation' Gibt das Ausgabeformat für Berufe an, entweder occupation, preffered_label, esco_code, uuid oder all um alle Spalten zu erhalten. Die uuid ist auch für die Fähigkeiten verfügbar.
Aufrufparameter
text : str Ein beliebiger String im Zusammenhang mit einer Stellenanzeige.
linking : bool, default=True Geben Sie an, ob das Modell das Entity Linking zur Taxonomie durchführt.
Klasse FrenchEntityLinker
Französische Version des Entity-Linkers. Um sie zu verwenden, müssen wir die Referenzdatenbanken auf die französische Version von ESCO umschreiben.
inference/evaluator.py
Klasse Evaluator(EntityLinker)
Evaluator-Klasse, die vom EntityLinker erbt. Sie berechnet die Queries, den Korpus, den invertierten Korpus und die relevanten Dokumente für den InformationRetrievalEvaluator, führt Entity Linking durch und berechnet die Information-Retrieval-Metriken.
Initialisierungsparameter
entity_type: str Beruf, Fähigkeit oder Qualifikation, um den genau zu verwendenden Evaluationssatz zu bestimmen.
util/transformersCRF.py
Klasse CRF(nn.Module)
Implementiert von hier.
Eine Klasse, die ein lineares Conditional-Random-Field-Modell erstellt.
Klasse AutoModelForCrfPretrainedConfig(PretrainedConfig)
Konfigurationsklasse, die von PretrainedConfig HuggingFace-Klasse.
Klasse AutoModelCrfForNer(PreTrainedModel)
Eine allgemeine Klasse, die von HuggingFace-PreTrainedModel Klasse. Der model_type wird automatisch erkannt.
model_type: str Mögliche Optionen sind BertCrfForNer, RobertaCrfForNer und DebertaCrfForNer.
Klasse BERT_CRF_Config(PretrainedConfig)
Benutzerdefinierte Klasse zur Konfiguration von BERT für CRF.
Klasse BertCrfForNer(PreTrainedModel)
BERT-basiertes CRF-Modell, das von HuggingFace-PreTrainedModel Klasse erbt.
Gleich wie HuggingFace-PreTrainedModel.
Forward-Parameter
Gleich wie HuggingFace-PreTrainedModel außer für
special_tokens_mask standardmäßig: None. Wir verwenden diese Option von HuggingFace als kleinen Trick, um die für CRF benötigte special_mask zu implementieren.
Klasse ROBERTA_CRF_Config(PretrainedConfig)
Benutzerdefinierte Klasse zur Konfiguration von RoBERTa für CRF.
Klasse RobertaCrfForNer(PreTrainedModel)
RoBERTa-basiertes CRF-Modell, das von HuggingFace-PreTrainedModel Klasse erbt.
Gleich wie HuggingFace-PreTrainedModel.
Forward-Parameter
Gleich wie HuggingFace-PreTrainedModel außer für
special_tokens_mask standardmäßig: None. Wir verwenden diese Option von HuggingFace als kleinen Trick, um die für CRF benötigte special_mask zu implementieren.
Klasse DEBERTA_CRF_Config(PretrainedConfig)
Benutzerdefinierte Klasse zur Konfiguration von RoBERTa für CRF.
Klasse DebertaCrfForNer(PreTrainedModel)
RoBERTa-basiertes CRF-Modell, das von HuggingFace-PreTrainedModel Klasse erbt.
Gleich wie HuggingFace-PreTrainedModel.
Forward-Parameter
Gleich wie HuggingFace-PreTrainedModel außer für
special_tokens_mask standardmäßig: None. Wir verwenden diese Option von HuggingFace als kleinen Trick, um die für CRF benötigte special_mask zu implementieren.
util/utilfunctions.py
Klasse Config
Konfigurationsklasse für die Trainings-Hyperparameter.
Klasse CPU_Unpickler
Eine Klasse, die die Tensoren auf der CPU lädt.
Zuletzt aktualisiert