conditionalRandomFields

crfScore

##set_conditionalrandomfields

Description

L'action crfScore du set d'actions conditionalRandomFields %SAS Documentation est le détective privé de vos données textuelles. Elle utilise un modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). de Champs Aléatoires ConditionnelsModèle statistique (CRF) prédisant des séquences d'étiquettes en tenant compte du contexte global. Idéal en NLP pour l'extraction d'entités nommées ou la segmentation de texte structuré. (CRF) préalablement entraîné pour prédire des étiquettes sur des séquences de mots. C'est l'outil idéal pour des tâches comme la reconnaissance d'entités nomméesGemini said

Technique de NLP identifiant et classant les mots d'un texte dans des catégories prédéfinies (noms propres, lieux, dates, organisations) pour extraire des informations structurées.
(NER) ou l'étiquetage morphosyntaxiqueAnalyse combinée de la structure des mots (morphologie) et de leur rôle dans la phrase (syntaxe). Essentiel en NLP pour l'étiquetage grammatical (POS tagging) et la compréhension du sens.. Une fois que votre modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). a appris la différence entre un 'Apple' (le fruit) et 'Apple' (la marque) grâce au contexte, crfScore applique cette logique à de nouvelles données pour un étiquetage précis et automatisé. C'est un peu comme donner des lunettes de lecture intelligentes à votre serveur CASMoteur analytique "in-memory" de SAS Viya. Il traite les données en parallèle (MPP) sur plusieurs nœuds pour offrir une puissance de calcul massive et une exécution ultra-rapide des actions..

Syntaxe Officielle
conditionalRandomFields.crfScore /
casOut={casouttable},
model={crfmodel},
table={castable},
target="string";

Paramètres Clés

Nom du paramètre Description
casOut Spécifie la table CAS de sortie qui contiendra les données textuelles étiquetées par le modèle.
model Un dictionnaire complexe spécifiant les tables d'entrée du modèle CRF. Il doit inclure les tables : attr (attributs), attrfeature (mapping attributs-caractéristiques), feature (caractéristiques), label (étiquettes) et template (modèles de caractéristiques).
table La table CAS d'entrée contenant les documents ou les séquences de tokens à analyser.
target Définit le nom de la variable dans la table de sortie qui recevra les prédictions (les étiquettes cachées calculées).

Préparation des données

Préparation des données pour le Scoring CRF

Pour utiliser crfScore, nous avons besoin d'une table de texte à étiqueter et d'un modèle déjà entraîné (généralement via crfTrain). Ici, nous simulons une structure simplifiée.

1DATA casuser.input_text;
2 LENGTH word $20;
3 INPUT doc_id sentence_id word $;
4 DATALINES;
51 1 Le
61 1 petit
71 1 chat
81 1 boit
91 1 du
101 1 lait
11;
12RUN;
13PROC CAS;
14 /* Note: Dans un scénario réel, les tables du modèle proviendraient de l'action crfTrain */
15 TABLE.loadTable / path="model_labels.sashdat" caslib="Public" RESULT=r;
16QUIT;

Exemples d'utilisation

Scoring de base avec un modèle CRF

Applique un modèle CRF existant sur une table de tokens pour prédire les étiquettes de séquence.

1PROC CAS;
2 conditionalRandomFields.crfScore /
3 TABLE={name="input_text"},
4 model={
5 label={name="model_labels"},
6 attr={name="model_attrs"},
7 feature={name="model_features"},
8 attrfeature={name="model_attrfeatures"},
9 template={name="model_template"}
10 },
11 target="predicted_label",
12 casOut={name="scored_output", replace=true};
13RUN;
Résultat Attendu :
Une table CAS nommée 'scored_output' est créée, contenant les mots originaux et une nouvelle colonne 'predicted_label' avec les étiquettes prédites.
Scoring complet avec options de sortie

Cet exemple illustre l'appel exhaustif en spécifiant toutes les tables du modèle requises pour une opération de scoring réussie sur l'architecture distribuée de Viya.

1PROC CAS;
2 conditionalRandomFields.crfScore /
3 TABLE={caslib="casuser", name="input_text", where="doc_id=1"},
4 model={
5 label={caslib="Public", name="crf_labels"},
6 attr={caslib="Public", name="crf_attrs"},
7 feature={caslib="Public", name="crf_features"},
8 attrfeature={caslib="Public", name="crf_attrfeatures"},
9 template={caslib="Public", name="crf_template"}
10 },
11 target="tag_predit",
12 casOut={caslib="casuser", name="final_tags", replace=true, promote=true};
13RUN;
14 TABLE.fetch / TABLE="final_tags";
15QUIT;
Résultat Attendu :
Le serveur CAS traite les documents filtrés, applique le modèle stocké dans la bibliothèque Public, et génère une table promue 'final_tags' dans la casuser contenant les résultats.