[I18NGR] φίλτρο για greeklish?

Konstantinos Margaritis markos at debian.gr
Fri Nov 25 20:00:27 EET 2005


On Παρασκευή 25 Νοέμβριος 2005 19:57, Konstantinos Margaritis wrote:
> (Καταρχάς, ξαναβάζω το CC στην open-source, δε μπορώ να καταλάβω τί
> μανία είναι αυτή να μου χαλάν τα CC...)
>
> On Παρασκευή 25 Νοέμβριος 2005 17:50, Thanos Kyritsis wrote:
> > Ον Φριδαυ 25 Νοωεμβερ 2005 17:37, Κονσταντιοσ Μαργαριτισ ςροτε:
> > [σνιπ ....]
> >
> > Εγώ θα σε ρωτήσω ένα απλό πράγμα .....
> >
> > Πώς θα καταλαβαίνεις σε ένα μήνυμα ποιούς αγγλικούς χαρακτήρες να
> > μετατρέπεις και ποιούς όχι ?? ε ???
>
> Η διαδικασία είναι απλή, αν και φοβάμαι πως είναι λίγο χρονοβόρα,
> κάθησα και το σκέφτηκα λιγάκι και βρήκα μια αρκετά καλή
> μέθοδολογία: Διάλεξα και ένα μικρό τμήμα από email του zvr
> -κλασσικός γράφων σε greeklish γαρ ;-) - από το συνέδριο του
> O'Reilly, ήταν εντελώς τυχαία επιλογή.
>
> "Prwth entypwsh: polla lefta, re paidaki moy!
> Se kyrile ksenodoxeio sto Amsterdam, megalh conference (milane
> gia 500+ atoma), organwmenh kata O'Reilly me ta Amerikanika
> protypa. Symperasma: tha mpoyne mesa agria, apokleietai na bgaloyn
> ta lefa toys.
> Oxi oti den to kserane, bebaia."
>
> Για να δείξω ότι η μέθοδος μπορεί να δουλέψει και με διαφορετικό
> στυλ γραφής, γράφω το ίδιο κείμενο σύμφωνα με τον τρόπο που γράφω
> συνήθως greeklish (την αναφέρω απλώς ως παράδειγμα):
>
> "Prwtn evtupwsn: polla lefta, re paidaki mou!
> Se kurile 3evodoxeio sto Amsterdam, megaln conference (milave gia
> 500+ atoma), orgavwmevn kata O'Reilly me ta Amerikavika protupa.
> Sumperasma: 8a mpouve mesa agria, apokleietai va bgalouv ta lefta
> tous. Oxi oti de to 3erave, bebaia."
>
> Με μια απλή ματιά, οι κανόνες μετατροπείς για τις δύο μεθόδους
> είναι οι εξής:
>
> zvr: η-> h, θ->th, ν->n, ξ->ks, υ->y, ω->w
> mine: η->n, θ->8, ν->v, ξ->3, υ->u, ω->w
>
> και είμαι σίγουρος ότι με λίγο ψάξιμο μπορούμε να βρούμε αρκετούς
> κανόνες ακόμη.
>
> Βήμα 1ο: Διαχωρισμός παραγράφων. οκ έστω ότι έχει γίνει αυτό, δεν
> είναι το θέμα.
>
> Βήμα 2ο: Έλεγχος αγγλικής ορθογραφίας στην παράγραφο, μάλιστα
> δημιουργία ενός associative array (map στην STL, HashMap στη Java,
> whatever) με τα αποτελέσματα για κάθε λέξη μας ενδιαφέρει ένα
> boolean αποτέλεσμα, FOUND/NOTFOUND. Αυτό για να αποκλείσουμε τις
> πραγματικά αγγλικές λέξεις από τις greeklish. Αν τα FOUND είναι
> συντριπτικά περισσότερα από τα NOTFOUND τότε μάλλον το κείμενο
> είναι αγγλικό ίσως με ορθογραφικά λάθη και δεν χρειάζεται να
> προβούμε στη μετατροπή από greeklish. Αν τα FOUND είναι αρκετά
> -κάποιο κατώφλι/ποσοστό ίσως;- τότε μπορούμε να προχωρήσουμε στο
> βήμα 3.
>
> Βήμα 3ο: Για τις λέξεις που ΔΕΝ βρεθήκαν από τον αγγλικό ορθογράφο
> -δηλαδή αυτές με NOTFOUND στο map- κάνουμε μετατροπή από greeklish
> σε ελληνικά με κάθε μέθοδο, και κάνουμε έλεγχο με ελληνικό
> ορθογράφο στις λέξεις αυτές. Για κάθε λέξη που ανιχνεύεται από τον
> ορθογράφο, η κάθε μέθοδος παίρνει έναν πόντο.
>
> Βήμα 4ο: Αν κάποια μέθοδος φτάσει ένα συγκεκριμένο κατώφλι -π.χ.
> 30% των λέξεων ή ένα προκαθορισμένο αριθμό- τότε μπορούμε να
> είμαστε αρκετά βέβαιοι ότι ο χρήστης θα έχει ακολουθήσει τη
> συγκεκριμένη μέθοδο για να γράψει σε greeklish και μπορούμε να
> προχωρήσουμε στη μετατροπή των υπολοίπων λέξεων με τη συγκεκριμένη
> μέθοδο μόνο χωρίς να χρησιμοποιήσουμε επιπλέον το σύστημα με τους
> πόντους.
>
> Για το συγκεκριμένο παράδειγμα, το αρχικό κείμενο του zvr, όπως το
> έχει γράψει:
>
> "Prwth entypwsh: polla lefta, re paidaki moy!
> Se kyrile ksenodoxeio sto Amsterdam, megalh conference (milane
> gia 500+ atoma), organwmenh kata O'Reilly me ta Amerikanika
> protypa. Symperasma: tha mpoyne mesa agria, apokleietai na bgaloyn
> ta lefa toys.
> Oxi oti den to kserane, bebaia."
>
> Βήμα 2ο: ο αγγλικός ορθογράφος προφανώς θα χτυπήσει κόκκινο, αφού
> θα βρεί ελάχιστες λέξεις: Amsterdam, conference, O'Reilly, me, to.
> Για τις υπόλοιπες θα προχωρήσει στο βήμα 3.
>
> Βήμα 3: μετατρέπουμε κάθε λέξη με κάθε μέθοδο για μετατροπή από
> greeklish και δίνουμε +1 πόντο στη μέθοδο αν η τελική λέξη
> αναγνωρίζεται από τον ορθογράφο, ΜΕΧΡΙ κάποια μέθοδος να φτάσει
> π.χ. σε πόντους που να αντιστοιχούν στο 30% των λέξεων της
> παραγράφου, δηλ. ~13).
> Λέξη		zvr		mine		zvr pts		mine pts
> Prwth		Πρωτη		Πρωτh		1		0
> entypwsh	εντυπωση	εντyπωσh	2		0
> polla		πολλα		πολλα		3		1
> lefta		λεφτα		λεφτα		4		2
> re		ρε		ρε		5		3
> paidaki		παιδακι		παιδακι		6		4
> moy		μου		μοy		7		5
> Se		Σε		Σε		8		6
> kyrile		κυριλε		κyριλε		9		7
> ksenodoxeio	ξενοδοχειο	ksεηοδοχειο	10		7
> sto		στο		στο		11		8
> megalh		μεγαλη		μεγαλh		12		8
> milane		μιλανε		μιλαηε		13		8
> gia		για		για		14		9
>
> Περάσαμε το κατώφλι 13 (βρήκα κι εγώ νούμερο...), προχωράμε στο
> βήμα 4:
>
> atoma		ατομα
> organwmenh	οργανωμενη
> kata		κατα
> ta		τα
> Amerikanika	Αμερικανικα
> protypa		προτυπα
> Symperasma	Συμπερασμα
> tha		θα
> mpoyne		μπουνε
> mesa		μεσα
> agria		αγρια
> apokleietai	αποκλειεται
> na		να
> bgaloyn		βγαλουν
> ta		τα
> lefa		λεφα
> toys		τους
> Oxi		Οχι
> oti		οτι
> den		δεν
> kserane		ξερανε
> bebaia		βεβαια
>
> Το τελικό κείμενο θα έχει την εξής μορφή:
>
> "Πρωτη εντυπωση: πολλα λεφτα, ρε παιδακι μου!
> Σε κυριλε ξενοδοχειο στο Amsterdam, μεγαλη conference (μιλανε
> για 500+ ατομα), οργανωμενη κατα O'Reilly me τα Αμερικανικα
> προτυπα. Συμπερασμα: θα μπουνε μεσα αγρια, αποκλειεται να βγαλουν
> τα λεφα τους. Οχι οτι δεν to ξερανε, βεβαια."
>
> Όπως θα προσεξατε η μεθοδος δεν είναι τελεια. Π.χ. δεν μετετρεψε
> τις λεξεις "με" και "το" και δεν παρέχει τονισμό. Πιστεύω ότι το 1ο
> μπορεί να γίνει με έλεγχο των διπλανών λέξεων ενώ το 2ο με χρήση
> του ορθογράφου.
>
> Πάντως για μια μέθοδο που μου κατέβηκε μέσα σε 1 ώρα, καλά τα πήγε
> πρέπει να το παραδεχτείς :-)
>
> Κώστας




More information about the I18ngr mailing list