» »

Računalnik-prevajalec

Računalnik-prevajalec

«
1
2

leinad ::

To vprašanje se mi je porodilo prvotno zaradi moje bodočnosti, ne toliko iz samega interesa v to. Namreč v kratkem bom se odločal za študij. Nekako imam v mislih dva faksa- FRI in FF-smer prevajalstvo.
Torej "cut the crap" in gremo k bistvu. Zanima me ali mislite, da bo v bližnji prihodnosti delo prevajalca lahko v celoti prevzel računalnik? Torej bo brez kakršnihkoli napak, prevajal povsem pravopisno ter slovnično pravilno v pravem kontekstu, bilokateri tekst.
Bili smo že v preteklosti priča temu, da je comp več kot zadovljivo nadomestil nekatere poklice. Že danes smo priča nekim prevajalnikom ala Google itd., ki lahko opravijo najmanj zahtevna prevajanja, sicer se nikakor ne morejo primerjati s njihovimi človeškimi konkurenti, ampak vseeno- razvijajo se stvari v tej smeri.

V bistvu me zanima perspektivnost prevajalstva napram razvoju tehnologije.

PS: Pa ne mi omenjat tukaj kakega AI ali pa singularnosti, ker takrat ČE bo to, bo itak šlo v maloro 99% poklicev.:D
  • spremenil: leinad ()

_marko ::

"The hardware is here. The software will inevitable follow. Still, the output may not be good enough for public display, so the question turns into: will the future of human translation be... proofreading computer output?
The bad news is yes."

link1
link2
link3

Tako na hitro...
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

_marko ::

"A decent MT machine is just around the corner"
(MT- Machine translation)

Jah, tak je... slej ko prej bo prevajal računalnik namesto človeka.
Na drugi strani pa bo tudi programiral sam :)
Vprašaj Thomasa ;)
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

BluPhenix ::

Ja no, to bo pa treba še videt, jaz vseeno mislim da se ti ni treba bati za delo. Dokler bo to masovno boš ti verjetno že davno pod rušo.

Pač vsak prevajalec vdahne v prevajano delo (še posebno če gre za knjigo) nekaj svojega. Vsak prevod je drugačen, vsakega se drugače bere, vsakega drugače občuti.

V bistvu je prevajanje neke vrste programiranje/dizajniranje/razvijanje. Nekoč bo mogoče računalnik to nadomestil vendar vprašanje kdaj bo ta nekoč in kakšen bo ta nadomestek.

Bodo ti softverji prevajali suhoparno, tenično ali bodo vdahnili pridih neke osebnosti. Katera bo ta osebnost? Očitno bo šlo za vprogramirano, saj računalnik tega še nekaj časa ne bo sposoben. Čigava bo ta vprogramirana osebnost. Problem je tudi pri prevodih knjig, ki uporabljajo nove besede (ali pa recimo imena, recimo v Harryju Potterju), jih bo tak prevajalnik prevedel dobesedno, ali jim poskusil najti pravi "prizvok"?

Najverjetneje se bo to najprej začelo uporabljati v prevajanju ogromnih spisov, recimo kot direktive EU in podobno. A kaj ko je treba med prevajanjem prilagojevati lokalni zakonodaji, pravilnemu interpertiranju in še čim. Bodo pravniki sodelovali z računalnikom ali bodo to raje delali z osebo? Bomo videli.

Bomo imeli v prihodnosti tudi računalnike, ki bodo načrtovali nove naprave? Kaj pa hiše? No, bomo videli.

EDIT: _marko: zadeva nosi letnik 2001, tip pravi, da je long in IT 3-5 years, pa še vedno ni pametnih rezultatov. No nekateri radi napovedujejo prihodnost.
Podpisa ni več, ker so me poskušali asimilirati.

Zgodovina sprememb…

Poldi112 ::

Prevajanje je precej zahtevno. Mislim da še dolgo ne bo kakovostnih računalniških prevodov. Kako daleč je tehnologija danes pa približno vidiš ko z babelfish bereš kakšno nemško stran.
Where all think alike, no one thinks very much.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.

_marko ::

->Bodo ti softverji prevajali suhoparno, tenično ali bodo vdahnili pridih neke osebnosti.

Hja, če si se lahko ti naučil prevajat takole se lahko tudi računalnik.
AI in nevronske mreže se konstantno izboljšujejo, računska moč prav tako.
Zaradi teh izboljšav boš imel dosti večji sistem, ki temelji na ogromno pravilih (far larger rule-based system), torej bo posledično prevod hitrejši in sčasoma enako dober kot človeški, kasneje pa seveda instanten in boljši.

Raziskave:
In MT research, there is much interest in exploring new techniques in neural networks, parallel processing, and particularly in corpus-based approaches: statistical text analysis (alignment, etc.), example-based machine translation, hybrid systems combining traditional linguistic rules and statistical methods, and so forth.
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

Irbis ::

