Blame view

tools/SIGMUND/LIA_topic_seg/src/Test.java 4.35 KB
e6be5137b   Jean-François Rey   reinitialized pro...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
  
  import LIA_topic_seg.*;
  import java.io.*;
  import java.util.*;
  
  /**
   * Cet exemple recense la plupart des possibilitŽs pour une utilisation minimale de l'application
   * l'exŽcution directe applique les paramtres par dŽfaut.
   *
   */
  class Test
  {
    public static void main(String args[])
    {
    	try
    	{
    		//crŽation d'une configuration avec les paramtres par dŽfaut
    		DefaultConfig c = new DefaultConfig();
    		
    		//  	lorsque on veut utiliser un fichier de configuration connu ˆ l'avance
    		//c.load("config3.xml");
    		
    		//on peut rŽcupŽrer Žgalement les paramtres en ligne de commande
    		//en cas de conflit avec le fichier de configuration, c'est la ligne de commande qui est prioritaire
           //c.setParamsFromCmdLine(args); // on peut ajouter des paramtres en ligne de commande Žgalement (nom du fichier, nombre de frontires ˆ calculer, ...)
    		
    		//c.save("config.xml");
    		
    		/* 	pour passer un fichier de configuration en paramtre
    		DefaultConfig cc = new DefaultConfig(); 
    		cc.setParamsFromCmdLine(args);
    		DefaultConfig c = new DefaultConfig();  		
    		if (cc.getParam("config") != null)
    			c.load(cc.getParam("config"));
    		c.setParamsFromCmdLine(args);
    		c.save("config3.xml");
    		*/
        System.out.println(c.toString());
        
        //--------------------------------------------------------------------------
        //InputData input = new InputData(c, c.getParam("file"));
        DefaultInputData input = new DefaultInputData(c, "0.xml");
        
        //--------------------------------------------------------------------------
        DefaultLexicalChainList chains = new DefaultLexicalChainList(input);
  
    /* impression de la trace du calcul des liens lexicaux   
        System.out.println("Liste des phrases");
        System.out.println("=================");
        System.out.println(input.toString());
  
        System.out.println("
  Dictionnaire des lemmes");
        System.out.println("=======================");
        System.out.println(input.lemmaDict.toString());
  
        System.out.println("
  Chaines lexicales");
        System.out.println("=================");
        System.out.println(chains.toString(false, false));
  */      
        //--------------------------------------------------------------------------
        
        DefaultGapsScores scores = new DefaultGapsScores(chains, input.sentenceCount());
        
        // choix du calcul des valeurs affectŽes aux intervalles
       // fonction automatiquement lancŽe ˆ l'initialisation : scores.compute_cos(); //similaritŽs cosine
        System.out.println(scores.to_string());
        
        //les autres fonctions de calcul des scores sont facultatives, et peuvent tre lancŽes successivement.
        scores.compute_smoothing(1); //lissage du calcul des similaritŽs
        System.out.println(scores.to_string());     
         //scores.compute_depth_scores(); //calcul des scores de profondeur de similaritŽ, peut s'utiliser avec ou sans lissage
        //System.out.println(scores.to_string());
       
        
        //--------------------------------------------------------------------------
            DefaultBoundaries bound = new DefaultBoundaries(scores, 9);
       // DefaultBoundaries bound = new DefaultBoundaries(scores, c.getParam("n");
        
            // choix du systme de calcul des frontires, en fonction du calcul choisi prŽcŽdemment
            // il faut en choisir 1 parmi les 3
        //bound.compute_min_similarities(); //ˆ utiliser aprs compute_cos et/ou compute_smoothing
        bound.compute_loc_min(2); //ˆ utiliser aprs compute_cos et/ou compute_smoothing
        // bound.compute_max_depth(); //ˆ utiliser aprs compute_depth_scores
        
        
        //--------------------------------------------------------------------------
        //impression du rŽsultat ˆ l'Žcran
        System.out.println(bound.to_string()); //numŽros de phrases aprs lesquelles il y a une frontire thŽmatique
        System.out.println(input.result_lines(bound)); // sortie pour les application d'Žvaluation
       // System.out.println(input.result_complete(bound)); //sortie au mme format que l'entrŽe, avec les mmes informations
       // System.out.println(input.result_text_only(bound)); //sortie au format xml, avec uniquement le texte dŽlimitŽ par des balises <seg>
        
        
      }
      catch (Exception e)
      {
        e.printStackTrace();
      }
    }
  }