sacredceltic
Jun 7th 2011, 17:39
J'ai revu TOUTES les phrases françaises orphelines, soit environ 11500.
J'en ai adopté environ un peu plus de 2000 et opéré un certain nombre de corrections.

J'estime que celles qui restent devraient être toutes supprimées pour les raisons suivantes :

Soit elles n'ont pas de sens.
Soit elles ne sont pas naturelles => l'essentiel
Soit elles manquent de contexte identifiable.
Soit elles sont redondantes par rapport à des phrases presque semblables mais plus intéressantes par le contexte ou paraissant plus naturelles et donc n'apportant aucune illustration supplémentaire ou autre valeur ajoutée.

Bien sûr, d'autres francophones peuvent repasser dessus, mais pour la quantité de travail que ça représente, le peu de phrases m'ayant échappé qui seraient rescapées n'en vaut pas la chandelle.
D'autres l'ont déjà fait avant moi et il faut bien un jour déclarer ce travail terminé.

Je propose donc leur suppression car je pense que garder ces phrases médiocres ou mauvaises nuit à l'image de Tatoeba et dissuade de potentiels contributeurs "professionnels" de s'y intéresser (autant que la non-traduction complète des interfaces dans les différentes langues...) et de venir enrichir le Corpus avec des phrases bien plus intéressantes.

Il faudrait évidemment que ce même travail soit opéré sur le Corpus japonais et anglais, dont proviennent beaucoup de ces phrases françaises, car sinon nous courront le risque de les voir réapparaître par traduction, la traduction de phrases médiocres en anglais ou en japonais donnera toujours, sauf miracle créatif, des phrases médiocres en français.
Afin d'éviter cela, je propose que la traduction des phrases orphelines soit bloquée, et que pour éviter toute tentation, les phrases orphelines n'apparaissent plus sur la page d'accueil dans les phrases tirées au hasard. Ce n'est pas une bonne publicité dans tous les cas et je pense que ce serait facile de les en exclure.
cacher les réponses
Scott
Jun 7th 2011, 18:06
Est-ce que tu sais comment on peut obtenir une liste de toutes les phrases orphelines ?
cacher les réponses
sacredceltic
Jun 7th 2011, 18:09
http://tatoeba.org/epo/activiti..._sentences/fra

Tu peux y accéder par le menu contribuer/adopter des phrases et tu choisis la langue.
cacher les réponses
Scott
Jun 7th 2011, 18:21
D'accord merci.

J'ai commencé à regarder les phrases orphelines et plusieurs me semblent correctes, par exemple:
Désolé, je n'ai pas le temps maintenant. Tu peux plus tard ?
Il est le président de la banque.
Ma mère va mieux.
Mon père est mort il y a cinq ans.
cacher les réponses
sacredceltic
Jun 7th 2011, 18:25
Je n'ai pas dit qu'elles étaient toutes incorrectes. Certaines le sont. Mais si tu me lis, je dis aussi que beaucoup sont redondantes, sans intérêt.
Si on a déjà "Mon père va mieux" et "Ma mère va un peu mieux" ou "Mon frère va beaucoup mieux", quel est l'intérêt de garder "Ma mère va mieux" ?
À ce train-là, on aurait plus vite fait de faire tourner un algorithme pour créer toutes les phrases possibles avec tous les noms et prénoms de personnes, les verbes, les temps, les adjectifs...Ça n'a aucun intérêt...
sacredceltic
Jun 7th 2011, 18:34
Comme d'habitude, je vois que tu as décidé d'adopter toutes les phrases sans intérêt du genre "Je suis né à Tokyo"/"Je suis née à Tokyo"/"Je suis née à Tokyo en 1980"...histoire de me contredire et sans doute de gonfler ton nombre de phrases...Bravo ! C'est très constructif !

