|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | ||
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Algoritmo di traduzione
GIocherellando con google-translation , oltre a farmi qualche grassa risata
E mi sono reso conto che uno dei problemi piu' grossi è il raggruppamento di parole: in sostanza, Google (e immagino qualunque altro traduttore) sbaglia perche' associa in modo sbagliato le parole, con conseguenti risultati ridicoli. Ecco alcuni risultati di "test di traduzione", con evidenziate le associazioni di google e quelle, invece, corrette. Quote:
Quote:
Non sarebbe possibile scrivere un programma che permette di associare correttamente le parole prima di effettuare la traduzione? Ovviamente cio' dovrebbe essere fatto da chi gia' sa sia l'inglese che l'italiano, a beneficio di chi invece non lo sa; se fosse possibile implementare un programma del genere in una pagina web interattiva, si potrebbero "sfruttare" le enormi "risorse umane" di Internet per costruire, alla fine, un traduttore "serio". Non dovrebbe essere una cosa cosi' assurda questo tipo di "collaborazione": tempo fa ho trovato un sito che con questo sistema cerca di realizzare una serie di dizionari multilingua gratuiti. Lo trovai anni fa, ma non ricordo assolutamente l'indirizzo. QUalcuno lo conosce?[/
__________________
La scienza è provvisoria -- Jumpjack -- |
||
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
il problema dei traduttori e' che una lingua reale e' fortemente dipendente dal contesto. Ogni parola ha molteplici significati risultando quindi ambigua. La soluzione dell'ambiguita' semantica si risolve soltanto CAPENDO il significato della frase, o addirittura delle frasi precedenti. Purtroppo questa conoscenza semantica non e' ancora alla portata dei calcolatori. Tieni presente che attualmente persino le grammatiche usate per modellare una lingua reale sono solo delle approssimazioni delle grammatiche reali... per tutta questa serie di motivi, che qui ho espresso molto alla buona, non e' ancora possibile produrre un traduttore affidabile. E' pero' possibile creare un traduttore che STATISTICAMENTE produca risultati decenti, almeno per quanto riguarda la comprensione delle parti del discorso. Purtroppo il raggruppamento di parole singole in "termini" e' un problema tutt'altro che banale, perche', appunto, il raggruppamento dipende dal contesto (in alcuni casi le stesse parole vanno raggruppate, altri no, oppure vanno raggruppate in modo diverso)...
E' un problema piu' complesso di quanto possa sembrare. |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
Mi chiedo se sarebbe possibile scrivere un miniprogramma di prova, che sia in grado ad esempio di tradurre correttamente qualunque frase dall'inglese all'italiano scritta usando solo 20 parole predeterminate. Secondo me è possibile...
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Ok, facciamo questa prova:
scrivetemi tutte le frasi possibili immaginabili, anche le piu' complicate (purche' abbiano senso compiuto) usando solo queste parole: to have be go tell do I,you,he... (qualunque persona, e relativi pronomi) cat rock bottle car seaside cinema home/house pub happyness beauty truth trip Per i verbi vale qualunque tempo & modo. Per il resto, c'e' da scegliere tra 4 oggetti concreti, 4 concetti astratti e 4 luoghi. Intanto provo a scrivere il programma...
__________________
La scienza è provvisoria -- Jumpjack -- Ultima modifica di jumpjack : 23-01-2007 alle 14:46. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
qualcuno mi sa indicare un forum inglese di "chiacchiere" tipo "piazzetta" dove chiedere di scrivermi un po' di frasi?
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
le frasi scrivibili sono infinite, se anche tu riuscissi a scrivere quel programma, esso sarebbe in un certo modo banale, perche' confinato all'interno di un insieme finito di frasi (posto che tale numero sia davvero finito)... non puoi bypassare la semantica se vuoi traduzioni accurate. Altrimenti troverai sempre un insieme di casi in cui il traduttore sbaglia
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
le costruzioni possibili sono sempre le stesse: puo' cambiare il soggetto, il verbo e il complemento, ad esempio, ma la struttura della frase è sempre la stessa. E se il programma sa che una certa parola è un verbo, un soggetto o un complemento, e se oltretutto sa che quella parola puo' trovarsi associata solo a quelle 10 altre (o quei 10 altri TIPI di parola), allora puo' anche essere in grado di tradurre qualunque testo. E' solo un problema di quantità di dati e velocità nell'esaminarli ed elaborarli. Ed entrambe le cose abbondano ed avanzano in qualunque pc moderno! Si potrebbe anche insegnare a un programma a leggere migliaia e migliaia di testi, ricavando cosi' quali parole possono essere associate a quali altre: ogni parola acquisterebbe cosi' una serie FINITA di "collegamenti possibili" con altre parole, e ad ogni collegamento corrisponderebbe un collegamento al database dell'altra lingua. Immagino sia cosi' che sono strutturate le famose "reti neurali"....
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
anche l'algoritmo di "20 questions" e' banale.... ma quel "giochino scemo" ha oggi una conoscenza estremamente vasta dello scibile umano! E non è altro che un sistema esperto. Ho provato a scrivere il suo algoritmo, ed è veramente banale, nella forma piu' semplice (domande con sole risposte si/no): una matrice bidimensionale! (una dimensione per ogni possibile tipo di risposta alla domanda).
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
e qual e' la struttura della frase? guarda che dato un insieme di componenti (parole) io potenzialmente posso scrivere infinite frasi (basta aumentare la lunghezza della frase)
ad esempio, con i simboli a,b,c (insieme finito) io posso produrre infinite stringhe!!! non cambiano solo le parole, perche' un linguaggio reale ha molte costruzioni diverse per dire la stessa cosa!!! Se tu parti dal presupposto che una frase e' "soggetto + verbo + complemento", parti gia' sbagliando perche' non e' assolutamente vero che tutte le frasi seguono quella costruzione. inoltre, come ho gia' detto, una stessa parola puo' avere funzione logica diversa a seconda della sua posizione nella frase e addirittura significati diversi (pensa addirittura che una stessa identica frase ha significati diversi in base al TONO con cui e' pronunciata o, nel caso di un testo scritto, di come e' inserita nel contesto)... in base a queste osservazioni, come fai a dire che basta considerare tutte e sole le combinazioni delle parole? Se fosse cosi' ovvio, non pensi che sarebbe gia' realta'? il problema delle connessioni finite di parole risulta in un algoritmo almeno esponenziale nella taglia della frase, posto che il tuo discorso sia realizzabile in maniera ottimale. Inoltre, dato che parti da un insieme di casi reali non avrai mai la certezza della completezza (a meno che tu non abbia un modo per scrivere TUTTI i testi scrivibili in una lingua... ovviamente impossibile). di che problema parli? cos'e' l'algoritmo delle 20 domande? e che grado di conoscenza ha? mi piacerebbe capire perche' sarebbe la soluzione alle domande di decenni di studi... |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
Quote:
e secondo te un algoritmo basato sull'elencazione di tutte le casistiche possibili ha 1. una buona scalabilita' in problemi di conoscenza reale? 2. una conoscenza vasta dello scibile umano? |
|
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
Ancora qualche anno, e non ci sarà una domanda a cui 20q non sa rispondere! E gia' adesso sarebbe possibile usarlo "al contrario": invece di farci "leggere nel pensiero", gli si potrebbe chiedere "qual è quell'animale grosso, col pelo lungo, con le zanne e oggi estinto?" ed avere subito una risposta. Un bel giorno potrebbe esistere un servizion on-line che ti permette di identificare un animale semplicemente descrivendolo. ma stiamo divagando... Se è vero che 3 oggetti possono dar luogo a infinite combinazioni, è anche vero che con 3 parole non puoi creare infinite frasi! Anzi, al contrario, sono molte (ma MOLTE) di piu' le frasi senza senso di quelle con un senso compiuto. Esempio: quante frasi di senso compiuto puoi scrivere con queste parole e le loro "varianti"? Io andare tornare mare montagna matematicamente, con 6 simboli puoi creare un fottìo (non saprei il numero esatto... in italiano, dopo ANDARE puoi mettere solo MARE o MONTAGNA, e prima puoi metterci solo IO (considerando ovviamente solo questo insieme). Considerando un insieme piu' vasto, avrai comunque limitazioni: dopo ANDARE dovrà esserci per forza un luogo; ovvero, solo una parola "di tipo 'luogo' ". Probabilmente la cosa piu' difficile sarà insegnare al computer a declinare i verbi e a usare le preposizioni.... ma come tutti sappiamo, una frase come questa è comprensibilissima, anche se sbagliata: "io anno scorso andare mare" frase "sbagliata".... ma piu' comprensibile di una normale frase di un traduttore automatico... Mi viene in mente un po' il sudoku: all'inizio sembra irrisolvibile, ma poi ti accorgi che in ogni casella puo' andarci quello e solo quel numero, perche' ha ben precise relazioni con una trentina di numeri circostanti (o forse con tutti quelli circostanti? non mi ricordo...) Chissa' che un sudoku-maniaco (ce ne sono tanti ormai...
__________________
La scienza è provvisoria -- Jumpjack -- Ultima modifica di jumpjack : 23-01-2007 alle 22:43. |
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
continui a non considerare l'ambiguita' delle parole. e portare casi specifici in cui le cose funzionano bene non e' un buon metodo di analisi dei problemi
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
un bambino di 2 anni non capisce quasi niente di cosa gli dici, uno di 6 capisce molto, ma non se gli parli di cose complicate: perche' non conosce abbastanza parole e modi di "interconnetterle". un PC non capisce un'acca di quello che gli "dici", perche' nessuno gliel'ha mai insegnato! il grosso problema è riuscire a fare in modo che il PC impari da se', senza dovergli insegnare una per una tutte le parole e i modi in cui interconnetterle! A mano lo si puo' fare per poche parole, ma per un' "istruzione completa", beh... ci vorrebbero o parecchie ore-uomo, o appunto un auto-apprendimento.
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
Quote:
questo e' ovvio, ma bisogna prima capire come funziona la capacita' cognitiva umana... e poi trovare le relazioni che noi instauriamo tra i concetti... e tante altre cose... non e' cosi banale come prendere unas erie di parole e associarci un significato o una serie di parole correlate |
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 1105
|
va anche dimostrato che un computer possa avere una semantica!
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
al momento non mi ricordo nemmeno la definizione precisa, di semantica... si potrebbe semplificare con "criteri di intercorrelazione tra le parole"?
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
Guarda... questo argomento a me interessa moltissimo! (anzi... se vuoi ho un file con circa 7000 frasi che ti posso inviare... dimmi tu
va però detto che la questione non è così semplice come tu la stai ponendo, secondo me... Bisognerebbe progettare un parser top-down cazzutissimo (che è decisamente più complesso di uno bottom-up) e in qualche modo (magari interfacciandolo ad un db) cercare di risolvere tutte le ambiguità... ad esempio: Quote:
come questa, ci sono un sacco di frasi ambigue, che si possono risolvere soltanto grazie ad una mole non indifferente di statistica (Hidden Markov Models e simili a manetta Se ti interessa, avevo, tempo fa, scaricato una pubblicazione dell'AAAI sull'argomento, che alla fine non ho mai letto per intero Cmq ti ripeto, a me l'argomento interessa veramente tanto, quindi se vuoi provare a tirare su qualcosa e non vuoi farlo da solo, puoi contattarmi in pm
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
|
|
|
|
|
|
#18 | |||||
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
Quote:
In inglese fanno tutto con UN articolo (THE) e UNA preposizione (TO); in italiano si usano SEI (+3) articoli e NOVE preposizioni!!! Immagino che questo significhi che tradurre dall'italiano all'inglese sia molto piu' facile (devi eliminare informazioni), mentre dall'inglese all'italiano sarà un casino (devi aggiungere informazioni estrapolandole dal contesto). Per l'inglese bisognerà insegnare al computer molti piu' "blocchi di parole" rispetto all'italiano. Nel caso di quella frase, servirebbero: "the dog biscuits" "dog biscuits" "salespeople <sell> [object1] [object2]" <> = verbo da coniugare [] = tipo di "parte di frase" Il computer dovrà pero' anche sapere che la parola "sell" non può essere attribuita a un cane, cosi' potra' escludere la traduzione bislacca. Credo anch'io che serva un top-down, che identifica prima i gruppi di parole piu' grossi, poi gruppetti piu' piccoli e infine singole parole. Quote:
Quote:
__________________
La scienza è provvisoria -- Jumpjack -- |
|||||
|
|
|
|
|
#19 | ||||||
|
Senior Member
Iscritto dal: Jun 2004
Messaggi: 760
|
Quote:
Quote:
Quote:
Quote:
![]() Quote:
cmq mi sono accorto che l'avevo stampata e non ce l'ho più come file... ora la ricerco sul sito e appena la trovo te lo segnalo Quote:
__________________
Gandalf_BD -------------------------------------------- "When you aim at perfection, you discover it's a moving target" |
||||||
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 1266
|
Quote:
salespeople sold the dog biscuits = i commessi vendono i cani biscotti bisogna raggruppare: i commessi vendono "biscotti per cani" "the dog biscuits" è un oggetto solo, anche se è fatto di tre parole. Anche "the dog" è un oggetto. Come stabilire se raggruppare "the dog" o "the dog biscuits"? Con l' "esperienza", che dice che i commessi non vendono ai cani! Ovvero, sapendo che l'oggetto cui si riferisce "sell" non puo' essere "the dog".
__________________
La scienza è provvisoria -- Jumpjack -- |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:06.




