Odvisno je od vrste prevajanja, kakšnega leposlovja pač računalniki ne bodo prevajali. Dobrih prevajalcev računalniki ne ogrožajo. V nevarnosti so pa taki, ki ti prevedejo navodila za uporabo v slogu "Od garancije su izjemane vse škode kakšne su posledica nepravilne postrežbe (Uporaba z neprimerno vrst elektrike/-napetosti, priključitev na neprimerne izvire elektrike, zlom itd.) normalna obraba in napake kakšne le nepomembno vplivaju na vrednost ali uporabnost aparata."
Tudi slikarstvo ni izumrlo zaradi fotografije.

_marko ::

->Dobrih prevajalcev računalniki ne ogrožajo.

Dobri prevajalci bodo pomagali ustvarit dober MT. Ta MT bo pa mel več komputinga, več pravil zapisanih v kodi, itd...
Po setu teh pravil bo prevod sčasoma postal vedno boljši...

Drugače pa če računalnik premaga vsakega šahista že zdaj, zakaj potem prevajat nebi znal?
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

cojss ::

Poglej tudi z druge perspektive: Nekdo bo moral to prevajanje sprogramirati. Vzporedni študij?

edit: _marko, malo si me prehitel:)

Zgodovina sprememb…

  • spremenil: cojss ()

Poldi112 ::

> Drugače pa če računalnik premaga vsakega šahista že zdaj, zakaj potem prevajat nebi znal?

To lahko ti poveš meni glede na žalost od prevodov ki ti jih danes servira računalnik.

Plus da je pogoj za prevajanje da razumeš pomen. Ki ga dobiš ne samo od trenutnega stavka ampak tudi od sosednjih oz. kdaj tudi od kakšnega ki je 10 strani nazaj.

Pa veselo programiranje.
Where all think alike, no one thinks very much.
Walter Lippmann, leta 1922, o predpogoju za demokracijo.

BluPhenix ::

_Marko: glede šaha, je še na strani z članki lepo napisano:
The computer computes chess, while Kasparov plays chess. A computer will never under­stand, but it can translate.

Razumevanje teksta je pri leposlovju velikega pomena.

Hja, če si se lahko ti naučil prevajat takole se lahko tudi računalnik.
"Jaz" tako prevajam ker imam neko osebnost, ki me vodi tudi pri prevajanju. To osebnost sem pa pridobil skozi leta življenja in izkušenj. o tem sem govoril, če bo vdahnil kakšno osebnost, torej nekaj svojega. Sej v prihodnosti se bo tudi računalnik (softver) lahko tako osebnostno razvil ampak do takrat je še daleč.

Zna se prej zgoditi, da prevajanje ne bo več toliko potrebno, ker se mi zdi, da dokler bo tak algoritem razvit, bodo vsi manjši jeziki pocrknili ostalo bo le nekaj večjih, ki pa bodo imeli tako prevlado oz. bodo frakcije ki jih uporabljajo tako ločene, da prevodi niti ne bodo več potrebni.
Podpisa ni več, ker so me poskušali asimilirati.

Thomas ::

Prov.

Dokler optimisti (razgrete glave) nismo še nič naredili, bomo pač tiho.

Ko pa bomo, bo za tvoje vprašanje že prepozno.
Man muss immer generalisieren - Carl Jacobi

leinad ::

Marko hvala za linke. Je pa BluPhenix izpostavil, da nekatere domneve so zgrešene, vsaj časovno.

IMO, da bo comp lahko popolnoma nadomestil prevajalca, bo treba preskociti tisto oviro, po kateri bo comp lahko popolnoma avtonomno razmišljal in se učil(seed AI mislim da imenujejo ta comp, nisem ziher). V to pa jaz dvomim, da je sploh mogoče doseči. Dopuščam, da je ampak dvomim da v naši življ. dobi.

OK to je samo mojih 5 dek:D

Zgodovina sprememb…

  • spremenil: leinad ()

leinad ::

Ja saj to je ravno tisti tricky del, ki me muči-razumevanje.
Pri šahu comp, preuči možne kombinacije in izvede najoptimalnejšo. Čisti computing. Pri prevajanju pa je potrebno razumevanje texta. Zato menim, da je za kaj takšnega potreben "čisti" AI.

Zgodovina sprememb…

  • spremenil: leinad ()

OwcA ::

Glej drugače na stvar. Jezik ima končen nabor besed in končno mnogo pravil. Če znamo pisati prevajalnike za računalniške jezike, ki prevajajo boljše kot večina ljudi iz zelo različnih jezikov, čemu ne bi mogli prevajati tudi govorjenih jezikov. Skeptiki se boste nedvomno strinjali, da računalnik ne razume programa niti si ne more zmisliti nečesa novega, torej je topogledno enako "metafizično" kot neko pisano besedilo.
Otroška radovednost - gonilo napredka.

leinad ::

Ja, ampak npr. da v nek kontekst vstaviš ustrezen pomen besede, jaz ne vidim druge poti kot razumevanja. Za ugotavljanje ustreznega pomena besede v kontekstu ni pravil, ampak je povsem podvrženo razumevanju. Ali pač?

