À en juger par le code source du filtre bayésien, le fichier d'en-tête nsBayesianFilter.h
implique qu'il existe un fichier de données d'entraînement :
https://github.com/mozilla/releases-comm-central/blob/master/mailnews/extensions/bayesian-spam-filter/nsBayesianFilter.h#L162
/**
* Implémente le stockage d'une collection de jetons de message et de comptages pour
* un corpus de messages classifiés
*/
class CorpusStore : public TokenHash {
public:
CorpusStore();
~CorpusStore();
et
/**
* écrire les informations du corpus dans un fichier de stockage
*
* @param aMaximumTokenCount élaguer les jetons si le nombre de jetons dépasse
* cette valeur. == 0 pour aucun élagage
*/
void writeTrainingData(uint32_t aMaximumTokenCount);
Et l'implémentation, dans nsBayesianFilter.cpp
, mentionne un fichier training.dat
:
https://github.com/mozilla/releases-comm-central/blob/master/mailnews/extensions/bayesian-spam-filter/nsBayesianFilter.cpp#L2251
nsresult CorpusStore::getTrainingFile(nsIFile** aTrainingFile) {
// devrions-nous mettre en cache le répertoire du gestionnaire de profil ?
nsCOMPtr profileDir;
nsresult rv = NS_GetSpecialDirectory(NS_APP_USER_PROFILE_50_DIR,
getter_AddRefs(profileDir));
NS_ENSURE_SUCCESS(rv, rv);
rv = profileDir->Append(u"training.dat"_ns);
NS_ENSURE_SUCCESS(rv, rv);
return profileDir->QueryInterface(NS_GET_IID(nsIFile), (void**)aTrainingFile);
}
Je ne suis pas un développeur de Thunderbird, mais mon instinct me dit qu'il serait sans danger de supprimer le courrier indésirable lui-même, car les informations en découlant sont stockées dans ce fichier training.dat
.