keskiviikko 5. maaliskuuta 2008

Missä mennään

Lojbanin asema maailmalla on epäselvä. Toisaalta monet värikkäin ilmauksin maalailevat kielen ainutlaatuisia ominaisuuksia ja lojbanin kykyä ratkaista isoja ongelmia. Toisaalta kielen käyttö edistyy kovin hitaasti. Vain vähän konkreettista on saatu aikaiseksi ja kielen osaajia on vähän.

Mutta minun tulkintani on, että hidas edistyminen ei ole itse kielen vika. Teknologian, tieteen ja kulttuurin tilanne maailmassa on se, että aivan jokaisen on joka tapauksessa osattava englantia ja siksi yhdenkin uuden kielen opiskelu on vastenmieleinen ajatus. Eteenkin sellaisen kielen ollessa kyseessä, jonka puhujia on todella vähän, johon löytyy suhteellisen vähän opetusmateriaalia, jonka käyttöarvo on epävarma. Tästä seuraa taas edelleen, että mitään markkinarahoitusta kehitysprojekteihin ei ole saatavana.

Mutta minä uskon silti lojbanin mahdollisuuksiin. Oletan, että tarvitaan merkittävä kynnyksen ylitys: toteutettu projekti, joka kiistatta osoittaa lojbanin käyttöarvon suhteessa siihen vaivaan ja ajankäyttöön, jonka kielen opiskelu vaatii. Tarvitaan lisäksi laadukas, tehokas menetelmä kielen oppimiseen: oppikirja asteittain vaikeutuvine riittävän laajoine lukemistoineen ja audio-materiaalia: MP3-tiedostoja, jotka suoraan tukevat kirjan sisällön, kielen rakenteiden ja sanaston oppimista. Tarvitaan myös intensiivikursseja ym.

Se läpilyöntiprojekti voisi olla Jornen kaltainen työkalu (kts. alla) ja sen yhteydessä tai itsenäisenä aidosti lojbaniksi keskusteleva, chatbot-tyyppinen ohjelma, joka tukee lojban-kielellä tapahtuvaa tietämyksen, sovelluskohtaisten ontologioiden ja proseduurien määrittelyä.
Lojban-kielisen tietämyskokoelman muuntaminen muunlaiseksi (esim XML-tyyppiseksi) dataksi jopa jo olemassa olevien sovellusten käyttöön, on kohtuullisen suoraviivaista, vain normaalia ohjelmistokehitystä.

Tässä on linkkinä kolme pientä projektia, kaksi tutkimusta ja yksi epäselvästi kesken oleva, jotka havainnollistavat käsityksiä lojbanin käyttöarvosta:

Meeting the Computer Halfway: Language Processing in the Artificial Language Lojban
http://www.cs.brandeis.edu/~havasi/jimpe_sow.pdf

Jorne -project
http://jorne.sourceforge.net/

LOJBAN AS ATOOL FOR ENCODING PROSE ON THE SEMANTICWEB
http://users.csc.calpoly.edu/~gfisher/clas...rick_thesis.pdf

4 kommenttia:

Anonyymi kirjoitti...

SW tähtää kovasti "yksimielisyyteen". Olisi turvallisempaa jos se hajautettaisiin useisiin toistensa kanssa keskusteleviin ontologioihin. Erityisesti kun SW on laatuaan ensimmäinen, siinä voi esiintyä jos jonkinlaisia mielenhäiriöitä.

Lojbania ei ehkä tulisi myöskään käyttää ainoana kielenä vaan luonnollinen kielikin voidaan ymmärtää osittain koneellisesti.

JuSa kirjoitti...

Kaavailemani "LojBot" ei ole mikään Yleinen Tekoäly -, AGI-projekti vaan alkuvaiheessa yksinkertainen, rajoittunut symbolienkäsittelyjärjestelmä. On iso haaste jo sinänsä saada sen perusontologia konsistentiksi ja sisäisesti riittäväksi (kaikki ylätason käsitteet suhteutettu toisiinsa ristiriidattomasti ja kattavasti). Tämän päälle voi sitten opettaa ristiriitaisiakin käytännön maailman "arkikäsitteitä". Aivan varmasti alussa on "mielenhäriöitä".

"Lojbania ei ehkä tulisi myöskään käyttää ainoana kielenä vaan luonnollinen kielikin voidaan ymmärtää osittain koneellisesti."

Voidaan, mutta sen haasteen kanssa työskentelevät muut. Yksinkertaisia fraaseja osataan jo suhteuttaa toisiinsa:
http://wordnet.princeton.edu/

Tietysti "täysin oppinut" Lojbot voi jossakin vaiheessa ottaa haasteekseen tutkia luonnollisella kielellä tapahtuvaa kommunikaatiota ja yrittää opetella sitä. Mutta se on kaukana tulevaisuudessa. Ensiksi opettaisin botille mielummin C++ -kieltä :)

Anonyymi kirjoitti...

"Ensiksi opettaisin botille mielummin C++ -kieltä :)"

Perinteiset ohjelmointikielet tulisivat silloin tarpeettomiksi ohjelmoijille. Ei varmaan koneelle. Koodi vaan piilotetaan.

Olen vielä käyttänyt periteisissä ohjelmissa mm. kokonaisia tehtävän kuvauksia ohjelmafunktion niminä ja saanut sillä tavalla tehtyä helppoja "semanttisen" näköisiä ohjelmia näin:

jos_levyke_ei_ole_tyhjä_lähetä_virhe_ilmoitus_ja_peruuta_tallennus()
{
...
}

Tosin nyt kun kehitys näyttää menevän yhä enemmän graafiseen käyttöön niin rakentaisin ehkä SW-käyttöliittymäksi jonkuntyyppisen "aivokirurgisimulaattorin".

Tarkastelin itsekin noita perus RDF ja OWL standardeja tuosta:
http://www.seco.tkk.fi/publications/2004/saarela-nakymapohjainen-rdf-haku-2004.pdf

Ja nuo taitavat tulla ohjelmoijien välttämättömäksi taidoksi. Sen verran nerokkaita ovat. Esim tuo että "Thing" on kaikkien luokkien yläluokka ja "NoThing" on kaikkien alaluokka. Niiden välissä on sitten koko monikerroksellinen tietämyskanta monimutkaisilla luokilla/instansseilla/nimillä.

-knowledge$-

JuSa kirjoitti...

"...Ja nuo taitavat tulla ohjelmoijien välttämättömäksi taidoksi."

Hehheh, tätähän minä olen yrittänyt kolleegoille töissä valistaa, kun lienee selvää, että muutaman vuoden kuluessa nykyhommat ulkoistetaan Bangaloreen tai muualle. Hommia löytyy, kun osaa ennakoida. Semantic Web tulee, jos ei maailma muuten kaadu.