Zgodovina sprememb…

  • spremenil: leinad ()

OwcA ::

Lahko recimo pogledaš besede katere definicije so najbolj "povezane" z danim kontekstom.
Otroška radovednost - gonilo napredka.

leinad ::

To že, samo gotovosti ne moreš doseči, potemtakem se samo poigravaš s verjetnostjo. Ali boš zadel bližje ali dalje od najustreznejšega pomena.

_marko ::

Kako pa to po tvojem naredi človek?
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

Thomas ::

Jest sem se včasih držal politike, da sem povedal, kar sem predvideval, da bo.

Zdej povem vse manj in manj.

Carnivore nej predvidi po svoje in naj mu potem žal po njegovo, če se ne bo prav odločil.

----

Kar se tiče strojnega prevajanja je tako, da ta trenutek obstajajo ogromni "korpusi" že prevedenega, ki se samo pokličejo ustrezni pari stringov.

Kaj če ga dotičnega ni?

Ponavadi je!

Če ga pa ni, je pa morda v "korpusu" rahlo drugačen stavek, samo z eno - drugačno (zamenljivo) besedo. Seznami teh se pa tudi vsak dan širijo.

"Ustrelil sem bil volka." --> "I've shot a wolf."

in

"Ustreli sem bil medveda." --> "I've shot a bear."
"Ustreli sem bil jelena." --> "I've shot a deer."
....

To pokriva ta trenutek že vsaj 90% prevodov.

---------

Gre pa še za nekaj. Za simultane prevode govora. Tukaj je problem v prepoznavanju govora. Tudi čisti computing in vse je a matter of a degree.
Man muss immer generalisieren - Carl Jacobi

leinad ::

Z razumevanjem teksta. Računalnik ne razume, ne pozabit tega.

OwcA ::

Saj tudi "živi" prevajalci se motijo.

Operiranje z absolutno gotovostjo je precej nehvaležno početje, meni Bayesova logika povsem zadošča.
Otroška radovednost - gonilo napredka.

leinad ::

Priznam, absolutne gotovosti ne more doseči. Ampak z razumevanje teksta lahko izkušen prevajalec vsaj doseže večjo verjetnost "zadetka".

OwcA ::

To govoriš povsem na blef. Če imaš še bazo obstoječih prevodov, kot je predlagal Thomas in še to uporabljaš za določanje konteksta, potem o tem kdo se manjkrat moti odloča predvsem računska moč, ki jo namaniš MT.
Otroška radovednost - gonilo napredka.

_marko ::

Kako dolgo še to Carnivore?
Še 2 leti, 5...?

V kolikor razmišljaš linerno bo ta številka precej zgrešena.
The saddest aspect of life right now is that science
gathers knowledge faster than society gathers wisdom.

leinad ::

Koliko razumem Thomasa, stroji že danes opravijo lahko večino dela. Zakaj prevajalstvo še ni začelo propadat?

leinad ::

Marko, res razvoj compov je bil vse prej kot linearen. Ampak reči kdaj bo sposoben razumevanja, pa je strel v temo. Računalniku se je cel čas izboljševal computing. V smeri razumevanja ni bilo storjenega nič. IMO bo za kaj takega potreben tale "seed AI".

OwcA ::

Verjetno predvsem zato, ker očitno ni dovolj profitabilno, da bi nekdo šel pisati parser za jezike in nakopičil dovolj računkse moči.

Sam dam avtomatiziranemu prevajanju večine besedil 5 let, morda kakšno manj, če se recimo kakšen Google (z UP se ukvarjajo, Language Tools takisto imajo) ali IBM zelo zavzame za to.
Otroška radovednost - gonilo napredka.

leinad ::

No kolikor jaz vem je prevajanje, dokaj drag hec. Mislim neka firma, ki bi se odločila za investicijo v sofisticirane avto-prevajalnike, bi lahko storitve tržila po precej nižjih cenah od konkurentov. Njihova hitrost prevajanja pa sploh neprimerno boljša.

OwcA ::

Ni drag, ko ga primerjaš recimo z simulacijo avtomobilskega motorja ali kakšnim hudim data-miningom. Potrebna računska moč je namreč verjetno primerljiva.
Otroška radovednost - gonilo napredka.

leinad ::

Ja, takšne prednosti za comp kot je v teh dveh primerih res ni. Ampak vseeno je po mojem profitabilno. Če navedem ceno moje sosede, ki je prevajalka nemščine s licenco- 4200 SIT/stran. Mislim, da bi se že v kaki LJ enemu podjetju splačala investicija.

Zgodovina sprememb…

  • spremenil: leinad ()

BluPhenix ::

No sej sem rekel na začetku bomo videli kako in v kaj se bo razvilo.

OwcA: tisto s prevajalniki programskih jezikov pa ni čisto uredu primerjava. Zakaj tako mislim:

Programer more že spisati v neoporečnem programskem jeziku. Če je kaj drugače napisano vrže error. Prevajalnik v bistvu ne "prevede" ampak samo pogleda kakšni recimo ASM ukazi ustrezajo recimo printf(). To v bistvu ni prevajanje to je look-up tabela. Višjih ukazov si tak prevajalnik ne zna razložiti, vedno mora biti višji ukaz razložen z vrsto nižjih. Kar ni definirano ne pozna, po domače.

Če nekdo naredi novo skovanko, jo bo prevajalec z nekaj razmišljanja lahko prenesel v domač jezik tako da bo dosegla enak (oz. vsaj podoben) efekt kot ga ima v jeziku v katerem je bila napisana. Dokler bo softver to naredil bo še kar nekaj vode preteklo.

Govorim sicer iz izkušenj. Punca je pač prof. Ang in se ukvarja tudi veliko z prevajanjem. Večino časa ne porabi za iskanje besed po slovarju oz. pisanje ampak za iskanje konteksta ter sestavo prevoda da bo v drugem jeziku smiseln. Ne samo pravilno preveden.

Zdej imaš pa pri softverskih prevajalcih dve možnosti:

1) to iskanje konteksta že ptogramer vstavi. To lahko naredi po ključih, recimo zmečeš v program 10.000 prevodov istega prevajalca, program to analizira in bo lahko prevajal tako kot tisti prevajalec. Lahko mu daš tudi dela različnih avtorjev, malo večji problem bo že, kako se bo odločil kateri interpretacijo, katerega avtorja bo vzel. Če preveč meša ne bo dobro, saj bo bralec opazil razliko v prevodu. To se npr. zgodi ko dobi softver za prevesti nek tekst ki ga prevajalec še ni prevajal (recimo navadno prevaja biologijo, programu pa daš tekst o električnih linijah). No razen par malo večjih detajlov se da to danes nekako narediti.

2) računalnik razume kaj je napisano in temu prilagodi slog prevajanja - zaenkrat izvedljivo samo "na papirju"

V bistvu bi bil tak softver bil verjetno zelo ozko usmerjen, vsaj na začetku (ta začetek pa nebi bil tako kratek), ker dvomim da bi lahko isti softver uporabil za prevod navtičnega priročnika in otroško knjigo.

Ne pozabiti velikokrat je prevajalec "kriv" za neuspeh knjige v drugem jeziku.
Podpisa ni več, ker so me poskušali asimilirati.

OwcA ::

Programer more že spisati v neoporečnem programskem jeziku. Če je kaj drugače napisano vrže error. Prevajalnik v bistvu ne "prevede" ampak samo pogleda kakšni recimo ASM ukazi ustrezajo recimo printf(). To v bistvu ni prevajanje to je look-up tabela. Višjih ukazov si tak prevajalnik ne zna razložiti, vedno mora biti višji ukaz razložen z vrsto nižjih. Kar ni definirano ne pozna, po domače.

No, tako zelo preprosto tudi ni, poleg tega je mogoče prevajati tudi med višjimi jeziki, ne samo v nižje. Če vzamemo sodoben interpreter, bo kodo najprej transformiral v parse drevo in šele iz tega potem nekaj naredil. V tem koraku (ob predpostavki, da imamo enako parse drevo, kar pa je predvsem stvar implementacije prevajalnika) so programski jeziki relativno lepo prevedljivi med sabo.
Še bolj enostavno je, če vzamemo kakšen jezik, ki je namenjen razvijanju lastnih dialektov (Lisp, Scheme, Rebol, ...).

Govorjen jezik je logično gledano ciklično definiran, tako da mi svojega jezika niti ne moremo "razložiti", medem ko lahko računalniški jezik, ki zna interpretirati samega sebe napišemo v manj kot 100 vrsticah.
Otroška radovednost - gonilo napredka.

Zgodovina sprememb…

  • spremenilo: OwcA ()

Tear_DR0P ::

vpiš se na prevajalstvo in spiši program, ki bo sposoben prevajat - to je future, če boš dober, boš pojahal še thomasa
jst tud mislim da bodo računalniki sposobni prevajanja, kdaj pa ne vem
"Figures don't lie, but liars figure."
Samuel Clemens aka Mark Twain

Irbis ::

Za različna področja bi moral prevajalni program imeti označeno v slovarju, kateri pomeni so tipični za posamezno področje, potem pa iz vzorca ugotoviti, za katero področje gre in dati tistim pomenom prednost.
Je pa tako, da bo tudi živ prevajalec, ki bo dobil čisto novo področje, imel hude težave s prevajanjem. Pri tehničnem prevajanju včasih brez strokovnjaka za tisto področje praktično ne gre, še posebej, če gre za kakšno bolj specializirano področje, za katerega po možnosti niti še ne obstajajo terminološki slovarji.
Na splošno pa ni smiselno, da začnemo uvajati računalniško prevajanje na področjih, ki so še za večino živih prevajalcev pretežka. In pa prevajalcem bi se zelo poznalo že, če bi jim pomoč (predlogi) računalnika pospešili dela že za 10 %.

BluPhenix ::

Ja seveda bi moral znato to vsak interpreter sej je teoretično isto. Tudi iz recimo ASM v C bi moralo potekati normalno, čeprav je že bolj problematično če more iz recimo ASM kode dati v neko funkcijo.

Človek lahko recimo besedo, kljub temu da ne ve njenega direktnega prevoda, razume iz konteksta. Prevajalnik pa tega (še ne) zmore. In tukaj je največja hiba.

Pri prevajalnikih gre vedno za delanje po predpostavljenih poteh, ne gre za ugibanje, razmišljanje, gre se samo za logično odločanje.

Irbis: sej tudi program bo imel problem s tehničnim prevajanjem in vsakim ostalim. Dokler ne bodo pač razvili za vsako področje algoritma. Problem je še to, da moraš za vsako državo stvar malo drugače narediti, ker ima malo drugače rešene oziroma opredeljene nekatere stvari. Koliko firm v Sloveniji bi bilo pripravljenih vložiti v tak razvoj. Skratka strokovnjak bo skorajda vedno potreben. Med drugim tudi človek zase prej "razvije" "algoritme" za nov tip prevajanja kot pa to naredi skupina programerjev.
Podpisa ni več, ker so me poskušali asimilirati.

Zgodovina sprememb…

OwcA ::

Človek lahko recimo besedo, kljub temu da ne ve njenega direktnega prevoda, razume iz konteksta. Prevajalnik pa tega (še ne) zmore. In tukaj je največja hiba.

To ni res. Čisto lepo se da simbolno "računati", poglej si recimo Mathematico. Trivijalen primer, naj bosta f in g funkciji, ki sta prvorazredna objekta:
(f g)
(g f)

V prvem primeru kličemo f(g), v drugem pa g(f), to je povsem kontekstualen sklep, ki so ga prevajalniki zmožni narediti vsaj zadnjih 20 let.

Pri prevajalnikih gre vedno za delanje po predpostavljenih poteh, ne gre za ugibanje, razmišljanje, gre se samo za logično odločanje.

Če ugibajo je vprašanje definicije ugibanja. Ako gre za odločitev na podlagi nepopolnih podatkov, potem prevajalniki vsekakor veliko in pogosto ugibajo (recimo, če imamo dinamične tipe). Seveda za odločanjem stoji logično trden sistem, ampak v to smer se tudi nekateri ljudje trudimo.
Otroška radovednost - gonilo napredka.

Zgodovina sprememb…

  • spremenilo: OwcA ()

BluPhenix ::

Po moje to ni sklep ampak implementacija ukaza v programu.

bi znal ločiti:
g od f
f od g

Ja, v kolikor bi bil programiran za to.

ti pa recimo lahko razumeš da je v stavku: Danes sem bil z Kkdkso po nakupovanju, kupila si je čevlje. Kkdkso - ime ženske s katero sem šel danes po nakupih in da ima nove čevlje. In to je tak banalen primer. Prevajalnik bi se verjetno ustavil, da ne pozna besede.


Sej ne me razumet narobe nisem rekel, da je nemogoče, ampak da ne bo zgodilo tako hitro, lahko in samoumevno, kot si nekateri predstavljajo. Pač je veliko spremenljivk, med katerimi jih veliko ne definira programer, ampak jih bo moral program sam., po nekakšnem ključu, "razmišljanju". To je tako enostavna razlaga.
Podpisa ni več, ker so me poskušali asimilirati.

OwcA ::

Nihče ni rekel, da sta f in g že prej definirani. Le dva simbola, ki ju glede na kontekst vmestimo v drevo našega programa kot klic funkcije. f lahko recimo niti nima nekega fiksnega pomena, ampak je definirana samo glede na g. Poudaril bi, da vse to že obstaja.

Tudi govorjen jezik ni tako divje misteriozen, niti nimamo mi kakšnega metafizičnega uvida.

kjklfdjg jjs opojk sjdm kks °ks ~ kjkj ˇ˘ bme

tega tudi ti ne znaš prebrati vsemu razmišljanju navkljub ;). Ko pa imaš enkrat definirano skladnjo in bazo klasifikacij besed, pa se da že kar nekaj narediti tudi strojno. Recimo "razumeti" tvojo Kkdkso.
Kot že rečeno, glavni problem je pomankanje računske moči. Če vzameš recimo bazo, ki je za SSKJ-jem in si pogledaš slovnico, zlasti besedoslovje trdim, da se da tukaj in zdaj v manj kot 1000 vrsticah napisati program, ki transformira poljuben stavek v slovenščini v nek enoumen in predvsem normaliziran (recimo vsi glagoli v 1. osebi ednine) opisen format z več kot 80 % natančnostjo. Seveda je od tu do resnega prevajanja še dolga pot, ampak nič presunljivega, znanje že imamo.

EDIT: malo bolj razdelal idejo
Otroška radovednost - gonilo napredka.

Zgodovina sprememb…

  • spremenilo: OwcA ()

BluPhenix ::

Sej v bistvu govogimo isto. Možnosti nekako so, pomembna je implementacija. Kar pa še precej časa ne bo efektivno uporabna. :D
Podpisa ni več, ker so me poskušali asimilirati.

Irbis ::

> Danes sem bil z Kkdkso po nakupovanju, kupila si je čevlje.

Tole se do neke mere da reševati programsko tako, da vneseš tipične končnice in potem ugibaš, kaj bi lahko beseda bila. Če imaš recimo besedo, ki se konča na "ica", lahko z veliko verjetnostjo sklepaš, da gre za samostalnik ženskega spola, ednina imenovalnika, če je z veliko začetnico sredi stavka lahko sklepaš še, da gre za lastno ime.
Seveda stvar ne deluje vedno: za končnico -ico bi tako predpostavil, da gre za tožilnik. Potem pa se ti pojavi stavek: "Magnifico je pevec." in program bo bistro predpostavil (če imena ne bo poznal), da pevec jé nekoga z imenom "Magnifica". :D

Pri analizi je predvsem problem to, da računalniki najdejo ogromno čudnih analiz, ki so teoretično sicer možne, ampak malo verjetne, in se je potem težko odločiti med njimi. Enostaven primer:
Berem vsak časopis.
Berem vsak dan.

Analogno prvemu primeru je najbolj "logična" razlaga drugega stavka, da nekdo bere dneve. Analizator mora potem ugotoviti, da dni ne moreš brati, da pa je "vsak dan" tipično prislovno določilo časa. Ker ne moreš zbrati vseh prepovedanih kombinacij, je treba analizatorju pač dopovedati, da "vsak dan" bolj verjetno prislovno določilo kot predmet ali osebek, čeprav se vedno da izmisliti primer ("Spomladi je vsak dan daljši."), kjer to ne bo res.

Takih primerov, ko je analiza pomensko odvisna, je zelo veliko:
Janez je potico z orehi.
Janez je potico z rokami.
V prvem primeru "z" pomeni, da potica vsebuje orehe, v drugem pa pove, kako jo je. Drug pomen pa lahko pomeni tudi drug prevod v ciljnem jeziku.

>(recimo vsi glagoli v 1. osebi ednine) opisen format z več kot 80 % natančnostjo.

Dobro, 80 % v bistvu pomeni, da imaš v vsakem stavku dve napaki. In v slovenščini (za razliko od angleščine) je tudi v tem primeru večkrat še vedno težko ločiti med osebkom in predmetom, analizator mora točno določiti stavčne člene in ne le besednih vrst.

Pri analizi slovenščine je problematična že beseda "je": je daleč najpogostejša beseda in ima tri možne pomene: oblika glagola biti, oblika glagola jesti ali pa oblika osebnega zaimka. Pri tem da je tudi kot "biti" lahko še naprej pomožni glagol ali pa polnopomenski. Tudi "sem" je lahko glagol biti ali pa krajevni prislov. Takega prekrivanja je kar precej (in to ravno pri najpogostejših besedah).

Analiza se da kar lepo narediti za lepe proste stavke, zaplete se pa pri realnih besedilih s kupom vrinjenih stavkov, kjer je težko že najti dele, ki spadajo skupaj (do neke mere je to tudi problem zmogljivosti preračunavanja, še tako hitremu računalniku se bo zataknil v grlu klobasast stavek, ki se vleče čez pol strani, če ne bo analizator dovolj pridno sproti izločal manj verjetnih kombinacij). In v realnih besedilih moraš računati tudi na to, da bo manjkala kakšna vejica ... Uporaben prevajalnik mora biti kar precej imun na tipične slovnične napake.

Tudi pri enostavnih stavkih se lahko določanje glagola precej zaplete: "Tiskarsko črnilo zaradi visokega pritiska v obliki curka majhnih kapljic brizga skozi šobo." Kandidati so "črniti", "pritiskati", "brizgati"; nobeden od njih ni očiten kandidat, ker imajo vsi še samostalniško možnost (črnilo, pritisk, brizga in brizg). Potem se pri vseh predlogih pojavi dilema, ali gre za desne prilastke ali prislovna določila. Za nameček so "curka", "kapljic" in "brizga" lahko tudi v rodilniku, kar pomeni, da lahko sami naredijo desni prilastek. Če analizator dovoli še posamostaljenje pridevnikov (kar načeloma v slovenščini je možno), takoj dobiš še možnost, da črnilo (zaradi visokega) pritiska v obliki curka majhnih kapljic od brizga skozi šobo.

In seveda problem izbire med pomeni, že enostaven stavek "Za to gre." lahko pomeni pravo morje stvari (in tudi to morje ni kotlina, zalita s slano vodo :)) . Tukaj pa je treba upoštevati kontekst in to je potem šele pravi trdi oreh za zanesljivo strojno prevajanje.

BluPhenix ::

Lepo predstavljeni problemi. Super si to spisal, se pravi prevajalniki imajo možnosti:

1) vse te kombinacije predvidijo programerji/prevajalci/svetovalci in se vnesejo v program, seveda za vsak jezik drugače. Kar je praktično skoraj nemogoče.

2) program mora te stvari sam uvideti, vendar da to lahko stori mora tekst nekako razumeti. kar praktično še ni izvedljivo.

3) kombinacija obojega. "najpreprostejša" rešitev in praktično do neke mere celo mogoča. Vprašljivi so rezultati in problem je, da bi bilo treba vsak prevod za računalnikom preveriti


I read each day :D

Janez is eating the potica with his nuts :D
Podpisa ni več, ker so me poskušali asimilirati.

OwcA ::

To pišeta kot, da ne bi obstajala (vsaj do neke mere sformalizirana) slovnica in kakšen že napisan slovar, da ne omenjamo baze že sparsanih besedil. :\
Otroška radovednost - gonilo napredka.

Irbis ::

@BluPhenix
Ja, stvari se je treba lotiti tako, da se del pravil vnese (recimo to, da je "vsak dan" tipično časovno prislovno določilo, da je "z" pred "roka" tipično v pomenu, da s pomočjo roke nekaj narediš), ostalo mora pa potem program ugibati. Seveda pa nikoli ne veš, kaj dajo ljudožerci v potico :D

@Owca
Za slovenščino? Tiste lepe slovnice, ki se uporabljajo za angleščino, postanejo pri praktično prostem besednem redu precej neuporabne. V slovenščini ne moreš enostavno reči, da boš imel osebek, povedek, predmet in na koncu prislovna določila (in to še načinovna in krajevna pred časovnimi), stvari so lahko popolnoma premešane.
Tudi običajno slovarji (recimo SSKJ) so precej zoprni za računalniško uporabo, ker niso dovolj formalizirani. In fraze "biti po nakupovanju" recimo ne boš nikjer našel, SSKJ pozna le "iti po nakupih".
Tudi zelo zanesljivo (beri ročno) analiziranih besedil po moje ni prav veliko za slovenščino. Če pa se poskušaš avtomatsko učiti iz strojno označenega besedila, boš pa v bistvu težko presegel zanesljivost strojnega označevalnika, ki ti je naredil učno množico.

Tear_DR0P ::

idi lepo prevajalstvo študirat :D
poezije še dolgo ne bo znal noben program prevajat, tud ljudje majo prevlke težave s tem, tam se namreč vsa slovnična pravila podrejo
"Figures don't lie, but liars figure."
Samuel Clemens aka Mark Twain

gzibret ::

Po mojem je rešitev v ANN (artificial neural network), input je optični sistem, z ANN povezan preko sistema za prepoznavanje črk (kakšna Recognita oz. kaj boljšega) ter učenje ANN na podlagi knjižnih (leposlovnih) del z odgovarjajočimi prevodi.

Vprašanje je le glede velikosti ANN, designa stojala za knjige ter sistema za obračanje strani :D :D
Vse je za neki dobr!

Zgodovina sprememb…

  • spremenilo: gzibret ()

BluPhenix ::

V bistvu bi bilo treba zato, da bi prevajalnik pravilno prevedel dati besedilo najprej lektorju, da pregleda besedilo v izvornem jeziku. Potem pa računalniku v prevod. Vsaj na začetku, doker nebi znal prevajalnik do spraviti skozi. Tudi typoji bi mu recimo delali probleme, saj lahko izbere nadomestek iz izrazov ki jih pozna, na slepo, dokler ne šteka pomena stavka v katerem je typo.

Sej v bistvu stalno obravnavamo iste probleme.

OwcA, sej seveda so napisana pravila, ampak ne pišejo vsi vedno po pravilih. Včasih dobijo prevajalci v roke take pisne katastrofe, da se komaj prebije čez napisano, ne pa da še tisto prevede. (EDIT2: no tukaj sem nehote že navedel en tak "problem", torej kaj sem mislil: še tisto - se pravi tudi tisto polek drugega, ali tisto še - se pravi polek vse obdelave da še prevede; očitno gre za "typo", ki bi ga prevajalec iz konteksta spoznal za drugo varjanto, prevajalnik malo težje).

Bo, nekoč, ampak ta nekoč ni še tako blizu (že n-tič napisano).

Med drugim, mislite res, da se bo toliko mio prevajalcev strinjalo da bodo kar naenkrat ostali brez službe? Malo dvomim v to.

EDIT: med drugim pomislite koliko jezikv je na svetu in koliko pravil bi bilo treba vnesti v te prevajalnike, koliko izjem, specialnih pravil .... sej bi vsak imel (v kolikor i prevajal v vse jezike) konkreto bazo.
Podpisa ni več, ker so me poskušali asimilirati.

Zgodovina sprememb…

Irbis ::

Zdi se mi, da prevodi leposlovja niso ravno primerni za strojno učenje prevajanja, prevajalci kdaj prevajajo precej po svoje. Kakšna zakonodaja, kjer so stvari lepo poravnane, je bistveno bolj primerna za to.
Nad primernostjo nevronskih mrež sem tudi precej skeptičen oz. bi jih morali nekako skombinirati s pravili. Nekatera slovnična pravila so vseeno precej nedvoumna in njihovo izumljanje na novo s strojnim učenjem, se mi zdi precej nepotrebno (pa še zelo zaplete vse skupaj). Pri nevronskih mrežah je sitno še, da težko potem kaj na roke dopolnjuješ in pri novem učenju hitro podreš kaj, kar se je nekoč že dobro prevajalo (pravzaprav je to do neke mere težava tudi pri pravilih).

Tipkarske napake so pa velik problem za računalnik. Kakšne pogoste se sicer da enostavno vnesti v slovar, res zatipkanih pa ne. Potem je kdaj še težavica, ko je zatipkano v drugo pravilno besedo in se po možnosti stavek celo da na nek način smiselno analizirati, čeprav bi človek seveda hitro opazil, da pomen ni povezan s sobesedilom in je najbrž kaj narobe.

Ste kaj preizkušali Presis?

Danes sem bil z Kkdkso po nakupovanju, kupila si je čevlje.
-> Today was with Kkdkso round shopping, she bought self shoes.
Danes sem bil z Kkdksico po nakupovanju, kupila si je čevlje.
-> I was round shopping with Kkdksico today, she bought self shoes.
Danes sem bil z Kkdksico po nakupih, kupila si je čevlje.
-> I was round purchases with Kkdksico today, she bought self shoes.
Danes sem šel z Kkdksico po nakupih, kupila si je čevlje.
-> I shopped with Kkdksico today, she bought self shoes.

Tale "round" bi moral še zamenjati z "after" (glede na to, da je "nakupovanje" glagolnik, je najbolj smiseln časovni pomen za "po").

BluPhenix ::

Hmm, ja no:

OwcA, sej seveda so napisana pravila, ampak ne pišejo vsi vedno po pravilih. Včasih dobijo prevajalci v roke take pisne katastrofe, da se komaj prebije čez napisano, ne pa da še tisto prevede.

OwcA, of sessions of course are written, but all don't write round rules always. Translators to time periods of such written catastorphe meet sometimes, that barely spends over written, and not that still that translates. (Good thanslator are you - Yoda :D )

Veliko besed pusti obarvanih zeleno, kar pomeni, da ima beseda več prevodov, torej more človek še vedno to izbrati. Mislim da je vseeno hitreje če sam prevedeš.

No, tu je še dolga pot. Verjamem, pa da imajo kje že boljše primerke.

No, enostavnejši primer:
Imam psa, ki je podoben mački.
Imam of dog, that he is similar to a cat.

V drugo smer mu gre že boljše:
I have a dog that looks like a cat.
Imam psa ki biti podoben mačka.

In zadeva stane 8k/leto za home userje. 40k/leto za enterprises. No, za kaj enostavnega je uporabno, za kaj več pa. Če imaš recimo 10 strani, te pride prevajalec nekje 50-70k. Dvomim, da boš imel čas in voljo popravljati ta prevajalnik, še posebno če ne znaš prav veliko angleške slovnice. Prevajalec namreč zadevo tudi lektorira.
Podpisa ni več, ker so me poskušali asimilirati.

Zgodovina sprememb…

Irbis ::

Na splošno mu delajo hude težave prilastkovi odvisniki (ki, that).

> Imam of dog
Hja, pravzaprav je možen drugi pomen stavka "Imam psa.", če pomisliš, da je "imam" lahko tudi samostalnik v pomenu verski voditelj :D Seveda pa to nikakor ni prvi pomen. Čeprav je zanimivo, da če napišeš le "Imam psa.", ti pa vrne "I have dog." kot prvo možnost.

> torej more človek še vedno to izbrati.
Tole je tak zanimiv primer za strojni prejavalnik: prevedel bo v "can", v resnici pa je bilo v danem primeru najbrž mišljeno "mora", torej "must". Takih stvari strojni prevajalnik še zlepa ne bo ugotovil.
«
1
2


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Človeški jezik (strani: 1 2 )

Oddelek: Znanost in tehnologija
738982 (5297) kuall
»

Google razvija ribo babilonko

Oddelek: Novice / Apple iPhone/iPad/iPod
268285 (6918) Jst
»

Aplikacija za tolmačenje na iPhonu

Oddelek: Novice / Apple iPhone/iPad/iPod
173281 (2653) romci
»

Google govori 41 jezikov

Oddelek: Novice / Omrežja / internet
305247 (3967) Azrael
»

Presis prevajalni sistem

Oddelek: Programska oprema
123319 (2994) dunda

Več podobnih tem