AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

dbacl - En ligne dans le Cloud

Exécutez dbacl dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande dbacl qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS.

PROGRAMME:

Nom


dbacl - un classificateur bayésien grammatical pour la reconnaissance de texte.

SYNOPSIS


dbacl [-01dvnirmwMNDXW] [-T type ] -l category [-h Taille] [-H taille g] [-X décimer] [-q
qualité] [-w commande_max] [-e habile] [-O en ligne] [-L mesurer] [-g regex] ...
[FICHIER]...

dbacl [-vnimNRX] [-h Taille] [-T taper] -c category [-c category]... [-F garder]... [DÉPOSER]...

dbacl -V

APERÇU


dbacl est un classificateur bayésien de texte et d'e-mail. Lors de l'utilisation du -l interrupteur, il apprend un corps
de texte et produire un fichier nommé category qui résume le texte. Lors de l'utilisation du -c
commutateur, il compare un flux de texte d'entrée avec un nombre quelconque de category fichiers et sorties
le nom du match le plus proche, ou éventuellement divers scores numériques expliqués ci-dessous.

Alors que cette page de manuel est conçue comme une référence, il existe plusieurs tutoriels et
documents que vous pouvez lire pour obtenir des informations spécialisées. Documentation spécifique sur le
la conception de dbacl et les modèles statistiques qu'il utilise peuvent être trouvés dans dbacl.ps. Pour un
aperçu de base de la classification de texte à l'aide dbacl, voir tutorial.html. Un tutoriel compagnon
orienté vers le filtrage des e-mails est email.html. Si vous avez du mal à obtenir dbacl à
classer de manière fiable, lisez is_it_working.html. La section UTILISATION de cette page de manuel a également
a quelques exemples.

/usr/share/doc/dbacl/dbacl.ps

/usr/share/doc/dbacl/tutorial.html

/usr/share/doc/dbacl/email.html

/usr/share/doc/dbacl/is_it_working.html

dbacl utilise un modèle de langage d'entropie maximale (divergence minimale) construit dans le respect
à une mesure de référence de diagramme (les jetons inconnus sont prédits à partir de diagrammes, c'est-à-dire des paires de
des lettres). Concrètement, cela signifie qu'un category est construit à partir de jetons dans le
ensemble d'entraînement, tandis que les jetons inédits peuvent être prédits automatiquement à partir de leur
des lettres. Un jeton est ici soit un mot (fragment) soit une combinaison de mots (fragments),
sélectionné en fonction de divers commutateurs. L'apprentissage fonctionne à peu près en modifiant le jeton
probabilités jusqu'à ce que les données d'apprentissage soient les moins surprenantes.

EXIT STATUT


Les conventions normales de sortie du shell ne sont pas suivies (désolé !). Lors de l'utilisation du -l commander
forme, dbacl renvoie zéro en cas de succès, différent de zéro si une erreur se produit. Lors de l'utilisation du -c forme,
dbacl renvoie un entier positif correspondant au category avec le postérieur le plus haut
probabilité. En cas d'égalité, la première catégorie la plus probable est choisie. Si une erreur
se produit, dbacl renvoie zéro.

DESCRIPTION


Lorsque vous utilisez le -l formulaire de commande, dbacl apprend une catégorie lorsqu'on lui donne un ou plusieurs noms de FICHIER,
qui doit contenir du texte ASCII lisible. Si aucun FICHIER n'est fourni, dbacl apprend de STDIN. Si
FILE est un répertoire, il est ouvert et tous ses fichiers sont lus, mais pas ses sous-répertoires.
Le résultat est enregistré dans le fichier binaire nommé category, et remplace complètement tout
contenus précédents. Par commodité, si la variable d'environnement DBACL_PATH contient un
répertoire, alors qui est ajouté au chemin du fichier, à moins que category commence par un '/' ou un
'.'.

Le texte d'entrée pour l'apprentissage est supposé être du texte brut non structuré par défaut. C'est
ne convient pas à l'apprentissage du courrier électronique, car le courrier électronique contient divers encodages de transport et
instructions de formatage qui peuvent réduire l'efficacité de la classification. Vous devez utiliser le -T
basculer dans ce cas pour que dbacl sait qu'il doit effectuer le décodage et le filtrage de MIME
et HTML, le cas échéant. Les valeurs de commutateur appropriées sont "-T email" pour l'entrée d'e-mail RFC2822,
"-T html" pour l'entrée HTML, "-T xml" pour l'entrée de style XML générique et "-T text" est le
format de texte brut par défaut. Il existe d'autres valeurs du -T interrupteur qui permet aussi bien
réglage des capacités de décodage.

Lorsque vous utilisez le -c formulaire de commande, dbacl tente de classer le texte trouvé dans FILE, ou
STDIN si aucun FICHIER n'est fourni. Chaque possible category doit être donné séparément et doit être
le nom de fichier d'un corpus de texte précédemment appris. Par commodité, si la variable
DBACL_PATH contient un répertoire, il est ajouté au début de chaque chemin de fichier qui ne démarre pas
avec un '/' ou un '.'. La sortie visible de la classification dépend de la combinaison
de commutateurs supplémentaires utilisés. Si aucun commutateur n'est utilisé, aucune sortie n'est affichée sur STDOUT. Cependant,
dbacl produit toujours un code de sortie qui peut être testé.

Pour voir une sortie pour une classification, vous devez utiliser au moins l'un des -v,-U,-n,-N,-D,-d
commutateurs. Parfois, ils peuvent être utilisés en combinaison pour produire une variation naturelle de
leurs sorties individuelles. Parfois, dbacl produit également des avertissements sur STDERR le cas échéant.

Les -v switch affiche le nom de la meilleure catégorie parmi tous les choix proposés.