Je te propose d'écrire un script qui génère toutes les combinaisons de villes du monde et d'années du millénaire pour insérer des phrases. Tu iras plus vite...
cacher les réponses
Scott
Jun 7th 2011, 18:44
Je ne cherche pas à te contredire. J'ai simplement décidé d'adopter quelques phrases qui me semblaient correctes.

C'est vrai qu'il y a plusieurs phrases semblables, mais Sysko a déjà expliqué que ça pouvait être utile pour certaines applications de Tatoeba.
cacher les réponses
sacredceltic
Jun 7th 2011, 18:48
ben si tu fais varier les années et les noms de ville dans la phrase "<personne> est né(e) à <endroit> en <année>", ça présente très peu d'intérêt linguistique...
sysko
Jun 7th 2011, 18:21
http://tatoeba.org/fre/activities/adopt_sentences/ et ne rien mettre pour avoir TOUTES les phrases orphelines, sans filtrage par langue.
cacher les réponses
FeuDRenais
Jun 7th 2011, 19:23
Hey... why not just delete all the orphan sentences?

Clean slate!
cacher les réponses
sacredceltic
Jun 7th 2011, 19:33
That's what I'm saying...
cacher les réponses
FeuDRenais
Jun 7th 2011, 20:47
Not, I mean... ALL of them. Not just your 10,000.
cacher les réponses
FeuDRenais
Jun 7th 2011, 20:48
Just nuke them all.
cacher les réponses
sacredceltic
Jun 7th 2011, 21:11
I fully agree. And AT LEAST stop exhibiting them on the front page in the random sentences and block their translations...
FeuDRenais
Jun 7th 2011, 20:58
Well, here goes a really reckless idea, but...

1) Delete all the orphans on Tatoeba. It won't feel as bad if we call them "weeds" instead of "orphans" and admit the fact that they're causing a lot of problems and are, in many cases, unreliable.

2) Institute ratings for links only. Since links all have owners, users will be rated for their translations and credibility will be established (i.e. sacredceltic will have a very high rating for French-English, fucongcong for Mandarin-French, etc.). That way, a person who doesn't know Tatoeba but wants to know if a certain translation is good will only have to look to the person responsible for the link, and if the person is well-rated, then the translation is trustworthy.

Quick 2-step solution. Any holes here?
cacher les réponses
Fingerhut
Jun 7th 2011, 21:11
I think, it is good that there is the possibility of adoption. If a member quits tatoeba, the sentences can be taken over by someone else and won't be lost.
However, in some languages there are just way too many orphan sentences that just aren't adopted (i.e. mainly Japanese, English and French, as far as I know.) I think, it wouldn't hurt if one deleted these masses of long-time orphan sentences. Maybe it would be a good idea to delete every sentence that isn't adopted within a period of - say two months or so?
sacredceltic
Jun 7th 2011, 21:44
>and if the person is well-rated, then the translation is trustworthy.

Well, that's the hole: Bad translators will rate well bad translators and rate good ones badly, because they're not even aware that the translations they rate are wrong or good. The problem is, bad translators outnumber good ones. Bad translators pervade the entire translation world up to highest positions. Even in the UN, where they are supposedly the best, translation errors brought the world to the verge of WW3.

It's like the famous mechanism with money: Bad coins chase the good ones. So if you rate translations or sentences, you'll end up with the worst.

I think the current system of commenting is the right one to debate the quality of sentences, because eventually, even after long debates, authority and references will prevail. The thing that is missing, though, is the possibility to comment the translations/links as well as the sentences themselves, so the translator can also receive comments alerts if he is not the owner of one of the 2 linked sentences which is a big gap at the moment as the following scenario occurs more and more:

User A owns sentence S
User B owns sentence T
User C links S and T (C "owns" the link)
A changes S. Sometimes warns B...but C is not even aware of the change...


cacher les réponses
FeuDRenais
Jun 7th 2011, 22:00
Assuming total chaos amongst members, you have a point. But I wouldn't say there's such a chaos here. It's not very hard for experienced members to know who's good for which language pairs. If we can't trust that, then indeed it's complete chaos and no rating system can ever work. But it's not that hopeless, IMO.

