[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