Wikipedia-diskusjon:Wikiprosjekt Maskinomsetjing frå bokmål

Siste kommentar: for 13 år sidan av Jeblad i emnet WikiBabel

Arkiv over diskusjonen då vi framleis venta på Nyno endre

Dette prosjektet starta ut med eit håp om å få bruke Nyno. No satsar vi i staden på Apertium. Diskusjonen frå "Nyno-perioden" er lagra her. Trondtr 4. oktober 2009 kl. 18:25 (CEST).Svar

Apertium endre

First of all, sorry for the spam/crosspost. Please delete it if you find it inappropriate.

I'm writing this as I understand you are interested in translating between Norwegian Nyorsk<->Bokmal. The post concerns the en:free software machine translation engine en:Apertium. If there are people interested in writing language data for Nyorsk<->Bokmal, please contact me. I will assist in any manner possible. The work would involve creating XML files containing morphological dictionaries, a bilingual dictionary and a list of transfer rules. The software can be integrated in any way and I would be willing to help out with this. Some idea of the level of difficulty involved can be found here, although once a certain amount of work has been done on the XML files, a web interface can be used to add further vocabulary.

The only current downside (and it is worth mentioning) is that the software currently relies on ISO8559 encoding, although Unicode support will be (hopefully) available in March. Having said that, the encoding is not such a big deal and could be taken care of with iconv.

Again, sorry if this is completely irrelevant and a bit spammy, - en:User:Francis Tyers (contact me here).

