Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[NE PAS FUSIONNER] Exemple d'implémentation pour raccourcisseur d'URL #105

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Aluriak
Copy link
Contributor

@Aluriak Aluriak commented Feb 28, 2019

Holà !

L'idée serait de faire un raccourcisseur d'url qui conserve un côté humain (donc, pas un uuid à la place des mots), et qui préserve l'unicité des sons (sinon, c'est buggé).

Voici une preuve de concept qui implémente ça.

L'idée : chercher les mots spécifiques à un nom de fichier (par exemple, voila_cest_pro.mp3 est le seul fichier à utiliser le mot voila), en choisir un (pour le moment, c'est juste le plus grand mot, ou le plus grand qui contient un z).

Pour ceux qui n'ont pas de spécifiques (55 d'entre eux), j'utilise ASP (un langage logique orienté NP-complet/contraintes, qui ressemble à prolog) pour trouver un ensemble minimal de mots à associer à chaque fichiers, de manière à ce qu'il n'y ait pas de doublons (par exemple, pour ca_change_tout.mp3 et mais_qu_est_ce_que_vous_voulez_que_ca_me_foute.mp3, on peut pas leur associer juste ca au deux, sinon ya doublon, donc faut d'autres mots, mais pas trop svp sinon c'est pas un raccourcisseur efficace). Dans les faits, je le laisse patiner 30 secondes max, parce qu'il pourrait tourner BEAUCOUP plus longtemps.

Questions ouvertes :

  • faudrait-il travailler sur la réplique plutôt que sur le nom de fichier ?
  • quelle règle pour déterminer quel mot spécifique est le plus représentatif ?
  • comment intégrer ça dans le site ?
  • quid de l'opération inverse : trouver la réplique la plus proche d'un ensemble de mots donnés ?

@2ec0b4
Copy link
Owner

2ec0b4 commented Feb 28, 2019

Salut,

Intéressant comme démarche.

Pour répondre à tes questions :

  • je pense que les noms des fichiers sont assez représentatifs des répliques. Ta preuve de concept reste donc pertinente pour moi
  • je ne suis pas spécialiste en traitement de langue mais est-ce que le type de mot ne serait pas un des principaux critères ? On privilégierait peut-être d'abord les verbes, puis les noms... pas facile comme question
  • tout d'abord, je ne pense pas que ce soit aux contributeurs de gérer ça. Ensuite, s'il y a eu une première passe, comme tu as pu le faire avec ton script, il faut pouvoir conserver l'historique des correspondances entre réplique / fichier audio et identifiant du raccourcisseur d'URL. A chaque nouveau fichier, le script déterminerait le meilleur identifiant non déjà existant. Avant de mettre en ligne le projet, j'ai une étape d'optimisation. Ca pourrait intervenir à ce moment ?
  • je ne comprends pas l'utilité ?

@Aluriak
Copy link
Contributor Author

Aluriak commented Mar 1, 2019

  • cool :)
  • c'est une bonne idée, et relativement simple : des libs comme NLTK gèrent relativement bien ce genre d'annotations. J'attaquerais ça quand j'aurais le temps.
  • je suis complètement d'accord, et l'étape d'optimisation semble indiquée. Par contre : ça veut dire qu'à chaque recompilation du site, certains noms raccourcis peuvent changer.
  • j'utilise rocketchat avec un bot particulier à l'occasion : on tape un truc genre !gif j'aime les fruits au sirop, et le bot génère automatiquement un gif qui représente, au mieux, la phrase j'aime les fruits au sirop. Pour le coups, c'est une sorte de recherche sémantique : je suis énervé par l'incompétence du stagiaire, donne moi une réplique qui correspond. C'est un tout autre projet pour le coups, mais vu la quantité de répliques dispo, je serais pas surpris que ça donne des résultats intéressants. VADER pourrait être utile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants