textRuleDevelop

compileCategory

##set_textruledevelop

Description

L'action compileCategory du set d'actions textRuleDevelop permet de transformer des règles de catégorisation textuelles en 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). binaire compilé (format .mco). Ce 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). est ensuite utilisé par l'action applyCategory pour classer automatiquement vos documents. C'est l'étape indispensable pour passer de l'écriture manuelle de règles linguistiques à une exécution ultra-rapide sur des millions de lignes. Elle peut même 'inviter' des concepts compilés (LI) à la fête pour enrichir la détection ! Un vrai chef d'orchestre pour vos taxonomies.

Syntaxe Officielle
textRuleDevelop.compileCategory /
casOut={casouttable},
config="string",
table={castable},
concept={castable},
language="string",
ruleId="string",
tokenizer="BASIC" | "STANDARD"

Paramètres Clés

Nom du paramètre Description
casOut Spécifie la table de sortie CAS qui contiendra le modèle de catégories compilé (MCO) .
table Spécifie la table CAS d'entrée contenant vos règles de catégorisation ou votre configuration .
config Désigne le nom de la variable dans la table d'entrée qui contient le texte des règles à compiler.
concept Optionnel. Spécifie une table CAS contenant des binaires de concepts (LI) déjà compilés pour les intégrer au modèle de catégorie.
language Définit la langue utilisée pour le traitement linguistique (ex: 'fr', 'en'). Par défaut, c'est l'anglais ('en').
ruleId Spécifie le nom de la variable contenant les identifiants uniques de vos règles.
tokenizer Définit la méthode de segmentation du texte. 'STANDARD' utilise les règles linguistiques classiques, tandis que 'BASIC' (disponible pour le chinois, japonais, coréen) se base sur les espaces et la ponctuation.

Préparation des données

Préparation des règles de catégorisation

Création d'une table CAS contenant des règles simples pour classer des articles par thématique.

1DATA casuser.rules_to_compile;
2 LENGTH rule_txt $200;
3 rule_txt = "1:1:TOP/Météo: (OR, 'pluie', 'soleil', 'orage')"; rule_id = 1; OUTPUT;
4 rule_txt = "1:2:TOP/Finance: (OR, 'bourse', 'ACTION', 'profit')"; rule_id = 2; OUTPUT;
5RUN;
6PROC CAS;
7 TABLE.loadTable / path="rules_to_compile.sas7bdat", caslib="casuser", casout={name="rules_in_cas", replace=true};
8RUN;

Exemples d'utilisation

Compilation basique d'un modèle

On compile les règles présentes dans la variable 'rule_txt' de la table 'rules_in_cas' vers un fichier binaire 'cat_model'.

1PROC CAS;
2 textRuleDevelop.compileCategory /
3 TABLE={name="rules_in_cas", caslib="casuser"},
4 config="rule_txt",
5 ruleId="rule_id",
6 language="fr",
7 casOut={name="cat_model", caslib="casuser", replace=true};
8RUN;
Résultat Attendu :
Une table binaire 'cat_model' est créée dans CAS, prête à être utilisée pour le scoring.
Compilation avec intégration de concepts et Tokenizer spécifique

Exemple avancé utilisant des concepts préalablement compilés et forçant le remplacement du modèle existant.

1PROC CAS;
2 textRuleDevelop.compileCategory /
3 TABLE={name="rules_in_cas", caslib="casuser"},
4 config="rule_txt",
5 ruleId="rule_id",
6 concept={name="my_concepts_li", caslib="casuser"},
7 language="fr",
8 tokenizer="STANDARD",
9 casOut={name="cat_model_final", caslib="casuser", replace=true, promote=true};
10RUN;
Résultat Attendu :
Le modèle MCO est généré en intégrant les dépendances de concepts et est promu globalement pour être partagé entre sessions.