Les -U switch affiche le nom de la meilleure catégorie suivi d'un pourcentage de confiance.
Normalement, c'est le commutateur que vous souhaitez utiliser. Un pourcentage de 100 % signifie que dbacl
est sûr de son choix, tandis qu'un pourcentage de 0% signifie qu'une autre catégorie est également
probable. Ce n'est pas la probabilité du modèle, mais mesure à quel point la classification est sans ambiguïté
est, et peut être utilisé pour marquer des classifications incertaines (par exemple, si la confiance est de 25 % ou moins).

Les -N switch imprime chaque nom de catégorie suivi de sa probabilité (postérieure), exprimée
en pourcentage. Les pourcentages totalisent toujours 100 %. C'est intuitif, mais seulement utile
si le document en cours de classification contient une poignée de jetons (dix ou moins). Dans le commun
cas avec beaucoup plus de jetons, les probabilités sont toujours extrêmement proches de 100% et 0%.

Les -n switch imprime chaque nom de catégorie suivi du logarithme négatif de son
probabilité. Cela équivaut à utiliser le -N commutateur, mais beaucoup plus utile. Le plus petit
nombre donne la meilleure catégorie. Une forme plus pratique consiste à utiliser les deux -n ainsi que le -v qui
imprime chaque nom de catégorie suivi de l'entropie croisée et du nombre de jetons analysés.
L'entropie croisée mesure (en bits) le taux de compression moyen pouvant être atteint,
sous le modèle de catégorie donné, par jeton de texte d'entrée. Si vous utilisez les trois -n,-v,-X
puis une valeur supplémentaire est sortie pour chaque catégorie, représentant une sorte de valeur p pour chaque
note de la catégorie. Cela indique à quel point le score est typique par rapport à la formation
documents, mais ne fonctionne que si le -X commutateur a été utilisé pendant l'apprentissage, et seulement pour certains
types de modèles (par exemple, e-mail). Ces valeurs p sont uniformément distribuées et indépendantes
(si les catégories sont indépendantes), elles peuvent donc être combinées à l'aide du test du chi carré de Fisher pour
obtenir des valeurs de p composites pour les regroupements de catégories.

Les -v ainsi que le -X les commutateurs ensemble impriment chaque nom de catégorie suivi d'un détail
décomposition du score de la catégorie, pris en compte ( taux de divergence + entropie de Shannon
rate )* nombre de jetons @ valeur p. Encore une fois, cela ne fonctionne que dans certains types de modèles.