Btw, there is a webform that can be used here. - en:User:Francis Tyers
It would be very interesting to see if any of the files prepared for the nyno-system could be reused for this open source project. Jeblad 22:56, 9 januar 2007 (CET)
No, links to an open source MT project is definitely not spammy in this context. Unfortunately, I am not too optimistic wrt. reuse of Nyno source code in a project like this, since there is a company behind it, making a living of that software. What I had in mind was using Nyno for Wikipedia, not making a new MT version. But someone else may of course give it a go, e.g. with the open source nn and nb spelling projects + apertium as a starting point, perhaps with Stuttgart SFST for the morphology. Trondtr 00:23, 10 januar 2007 (CET).
The morphology stuff is included in the software, and is generated from the morphological dictionaries, so thats covered. I agree that it is very optimistic to think that Nyno might give away any of their data under a free license. It is probably better to start it from scratch. Could you give links to the nn and nb spelling projects? If there is any interest, please just give me a shout. I'm on freenode as 'spectei' or 'spectie' (as my en page shows) or you can email me. - en:User:Francis Tyers
There is a common url for several Nordic projects, www.speling.org, with language specific ones with the language prefix da, etc. These projects use ispell. They suffer under the lack of good basic resources. Things are improving, though, as Forskingscentralen för de inhemska språken, the Finnish bureau for domestic languages, has recently released an xml version of a reasonably-sized lexicon, with inflection codes for each lexeme. There is lobbying (within the speling group for achieving the same here in Norway as well, but so far with no result. Trondtr 16:18, 10 januar 2007 (CET).
Eg tenkte berre eg skulle nemne at eg er involvert i å utvide Bokmål/Nynorsk-delen av Apertium; eg er veldig interessert i å høre kommentarar frå andre som er interessert i dette (eller vil bidra), det trengst jo au ein del avgjerder når det gjeld sideformer og slikt (t.d. slikt som at me vil omsetje «også» til «òg», ikkje «au»). Å ha Wikipedia som testgrunnlag vil iallfall hjelpe mykje med å gjere arbeidet mitt meir målretta. --Kiwibird 20. april 2009 kl. 18:32 (CEST) / UnhammerSvar

Godt jobba, Kiwibird, og velkomen til andre som vil vere med! Det er t.d. ca. 30000 liner av denne typen (nynorsk til venstre, bokmål til høgre)

  • <e><p><l>meir<s n="adv"/></l><r>mer<s n="adv"/></r></p></e>
  • <e r="RL"><p><l>mye<s n="adv"/></l><r>mye<s n="adv"/></r></p></e>
  • <e><p><l>mykje<s n="adv"/></l><r>mye<s n="adv"/></r></p></e>
  • <e r="LR"><p><l>ferskvatn<s n="n"/><s n="nt"/></l><r>ferskvatn<s n="n"/><s n="nt"/></r></p></e>
  • <e><p><l>ferskvatn<s n="n"/><s n="nt"/></l><r>ferskvann<s n="n"/><s n="nt"/></r></p></e>
  • <e r="LR"><p><l>encyklopediedi<s n="n"/><s n="m"/></l><r>encyklopedi<s n="n"/><s n="m"/></r></p></e>
  • <e r="RL"><p><l>oppslagsverk<s n="n"/><s n="nt"/></l><r>encyklopedi<s n="n"/><s n="m"/></r></p></e>
  • <e><p><l>oppslagsverk<s n="n"/><s n="nt"/></l><r>oppslagsverk<s n="n"/><s n="nt"/></r></p></e>

Dei aller fleste av desse linene er som den første (nynorsk <-> bokmål). Men så er det nokre nynorskord (som "mye") som vi vil omsetje til bokmål "mye", utan at vi vil omsetje bokmål "mye" til nynorsk "mye" av den grunn (derimot til "mykje"). Derfor får oppslaget "mye"-"mye" ei avgrensing r="RL" (r = restriction) som seier at dette skal ikkje omsetjast frå høgre til venstre. "Bokmålsord i nynorsk" får dermed avgrensinga RL, mens "nynorskord i bokmål" ("ferskvatn"-"ferskvatn") får avgrensinga "LR" (ikkje omsetjast frå venstre til høgre, nynorsk "ferskvatn" skal bli sett om til bokmål "ferskvann". Desse to avgrensingane kan kombinerast, som for encyklopedi og oppslagsverk. Alle som syns dette ser interessant ut blir med dette oppfordra til å bli med på dugnaden (ved å registrere seg på Apertium og laste ned kjeldekoden, evt. ved å sende Kiwibird eller meg eit brev). Trondtr 20. april 2009 kl. 20:08 (CEST).Svar

Har nyno tilgjengeleg endre

Det verkar som det er lite fart på prosjektet vårt med å få til ei maskinomsetting frå bokmål. Eg har tilgang til Nyno og kan godt ta råomsetting av artiklar frå bokmål. Gje meg eit hint på brukarsida så dumpar eg ei råmaskinomsetting av artikkelen du vil ha der du vil. Kor manelt rette omsettinga blir er avhengig av kor mykje tid eg har tilgjengeleg. stykkjet 22:34, 31 januar 2008 (CET)

Tekstbehandling rundt Apertiums wiki-kode-trøbbel endre

Såvidt jeg kan se stanser Apertium oversettelsen når den finner doble krøllparanteser - {{. Apertium hopper også over tekst inni <>-klammer, det vil si wiki-referanser. Dette bør sjølsagt løses i oversettelsesverktøyet, ved at Apertium tilpasses wiki-formatet. Men som en nødløsning funker det å kjøre en makro i Word før oversettelsen, og en annen etter.

  • Første makro før oversettelse bytter ut alle {{}} og alle <> med litt kryptiske bokstavkombinasjoner, slik at Apertium ikke hopper over noe.
  • Andre makro etter oversettelse bytter bokstavkombinasjonene tilbake til {{}} og <>, slik at kodene blir som de var. I tillegg legger den til språkvask-boksen øverst i teksten og kategorien for Apertium-oversatt nederst.

Det er nokså enkelt å lage slike makroer i word, - men her er uansett makrokode som fungerer - om noen trenger den for å kopiere inn.

Kode til første makro - kopieres inn under Sub Førstemakronavn og over End Sub.

   CommandBars("Stop Recording").Visible = False
   Selection.Find.ClearFormatting
   Selection.Find.Replacement.ClearFormatting
   With Selection.Find
       .Text = "{{"
       .Replacement.Text = "vkvk"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = "}}"
       .Replacement.Text = "hkhk"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = "<"
       .Replacement.Text = "vv"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = ">"
       .Replacement.Text = "hh"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   Selection.EscapeKey


Kode til andre makro - kopieres inn under Sub Andremakronavn og over End Sub. NB! XX må byttes med to startkrøllparanteser og YY med to sluttkrøllparanteser...

   Selection.HomeKey Unit:=wdLine
   Selection.HomeKey Unit:=wdLine
   Selection.HomeKey Unit:=wdStory
   Selection.Find.ClearFormatting
   Selection.Find.Replacement.ClearFormatting
   With Selection.Find
       .Text = "vkvk"
       .Replacement.Text = "{{"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = "hkhk"
       .Replacement.Text = "}}"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = "vv"
       .Replacement.Text = "<"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   With Selection.Find
       .Text = "hh"
       .Replacement.Text = ">"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = False
       .MatchCase = False
       .MatchWholeWord = False
       .MatchWildcards = False
       .MatchSoundsLike = False
       .MatchAllWordForms = False
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
   Selection.HomeKey Unit:=wdStory
   Selection.TypeText Text:=Chr(11)
   Selection.MoveUp Unit:=wdLine, Count:=1
   Selection.TypeText Text:="XXspråkvaskYY"
   Selection.EndKey Unit:=wdStory
   Selection.TypeParagraph
   Selection.TypeText Text:=Chr(11) & ""
   Selection.TypeParagraph

Makroene kan sikker lages på mange vis, så bedre ideer mottas med takk. Kimsaka 17. juli 2010 kl. 18:06 (CEST)Svar

Hei, takk for skriptet =D Mediawiki-deformatering har vore på TODO-lista til Apertium i lang tid, og var eit mogleg GsoC-prosjekt i år (men kom dessverre ikkje med), så for no må me ta til takke med slike hacks. Å lage skikkeleg deformatering av Mediawiki er vanskelegare enn det ser ut til, spesielt pga. lenkjene (ideelt burde slikt gå gjennom kontroll av interwiki-lenkjer, men det er langt vekk frå maskinomsetjing inn i brukargrensesnittland) og malar. Dei som har Perl installert bør forresten ta ein kikk på wikifix-nb-nn.pl av Trondtr, det står vel om det på hovudsida her (det burde forresten vere ein lett sak for nokon å lage eit vevgrensesnitt som køyrer apertium og så wikifix, om dei har ein tenar tilgjengeleg, esperanto-folket har noko slikt på http://ftp2.image2work.dk:8080/vikitraduko/). --Kiwibird 18. juli 2010 kl. 10:36 (CEST)Svar
Takk for respons. Dette høres bra ut - for en eller annen gang i framtida... Men for enkle sjeler som meg blir Perl (og GsoC !?) noe gresk... Denne prosjektsida (og bokmåls-wikin) burde ha en anbefalt «oppskrift» for mest mulig effektiv oversetting nb->nn med program som i dag ligger på enhver databoks. I praksis betyr det nettleser + Word. Sjøl har jeg fomla meg fram til følgende åtte-trinns arbeidsflyt:
  • Kopiere fra bm-wikis redigeringsvindu til Word.
  • Kjøre første Word-makroen.
  • Flytte teksten fra Word (klipp-ut - slik at Word-viduet tømmes) inn i Apertium i nb->nn modus og oversette.
  • Kopiere oversatt tekst tilbake til Word.
  • Kjøre andre Word-makroen.
  • Opprette siden i nn-wiki og kopiere inn teksten.
  • Rette språk som sjøl jeg ser må være feil (bruke forhåndsvisning) og lagre.
  • Sjekk interwiki-lenker og tilpass til nn-lenkene.
Underveis må en holde tunga rett i munnen, dersom det er noe som ikke skal oversettes, eksempelvis lister med boktitler. Litt krøkkete det hele, men kan gjøres relativt raskt. Skjønt bedre ideer tas imot med takk! Kimsaka 18. juli 2010 kl. 13:50 (CEST)Svar
Oj, eg ser eg må lese gjennom det eg skriv før eg sender... GsoC er Google Summer of Code (som i fjor gav støtte til apertium-nn-nb). Eg førte på eit nytt punkt under Målsetjingar om å få laga ein eigen nettside berre for wiki-omsetjing med apertium-nn-nb; viss folk faktisk skal køyre apertium for wiki-omsetjing bør dei jo sleppe alt det styret… så får me håpe at nokon vennlege sjeler har litt maskintid å donere til saka =P --Kiwibird 18. juli 2010 kl. 16:54 (CEST)Svar
Bare for å trekke denne tanken litt lenger: Maskinoversettelsens svake punkt er ofte fraser med flere ord. Dette fikser selvsagt Word-makroer. Og siden de samme tegnstrengene ofte går igjen i mange wiki-artikler i samme sjanger kan litt makro-mekking spare mye tid, ved å bytte ut vanlige bm-wiki-fraser med tilsvarende nn-wiki-fraser. Fire eksempler:
  • (Født -> (Fødd
  • [Fødsler i -> [Fødde i
  • [Personer fra -> [Folk frå
  • Eksterne lenker -> Bakgrunnsstoff
Med noen søk-erstatt-opplegg av denne typen i første makroen kan livet bli litt lettere :-) Kimsaka 21. juli 2010 kl. 20:21 (CEST)Svar

Hei, fint med engasjement rundt maskinomsetjing og Apertium. Sjølv bruker eg ikkje Word, men Perl, som Kiwibird også viser til, men det er berre fint å ha fleire vegar til same mål. Det som vil vere enno finare er å lære av kvarandre, t.d. gå gjennom dei ulike scripta og sjå kva dei andre får til, og så få til det same også på eigen plattform. Første skritt der (og det gjeld begge script) er å vere flinkare med dokumentasjon: Skrive inn i scriptet kommentarar, for an kvar regel, der det er dokumentert kva scriptet gjer og korfor.

Ei anna sak: Sjølv er eg nøye med, for kvar Apertium-omsette artikkel, først å lime inn første råomsetjing på nn wp (og lagre), og deretter rette manuelt. Grunnen til at eg gjer det er at eg vil at det skal gå fram av loggen kor bra (dvs: "kor dårleg" :-) ) Apertium til ei kvar tid er, og slik at det skal vere mogleg for meg eller andre å analysere kor mykje vi sparar på å bruke maskinomsetjing, og i kor stor grad Apertium blir betre og betre. Trondtr 24. juli 2010 kl. 17:04 (CEST).Svar

apertium-mediawiki endre

Google Summer of Code-studenten som søkte om å lage mediawiki-parsing for Apertium har visst jobba litt på eigen hand med dette, og prosjektet ser ganske bra ut :-) sjå http://code.google.com/p/apertium-mediawiki/

Sjekk ut koden med

hg clone https://apertium-mediawiki.googlecode.com/hg/ apertium-mediawiki 

(du må ha mercurial installert, finst for Macports og «alle» GNU/Linux-distribusjonar)

og kompiler med

sh make.sh

Lenkjemål blir haldt utanfor omsetjing (sidan dette er ein jobb som krev interwiki-informasjon), medan lenkjetekst blir omsett. --Kiwibird 1. august 2010 kl. 15:17 (CEST)Svar

WikiBabel endre

Det jobbes med en løsning «WikiBabel» (tidligere WikiBasha) som er en løsning for one-time korrekturlest maskinoversettelse ved hjelp av motoren til Microsoft. — Jeblad 8. oktober 2010 kl. 15:44 (CEST)Svar

Tilbake til prosjektsiden «Wikiprosjekt Maskinomsetjing frå bokmål».