import LIA_topic_seg.DefaultBoundaries; import LIA_topic_seg.DefaultConfig; import LIA_topic_seg.DefaultGapsScores; import LIA_topic_seg.DefaultInputData; import LIA_topic_seg.DefaultLexicalChainList; public class Test2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub 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()); //-------------------------------------------------------------------------- DefaultInputData input = new DefaultInputData(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("\nDictionnaire des lemmes"); System.out.println("======================="); System.out.println(input.lemmaDict.toString()); System.out.println("\nChaines 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, 3); DefaultBoundaries bound = new DefaultBoundaries(scores, new Integer(c.getParam("n")).intValue()); // 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 } catch (Exception e) { e.printStackTrace(); } } }