Les -v ainsi que le -U les commutateurs impriment chaque nom de catégorie suivi d'une décomposition du
score de la catégorie dans (taux de divergence + taux d'entropie de Shannon # variance du score)* jeton
compter.

Les -D switch imprime le texte saisi tel que modifié en interne par dbacl antérieurement à
tokenisation. Par exemple, si un document de courrier électronique encodé MIME est classifié, alors ce
imprime le texte décodé qui sera réellement tokenisé et classé. Ce commutateur est
principalement utile pour le débogage.

Les -d le commutateur décharge les jetons et les scores pendant leur lecture. Il est utile pour
débogage, ou si vous souhaitez créer des représentations graphiques de la classification. UNE
l'explication détaillée de la sortie dépasse le cadre de cette page de manuel, mais est
simple si vous avez lu dbacl.ps. Les variations possibles incluent -d avec -n
or -N.

La classification peut se faire avec une ou plusieurs catégories en principe. Quand deux ou plus
catégories sont utilisées, la probabilité a posteriori bayésienne est utilisée, étant donné le texte d'entrée,
avec une distribution a priori uniforme sur les catégories. Pour d'autres choix d'antécédents, voir le
utilitaire compagnon bayésol(1). Lorsqu'une seule catégorie est utilisée, la classification peut être effectuée
en comparant le score à un seuil. En pratique, cependant, de bien meilleurs résultats sont
obtenu avec plusieurs catégories.

L'apprentissage et la classification ne peuvent pas être mélangés sur la même invocation de commande, cependant il y a
pas de problèmes de verrouillage et séparé dbacl les processus peuvent fonctionner simultanément avec des
résultats, car les opérations sur les fichiers sont conçues pour être atomiques.

Enfin, notez que dbacl ne gère pas vos corpus documentaires ou vos
catégories, et en particulier il ne vous permet pas d'étendre un fichier de catégorie existant
avec de nouveaux documents. Ceci est différent des divers filtres anti-spam actuels, qui peuvent apprendre de nouvelles
e-mails au fur et à mesure. Cette limitation de dbacl est en partie dû à la procédure non linéaire
utilisé dans l'algorithme d'apprentissage, et en partie un désir de flexibilité accrue.

Vous pouvez simuler l'effet de l'apprentissage incrémentiel en enregistrant vos documents de formation dans
archives et en ajoutant à ces archives au fil du temps, en réapprenant à partir de zéro périodiquement.
L'apprentissage est en fait plus rapide si ces archives sont compressées et décompressées à la volée
si nécessaire. En gardant le contrôle de vos archives, vous ne pouvez jamais perdre les informations en
vos catégories, et vous pouvez facilement expérimenter avec différents commutateurs ou tokenisations ou
ensembles de documents de formation si vous le souhaitez.

Notes INTERRUPTEURS


Par défaut, dbacl classe le texte saisi dans son ensemble. Cependant, lors de l'utilisation du -f option,
dbacl peut être utilisé pour filtrer chaque ligne d'entrée séparément, en n'imprimant que les lignes qui
correspondre à un ou plusieurs modèles identifiés par garder (utilisez le nom ou le numéro de la catégorie pour faire référence à un
Catégorie). Ceci est utile si vous souhaitez filtrer certaines lignes, mais notez que si les lignes
sont courts, le taux d'erreur peut être élevé.

Les -e,-w,-g,-j les commutateurs sont utilisés pour sélectionner un schéma de tokenisation approprié. UNE
jeton est un mot ou un fragment de mot ou une combinaison de mots ou de fragments. La forme des jetons
est important car il constitue la base des modèles de langage utilisés par dbaclL’ -e
switch sélectionne un schéma de tokenisation prédéfini, qui est rapide mais limité. Les -w
switch spécifie les jetons composites dérivés du -e changer. Par exemple, "-e alnum -w 2"
signifie que les jetons doivent être des fragments de mots alphanumériques combinés en paires qui se chevauchent
(bigrammes). Quand le -j est utilisé, tous les jetons sont convertis en minuscules, ce qui
réduit le nombre de jetons possibles et donc la consommation mémoire.

Si la -g est utilisé, vous pouvez complètement spécifier à quoi doivent ressembler les jetons
en utilisant une expression régulière. Nombreuses -g les commutateurs peuvent être utilisés pour construire des complexes
schémas de tokenisation, et les parenthèses dans chaque expression peuvent être utilisées pour sélectionner
fragments et les combiner en n-grammes. Le coût d'une telle flexibilité est réduit
classification et vitesse d'apprentissage. Lorsque vous expérimentez des schémas de tokenisation, essayez d'utiliser
le -d or -D commutateurs lors de l'apprentissage ou de la classification, car ils imprimeront les jetons
explicitement afin que vous puissiez voir quels fragments de texte sont récupérés ou manqués. Pour régulier
syntaxe d'expression, voir regex (7).

Les -h ainsi que le -H les commutateurs régulent la quantité de mémoire dbacl peut utiliser pour l'apprentissage. Texte
la classification peut utiliser beaucoup de mémoire, et par défaut dbacl se limite même au
dépens de la précision de l'apprentissage. Dans de nombreux cas, si une limite est atteinte, un message d'avertissement
être imprimé sur STDERR avec quelques conseils.

En réapprenant plusieurs fois la même catégorie, une accélération importante peut être obtenue en
utilisant l' -1 commutateur, car cela permet de lire les probabilités apprises précédemment à partir de
la catégorie et réutilisés.

Notez que la précision de la classification dépend avant tout de la quantité et de la qualité des
échantillons de formation, puis uniquement sur la quantité de peaufinage.

EXIT STATUT


Lorsque vous utilisez le -l formulaire de commande, dbacl renvoie zéro en cas de succès. Lors de l'utilisation du -c forme,
dbacl renvoie un entier positif (1,2,3...) correspondant au category avec le plus haut
probabilité postérieure. En cas d'égalité, la première catégorie la plus probable est choisie. Si un
erreur se produit, dbacl renvoie zéro.

OPTIONS


-0 Lors de l'apprentissage, empêche la précharge du poids. Normalement, dbacl vérifie si la catégorie
existe déjà, et si c'est le cas, essaie d'utiliser les poids existants comme point de départ
point. Cela peut considérablement accélérer l'apprentissage. Si la -0 le commutateur (zéro) est réglé,
puis dbacl se comporte comme si aucun fichier de catégorie n'existait déjà. Ceci est principalement utile pour
essai. Ce commutateur est maintenant activé par défaut, pour se protéger contre la dérive de poids
ce qui peut réduire la précision sur de nombreuses itérations d'apprentissage. Utilisation -1 à forcer
préchargement.

-1 Forcer le préchargement des poids si le fichier catégorie existe déjà. Voir la discussion sur le
-0 interrupteur.

-a Ajouter les partitions. Chaque ligne d'entrée est écrite sur STDOUT et les scores dbacl sont
en annexe. Ceci est utile pour le post-traitement avec bayésol(1). Pour la facilité de
traitement, chaque ligne d'entrée d'origine est indentée par un seul espace (pour distinguer
à partir des partitions jointes), et la ligne avec les partitions (si -n est utilisé) est
préfixé par la chaîne « scores ». Si un deuxième exemplaire de dbacl besoin de lire ceci
sortie plus tard, il doit être invoqué avec le -A interrupteur.

-d Dump des paramètres du modèle dans STDOUT. En conjonction avec le -l option, cette
produit un résumé lisible par l'homme du modèle d'entropie maximale. En collaboration avec
le -c option, affiche la contribution de chaque jeton au score final.
Supprime toutes les autres sorties normales.

-e Sélectionnez la classe de caractères pour la tokenisation par défaut (non basée sur l'expression régulière). Par défaut,
les jetons sont des chaînes alphabétiques uniquement. Cela correspond au cas où habile is
"alpha". Valeurs possibles pour habile sont "alpha", "alnum", "graph", "char", "cef"
et "adp". Les deux derniers sont des tokenizers personnalisés destinés aux e-mails. Voir
aussi isalpha(3). Le tokenizer "char" récupère des caractères imprimables uniques plutôt
que des jetons plus gros, et est destiné uniquement à des tests.

-f Filtre chaque ligne d'entrée séparément, en passant à STDOUT uniquement les lignes qui correspondent au
category identifiée en tant que garder. Cette option doit être utilisée à plusieurs reprises pour chaque
category qui doit être conservé. garder peut être soit le category nom de fichier, ou un
entier positif représentant le requis category dans le même ordre qu'il apparaît sur
la ligne de commande.

Les lignes de sortie sont vidées dès qu'elles sont écrites. Si le fichier d'entrée est un tube
ou un périphérique de caractères, une tentative est effectuée pour utiliser le mode de mise en mémoire tampon de ligne, sinon
la mise en mémoire tampon de bloc la plus efficace est utilisée.

-g Apprendre uniquement les fonctionnalités décrites par l'expression régulière étendue regex. Ce
remplace la méthode de sélection d'entités par défaut (voir -w option) et apprend, pour chaque
ligne d'entrée, seuls les jetons construits à partir de la concaténation de chaînes qui
correspondre aux sous-expressions étiquetées dans le fourni regex. Toutes les sous-chaînes qui
rencontre regex dans un suffixe de chaque ligne d'entrée sont traités comme des entités, même si
ils se chevauchent sur la ligne d'entrée.

Comme commodité facultative, regex peut inclure le suffixe ||xyz ce qui indique
quelles sous-expressions entre parenthèses doivent être étiquetées. Dans ce cas, xyz devrait
se composent exclusivement des chiffres 1 à 9, numérotant exactement les sous-expressions qui
doit être tagué. Sinon, s'il n'y a pas de parenthèses dans regex, alors c'est
suppose que l'expression entière doit être capturée.

-h Définit la taille de la table de hachage à 2^Taille éléments. Lors de l'utilisation du -l option, cette
fait référence au nombre total de caractéristiques autorisées dans le modèle d'entropie maximale étant
appris. Lors de l'utilisation du -c option avec le -M commutateur et type multinomial
catégories, il s'agit du nombre maximum de fonctionnalités prises en compte lors
classification. Sans le -M commutateur, cette option n'a aucun effet.

-i Mode entièrement internationalisé. Force l'utilisation de caractères larges en interne, ce qui
est nécessaire dans certaines régions. Cela entraîne une pénalité de performance notable.

-j Rendre les fonctionnalités sensibles à la casse. Normalement, toutes les fonctionnalités sont converties en minuscules
pendant le traitement, ce qui réduit les besoins de stockage et améliore les statistiques
estimations pour de petits ensembles de données. Avec cette option, la majuscule d'origine est utilisée
pour chaque caractéristique. Cela peut améliorer la précision de la classification.

-m Mappe agressivement les catégories dans la mémoire et les verrouille dans la RAM pour empêcher
échanger, si possible. Ceci est utile lorsque la vitesse est primordiale et que la mémoire est
abondant, par exemple lors du test du classificateur sur de grands ensembles de données.

Le verrouillage peut nécessiter un assouplissement des limites de l'utilisateur avec ulimit(1). Demandez à votre système
administrateur. Faites attention lorsque vous utilisez le -m basculer avec le -o commutateur, comme seulement
un processus dbacl doit apprendre ou classer à la fois pour empêcher la corruption de fichiers. Si
aucun apprentissage n'a lieu, alors le -m commutateur pour la classification est toujours sûr à utiliser.
Voir aussi la discussion pour le -o interrupteur.

-n Imprimer les scores pour chaque category. Chaque score est le produit de deux nombres, le
l'entropie croisée et la complexité du texte d'entrée sous chaque modèle. multiplié
ensemble, ils représentent la probabilité logarithmique que l'entrée ressemble au modèle. À
voir ces numéros séparément, utilisez aussi le -v option. En conjonction avec le -f
option, arrête le filtrage mais imprime chaque ligne d'entrée précédée d'une liste de scores
pour cette ligne.

-q Sélectionner qualité d'apprentissage, où qualité peut être 1,2,3,4. Des valeurs plus élevées prennent plus de temps
à apprendre, et devrait être légèrement plus précis. Le défaut qualité est 1 si le
le fichier de catégorie n'existe pas ou les poids ne peuvent pas être préchargés, et 2 sinon.

-o Lors de l'apprentissage, lit/écrit des nombres de jetons partiels afin qu'ils puissent être réutilisés. Normalement,
les fichiers de catégorie sont appris exactement à partir des données d'entrée fournies et ne contiennent pas
informations superflues. Lorsque cette option est activée, des informations supplémentaires sont
enregistré dans le fichier en ligne, après que toutes les entrées ont été lues. Ces informations peuvent être relues
la prochaine fois que l'apprentissage se produit, pour continuer là où l'ensemble de données précédent était parti
désactivé. Si en ligne n'existe pas, il est créé. Si en ligne existe, il est lu avant
l'apprentissage, et mis à jour par la suite. Le fichier est environ 3 fois plus gros (à
moins) que les savants category.

In dbacl, les mises à jour de fichiers sont atomiques, mais si vous utilisez le -o commutateur, deux ou plus
les processus ne doivent pas apprendre simultanément, car un seul processus écrira une
catégorie et vidage de la mémoire. Les -m peut également accélérer l'apprentissage en ligne, mais
méfiez-vous d'une éventuelle corruption. Un seul processus doit lire ou écrire un fichier. Cette
L'option est principalement destinée aux tests contrôlés.

-r Apprendre uniquement le modèle de référence schématique. Ignore l'apprentissage des fonctionnalités supplémentaires dans
le corpus de texte.

-v Mode verbeux. Lors de l'apprentissage, imprimez les détails du calcul, lorsque
classer, imprimer le nom du plus probable category. En conjonction avec
le -n option, imprime les scores comme un produit explicite de l'entropie croisée et
la complexité.

-w Sélectionnez les caractéristiques par défaut à n-grammes jusqu'à commande_max. Ceci est incompatible avec
le -g option, qui a toujours la priorité. Sinon -w or -g des options sont proposées,
dbacl suppose -w 1. Notez que les n-grammes pour n supérieur à 1 ne chevauchent pas la ligne
pauses par défaut. Les -S Le commutateur active le chevauchement de ligne.

-x Fixe la probabilité de décimation à 1 - 2^(-décim). Pour réduire les besoins en mémoire lorsque
l'apprentissage, certaines entrées sont ignorées au hasard et seules quelques-unes sont ajoutées au modèle.
Le comportement exact dépend de la -T option (la valeur par défaut est -T "texte"). Lorsque
le type n'est pas « e-mail » (par exemple « texte »), alors les caractéristiques d'entrée individuelles sont ajoutées avec
probabilité 2^(-décim). Lorsque le type est "e-mail", les messages d'entrée complets sont
ajouté avec probabilité 2^(-décim). Dans chacun de ces messages, toutes les fonctionnalités sont
utilisé.

-A Attendez-vous à une entrée et des scores en retrait. Avec cet interrupteur, dbacl s'attend à ce que les lignes d'entrée soient
indenté par un seul caractère espace (qui est ensuite ignoré). Lignes commençant par
tout autre caractère est ignoré. C'est la contrepartie de la -a interrupteur ci-dessus.
Lorsqu'il est utilisé avec le -a commutateur, dbacl affiche les lignes sautées telles quelles,
et réinsère l'espace au début de chaque ligne d'entrée traitée.

-D Imprimer la sortie de débogage. Ne pas utiliser normalement, mais peut être très utile pour afficher le
lister les fonctionnalités acquises lors de l'apprentissage.

-H Permettre à la table de hachage de croître jusqu'à un maximum de 2^taille g éléments au cours de l'apprentissage.
La taille initiale est donnée par -h option.

-L Sélectionnez la mesure de référence du diagramme pour les transitions de caractères. Les mesurer peuvent être
l'un de "uniforme", "dirichlet" ou "maxent". La valeur par défaut est « uniforme ».

-M Force les calculs multinomiaux. Lors de l'apprentissage, force les caractéristiques du modèle à être
traité multinomialement. Lors de la classification, corrige les scores d'entropie pour refléter
probabilités multinomiales (applicables uniquement aux modèles de type multinomial, le cas échéant).
Les scores seront toujours inférieurs, car l'ordre des fonctionnalités est perdu.

-N Affiche les probabilités postérieures pour chaque category. Cela suppose que le fourni
catégories forment une liste exhaustive de possibilités. En conjonction avec le -f
option, arrête le filtrage mais imprime chaque ligne d'entrée précédée d'un résumé de la
distribution postérieure pour cette ligne.

-R Inclut une catégorie supplémentaire pour le texte purement aléatoire. La catégorie est dite « aléatoire ».
N'a de sens que lorsque vous utilisez le -c option.

-S Activer le chevauchement des lignes. Ceci est utile avec le -w option pour autoriser les n-grammes
pour n > 1 pour ignorer les sauts de ligne, ainsi un jeton complexe peut continuer au-delà de la fin de
la ligne. Ceci n'est pas recommandé pour le courrier électronique.

-T Spécifie un format de texte non standard. Par défaut, dbacl suppose que le texte saisi est un
fichier texte purement ASCII. Cela correspond au cas où type est "texte".

Il existe plusieurs types et sous-types qui peuvent être utilisés pour nettoyer le texte d'entrée de
jetons superflus avant que l'apprentissage ou la classification n'ait lieu. Chaque (sous-)type
que vous souhaitez utiliser doit être indiqué par un -T option sur la ligne de commande,
et implique automatiquement le type correspondant.

Le type "texte" est pour le texte brut non structuré. Aucun nettoyage n'est effectué. C'est
la valeur par défaut si aucun type n'est indiqué sur la ligne de commande.

Le type « e-mail » est destiné aux fichiers d'entrée au format mbox ou aux e-mails RFC822 simples. En-têtes
sont reconnus et la plupart sont ignorés. Pour inclure des en-têtes standard RFC822 supplémentaires
(sauf pour les en-têtes de trace), utilisez le sous-type "email:headers". Pour inclure la trace
en-têtes, utilisez le sous-type "email:theaders". Pour inclure tous les en-têtes dans l'e-mail, utilisez
le sous-type "email:xheaders". Pour sauter tous les en-têtes, à l'exception du sujet, utilisez
« e-mail : pas d'en-tête ». Pour analyser les pièces jointes binaires à la recherche de chaînes, utilisez le "email:atts"
sous-type.

Lorsque le type "e-mail" est en vigueur, le balisage HTML est automatiquement supprimé du texte
pièces jointes à l'exception des pièces jointes texte/simples. Pour supprimer également le balisage HTML de plain
pièces jointes de texte, utilisez "email:noplain". Pour empêcher la suppression du balisage HTML dans tout le texte
pièces jointes, utilisez "email:plain".

Le type "html" permet de supprimer le balisage HTML (entre et balises) et
texte environnant. Notez que si le type "email" est activé, alors "html" est
automatiquement activé pour les pièces jointes de message compatibles uniquement.

Le type "xml" est comme "html", mais n'honore pas et , et ne
interpréter les balises (cela devrait donc être plus correctement appelé suppression du "balisage d'angle", et
n'a rien à voir avec la sémantique XML réelle).

Lorsque "html" est activé, la plupart des attributs de balisage sont perdus (pour les valeurs de 'most' close
à tous'). Le sous-type "html:links" force l'analyse et l'apprentissage des URL des liens,
qui serait autrement ignoré. Le sous-type "html:alt" force l'analyse de
texte alternatif dans les attributs ALT et diverses autres balises. Les "html:scripts"
le sous-type force l'analyse des scripts, "html:styles" force l'analyse des styles,
"html:forms" force l'analyse des valeurs du formulaire, tandis que "html:comments" force l'analyse des
Commentaires HTML.

-U Imprimer (U)nambiguïté. Lorsqu'il est utilisé en conjonction avec le -v commutateur, imprime les partitions
suivis de leurs écarts types empiriques. Lorsqu'il est utilisé seul, imprime le meilleur
catégorie, suivie d'une estimation de la probabilité que ce choix de catégorie soit
non ambigu. Plus précisément, la probabilité mesure l'absence de chevauchement des CLT
intervalles de confiance pour chaque score de catégorie (s'il y a chevauchement, alors il y a
ambiguïté).

Cette probabilité estimée peut être utilisée comme indicateur « incertain », par exemple si la probabilité estimée
la probabilité est inférieure à 50 %. Formellement, un score de 0% signifie qu'une autre catégorie est
également susceptibles de s'appliquer à l'entrée, et un score de 100 % signifie qu'il n'y a aucune autre catégorie
est susceptible de s'appliquer à l'entrée. Notez que ce type de confiance n'est pas lié à
le -X changer. De plus, l'estimation de la probabilité est généralement faible si le document est
court, ou si le message contient de nombreux jetons qui n'ont jamais été vus auparavant
(ne s'applique qu'à la mesure grammaticale uniforme).

-V Affiche le numéro de version du programme et quitte.

-W Comme -w, mais empêche les fonctionnalités de chevaucher les nouvelles lignes. Voir la description de -w.

-X Imprimer la confiance dans le score calculé pour chaque category, lorsqu'ils sont utilisés ensemble
des -n or -N changer. Prépare le modèle pour les scores de confiance, lorsqu'il est utilisé avec
le -l changer. La confiance est une estimation de la typicité du score,
en supposant l'hypothèse nulle que la catégorie donnée est correcte. Lorsqu'il est utilisé avec le
-v switch seul, factorise le score comme la divergence empirique plus le shannon
l'entropie, multipliée par la complexité, dans cet ordre. Les -X le commutateur n'est pas pris en charge dans
tous les modèles possibles et affiche un pourcentage de "0.0" s'il ne peut pas être calculé.
A noter que pour des documents inconnus, il est assez fréquent d'avoir des confidences proches de
zéro.

UTILISATION


Pour créer deux fichiers de catégorie dans le répertoire courant à partir de deux fichiers texte ASCII nommés
Mark_Twain.txt et William_Shakespeare.txt respectivement, tapez :

% dbacl -l twain Mark_Twain.txt
% dbacl -l shake William_Shakespeare.txt

Vous pouvez maintenant classer le texte saisi, par exemple :

% echo "bonjour" | dbacl -v -c twain -c secouer
Twain
% echo "être ou ne pas être" | dbacl -v -c twain -c secouer
secouer

Notez que le -v option au moins est nécessaire, sinon dbacl n'imprime rien.
La valeur de retour est 1 dans le premier cas, 2 dans le second.

% echo "être ou ne pas être" | dbacl -v -N -c twain -c secouer
deux 22.63 % secouer 77.37 %
% echo "être ou ne pas être" | dbacl -v -n -c twain -c secouer
twain 7.04 * 6.0 secouer 6.74 * 6.0

Ces invocations sont équivalentes. Les nombres 6.74 et 7.04 représentent à quel point le
le jeton moyen correspond à chaque catégorie, et 6.0 est le nombre de jetons observé. Si tu veux
pour imprimer une valeur de confiance simple avec la meilleure catégorie, remplacez -v comprenant -U.

% echo "être ou ne pas être" | dbacl -U -c twain -c secouer
secouer # 34%

Notez que la vraie probabilité de catégorie secouer par rapport à la catégorie Twain est de 77.37 %, mais le
le calcul est quelque peu ambigu, et 34 % est la confiance sur 100 % que le
le calcul est qualitativement correct.

Supposons qu'un fichier document.txt contienne des lignes de texte en anglais entrecoupées de lignes de bruit. À
filtrer les lignes de bruit des lignes anglaises, en supposant que vous avez une catégorie existante
secouez, dites, tapez :

% dbacl -c shake -f shake -R document.txt > document.txt_eng
% dbacl -c shake -f random -R document.txt > document.txt_rnd

Notez que la qualité des résultats variera en fonction de la façon dont les catégories tremblent
et random représentent chaque ligne d'entrée. Il est parfois utile de voir la partie postérieure
probabilités pour chaque ligne sans filtrage :

% dbacl -c shake -f shake -RN document.txt > document.txt_probs

Vous pouvez maintenant post-traiter les probabilités postérieures pour chaque ligne de texte avec une autre
script, pour répliquer une règle de décision bayésienne arbitraire de votre choix.

Dans le cas particulier d'exactement deux catégories, la procédure de décision bayésienne optimale peut
être mis en œuvre pour les documents comme suit : p1 être la probabilité a priori que l'entrée
le texte est classé comme catégorie1. Par conséquent, la probabilité a priori de classer comme
catégorie2 est de 1 - p1. Laisse moi u12 être le coût d'une mauvaise classification d'un catégorie1 saisir du texte comme
appartenir à catégorie2 et vice versa pour u21. Nous supposons qu'il n'y a aucun coût pour la classification
correctement. Ensuite, la commande suivante implémente la décision bayésienne optimale :

% dbacl -n -c catégorie1 -c catégorie2 | awk '{ if($2 * p1 * u12 > 4 $ * (1 - p1) * u21) {
imprimer $1 ; } else { print $3; } }'

dbacl peut également être utilisé en conjonction avec procmail(1) pour implémenter un bayésien simple
système de classification des e-mails. Supposons que le courrier entrant soit automatiquement distribué
dans l'un des trois dossiers de courrier situés dans $MAILDIR et nommés travail, personnelet le spam.
Initialement, ceux-ci doivent être créés et remplis avec des exemples d'e-mails appropriés. UNE crontab(1)
peut être utilisé pour apprendre les trois catégories une fois par jour, par exemple

CHATS=$HOME/.dbacl
5 0 * * * dbacl -T email -l $CATS/travail $MAILDIR/travail
10 0 * * * dbacl -T email -l $CATS/personnel $MAILDIR/personnel
15 0 * * * dbacl -T email -l $CATS/spam $MAILDIR/spam

Pour remettre automatiquement chaque e-mail entrant dans le dossier approprié, les éléments suivants
procmailrc(5) un fragment de recette pourrait être utilisé :

CHATS=$HOME/.dbacl

# exécuter le classificateur de spam
:0c
OUAIS=| dbacl -vT email -c $CATS/work -c $CATS/personal -c $CATS/spam

# envoyer à la boîte aux lettres appropriée
: 0:
* ? test -n "$YAY"
$MAILDIR/$YAY

: 0:
$ PAR DÉFAUT

Parfois, dbacl enverra l'e-mail à la mauvaise boîte aux lettres. Dans ce cas, la mauvaise classification
le message doit être supprimé de sa mauvaise destination et placé dans la bonne boîte aux lettres.
L'erreur sera corrigée la prochaine fois que vos messages seront appris. S'il est laissé dans le
mauvaise catégorie, dbacl apprendra les mauvaises statistiques de corpus.

Les éléments de texte par défaut (jetons) lus par dbacl sont des chaînes purement alphabétiques, qui
minimise les besoins en mémoire mais peut être irréaliste dans certains cas. Pour construire des modèles
basé sur des jetons alphanumériques, utilisez le -e changer. L'exemple ci-dessous utilise également l'option
-D switch, qui imprime une liste des jetons réels trouvés dans le document :

% dbacl -e alnum -D -l twain Mark_Twain.txt | moins

Il est également possible de remplacer la méthode de sélection de fonction par défaut utilisée pour apprendre le
modèle de catégorie au moyen d'expressions régulières. Par exemple, ce qui suit duplique le
méthode de sélection de fonctionnalité par défaut dans la locale C, tout en étant beaucoup plus lente :

% dbacl -l twain -g '^([[:alpha:]]+)' -g '[^[:alpha:]]([[:alpha:]]+)' Mark_Twain.txt

La catégorie twain qui est obtenue ne dépend que de mots alphabétiques simples dans le texte
Mark_Twain.txt (et les statistiques de diagramme calculées pour la prédiction). Pour une seconde
exemple, la commande suivante construit un modèle markovien lissé (bigramme de mots) qui
dépend de paires de mots consécutifs dans chaque ligne (mais les paires ne peuvent pas chevaucher une ligne
Pause):

% dbacl -l twain2 -g '(^|[^[:alpha:]])([[:alpha:]]+)||2' -g
'(^|[^[:alpha:]])([[:alpha:]]+)[^[:alpha:]]+([[:alpha:]]+)||23' Mark_Twain.txt

Des modèles plus généraux, basés sur des lignes, n-grammes de toutes les commandes (jusqu'à 7) peuvent être construits dans un
manière. Pour construire des modèles basés sur des paragraphes, vous devez reformater les corpus d'entrée avec
awk(1) ou sed(1) pour obtenir un paragraphe par ligne. La taille de la ligne est limitée par la disponibilité
mémoire, mais notez que les performances des regex se dégradent rapidement pour les longues lignes.

PERFORMANCE


L'hypothèse sous-jacente de l'apprentissage statistique est qu'un nombre relativement faible de
les documents de formation peuvent représenter un ensemble beaucoup plus important de documents d'entrée. Ainsi dans la longue
exécuter, l'apprentissage peut s'arrêter sans impact sérieux sur la précision de la classification. Tandis que
pas vrai en réalité, cette hypothèse est étonnamment précise pour des problèmes tels que le courrier électronique
filtration. En pratique, cela signifie qu'un corpus bien choisi de l'ordre de dix mille
documents est suffisant pour des résultats très précis pendant des années. Apprentissage continu après
une telle masse critique entraîne des rendements décroissants. Bien sûr, lorsque l'entrée du monde réel
les modèles de documents changent radicalement, le pouvoir prédictif des modèles peut être perdu. À
à l'autre bout, quelques centaines de documents donnent déjà des résultats acceptables dans la plupart des cas.

dbacl est fortement optimisé pour le cas de classifications fréquentes mais batch peu fréquents
apprentissage. Il s'agit de l'optimum à long terme décrit ci-dessus. Dans des conditions idéales, dbacl vous
classer une centaine d'emails par seconde sur du matériel bas de gamme (500Mhz Pentium III). Apprentissage
la vitesse n'est pas beaucoup plus lente, mais prend effectivement beaucoup plus de temps pour les gros documents
collections pour diverses raisons. Lors de l'utilisation du -m commutateur, les structures de données sont
mappé agressivement dans la mémoire si possible, réduisant les frais généraux pour les E/S et la mémoire
attributions.

dbacl jette son entrée dès que possible, et n'a pas de limites sur le document d'entrée
Taille. La classification et la vitesse d'apprentissage sont directement proportionnelles au nombre de
jetons dans l'entrée, mais l'apprentissage nécessite également une étape d'optimisation non linéaire qui prend
temps proportionnel au nombre de jetons uniques découverts. Au moment de la rédaction, dbacl is
l'un des filtres de messagerie open source les plus rapides compte tenu de son scénario d'utilisation optimal, mais utilise
plus de mémoire pour l'apprentissage que les autres filtres.

PLUSIEURS PROCESSUS ET DONNEES LA CORRUPTION


Lors de l'enregistrement des fichiers de catégorie, dbacl écrit d'abord un fichier temporaire au même emplacement,
et le renomme par la suite. Si un problème ou un crash survient pendant l'apprentissage, l'ancienne catégorie
fichier est donc laissé intact. Cela garantit que les catégories ne peuvent jamais être corrompues, non
peu importe le nombre de processus qui tentent d'apprendre ou de classer simultanément, et cela signifie que
les catégories peuvent être classées à tout moment.

Lorsque vous utilisez le -m commutateur, le contenu du fichier est mappé en mémoire pour une lecture et une écriture rapides.
Ceci, avec le -o commutateur, est principalement destiné à des fins de test, lorsque des dizaines de
des milliers de messages doivent être appris et notés en laboratoire pour mesurer dbacl's
précision. Étant donné qu'aucun verrouillage de fichier n'est tenté pour des raisons de performances, les corruptions sont
possible, sauf si vous vous assurez qu'un seul dbacl le processus lit ou écrit n'importe quel fichier à n'importe quel
temps donné. C'est le seul cas (-m et -o ensemble) où la corruption est possible.

MÉMOIRE UTILISATION


Lors de la classification d'un document, dbacl charge toutes les catégories indiquées dans la RAM, de sorte que le total
la mémoire nécessaire est approximativement la somme des tailles de fichier de catégorie plus une petite
aérien. Le document d'entrée est consommé pendant sa lecture, donc sa taille n'a pas d'importance,
mais les files d'attente très longues peuvent prendre de la place. Lors de l'utilisation du -m switch, les catégories sont lues
en utilisant mmap(2) selon disponibilité.

Lors de l'apprentissage, dbacl conserve une grande structure en mémoire qui contient de nombreux objets qui
ne sera pas enregistré dans la catégorie de sortie. La taille de cette structure est proportionnelle à la
nombre de jetons uniques lus, mais pas la taille des documents d'entrée, car ils sont
rejeté lors de la lecture. À titre indicatif, cette structure est 4x-5x la taille de la
fichier de catégorie final qui est produit.

Pour éviter une croissance de la mémoire incontrôlée, dbacl alloue par défaut une petite quantité fixe de
mémoire pour les jetons. Lorsque cet espace est épuisé, d'autres jetons sont défaussés qui ont le
effet de biaiser la catégorie apprise, la rendant moins utilisable à mesure que davantage de jetons sont supprimés. UNE
l'avertissement est imprimé sur STDERR dans un tel cas.

Les -h le commutateur vous permet de fixer la taille initiale de l'espace du jeton en puissances de 2, c'est-à-dire "-h 17"
signifie 2^17 = 131072 jetons possibles. Si vous tapez "dbacl -V", vous pouvez voir le nombre de
octets nécessaires pour chaque jeton lors de l'apprentissage ou de la classification. Multipliez ce nombre par
le nombre maximum de jetons possibles pour estimer la mémoire nécessaire à l'apprentissage. Les -H
commutateur permet dbacl développer ses tables automatiquement si et quand nécessaire, jusqu'à un maximum
spécifié. Donc si vous tapez "-H 21", alors la taille initiale sera doublée à plusieurs reprises si
nécessaire, jusqu'à environ deux millions de jetons uniques.

Lors de l'apprentissage avec le -X switch, une poignée de documents d'entrée sont également conservés dans la RAM
tout au long.

ENVIRONNEMENT


DBACL_PATH
Lorsque cette variable est définie, sa valeur est ajoutée à chaque category nom de fichier qui
ne commence pas par un '/' ou un '.'.

SIGNAUX


INT Si ce signal est capté, dbacl sort simplement sans faire de nettoyage ou autre
opérations. Ce signal peut souvent être envoyé en appuyant sur Ctrl-C sur le clavier. Voir
Sty (1).

HUP, QUITTER, TERME
Si l'un de ces signaux est capté, dbacl arrête de lire l'entrée et continue son
fonctionnement comme si plus aucune entrée n'était disponible. C'est une façon d'arrêter avec grâce,
mais notez qu'en mode apprentissage, un fichier de catégorie sera écrit en fonction de la
saisie incomplète. Le signal QUIT peut souvent être envoyé en appuyant sur Ctrl- sur le
clavier. Voir Sty (1).

USR1 Si ce signal est capté, dbacl recharge les catégories actuelles au plus tôt
opportunité réalisable. Ce n'est normalement pas utile du tout, mais cela peut être en particulier
cas, comme si le -f le commutateur est invoqué avec l'entrée d'un long
tuyau.

NOTES


dbacl les fichiers de catégorie générés sont au format binaire et peuvent ou non être portables vers
systèmes utilisant une architecture d'ordre d'octet différente (cela dépend de la façon dont dbacl était
compilé). Les -V switch imprime si les catégories sont portables, ou bien vous pouvez simplement
expérience.

dbacl ne reconnaît pas les expressions régulières fonctionnellement équivalentes, et dans ce cas
les éléments en double seront comptés plusieurs fois.

Avec chaque catégorie apprise, les options de ligne de commande qui ont été utilisées sont enregistrées. Lorsque
classification, assurez-vous que chaque catégorie pertinente a été apprise avec le même ensemble de
options (les expressions régulières sont autorisées à différer), sinon le comportement n'est pas défini. Il n'y a pas
besoin de répéter tous les commutateurs lors de la classification.

Si vous recevez de nombreux avertissements de numérisation, vous essayez d'apprendre trop de données à la fois,
ou votre modèle est trop complexe. dbacl est compilé pour économiser de la mémoire en numérisant la version finale
poids, mais vous pouvez désactiver la numérisation en éditant dbacl.h et en le recompilant.

dbacl propose plusieurs tokenizers intégrés (voir -e commutateur) avec plus à venir à l'avenir
versions, telles que l'auteur les invente. Bien que le tokenizer par défaut puisse évoluer, aucun
tokenizer ne doit jamais être supprimé, afin que vous puissiez toujours simuler les précédents dbacl comportement
sous réserve de corrections de bugs et de modifications architecturales.

Les estimations de confiance obtenues par le -X sont sous-estimés, c'est-à-dire qu'ils sont plus
conservateurs qu'ils ne devraient l'être.

Utiliser dbacl en ligne à l'aide des services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

  • 1
    VBA-M (Archivé - Maintenant sur Github)
    VBA-M (Archivé - Maintenant sur Github)
    Le projet a déménagé à
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Fonctionnalités :Création de tricheétats de sauvegardemulti
    système, prend en charge gba, gbc, gb, sgb,
    sgb2tu...
    Télécharger VBA-M (Archivé - Maintenant sur Github)
  • 2
    Stacer
    Stacer
    Optimiseur de système Linux et surveillance
    Dépôt Github :
    https://github.com/oguzhaninan/Stacer.
    Public : utilisateurs finaux/ordinateurs de bureau. Utilisateur
    interface : Qt. Programmation La...
    Télécharger Stacer
  • 3
    Renard orange
    Renard orange
    Fork de TeamWinRecoveryProject (TWRP)
    avec de nombreuses fonctions supplémentaires, redesign
    et plus de fonctionnalités : prend en charge les aigus et
    Noyau Oreo à jour non-Treble ROMs,
    construit...
    Télécharger OrangeFox
  • 4
    itop - ITSM CMDB OpenSource
    itop - ITSM CMDB Open Source
    Portail des opérations informatiques : une ouverture complète
    source, ITIL, service basé sur le Web
    outil de gestion comprenant un
    CMDB personnalisable, un système de helpdesk et
    un documentaliste...
    Télécharger itop - ITSM CMDB OpenSource
  • 5
    Clémentines
    Clémentines
    Clémentine est une musique multiplateforme
    lecteur et organisateur de bibliothèque inspiré par
    Amarok 1.4. Il a un rapide et
    interface facile à utiliser et vous permet de
    chercher et...
    Télécharger Clémentine
  • 6
    XISMUS
    XISMUS
    ATTENTION : la mise à jour cumulative 2.4.3 a
    été libéré !! La mise à jour fonctionne pour tout
    version 2.xx précédente. Si mise à niveau
    à partir de la version v1.xx, veuillez télécharger et
    i ...
    Télécharger XISMuS
  • Plus "

Commandes Linux

Ad