Journal De la prédiction de l'auteur d'un journal sur linuxfr

59
12
avr.
2012

Voici un journal relatant une petite expérience que j'ai faite, c'est peut-être un peu HS, mais je trouve ça cool donc je m'y risque :)

Je me suis récemment demandé si il était possible, à partir d'une base de données de messages, de deviner l'auteur d'un message donné.
J'ai donc codé un script qui, à partir de l'analyse statistique de nombreux journaux sur linuxfr, devrait déterminer l'auteur d'un journal inconnu.

Le principe est simple : On regroupe les journaux de chaque auteur, et on regarde la densité de chaque mot, des caractères spéciaux (ponctuation…), des majuscules…
Il suffit ensuite, de regarder si la densité de ces éléments dans un journal inconnu est plus ou moins proche de celle des journaux de chaque auteur connu.

Il s'avère que ce système est plutôt concluant :

Prenons le dernier journal de paladar.
Je le donne à manger à mon script, qui va classer les 77 personnes pour lesquelles j'ai plus de 5 journaux en mémoire (histoire d'avoir une base à peu près solide de référence pour chaque personne), par ordre de probabilité qu'elle ait posté le message.
Après passage à la moulinette, mon script renvoie en première position paladar !
Il a donc, à partir de 8 lignes de texte, trouvé l'auteur du message parmi 77 personnes.

Si je prend le dernier journal de gnumdk, mon script sort gnumdk en 4è position (sur 77), il n'est donc pas premier, mais il est bien sorti de la masse.
Pour ce journal, niconico se retrouve en 2è position.
Et pour finir, si je prend une dépêche, patrick_g sort bien en première place, alors que mon script à seulement vu quelques journaux qu'il a pu rédiger.

On voit donc, qu'en faisant quelques statistiques sur un texte, on peut arriver à sortir l'auteur probable de ce dernier, avec pas mal de facilité.

Après, il arrive parfois que le script ne soit pas du tout pertinent (pour des personnes ayant un style d'écriture ressemblant trop à d'autres, si il y a des citations…), mais il l'est dans un bon nombre de cas.
La pertinence dépend d'ailleurs beaucoup de la taille du texte inconnu : Si il est tout petit, il est logique qu'il soit bien plus dur de trouver l'auteur.

On imagine donc qu'avec des techniques plus évoluées, il est possible d'avoir des résultats assez impressionnants.

Je vous donne l'archive contenant le fichier contenant les journaux ainsi que mes scripts, si vous souhaitez vous amuser, ou regarder le code source (les commentaires à ce sujet sont bienvenus). Je vous conseille d'utiliser pypy pour faire tourner les scripts (ça pourra les accélérer).

PS : Je tiens à remercier les serveur de linuxfr pour leur coopération lors de l'aspiration des journaux.

  • # Interessant

    Posté par . Évalué à 10.

    Y'a plus qu'a intégrer ça dans le code de DLFP afin de mettre directement à -100 les journaux postés par des multis de SamWang !

    • [^] # Re: Interessant

      Posté par . Évalué à 10.

      Je sais pas pourquoi, j'ai aussi pensé à SamWang comme première application…

  • # Ecriture Automatique

    Posté par . Évalué à 10.

    Bravo!

    Prochaine étape : faire en sorte de générer le contenu automatiquement :o)

  • # Une conférence du 28C3 qui est de circonstance

    Posté par (page perso) . Évalué à 10.

    • [^] # Re: Une conférence du 28C3 qui est de circonstance

      Posté par (page perso) . Évalué à 4.

      J'avais lu un article d'un gars qui montrait des techniques qu'il utilise pour détecter si des images avaient trafiquées ou pas.
      Je me dis que si on a accès aux outils de détection, ça doit être possible d'écrire d'autres outils qui permettent d'enlever des données les artefacts sur lesquels les premiers se basent.

  • # C'est exactement le même problème que la détection de spam

    Posté par (page perso) . Évalué à 10.

    C'est exactement le même problème que la détection de spam. Si tu entraînes un bogofilter, un dspam, un spamassassin ou tout autre système de classification statistique, tu obtiendras un résultat satisfaisant.

    Rien qu'une classification naïve bayesienne devrait donner d'excellent résultat. Avec un modèle de Markov Caché les résultats seront encore meilleurs.

    Il est trivial que chacun utilise le lexique d'une façon qui lui est propre et plus est, la combinaison de ce lexique est très différente en fonction des individus. Les méthodes statistiques n'ont aucun problème pour isoler ce genre de variation.

  • # Anonymat

    Posté par . Évalué à 10. Dernière modification le 12/04/12 à 16:08.

    On imagine donc qu'avec des techniques plus évoluées, il est possible d'avoir des résultats assez impressionnants.

    Oui, tu peux aussi t'appuyer sur des fautes d'orthographe, de grammaire et de conjugaison récurrentes, sur des habitudes syntaxiques (les virgules et parenthèses à rallonge en ce qui me concerne :D). Voire sur la structure grammaticale et l'organisation de la pensée : utilisation des mots de liaison, placement d'une thèse avant ou après les arguments qui la défendent..

    Finalement, ça doit demander un effort conscient assez important pour être réellement anonyme.

    C'est très intéressant, et assez inquiétant pour les gens qui cherchent à être anonymes.

    Ça voudrait dire qu'on peut avoir d'assez bons indices pour retrouver l'auteur d'un texte publié sur TOR ou Freenet (donc, techniquement anonyme), si l'auteur a par ailleurs publié des textes de façon identifiable.

    De même, on peut faire le lien entre deux identités différentes (nom/prénom, et pseudo).

    Après, il y a peut-être suffisamment de gens qui publient des choses sur Internet, pour qu'on ne puisse que réduire à un sous-ensemble l'auteur probable d'un texte. Ça donne néanmoins des pistes, et recoupé avec d'autres éléments (date/heure de publication, opinions exprimées..) ça pourrait permettre de retrouver, par exemple, qui a posté tel blog sur Freenet. Flippant.

    THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

    • [^] # Re: Anonymat

      Posté par . Évalué à 7.

      Quand tu connais bien quelqu'un, tu reconnais la personne dans son écriture. En tout cas ça m'est déjà arrivé.

      • [^] # Re: Anonymat

        Posté par . Évalué à 3.

        Es-tu certain que c'est l'écriture, ou bien les propos tenus ? Pour que ce soit pertinent, il faudrait que le texte que tu reconnais parle de quelque chose qui n'a pas de rapport avec la façon dont tu connais la personne.

        Si quelqu'un que je connais postait, sur Freenet, un message dont je ne me serais pas attendu à ce qu'il soit l'auteur (par exemple, un ami gay qui le cacherait à tout le monde et tiendrait un blog sur Freenet pour expliquer pourquoi il ne fait pas de coming out), je ne suis pas certain du tout d'identifier, "à l'oeil nu", son style.

        Par contre, des outils comme celui présenté dans ce journal pourraient très bien me permettre de lier son blog, à un long mail qu'il m'a envoyé, en s'attachant à des détails qui ne sautent pas aux yeux.

        THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

        • [^] # Re: Anonymat

          Posté par . Évalué à 5.

          Contenu et forme.

          C'est pas du 100%, mais les gens ont parfois des tics d'écriture, comme d'enchaîner des génitifs ou des faire des subordonnées, ou de faire des sous-entendus d'une certaine manière. Ça peut s’appeller «avoir un style».

          Et il y a des contenus où vu la prise de position et le style, c'est très probablement untel. Dans une salle de classe par exemple, en lisant des copies, même sans l'écriture manuscrite, on peut reconnaître les méthodes de rédaction des uns ou des autres.

    • [^] # Re: Anonymat

      Posté par . Évalué à 10. Dernière modification le 12/04/12 à 19:39.

      En fait, c'est utile d'être schizo !

      • [^] # Re: Anonymat

        Posté par . Évalué à 10.

        C'est pas nous qui dirons le contraire !

        Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

      • [^] # Re: Anonymat

        Posté par . Évalué à 3.

        D'ou l'interet d'avoir plusieurs cerveaux?

  • # Monomanie

    Posté par . Évalué à 2.

    En ce qui me concerne, vu que (sur linuxfr et politiquedunetz en tout cas), je suis assez monomaniaque, c'est pas très difficile de deviner statistiquement en fonction des termes mes journaux. Et vu les suites sur Dita, les spécialistes des news du noyau, les news purement politiques qui dénoncent etc…, il y a quelques auteurs qui sont prévisibles.

  • # Cool

    Posté par . Évalué à 7.

    Ce n'est pas vraiment nouveau, c'est simplement du BI, du data mining, du machine learning ou du système d'information décisionnel, mais j'adore ce genre de système ça peut apporter énormément de choses.

    Tu as utilisé quelle technique plus particulièrement ? Tu as évalué la pertinence de tes variables (sont-elles bien discriminantes) ?

    Il y a une petite éternité, j'avais eu l'idée d'utiliser ce genre de techniques pour détecter de manière automatique les journaux/dépêches à troll : https://linuxfr.org/users/barmic/journaux/id%C3%A9e-de-fonctionnalit%C3%A9-%C3%A0-la-noix. Le peu d'intérêt montré à l'idée m'a pas motivé à aller plus loin.

    Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

    • [^] # Re: Cool

      Posté par . Évalué à 2.

      C'est sur que si tu utilises un outil comme ceux présenté plus haut pour prédire le nombre de commentaire, cela pourrait être marrant (genre trollomètre).

      "La première sécurité est la liberté"

      • [^] # Re: Cool

        Posté par . Évalué à 5.

        Les cas d'usages sont monstrueux (dans tout les sens du terme). On parle souvent de Wallmark et de leur bière+couches, mais ça peut servir pour détecter de la fraude fiscale, pour l'analyse de cours de la bourse. Il y a des travaux en cours pour s'en servir dans l'analyse de traces/logs (on détecte des motifs et on les mets en évidences). Gimp s'en sert pour l'outil d'extraction de premier plan (et probablement dans d'autres). Le scheduler du noyau s'en sert aussi probablement (bien qu'il ai des contraintes de performances qui ne lui permettent pas d'utiliser des algorithmes trop poussés).

        En cours on avait eu un projet ou à partir des drapeaux de nations (des valeurs booléennes pour la plupart : contient il du rouge ? un cercle ? un animal ?) on cherchait la langue, la région du monde, la religion et la superficie du pays. C'était pas trop mauvais pour une description aussi simpliste (si on décrit les drapeaux de manière plus précise, par exemple avec la proportion des couleurs, on aura des résultats encore bien meilleurs).

        Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

        • [^] # Re: Cool

          Posté par . Évalué à 3.

          Il y a un autre exemple : les jeux en ligne qui devinent "ce à quoi on pense" en posant des questions. Généralement, une dizaine suffisent. Le plus étonnant est que les questions qui se suivent semblent parfois sans rapport les unes avec les autres ("Est-ce que ça se mange ?", "Est-ce que c'est un film produit aux USA ?"), et le logiciel trouve tout à coup la réponse après une énième question d'apparence anodine.

          Nous sommes si prévisibles, nous humains :)

          THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

          • [^] # Re: Cool

            Posté par . Évalué à 4.

            "Nous sommes si prévisibles, nous humains :)"

            Le plus emmerdant c'est surtout qu'on soit prévisibles par d'autres humains.

          • [^] # Re: Cool

            Posté par . Évalué à 10.

            Nous sommes si prévisibles, nous humains :)

            Merde et moi qui croyait que les femmes etaient humaines! Pourtant j'y comprend toujours rien :)

            • [^] # Re: Cool

              Posté par . Évalué à 2.

              Nous sommes si prévisibles, nous humains :)

              Merde et moi qui croyait que les femmes etaient humaines! Pourtant j'y comprend toujours rien :)

              Mdr, lol, ptdr !
              Ca me rappelle cette image où l'on voit une sorte d'ordinateur nommé "Femme" avec trop plein de boutons et de manettes, tandis qu'à côté il y a un ordinateur avec un seul bouton on-off nommé "Homme". Qu'est-ce qu'on s'était marré avec les potos quand on avait trouvé ça ! Il y en a même un qui avait mis ça en fond d'écran à la place de la traditionnelle Nimage !

              PS : moi non plus je ne comprends rien aux femmes, il n'y en a aucune de bien qui veut de moi :'(

              • [^] # Re: Cool

                Posté par (page perso) . Évalué à -4.

                Si une femme qui aurait fait une telle image, elle aurait fait l'inverse… en pire !

                (ce n'est drôle que lorsqu'on est un mec ignorant)

                ce commentaire est sous licence cc by 4 et précédentes

                • [^] # Re: Cool

                  Posté par . Évalué à 3. Dernière modification le 13/04/12 à 15:26.

                  "(ce n'est drôle que lorsqu'on est un mec ignorant)"

                  Allons allons, c'est bien édulcoré, t'as peur du moinssage ou du qu'en-dira-t-on ? Je suis sûr que t'avais envie de dire "ceux qui rigolent sont des cons".
                  Moi j'hésite pas, je dis : les cons, c'est ceux qui cherchent à rabaisser ceux qui rigolent.

                  • [^] # Re: Cool

                    Posté par (page perso) . Évalué à 0. Dernière modification le 13/04/12 à 17:18.

                    Euh non, pas du tout ! Mais ce n'est pas du tout ce que j'avais envie de dire ! Je n'avais pas du tout l'intention de dire que quelqu'un était un con !

                    Justement, je ne veux pas faire l'erreur de "si je ne comprends pas, c'est qu'il a tord" qui glisse vite vers le "si je ne comprends pas c'est qu'il est con", ce qui est exactement le raisonnement sur lequel se base la blague suscitée.

                    Ce n'est pas qu'une question homme/femme, ça marche entre tout les hommes dès qu'il y a incompréhension. Lorsqu'on n'est pas d'accord avec quelqu'un, le réflexe primaire, le réflexe ignorant n'est pas de se demander si on ne l'aurait pas compris, non c'est "il est con".

                    Il semble que toi même tu ne m'aies pas compris (si effectivement le commentaire "les cons, c'est ceux qui cherchent à rabaisser ceux qui rigolent" me désigne, ce qui est à confirmer), et tu aurais d'abord pensé "qu'est ce que sa réaction est conne, donc c'est un con", alors que pourtant tu aurais pu te poser la question "qu'est ce que sa réaction me semble conne ! pourquoi ce gars qui n'est peut-être pas con me parait si con ? qu'est ce que j'ai pas compris ?". Celui qui se pose cette question n'es plus ignorant : il n'est plus celui qui ne sait pas, il est celui qui sait qu'il ne sait pas.

                    L'ignorant est celui qui attribue à l'erreur ce qu'il ne connaît pas.
                    Quand Paul fait une blague "haha, Pierre est incompréhensible, quel con, haha", Pierre peut rire de la même blague, exactement la même blague : "haha, Paul ne m'a pas compris, quel con, haha".

                    Tiens je réécris le commentaire d'Alek_Lyon avec un autre regard :

                    Ca me rappelle cette image où l'on voit une sorte d'ordinateur nommé "Femme" avec trop plein de boutons et de manettes, tandis qu'à côté il y a un ordinateur avec un seul bouton on-off nommé "Homme". Qu'est-ce qu'on s'était marré avec les copines de savoir que les hommes trouvent ça drôle ! Il y en a même une qui avait remplacé le bouton on-off par un bouton poussoir "être con" !

                    L'ignorant croit savoir (mais ne sait pas cela, et ne veut pas le savoir). Le savant remet en cause ce qu'il croit savoir (parce qu'il le sait qu'il peut savoir, et il le veut).

                    ce commentaire est sous licence cc by 4 et précédentes

                    • [^] # Re: Cool

                      Posté par (page perso) . Évalué à 2.

                      L'ignorant est celui qui attribue à l'erreur ce qu'il ne connaît pas.

                      L'ignorant est celui qui attribue à l'erreur, ou à la bêtise, ou à la malintention ce qu'il ne connaît pas.

                      On dit parfois qu'il ne faut pas attribuer à la malice [d'un autre] ce qu'il faudrait attribuer à sa bêtise, on omet d'ajouter qu'il ne faut non-plus pas attribuer à l'autre ce qu'il faudrait attribuer à sa propre ignorance.

                      ce commentaire est sous licence cc by 4 et précédentes

                    • [^] # Re: Cool

                      Posté par . Évalué à 1. Dernière modification le 13/04/12 à 17:35.

                      "Celui qui se pose cette question n'es plus ignorant : il n'est plus celui qui ne sait pas, il est celui qui sait qu'il ne sait pas."

                      Super philosophique, donc pour résumer tout ton commentaire, si on passe à l'étape supérieure de la branlette intellectuelle, on trouve les blagues pas droles ? C'est cool !

                      • [^] # Re: Cool

                        Posté par (page perso) . Évalué à 1.

                        c'est pas une question de branlette intellectuelle, c'est une question d'altérité, donc une question sociale :)

                        puis bon, je trouve cette image drôle aussi, mais surtout à cause de l'immensité des sens qu'on peut lui donner, et comme on dit "tel est pris qui
                        croyait prendre", on ne sait pas qui rit au dépend de qui. On remarquera que tous les deux ont un unique bouton on/off, et donc sont aussi simples pour la même chose. L'ironie ne porte peut-être pas sur la simplicité :)

                        Dans la même idée il y a celle-là également : How men and women see colors mais c'est aussi à double tranchant ;)

                        ce commentaire est sous licence cc by 4 et précédentes

              • [^] # Re: Cool

                Posté par . Évalué à 6. Dernière modification le 13/04/12 à 17:23.

                Bon. O_O

                Est-ce que la prise au second degré de la kikoulolité de ce post-là est décidable avec un script python ?

            • [^] # Re: Cool

              Posté par . Évalué à 0.

              Ah, eh bien mon cher monsieur, pour bien comprendre les femmes il faut avoir fait un peu de physique théorique. En effet, les hommes et les femmes ne sont pas régis par les mêmes lois de la physique :

        • [^] # Re: Cool

          Posté par . Évalué à 3.

          Le noyau linux ne peut pas utiliser ce genre d'outil car ce n'est pas déterministe du tout dans le sens qu'il peut être impossible de prédire un pire cas.

          C'est le genre d'algo qui ferait que de temps en temps ta machine freeze 2s car l'algo a fait une mauvaise prédiction.

          "La première sécurité est la liberté"

          • [^] # Re: Cool

            Posté par . Évalué à 1.

            On peut prouver sur beaucoup d'algos que le pire cas n'arrive que moins d'une fois toutes les X itérations en moyenne. C'est tout à fait acceptable qu'un ordinateur freeze 2s une fois tous les millions d'années :)

            • [^] # Re: Cool

              Posté par . Évalué à 4.

              En général, c'est une fois sur 100 milliard, ce qui arrive en fait toutes les minutes.

              En général, tous les problèmes de freeze et autre ralentissement ou latence ne se produisent plus si tu considère les algorithmes plus souvent sous l'angle du pire cas.

              Mais j'aimerais bien ce genre d'algo pour les boites de dialogue d'ouverture de fichiers, qui se plantent 9 fois sur 10 sur le répertoire qui m'intéresse.

              "La première sécurité est la liberté"

          • [^] # Re: Cool

            Posté par . Évalué à 1.

            Il utilise des statistiques des processus pour déterminé celui qui doit prendre la main, si ce n'est pas du data mining, je ne vois pas ce que ça peut être d'autres. Il suffit d'aller voir la gestion dynamique du writeback du noyau 3.2.

            Donc non ils n'utilisent pas le même algorithme, mais ça reste du data mining.

            Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

            • [^] # Re: Cool

              Posté par . Évalué à 5.

              Faut pas trop s'enflamer non plus avec le buzzword. Si on te suis on pourra bientôt faire entrer un cache LRU ou algorithme basé sur un exponential decay dans le domaine du data mining.

              Non rien dans le noyau n'a de près ou de loin avoir avec le data mining.

    • [^] # Re: Cool

      Posté par (page perso) . Évalué à 2.

      Actuellement, plus il y a une différence entre la moyenne d'une personne et celle des autres, plus la variable sera discriminante.
      Je voulais aussi prendre en compte l'écart type, mais ça ne changeait absolument rien (pourtant je suis certain que l'idée avait du sens). Ça aurait permis de seulement garder les variables discriminantes pour l'énorme majorité des utilisateurs.

  • # Postule !

    Posté par . Évalué à 10.

    Tu es prêt à être embaucher chez Siemens-Syrie avec ce système.

    • [^] # Re: Postule !

      Posté par . Évalué à 3.

      Ou pour un antivirus ou un antispam ou un IDS quelconque voir même pour facebook que tu semble apprécier.

      Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

  • # Du coup...

    Posté par . Évalué à 10.

    Vous voulez rester anonyme sur DLFP ? Faites des journaux-bookmarks !

    • [^] # Re: Du coup...

      Posté par . Évalué à 5.

      Sur 4chan ça ne marche pas comme technique.

      Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

  • # Je ne comprends pas à quoi ça sert !

    Posté par . Évalué à 10.

    Je ne comprends pas à quoi ça sert !

    Si tu veux savoir qui est l'auteur d'un journal: c'est écrit juste en dessous du titre, à droite de "Posté par ".

    • [^] # Re: Je ne comprends pas à quoi ça sert !

      Posté par . Évalué à 3.

      Un prof m'avais expliqué qu'il y avait eu une thèse sur un sujet qui s'en approche. À partir de l'analyse du vocabulaire construire une sphère qui identifie l'auteur (chacun de ses écris se trouve dans cette sphère). Tu peut faire des analyses très poussé avec ce genre de chose et cartographier les personne selon des zones géographiques ou selon leur position sociale (utilise-t'ont le même vocabulaire partout en France et dans quel proportion ?).

      De plus il s'était amusé à passer à la moulinette les œuvres d'auteurs français classiques, dont Molière et Corneille. Il faut savoir qu'un vieux troll existe au sujet de ses deux auteurs certains affirment que Corneille aurait écris les œuvres de Molière. Je n'ai pas le résultat du test, mais ce prof m'avait expliqué que certaines œuvres attribuées à Molière étaient dans la sphère de Corneille (alors que le reste des sphères ne se touche pas). Ça n'est pas une preuve (et de toute manière les deux sont morts il y a plus de 90 ans), c'est juste une manière d'ajouter une pierre à l'édifice de ce troll littéraire.

      Les logiciels sous licence GPL forcent leurs utilisateurs à respecter la GPL (et oui, l'eau, ça mouille).

      • [^] # Re: Je ne comprends pas à quoi ça sert !

        Posté par (page perso) . Évalué à 5.

        Sur ce sujet (paternité des oeuvres de Molière) et sur la pertinence de ce genre d'outils, je conseille la lecture de l'excellent résumé de wikipédia Paternité des œuvres de Molière (la partie "Critique…"):
        Les 2 études attribuant à Corneille les oeuvres de Molière ont été très critiquées, notamment par des statisticiens. D'autre part des études ultérieures ont montré que la proximité observée entre Molière et Corneille n'a rien d'exceptionnelle et se retrouve sur plein d'autres auteurs.

        Bref, ce genre d'outil, fut-il écrit par un éminent linuxéfèrien, n'est pas fiable, et notre anonymat a encore de beaux jours devant lui.

        PS: ça me rappelle le roman de Soljénitsyne "Le premier Cercle" dans lequel on cherche à identifier l'auteur d'un coup de téléphone.

        "La liberté est à l'homme ce que les ailes sont à l'oiseau" Jean-Pierre Rosnay

    • [^] # Re: Je ne comprends pas à quoi ça sert !

      Posté par . Évalué à 2.

      Pour savoir si le système ne te ment pas.

  • # Fichier .dat

    Posté par (page perso) . Évalué à 1.

    C'est peut-être une question idiote (j'ai peut-être raté un paramètre du script), mais le fichier .dat contenant les journaux qui est dans l'archive zip, il est généré commenent ?

  • # J'écris comme ... et détection de plagias

    Posté par . Évalué à 4.

    c'est marrant ce journal, hier j'étais justement tombé sur un site qui d'après votre style d'écriture le rapprochait d'un écrivain ou d'un autre .

    En anglais :
    http://iwl.me/

    I Write Like

    j'ai mis un début d'histoire et j'ai eu :
    Leo Tolstoy

    Puis un poème :
    David Foster Wallace

    Autre chose , j'étais en train de me demandé comment fonctionnaient les algorithmes qui détectent le plagias. Dans mon unif , on doit envoyé nos travaux vers une site qui est sensé détecter le plagias. Le bidule s'appelle Euphorus. Une idée ?

    Je me demande ce qu'il arrive à l'élève qui est sensé avoir plagiés (je veux dire pour se défendre )

  • # Caméléon

    Posté par . Évalué à 2.

    je me demande si, l'on peut trompé ton script en essayant délibérément d'avoir une écriture caméléon

    • [^] # Re: Caméléon

      Posté par (page perso) . Évalué à 2.

      J'ai lu une étude qui indiquait que même en se forçant, on ne pouvait jamais arriver à copier l'intégralité du style de quelqu'un.

      Ah, et il y a une variable que mon script prend en compte (et que je trouve trop puissante), c'est les successions de caractères spéciaux.
      Comme ça, quelqu'un qui passe à la ligne souvent, quelqu'un qui saute toujours deux lignes, quelqu'un qui colle ses points d'exclamations à son texte, quelqu'un qui utilise des «», des espaces insécables, des … (bépo ?), quelqu'un qui met des espaces avant ses virgules… Sera assez facilement distingué des autres.

      Bon, après je pense que le gros problème de mon script, c'est la façon dont je détermine le poids (l'influence) d'un paramètre. Je suis sûr qu'il y a moyen de faire beaucoup mieux.

      • [^] # Re: Caméléon

        Posté par . Évalué à 2.

        Ça date un peu, mais à la fac j'avais utilisé Weka) pour m'aider à déterminer les variables discriminantes d'un jeu de données lors d'un TP de data mining.

      • [^] # Re: Caméléon

        Posté par . Évalué à 1.

        Attention à ça, les "…" sont remplacés par le site, et pareil pour certains des espaces débiles là. https://linuxfr.org/nodes/90218/comments/1339306

        • [^] # Re: Caméléon

          Posté par (page perso) . Évalué à 4.

          Je cite pour ceux que ça intéresse !

            def normal_text(text)
              text.gsub('« ', '« ').
                   gsub(/ ([:;»!?])/, ' \1').
                   gsub(' -- ', '—').
                   gsub('...', '…')
            end
          
          

          Je viens donc de découvrir que je peux me passer des ' ' pour garantir mes espaces insécables (parce que j'ai l'impression que certains systèmes n'affichent pas correctement ce caractère unicode). Mais je crois que mon habitude est devenue trop forte !

          ce commentaire est sous licence cc by 4 et précédentes

      • [^] # Re: Caméléon

        Posté par (page perso) . Évalué à 2.

        quelqu'un qui colle ses points d'exclamations à son texte, quelqu'un qui utilise des «», des espaces insécables, des … (bépo ?)

        Même sans bépo (comme en ce moment où je ne suis pas chez moi) : je met habituellement une espace insécable avant les ponctuations doubles, j’écris aussi les «», les… et justement en lisant ton journal (avant de lire ce commentaire), je m’étais dit que cette simple habitude pouvait suffire à me repérer :D.
        Même si j’ai une tournure d’esprit assez reconnaissable, on pourrait se limiter à l’analyse des caractères pour m’identifier.

        ce commentaire est sous licence cc by 4 et précédentes

        • [^] # Re: Caméléon

          Posté par (page perso) . Évalué à 3.

          Bah il y a assez de typo‐nazis ici pour que ce simple critère ne suffise pas à te détecter…

          De ses yeux vastes comme des océans, encroûtés de chassie et de poussière d'astéroïdes, Elle fixe le But Ultime.

          • [^] # Re: Caméléon

            Posté par . Évalué à 2.

            Hehe, ça va aider à les retrouver quand on fera la chasse aux (typo-)nazis.

          • [^] # Re: Caméléon

            Posté par (page perso) . Évalué à 2.

            Tiens, en relisant mon commentaire précédent, je me suis posé une question…

            testons : ceci est une espace insécable fine de typonazi
            testons : ceci est une espace insécable insérée par DLFP

            En effet ce n'est pas la même chose, l'espace que DLFP ajoute automatiquement est bien insécable, mais est de même taille que celle qui suit le double-point, hors celle qui précède doit être plus fine !

            exagérons :
            insécable : insécable : insécable : insécable : insécable : insécable : insécable (àlamano)
            insécable : insécable : insécable : insécable : insécable : insécable : insécable (DLFP)

            J'ai donc gagné ma médaille de typonazi ? mais il y en aura certainement pour dire que je n'utilise pas la bonne espace ;)

            ce commentaire est sous licence cc by 4 et précédentes

            • [^] # Re: Caméléon

              Posté par (page perso) . Évalué à 5.

              En effet ce n'est pas la même chose, l'espace que DLFP ajoute automatiquement est bien insécable, mais est de même taille que celle qui suit le double-point, hors celle qui précède doit être plus fine !

              Pas forcément, tous les typographes ne sont pas d’accord là-dessus. En gros, il y a deux écoles :
              – espace fine avant toutes les ponctuations doubles ;
              – espace fine avant toutes les ponctuations doubles, sauf le double-point devant lequel on met une espace-mots insécable (soit la même espace que celle qui suit le double-point).

              Mais on peut ergoter là-dessus à l’infini, et Jean-Pierre Lacroux suggère par exemple qu’il serait « mieux » que l’espace avant le double point soit « légèrement plus petite que la justifiante (mais plus grande qu’une fine…). »

              • [^] # Re: Caméléon

                Posté par (page perso) . Évalué à 3.

                merci ! c'est grâce à des gens comme toi qu'une certaine exigence typographique ne suffira pas à me reconnaître :D

                ce commentaire est sous licence cc by 4 et précédentes

                • [^] # Re: Caméléon

                  Posté par (page perso) . Évalué à 5.

                  À ton service.

                  Mais à mon avis tu ne risques pas grand’chose : si tu ne mets pas de majuscule au début des phrases ni de point à la fin (sauf à considérer qu’un smiley peut se substituer à la ponctuation finale, ce qui n’est pas évident), quiconque cherche un « typonazi » ne s’arrêtera pas sur toi. ;)

  • # Analyse complémentaire

    Posté par (page perso) . Évalué à 10.

    Bon, on a tous déjà pensé à détecter les réincarnations linuxfriennes de SamWang;

    Maintenant, penche-toi sur une autre question fondamentale pour le site:
    pBpG, c'est une ou plusieurs personnes??

  • # Tout petit

    Posté par (page perso) . Évalué à 0.

    Si il est tout petit, il est logique qu'il soit bien plus dur de trouver l'auteur.

    Ben pour l'instant il habite toujours au 55 faubourg Saint Honoré, Paris VIII, l'auteur tout petit.

  • # Machine Learning

    Posté par (page perso) . Évalué à 4.

    Bravo! Juste un commentaire: plutôt que de repartir de zéro, tu aurais pu utiliser une blibliothèque de machine learning (comme scikits.learn), qui a l'avantage de proposer un bon nombre d'algorithmes dernier cri avec un API commune. Cela permet de tester facilement tous ces algorithmes et de retenir celui qui marche le mieux avec le problème qu'on a.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.