Käsinkirjoitetun numeron tunnistus TensorFlow:n Ja-vaScript rajapinnalla koneoppimista soveltaen
Jokinen, Jaakko (2019)
Jokinen, Jaakko
2019
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201904245857
https://urn.fi/URN:NBN:fi:amk-201904245857
Tiivistelmä
Tavoitteena oli tehdä sovellus, joka pystyisi valokuvasta tunnistamaan käsinkirjoitetut numerot ja muuttamaan ne digitaaliseen muotoon ja tallentamaan tietokantaan, muun historiallisen havaintodatan jatkoksi.
Työssä sukelletaan melko syvälle koneoppimisen menetelmiin. Erilaisia tekniikoita ja algoritmeja, jotka ovat pakollisia työn onnistumisen kannalta, joudutaan käymään pinnallisesti läpi, sillä muuten työ paisuisi liikaa sen vaatimuksiin nähden. Tämä työ on ennen kaikkea soveltuvuusselvitys teknologian mahdollisuuksista asetetun ongelman ratkaisussa.
Tämä on toiminnallinen opinnäytetyö, jossa tietoperusta käydään läpi niiltä osin, kun empirian toteuttaminen onnistuneesti on pakollista. Tämä tarkoittaa neuroverkkojen perusteiden ja yleisimmin käytettyjen tekniikoiden läpikäyntiä.
Opinnäytetyössä käytän Googlen TensorFlow kirjastoa ja Googlen julkaisemaa lähdekoodia pohjana. Tämän JavaScriptilla kirjoitetun sovelluksen lähdekoodia olen muuttanut niiltä osin, mitä työni tulosten validointi on sitä vaatinut. Käytännössä tämä tarkoittaa sitä, että olen pyrkinyt tuottamaan opetetulle neuroverkolle aineistoa, jota se ei ole ennen käsitellyt.
Opinnäytetyö on aloitettu syyskuussa 2018. Sitä on edistetty joulukuussa 2018, tammikuussa 2019 ja se saatettiin loppuun huhtikuussa 2019.
Työssäni pääsin osaan tavoitteista, mutta ensisijainen tavoite jäi saavuttamatta. Opin neuroverkkojen perusteet ja ymmärrän koneoppimisen mahdollisuuksia paremmin. Ymmärrän myös, ettei näillä resursseilla voida tehdä tavoiteltua sovellusta. Sovelluskehitykseen pitäisi käyttää enemmän aikaa ja olisi hyvä saada ympärille tiimi, jolla on jo kokemusta koneoppimisesta ja koneoppimista käyttävistä sovelluksista.
Työssä sukelletaan melko syvälle koneoppimisen menetelmiin. Erilaisia tekniikoita ja algoritmeja, jotka ovat pakollisia työn onnistumisen kannalta, joudutaan käymään pinnallisesti läpi, sillä muuten työ paisuisi liikaa sen vaatimuksiin nähden. Tämä työ on ennen kaikkea soveltuvuusselvitys teknologian mahdollisuuksista asetetun ongelman ratkaisussa.
Tämä on toiminnallinen opinnäytetyö, jossa tietoperusta käydään läpi niiltä osin, kun empirian toteuttaminen onnistuneesti on pakollista. Tämä tarkoittaa neuroverkkojen perusteiden ja yleisimmin käytettyjen tekniikoiden läpikäyntiä.
Opinnäytetyössä käytän Googlen TensorFlow kirjastoa ja Googlen julkaisemaa lähdekoodia pohjana. Tämän JavaScriptilla kirjoitetun sovelluksen lähdekoodia olen muuttanut niiltä osin, mitä työni tulosten validointi on sitä vaatinut. Käytännössä tämä tarkoittaa sitä, että olen pyrkinyt tuottamaan opetetulle neuroverkolle aineistoa, jota se ei ole ennen käsitellyt.
Opinnäytetyö on aloitettu syyskuussa 2018. Sitä on edistetty joulukuussa 2018, tammikuussa 2019 ja se saatettiin loppuun huhtikuussa 2019.
Työssäni pääsin osaan tavoitteista, mutta ensisijainen tavoite jäi saavuttamatta. Opin neuroverkkojen perusteet ja ymmärrän koneoppimisen mahdollisuuksia paremmin. Ymmärrän myös, ettei näillä resursseilla voida tehdä tavoiteltua sovellusta. Sovelluskehitykseen pitäisi käyttää enemmän aikaa ja olisi hyvä saada ympärille tiimi, jolla on jo kokemusta koneoppimisesta ja koneoppimista käyttävistä sovelluksista.