To solve the problem you bring up, you'd have weighted rating (i.e. experienced members, or members with higher ratings, would have much more powerful votes than completely new members who haven't been established). All you need to do is initialize these high ratings for a few people that you trust.

e.g. You are given a very high rating for French-English by default because people (we will assume) trust you in this domain. Then you rate other French-English translations, and the ones who get rated well have their ratings improved from 0 to something better than 0. At first, their own votes won't matter by comparison to yours, but over time they grow and the best rated also become the most powerful raters. It's a quality-breeds-quality system (you just have to start with quality).
cacher les réponses
sacredceltic
Jun 7th 2011, 22:12
I'm sceptic about any rating system...
cacher les réponses
FeuDRenais
Jun 7th 2011, 22:18
(I know)
FeuDRenais
Jun 8th 2011, 15:31
Also, you have to realize that a rating system is probably the only way to give this website any professional credibility. I mean, how else do you make guarantees about quality if not via feedback/ratings? Trang can't just say "you can trust sacredceltic's translations - believe us on this". It's a much more powerful statement to say that "this user has had his translations rated 10,000 times and has a rating of 98.5%" or something of the sort.

It would also eliminate so many of these other problems - native checks, debates about whether or not non-natives should translate, blocking users who are adding bad translations, orphans, etc. Bad translations would just have bad ratings and no one would trust them - problem solved.
cacher les réponses
sacredceltic
Jun 8th 2011, 15:40
Je pense que la qualité peut être rendue visible par elle-même.
Si nous éliminons les phrases médiocres, et je crois que toi et moi sommes d'accord sur ce point, ou tout au moins en faisant en sorte qu'elles n'apparaissent plus en façade, des contributeurs "professionnels" (enseignants, traducteurs, linguistes...) seront davantage tentés de se joindre, ce qui enclenchera un cercle vertueux.
Mon but n'est pas d'obtenir un score personnel quelconque. Mon but est que la qualité globale de Tatoeba augmente pour intéresser plus de monde.
L'adage dit: "au royaume des aveugles, les borgnes sont rois".
cacher les réponses
FeuDRenais
Jun 8th 2011, 16:14
Oui, mais il faut constater qu'il y a à peu près un million de phrases sur Tatoeba, et seulement quelques milles de contributeurs (dont une fraction est responsable pour une grande partie de phrases).

Si tu attaques directement les phrases, tu auras trop de travail à faire, car tu n'attaques pas la source. Disons qu'un nouveau (mauvais) contributeur ajoute tout à coup 100 phrases qui sont soit liées de manière erronée, soit n'ont pas du sens, soit sont mal traduites. Pour réparer tout ça, il faut un grand effort de notre part (juste pour un seul cas). C'est à cause de ça que, par exemple, sysko a limité la liberté de boracasli.

Si tu attaques la source (le contributeur), tu rends inoffensif tout ce qu'il fait désormais, même s'il continue à ajouter des phrases, voire un mille d'autre phrases qui ont des problèmes ou qui sont erronées. C'est beaucoup plus pratique que d'essayer de régler les problèmes phrase-par-phrase.
cacher les réponses
sacredceltic
Jun 8th 2011, 16:32
Oui, je suis d'accord que le contrôle des nouveaux contributeurs est un problème mais c'est simple à résoudre: Il suffit de mettre leurs phrases "en quarantaine", c'est à dire de ne pas les faire apparaître sur la façade pendant x jours, le temps de vérifier ce qu'ils ont fait.

On pourrait aussi avoir un système d'alerte automatique des gestionnaires du Corpus, qui les préviendrait qu'un nouveau contributeur crée des phrases dans une langue qu'ils peuvent réviser. On pourrait tout simplement avoir un tableau de contrôle pour les gestionnaires, qui indiquerait quels sont les nouveaux contributeurs et combien de phrases de chaque langue ils ont créées. Un bouton associé à chaque contributeur permettrait au gestionnaire d'indiquer qu'il prend en charge son contrôle. La ligne correspondant au contributeur pris en charge disparaîtrait alors du tableau, ne laissant dans la liste que les contributeurs restant à contrôler. Ainsi, les gestionnaires pourraient rapidement évaluer qui reste à contrôler et pour quelles langues, et prendre en charge en conséquence.

