Le programme ols (Orthogonal Least Squares) transforme chaque exemple d'un jeu de données en une règle floue et sélectionne ensuite les plus importantes d'entre elles au sens des moindres carrés, par régression linéaire et orthogonalisation de Gram-Schmidt. Une fois la sélection faite, un deuxième passage de l'algorithme est réalisé au cours duquel les conclusions des règles sont optimisées au sens des moindres carrés. Il est adapté aux problèmes de régression.
Interface Java :
Menu Apprentissage, sous-menu Induction des règles, option OLS.
En ligne de commande, programme ols :
Un seul argument :
Avec les options :
-nNumOutput
utilisé pour préciser le numéro de la sortie à traiter (par défaut 0=la première sortie) |
-oNbOutputs
utilisé pour préciser le nombre de sorties (par défaut une seule sortie) |
-j : utiliser l'algorithme original de Hohensohn et Mendel (partition de gaussiennes centrées sur les données) |
-tTol : Tol est un paramètre pour la génération des partitions.
2 cas : si algorithme original, Tol est l'écart-type utilisé pour construire les gaussiennes (valeur par défaut=0.05), sinon Tol est le seuil de tolérance pour déterminer les centres des SEF de la partition floue. |
-s : n'impose pas la construction de partitions floues fortes (défaut= partitions floues fortes). |
-fFISfile : FISfile est le nom du fichier de configuration du SIF fourni en entrée
Dans ce cas les partitions de ce fichier sont utilisées pour générer les règles. Les règles, si elles existent, sont perdues et seront remplacées par les règles induites, sauf si l'option -x est précisée. |
-x : cette option ne fonctionne qu'avec l'option précédente (-fFISfile).
Le programme conserve les partitions et les règles du fichier de configuration du fis, et optimise seulement les conclusions des règles, par moindres carrés, en fonction du fichier de données fourni en 1er argument. Elle permet donc d'optimiser les conclusions des règles d'un SIF quelconque. |
-gTotV : critère d'arrêt, où TotV est la variance non expliquée en valeur relative par rapport à la variance totale (par défaut 0.01) |
-qNregles : critère d'arrêt, où Nregles est le nombre maximal de règles sélectionnées (par défaut 10 000). |
-v : réduction du vocabulaire de sortie. Par défaut, pas de réduction. |
-i : cette option ne fonctionne qu'avec l'option précédente -v, 2 possibilités pour choisir les conclusions des règles (voir section 6)
i=0 : les nouvelles conclusions des règles seront choisies en fonction des données de la sortie du fichier de données
|
-dPerfLoss : PerfLoss est la dégradation relative de performance autorisée lors de la procédure de réduction de vocabulaire (valeur par défaut=0.1) |
-mNConc :
NConc est le nombre maximal de conclusions différentes des règles autorisé lors de la procédure de rédcution de vocabulaire (par défaut, pas de limite) si les 2 paramètres PerfLoss et NConc sont donnés, priorité à NConc. |
-l : transformation de la sortie en sortie floue. Possible seulement avec la réduction de vocabulaire. |
-pTestFile : TestFile est le nom du fichier de données utilisé pour la seconde passe de l'algorithme, par défaut le même fichier que dans la première passe. |
-cOutputFIS : OutputFIS est le nom du fichier de configuration du FIS créé par l'OLS. |
-r pour supprimer les fichiers de travail |
-btestdatafile : testdatafile est nom du fichier de données utilisé pour calculer la performance du FIS résultat de l'OLS, par défaut le fichier de données. |
-eMumin : Mumin est le seuil d'appartenance minimum utilisé pour calculer la performance du FIS résultat, par défaut 0.2 |
-a : affichage des résultats intermédiaires. |
Exemple de ligne de commande :
ols rice
Le programme crée 5 fichiers résultats :
Num Index VarExp VarCum 1, 18, 0.305448, 0.305448, 2, 1, 0.176927, 0.482375, 3, 85, 0.110070, 0.592445, 4, 2, 0.086740, 0.679184, 5, 25, 0.070750, 0.749935, 6, 31, 0.038250, 0.788185, 7, 28, 0.035713, 0.823898, 8, 64, 0.025145, 0.849042, 9, 4, 0.019027, 0.868070, 10, 8, 0.015855, 0.883925, 11, 49, 0.013378, 0.897303, 12, 12, 0.012828, 0.910131, 13, 100, 0.012922, 0.923054, 14, 34, 0.012031, 0.935085, 15, 35, 0.007077, 0.942162, 16, 66, 0.007068, 0.949231, 17, 42, 0.006960, 0.956190, 18, 5, 0.006750, 0.962941, 19, 79, 0.005379, 0.968320, 20, 22, 0.004892, 0.973212, 21, 20, 0.005113, 0.978325, 22, 71, 0.004085, 0.982410, 23, 6, 0.003055, 0.985465, 24, 102, 0.002667, 0.988132, 25, 53, 0.001796, 0.989928,Autant de lignes que de règles induites.
Signification des colonnes pour chaque ligne: