Il s'agit de la commande mailtoe qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant 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
mailtoe - un simulateur d'entraînement sur erreur à utiliser avec dbacl.
SYNOPSIS
courrier commander [ arguments_commande ]
DESCRIPTION
courrier automatise la tâche de tester les programmes de filtrage et de classification des e-mails tels que
dbacl(1). Étant donné un ensemble de documents catégorisés, mailtoe lance des tests pour estimer
les erreurs de classification et ainsi permettre un réglage fin des paramètres de la
classificateur.
Le train-on-error (TOE) est une méthode d'apprentissage qui est parfois préconisée pour le courrier électronique
classificateurs. Compte tenu d'un flux d'email entrant, la méthode consiste à réutiliser un ensemble fixe de
bases de données de catégories jusqu'à ce que la première erreur de classification se produise. À ce moment-là, l'infraction
l'e-mail est utilisé pour réapprendre la catégorie concernée, jusqu'à la prochaine erreur de classification. Dans ce
manière, les catégories ne sont mises à jour que lorsque des erreurs se produisent. Cela modélise directement la façon dont certains
les classificateurs d'e-mails sont utilisés dans la pratique.
Les taux d'erreur de la TOE dépendent directement de l'ordre dans lequel les e-mails sont vus. Un petit changement
dans la commande, comme cela peut arriver en raison de retards de mise en réseau, peut avoir un impact important sur le
nombre d'erreurs de classement. Par conséquent, courrier ne donne pas de résultats significatifs,
à moins que les exemples d'e-mails ne soient choisis avec soin. Cependant, comme cette méthode est couramment utilisée
par les filtres anti-spam, il vaut toujours la peine de calculer pour favoriser les comparaisons. D'autres méthodes (voir
courrier(1),pied de courrier(1)) tentent de saisir le comportement des erreurs de classification dans
d'autres moyens.
Pour améliorer et stabiliser le calcul du taux d'erreur, courrier effectue les simulations TOE
plusieurs fois sur des flux d'e-mails légèrement réorganisés, et fait la moyenne des résultats. Les
les réorganisations se produisent en multiplexant les e-mails de chaque boîte aux lettres de catégorie dans un ordre aléatoire.
Ainsi s'il y a trois catégories, le premier email classé est tiré au sort parmi les
devant les exemples de flux d'e-mails de chaque type. Le deuxième e-mail est également choisi au hasard
parmi les trois types, de l'avant du
flux après la suppression du premier e-mail. La simulation s'arrête lorsque tous les flux d'échantillons sont
épuisé.
courrier utilise la variable d'environnement MAILTOE_FILTER lors de l'exécution, ce qui permet
simulation de filtres arbitraires, à condition qu'ils satisfassent aux conditions de compatibilité
indiqué dans la section ENVIRONNEMENT ci-dessous.
Pour plus de commodité, courrier met en œuvre un suite de tests framework avec des wrappers prédéfinis pour
plusieurs classificateurs open source. Cela permet la comparaison directe de dbacl(1) avec
classificateurs concurrents sur le même ensemble d'échantillons d'e-mails. Voir la section UTILISATION ci-dessous.
Lors de la préparation, courrier construit un sous-répertoire nommé mailtoe.d dans le travail en cours
annuaire. Tous les calculs nécessaires sont effectués dans ce sous-répertoire.
EXIT STATUT
courrier renvoie 0 en cas de succès, 1 si un problème est survenu.
COMMANDES
préparer longueur du câble
Prépare un sous-répertoire nommé mailtoe.d dans le répertoire de travail courant, et
le remplit avec des sous-répertoires vides pour exactement longueur du câble sous-ensembles.
ajouter category [ DOSSIER ] ...
Prend un ensemble d'e-mails de l'un ou l'autre DOSSIER si spécifié, ou STDIN, et les associe
avec category. L'ordre des e-mails dans DOSSIER est conservé, et par la suite
DOSSIERs sont ajoutés au premier de chaque catégorie. Cette commande peut être répétée
plusieurs fois, mais doit être exécuté au moins une fois.
espace extérieur plus propre, Supprime le répertoire mailtoe.d et tout son contenu.
courir Multiplexe au hasard à partir des flux d'e-mails ajoutés précédemment et réapprend les catégories
que lorsqu'une erreur de classification se produit. La simulation est répétée longueur du câble fois.
résumé
Imprime les taux d'erreur moyens pour les simulations.
parcelle [ ps | Échelle logarithmique ] ...
Trace le nombre d'erreurs sur la durée de la simulation. L'option "ps", si présente,
écrit le tracé dans un fichier postscript dans le répertoire mailtoe/plots, au lieu de
affiché à l'écran. L'option "logscale", si elle est présente, fait que le tracé est sur
l'échelle logarithmique pour les deux ordonnées.
évaluation vrai chat chat prédateur
Analyse les statistiques de la dernière exécution et extrait tous les messages qui appartiennent à
category vrai chat mais ont été classés dans la catégorie chat prédateur. L'extrait
les messages sont copiés dans le répertoire mailtoe.d/revue pour la lecture.
suite de tests liste
Affiche une liste des filtres/scripts wrapper disponibles qui peuvent être sélectionnés.
suite de tests Sélectionner [ FILTRE ] ...
Prépare le(s) filtre(s) nommé(s) FILTRE à utiliser pour la simulation. Le nom du filtre est
le nom d'un script wrapper situé dans le répertoire /usr/share/dbacl/testsuite.
Chaque filtre a une interface rigide documentée ci-dessous, et le fait de le sélectionner
le copie dans le mailtoe.d/filtres annuaire. Seuls les filtres qui s'y trouvent sont utilisés
dans les simulations.
suite de tests désélectionner [ FILTRE ] ...
Supprime le(s) filtre(s) nommé(s) du répertoire mailtoe.d/filtres pour qu'ils soient
pas utilisé dans la simulation.
suite de tests courir [ parcelles ]
Appelle chaque filtre sélectionné sur les ensembles de données ajoutés précédemment et calcule
taux de mauvaise classification. Si l'option « traces » est présente, chaque simulation de filtre
est tracé comme un fichier postscript dans le répertoire mailtoe.d/plots.
suite de tests statuts
Décrit les simulations programmées.
suite de tests résumé
Affiche les résultats de la validation croisée pour tous les filtres. n'a de sens qu'après la courir
commander.
UTILISATION
Le modèle d'utilisation normal est le suivant : d'abord, vous devez séparer votre e-mail
collecte en plusieurs catégories (manuellement ou autrement). Chaque catégorie doit être
associé à un ou plusieurs dossiers, mais chaque dossier ne doit pas contenir plus d'un
Catégorie. Ensuite, vous devez décider du nombre de pistes à utiliser, disons 10. Plus vous utilisez de pistes,
meilleurs sont les taux d'erreur prédits. Cependant, plus de courses prennent plus de temps. Vous pouvez maintenant taper
% mailtoe préparer 10
Ensuite, pour chaque catégorie, vous devez ajouter chaque dossier associé à cette catégorie. Supposer
vous avez trois catégories nommées le spam, travailet jeux et sport, qui sont associés à la mbox
fichiers spam.mbox, travail.mboxet jouer.mbox respectivement. tu taperais
% mailtoe ajouter du spam spam.mbox
% mailtoe ajouter du travail work.mbox
% mailtoe ajouter jouer play.mbox
Vous devriez viser un nombre similaire d'e-mails dans chaque catégorie, car le multiplexage aléatoire
sera déséquilibré sinon. L'ordre des e-mails dans chaque *.mbox le fichier est
important, et est conservé lors de chaque simulation. Si vous ajoutez à plusieurs reprises au même
catégorie, les dernières boîtes aux lettres seront ajoutées à la première, en préservant les
commande.
Vous pouvez maintenant effectuer autant de simulations TOE que vous le souhaitez. Les emails multiplexés sont
classés et appris un à la fois, en exécutant la commande donnée dans l'environnement
variable MAILTOE_FILTER. Si elle n'est pas définie, une valeur par défaut est utilisée.
% mailtoe exécuté
% mailtoe récapituler
Les commandes de la suite de tests sont conçues pour simplifier les étapes ci-dessus et permettre la comparaison d'un
large éventail de classificateurs d'e-mails, y compris, mais sans s'y limiter, dbacl. Les classificateurs sont
pris en charge par les scripts wrapper, qui sont situés dans le /usr/share/dbacl/testsuite
répertoire.
La première étape lors de l'utilisation de la suite de tests consiste à décider quels classificateurs comparer. Tu
pouvez afficher une liste des wrappers disponibles en tapant :
% liste des suites de tests mailtoe
Notez que les scripts wrapper ne sont PAS les classificateurs d'e-mails réels, qui doivent être
installé séparément par votre administrateur système ou autrement. Une fois cela fait, vous
pouvez sélectionner un ou plusieurs wrappers pour la simulation en tapant, par exemple :
% mailtoe testsuite sélectionnez dbaclA iffile
Si certains des classificateurs sélectionnés ne peuvent pas être trouvés sur le système, ils ne sont pas sélectionnés.
Notez également que certains wrappers peuvent avoir des noms de catégorie codés en dur, par exemple si le classificateur
ne prend en charge que la classification binaire. Tenez compte des messages d'avertissement.
Il ne reste plus qu'à lancer la simulation. Attention, cela peut prendre beaucoup de temps (plusieurs heures
selon le classificateur).
% d'exécution de la suite de tests mailtoe
Résumé de la suite de tests % mailtoe
Une fois que vous avez terminé, vous pouvez supprimer les fichiers de travail, les fichiers journaux, etc. en tapant
% mailtoe propre
SCÉNARIO INTERFACE
courrier suite de tests s'occupe d'apprendre et de classer vos corpus d'e-mails préparés pour
chaque classificateur sélectionné. Étant donné que les classificateurs ont des interfaces très différentes, ce n'est que
possible en enveloppant ces interfaces individuellement dans un formulaire standard qui peut être utilisé
by courrier suite de tests.
Chaque script wrapper est un outil de ligne de commande qui accepte une seule commande suivie de zéro
ou plusieurs arguments facultatifs, sous la forme standard :
commande wrapper [argument]...
Chaque script wrapper utilise également STDIN et STDOUT d'une manière bien définie. Sinon
comportement est décrit, aucune sortie ou entrée ne doit être utilisée. Les commandes possibles sont
décrit ci-dessous:
filter Dans ce cas, un seul email est attendu sur STDIN, et une liste de noms de fichiers de catégorie
est attendu dans $2, $3, etc. Le script écrit le nom de la catégorie correspondant à
l'e-mail d'entrée sur STDOUT. Aucune nouvelle ligne de fin n'est requise ou attendue.
learn Dans ce cas, un flux mbox standard est attendu sur STDIN, tandis qu'un
le nom du fichier de catégorie est attendu dans $2. Aucune sortie n'est écrite sur STDOUT.
clean Dans ce cas, un répertoire est attendu dans $2, qui est examiné pour l'ancienne base de données
informations. Si d'anciennes bases de données sont trouvées, elles sont purgées ou réinitialisées. Aucune sortie n'est
écrit sur STDOUT.
décrire
DANS ce cas, une seule ligne de texte est écrite dans STDOUT, décrivant le filtre
Fonctionnalité. La ligne doit être courte pour éviter que la ligne ne s'enroule sur un
Terminal.
bootstrap
Dans ce cas, un répertoire est attendu en $2. Le script wrapper vérifie d'abord
l'existence de son classificateur associé, et d'autres conditions préalables. Si le chèque
réussit, le wrapper est cloné dans le répertoire fourni. Une courtoisie
une notification doit être donnée sur STDOUT pour exprimer le succès ou l'échec. C'est aussi
permis de donner des mises en garde de descriptions plus longues.
toe Dans ce cas, une liste de catégories est attendue en 3 $, 4 $, etc.
catégorie doit être répertoriée. Avant cette liste, la vraie catégorie est donnée en 2 $.
pied Utilisé par pied de courrier (1).
ENVIRONNEMENT
Juste après le chargement, courrier lit le fichier caché .mailtoerc dans le répertoire $HOME, si
il existe, ce serait donc un bon endroit pour définir des valeurs personnalisées pour l'environnement
variables.
MAILTOE_FILTER
Cette variable contient une commande shell à exécuter à plusieurs reprises pendant l'exécution
organiser. La commande doit accepter un message électronique sur STDIN et générer un résultat
Nom de catégorie. Sur la ligne de commande, il doit également accepter d'abord la vraie catégorie
name, puis une liste de tous les noms de fichiers de catégorie possibles. Si la catégorie de sortie ne
correspondent pas à la vraie catégorie, les catégories pertinentes sont supposées avoir été
silencieusement mis à jour/réappris. Si MAILTOE_FILTER n'est pas défini, courrier utilise une valeur par défaut
valeur.
REPÉRTEMP
Ce répertoire est exporté au profit des scripts wrapper. Scripts qui ont besoin
pour créer des fichiers temporaires, vous devez les placer à l'emplacement indiqué dans TEMPDIR.
NOTES
Le sous-répertoire mailtoe.d peut devenir assez volumineux. Il contient une copie complète de la formation
corpus, ainsi que des fiches d'apprentissage pour longueur du câble fois toutes les catégories ajoutées, et divers
fichiers journaux
Alors que les simulations de la TOE pour dbacl(1) peut être utilisé pour comparer avec d'autres classificateurs, TOE
ne doit pas être utilisé pour les classifications du monde réel. C'est parce que, contrairement à beaucoup d'autres
filtres, dbacl(1) apprend les poids des preuves de manière non linéaire et ne préserve pas
poids relatifs entre les jetons, même si ces jetons ne sont pas visibles dans les nouveaux e-mails.
ATTENTION
Étant donné que l'ordre des e-mails dans les boîtes aux lettres ajoutées est important, l'erreur estimée
les taux ne sont pas bien définis ni même significatifs dans un sens objectif. Cependant, si le
les exemples d'e-mails représentent un instantané réel de l'e-mail entrant d'un utilisateur, puis l'erreur
les taux sont quelque peu significatifs. Les simulations peuvent alors être interprétées comme des alternatives
réalités où un classificateur donné aurait intercepté le courrier entrant.
SOURCE
Le code source de la dernière version de ce programme est disponible à l'adresse suivante
Emplacements:
http://www.lbreyer.com/gpl.html
http://dbacl.sourceforge.net
Utiliser mailtoe en ligne en utilisant les services onworks.net