Le tableau pourrait ressembler à ça:

<user1> <date> (eng) 17 (por) 25 (jap) 6 [button: I check it]
<user2> <date> (epo) 125 (fra) 59 [button: I check it]
...

Pour ne rien développer, on pourrait juste faire un export de ces stats et les gestionnaires pourraient gérer ça dans un outil web de gestion de tâches.
cacher les réponses
FeuDRenais
Jun 8th 2011, 16:51
Cependant, ce n'est pas automatique. Ça demande qu'on consacre le temps (peut être que t'en as, mais je pense pas que c'est vrai en général). En plus, on peut pas mettre chaque nouveau contributeur en quarantaine - c'est offensant et souvent pas nécessaire. Enfin, ça n'arrête pas un contributeur expérimenté qui décide, un jour, d'essayer d'ajouter des phrases dans une langue qu'il est en train d'apprendre.

Ce que je propose laisse les gens qui veulent traduire pour apprendre traduire pour apprendre. Mais au lieu de masquer ça, ou de naviguer la zone grise qui correspond à "est-ce que c'est naturel ou pas, faut-il que je mets un NNC ici?", on peut traduire sans contrainte (ils vont être, néanmoins, pénalisés si les traductions ne sont pas bonnes, et le score correspondra à ça).
cacher les réponses
sysko
Jun 8th 2011, 17:10
pour cela j'avais expliqué il y a quelque temps mon idée d'avoir un sas ou on pourrait mettre les phrases non sur, j'essaie de retrouver le liens vers la discussion en question.
cacher les réponses
sysko
Jun 8th 2011, 17:15
aprés je pense que c'est une question de nom, si tu appelles ça quarantaine, oui. Mais après je ne me sentirais en aucun cas offensé si (en admettant le dit systeme), je mette que je suis "debutant" en shanghaien, et que meme si je suis admin/depuis deux ans sur le site etc. que mes phrases en shanghaien aille directement dans ce corpus parallele (qui n'est pas montré au personne non inscrite par exemple et absent du random etc. comme le disait sacredceltic et comme je le proposais sur la precedente discussion), ou il sera plus facile pour une personne plus expérimenté de confirmer ou non ma phrase (ce qui n'est plus du coup offensant mais encourageant, car ce n'est plus "on mets ta phrase à coté car elle potentiellement pourri bahhhhhh", mais "on met ta phrase dans un endroit ou elle aura une visibilité plus grande aupres de la population d'utilisateur qui t'interesse, aka des correcteurs"), Qu'en penses-tu ?
cacher les réponses
sacredceltic
Jun 8th 2011, 17:27
Oui, moi je ne trouve pas ça offensant de diviser les phrases en fonction de leur origine.
On peut toujours débattre sur les critères de sélection, mais l'important est que "la façade reste propre" et que les gens ne soient plus tentés de traduire des phrases qui ne sont déjà pas sûres, parce que c'est là que se situe le problème: la médiocrité se cumule, et après, débrouiller ça est un vrai sac de nœuds...

