Traduzione

TomSawyer1
Quale sarebbe secondo voi il miglior approccio per un programma che traduca dall'inglese all'italiano (per esempio)? Intendo proposizioni, con soggetto, verbo, complemento, aggettivo etc. Mi sembra già un progetto troppo ambizioso, quindi non oso pensare già alle subordinate.

Mi sembra che le reti neurali siano un buon metodo.

Risposte
Giusepperoma2
guarda, io di informatica non ci capisco niente (infatti questo e' il mio primo post nella sezione)
ma sinceramente credo che sia impossibile fare un programma che traduca... infatti non ne ho trovato uno solo soddisfacente...

ci sono alcuni verbi che si traducono in verbi diversi a secondo del contesto... pensa al verbo inglese "to get" o al verbo italiano "fare"

un americano, una volta, mi disse che "fare" significa "to go"... io ci sono rimasto, dico che no, si sbagliava... e lui mi dice:

"fare il giro" significa "to go around"

:D

pensa anche a parole tipo "prego"

che si puo' tradurre, a seconda dei casi con

"please"

"you are wellcome"

"I prey"

:D

se poi ti interessa dal punto di vista informatico... e' un altro discorso, di cui non sono in grado di parlare


:D

TomSawyer1
Il caso dell'inglese-italiano era un esempio. Il contrario mi andrebbe altrettanto bene. Quelle tipiche espressione che tu hai scritto sono facilmente traducibili coi dizionari di word. Cioè non analizzi solo parola per parola, ma anche gruppi di parole (i phrasal verbs). Quello che chiedo è un'opinione informatica.

_luca.barletta
Per l'elaborazione semantica di alto livello le alternative potrebbero essere la fuzzy logic o le reti neurali (o neuronali come preferite); per le elaborazioni di livello inferiori bastano anche gli HMM.

TomSawyer1
Gli HMM?

Grazie, ho avuto la conferma per le reti neurali. Come potrebbe essere usata la fuzzy logic? (non la conosco).

_luca.barletta
Gli HMM sono i modelli di Markov nascosti. Ma servono solo per il riconoscimento del parlato in questo contesto, a basso livello appunto.
La fuzzy logic si può vedere come estensione della logica booleana: le variabili non assumono solo i valori 1 e 0, ma anche tutti i valori reali intermedi. Si possono costruire elaboratori semantici basati sulla fuzzy logic.

TomSawyer1
Grazie per le informazioni. Approfondirò la fuzzy logic, sperando mi possa essere d'aiuto. Il programma voglio farlo con VB6, insieme ad un amico. So che sarebbe meglio il C++, ma non lo conosco abbastanza bene.

carlo232
"Crook":
Grazie per le informazioni. Approfondirò la fuzzy logic, sperando mi possa essere d'aiuto. Il programma voglio farlo con VB6, insieme ad un amico. So che sarebbe meglio il C++, ma non lo conosco abbastanza bene.


Mi sembra impegnativo, nel senso che vi vedrete costretti a scrivere un sacco di parole, molto probabilmente andrà a finire che la parte creativa del progetto sarà molto piccola...

Come dici sarebbe meglio farlo in C++, dici però di non conoscerlo molto bene... beh se non vuoi un applicazione con una grafica elevata puoi creare un progetto in C++ di tipo console, sai la schermata nera del cmd, non è molto graziosa...

Dovrai poi scrivere le parole da qualche parte, potresti fare delle librerie o database, ma a questo punto ti conviene mettere tutto in dei file txt così ti sarà immediato modificarli e aggiornarli.

Buona fortuna! :wink:

TomSawyer1
Il bello è che useremo i dizionari di word. Non servirà scrivere neanche una parola.

E, dopo aver provato a fare qualcosa, penso sia generalizzabile a più lingue, usando le reti neurali.

Mi rendo conto che è un progetto molto impegnativo, ma ho bisogno di programmare qualcosa di non banale, dato che non mi viene nient'altro di impegnativo in mente.

VB6 andrà benissimo, perché ho visto reti neurali scritte in VB6 da far invidia anche a C++.

_luca.barletta
Se hai matlab e i tool per la fuzzy logic, usa quelli, così almeno ti semplifichi un po' la vita.

TomSawyer1
Non li ho, ma proverò a procurarmeli. So già che non sarà un programma degno di essere visto da altre persone diverse da me e il mio amico, ma tentare cose più difficili mi affascina molto.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.