Cliquez ici.
Cliquez ici.
Accueil
 chercher             Plan du site             Info (English version) 
L'histoire de XML s'écrit en ce moment même. XMLfr vous aide à la suivre et à en dégager les tendances.Les listes de discussions XMLfr sont à votre disposition pour réagir sur nos articles ou simplement poser une question.Si vous ètes passionnée(e) par XML, pourquoi ne pas en faire votre métier ?XMLfr n'est heureusement pas le seul site où l'on parle de XML. Découvrez les autres grâce à XMLfr et à l'ODP.Les partenaires grâce auxquels XMLfr peut se développer.Pour tout savoir sur XMLfr.XMLfr sans fil, c'est possible !Pour ceux qui veulent vraiment en savoir plus sur XML.L'index du site.

 
Cliquez ici.

dev@xmlfr.org : liste de discussion des développeurs du site XMLfr

[dev@xmlfr.org] Moteur de recherche : 1er essais avec boost

From: Eric van der Vlist (vdv@dyomedea.com)
Date: 15/07/2004 - 11:59


Bonjour,

Je viens de mettre en ligne une première version avec un boost factor.

L'adresse est toujours la même : http://beta.xmlfr.org/lucene/ mais vous
avez maintenant un deuxième bouton radio permettant de sélectionner si
vous voulez travailler sur l'index "boosté" (par défaut) ou sur l'index
"brut" (sans boost).

L'algorithme utilisé est celui décrit dans un mail précédent :

      * Article = 4, brève = 2, courriel écrit par un rédacteur XMLfr =
        2, autre courriel = 1.
      * Division par deux de ce coefficient pour chaque année d'age.

Je l'ai implémenté d'une manière assez simple pour ne pas dire bestiale
(cf
http://dev.xmlfr.org/cgi-bin/viewcvs.cgi/xmlfr-beta/sources/org/xmlfr/lucene/Indexer.java?view=auto&rev=713):

        private void boost(Document doc) {
                float boost = 1;
                String type = doc.get("type");
                if (type.equals("article")) {
                        boost = 4;
                } else if (type.equals("brève")) {
                        boost = 2;
                } else if (type.equals("courriel")) {
                        boost = 1;
                }
                long date;
                try {
                        date = isoDateFormat.parse(doc.get("date")).getTime();
                } catch (java.text.ParseException e) {
                        date = dateCourante - (365 * 24 * 60 * 60 * 1000);
                        e.printStackTrace();
                } catch (java.lang.NullPointerException e) {
                        // TODO: voir pourquoi on arrive là !
                        date = dateCourante - (365 * 24 * 60 * 60 * 1000);
                        e.printStackTrace();
                }
                long elapsed = dateCourante - date;
                boost =
                        boost * (float) Math.pow(2, -elapsed / (365 * 24 * 60 * 60 * 1000));
                doc.setBoost(boost);
        }

Il ne semble pas avoir exactement l'effet escompté : sur la requête
http://beta.xmlfr.org/lucene/?query=auteur%3Avlist&sort=none&boost=yes&Chercher=Chercher où je m'attendais à voir tous les articles vieux de moins d'un an avant la première brève, je vois des brèves passer avant des articles récents.

Néanmoins, si je compare les résultats de recherche sur l'index
"boosté", ils me semblent généralement bien meilleurs que ceux sur
l'index "brut".

Qu'en pensez-vous?

Merci,

Eric

-- 
                         Generated by Signify v1.14.
                For this and more, visit http://www.debian.org/
Upcoming XML schema languages tutorial:
 - Portland   -half day-   (27/07/2004)        http://masl.to/?E6ED13728
------------------------------------------------------------------------
Eric van der Vlist       http://xmlfr.org            http://dyomedea.com
(ISO) RELAX NG   ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
------------------------------------------------------------------------

-- Devenez redacteur <XML>fr et contribuez au developpement du xml francophone (http://xmlfr.org/infos/redacteurs/) !

Liste de diffusion "dev@xmlfr.org" (http://xmlfr.org).

Cette liste est a votre disposition pour discuter en francais de tout sujet technique lie au developpement du site XMLfr.

Pour resilier votre abonnement, envoyez un message contenant la commande "unsubscribe" a dev-request@xmlfr.org (mailto:dev-request@xmlfr.org?Subject=unsubscribe)



Archive générée par hypermail 2.1.3 le 21/07/2004 - 21:32 UTC

webmaster@xmlfr.org

 

dev@xmlfr.org

Liste de discussion de la communauté des développeurs de XMLfr.

Cette liste publique est dédiée aux discussions concernant la conception et le développement technique du site XMLfr.



Cliquez ici.
Cliquez ici.

Devenez rédacteur <XML>fr et contribuez au développement du xml francophone !
Les documents publiés sur ce site le sont sous licence "Open Content"
Conception graphique
  l.henriot  

Conception, réalisation et hébergement
Questions ou commentaires
  redacteurs@xmlfr.org