Mais bon, j'insiste encore une fois (lourdement, d'accord) que le premier pas serait que les phrases orphelines n'apparaissent plus dans les phrases "au hasard"...
L'idée de manipuler le hasard me plait assez bien d'ailleurs...
cacher les réponses
sysko
Jun 8th 2011, 17:39
en fait malheureusement avec la version actuelle du code, faire un random en sql etant une catastrophe sans nom en terme de performance, le random est fait avec le moteur de recherche, qui lui ne s'est pas fait qui est orphelin et qui ne l'est pas (bon en faisant plusieurs tirage c'est jouable dans l'absolu, à voir si ça joue sur les perfs car bon il y a une chance sur 4 de tomber sur une phrase orpheline à l'heure actuelle)

empêcher la traduction des phrases orphelines est plus facilement réalisable (et me parait une très bonne idée en effet)
(évidemment je ne mets pas en opposition les deux solutions qui sont complémentaires)
cacher les réponses
sacredceltic
Jun 8th 2011, 17:44
Tu peux pas appliquer la recherche random à une vue SQL plutôt qu'à la table physique? Comme ça tu changes rien au code, tout se passe au niveau du moteur...
Faire une vue avec une seule condition sur la colonne du propriétaire (is not null) n'aurait que très peu d'impact sur la performance.
sacredceltic
Jun 8th 2011, 17:46
create view "phrases_propres" as select * from phrases where proprietaire is not null
cacher les réponses
sysko
Jun 8th 2011, 18:33
non le probleme n'est pas là, j'ai toujours parlé de random au sein de la base (le faire coté php serait encore plus horrible)

c'est le random qui en lui meme n'est pas du tout fait pour le sql,
cacher les réponses
sysko
Jun 8th 2011, 18:34
je peux rentrer dans les détails si tu veux.
sacredceltic
Jun 8th 2011, 18:35
oui, j'ai déjà été confronté au problème. Mais si tu as pu le faire pour toute une table, tu peux l'appliquer à un sous-ensemble de la table (une vue...), non ?
cacher les réponses
sysko
Jun 8th 2011, 19:05
non justement pour la table entiere, sur laquelle on peut jouer avec l'index crée par la clef primaire c'est deja tres mauvais et a de nombreux dommage collateraux , car le random, meme fait de maniere "intelligente" (plus que le order by rand), comme detruire le cache sur la table (vu qu'on doit s'amuser à rearranger temporairement l'ordre des id pour pouvoir prendre le premier, ce qui invalidera le precedent cache qu'avais mysql, et ce meme cache n'ayant absolument rien de reutilisable il sera lui meme reinvalider)

Pour un sous ensemble (par un exemple un random sur une seule langue), la on n'a pas l'index, donc la c'est vraiment horrible

De plus dans les deux cas cela demande un lock temporaire sur la table (vue ou pas vue), ce qui fait que lorsqu'on fait un random de cette maniere, les autres opérations appelant la table phrases sont mises en attentes, ce qui veut dire que ça devenait d'autant plus problématique que le nombre d'utilisateur simultané augmente

donc non depuis peut etre 8 mois, tout ce qui demande un tri aleatoire n'est plus fait pas mysql mais avec sphinx (le moteur de recherche) qui a une fonction optimisé à cette effet (donne moi X id pioché au hasard dans tes indexs, et vu qu'il a un index par langue, faire un random general ou sur une langue est tout aussi performant)
Mais vu que sphinx ne garde pas l'info de orphelin ou non en base, pour faire un filtre dessus du coup on l'a dans l'os
FeuDRenais
Jun 8th 2011, 18:11
Je ne suis pas sûr si on parle toujours de la même chose, mais voilà mon avis honnête:

Tatoeba est splendide, mais elle manque un algorithme pour diriger automatiquement le grand nombre de données qu'elle reçoit quotidiennement, et pour dessiner la ligne entre le bon et le mal.

C'est bien d'avoir des indications et l'unité de la communauté pour encourager le comportement "correct", mais je crois que c'est désespère à la longue, vu, encore, le grand nombre de phrases qu'on collectionne, ainsi que la diversité des contributeurs.

Mais bon, ce n'est que mon avis.
FeuDRenais
Jun 8th 2011, 16:54
On peut essayer de vérifier une chose: est-ce que le nombre d'étiquettes NNC croise par rapport au nombre de phrases totale ?
FeuDRenais
Jun 8th 2011, 16:16
Et non, je ne m'intéresse pas non plus au score personnel. C'est juste une façon de régler tant de problèmes à la fois.