Luonnollisesta kielestä SQL-kyselyksi
Survonen, Minja (2023)
Survonen, Minja
2023
Tietojenkäsittelytieteiden kandidaattiohjelma - Bachelor's Programme in Computer Sciences
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2023-06-09
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202306076568
https://urn.fi/URN:NBN:fi:tuni-202306076568
Tiivistelmä
Relaatiotietokantoja käytetään paljon. Niihin voidaan varastoida tietoa, ja varastoitua tietoa voidaan hakea tietokannasta SQL-kielellä. Mahdollisuus tehdä tietokantakyselyitä luonnollisella kielellä hyödyttäisi heitä, joilla ei ole SQL-osaamista. Mikäli tietokannasta tietoa tarvitsevalla on jokin motorinen vamma, hän voisi hyötyä siitä, että luonnollista kieltä olevan kysymyksen voisi esittää puheena. Tässä kandidaatintutkielmassa tarkasteltiin tapoja muuntaa luonnollista kieltä olevaa tekstiä tai puhetta SQL-kyselyksi. Tämä kandidaatintutkielma on muodoltaan kirjallisuuskatsaus.
Tekstistä voidaan muuntaa SQL-kysely sääntöpohjaisten lähestymistapojen avulla tai koneoppimista hyödyntäen. Sääntöpohjaisissa lähestymistavoissa muunnosprosessi perustuu ennalta määritettyihin sääntöihin. Sen sijaan koneoppimiseen perustuvissa lähestymistavoissa tärkeää on opetusdata, jonka avulla järjestelmä oppii. Yhteen muunnosprosessiin voi sisältyä eri koneoppimisen muotoja.
Puheen muuntamisessa SQL-kyselyksi hyödynnetään samoja tekniikoita. Osa järjestelmistä muuntaa ensin puheen tekstiksi hyödyntäen puheentunnistusta, mutta osassa järjestelmistä muunnetaan puhesignaalit suoraan SQL-kyselyksi ilman tekstivälivaihetta. Puheen muuntamisessa SQL-kyselyksi koneoppimisen rooli on suurempi verrattuna muunnosprosessiin tekstistä SQL-kyselyksi.
Työssä tarkasteltiin keskeisiä lähestymistapoja esimerkkijärjestelmien kautta. Lisäksi käytiin läpi eri muunnosprosesseihin liittyviä haasteita. Eri järjestelmien välillä on eroja siinä, kuinka hyvin muunnosprosessi SQL-kyselyksi onnistuu. Moni järjestelmistä on käyttöalaltaan hyvin suppea, koska ne on rakennettu vain tietyn alan tietokannan tarpeisiin. Lisäksi osa järjestelmistä mahdollistaa vain yksinkertaisten SQL-kyselyiden muodostamisen, kun taas osassa järjestelmistä on mahdollista muuntaa myös monimutkaisempia kyselyitä. Lisäksi tarkasteltiin lähestymistapakohtaisesti juuri kyseiselle lähestymistavalle ominaisia haasteita.
Kandidaatintutkielmassa tarkasteltiin luonnollisen kielen muuntamista SQL-kyselyksi myös yleisellä tasolla. Työssä käsiteltiin sitä, miten erilaiset mittaustavat hankaloittavat eri järjestelmien vertailua. Lisäksi työ sisältää pohdintaa siitä, mitkä ovat muunnosprosessin mahdolliset kehityssuunnat. Myös koneoppimisen merkitys muunnosprosessien kehittymisen kannalta oli tarkastelun kohteena.
Tekstistä voidaan muuntaa SQL-kysely sääntöpohjaisten lähestymistapojen avulla tai koneoppimista hyödyntäen. Sääntöpohjaisissa lähestymistavoissa muunnosprosessi perustuu ennalta määritettyihin sääntöihin. Sen sijaan koneoppimiseen perustuvissa lähestymistavoissa tärkeää on opetusdata, jonka avulla järjestelmä oppii. Yhteen muunnosprosessiin voi sisältyä eri koneoppimisen muotoja.
Puheen muuntamisessa SQL-kyselyksi hyödynnetään samoja tekniikoita. Osa järjestelmistä muuntaa ensin puheen tekstiksi hyödyntäen puheentunnistusta, mutta osassa järjestelmistä muunnetaan puhesignaalit suoraan SQL-kyselyksi ilman tekstivälivaihetta. Puheen muuntamisessa SQL-kyselyksi koneoppimisen rooli on suurempi verrattuna muunnosprosessiin tekstistä SQL-kyselyksi.
Työssä tarkasteltiin keskeisiä lähestymistapoja esimerkkijärjestelmien kautta. Lisäksi käytiin läpi eri muunnosprosesseihin liittyviä haasteita. Eri järjestelmien välillä on eroja siinä, kuinka hyvin muunnosprosessi SQL-kyselyksi onnistuu. Moni järjestelmistä on käyttöalaltaan hyvin suppea, koska ne on rakennettu vain tietyn alan tietokannan tarpeisiin. Lisäksi osa järjestelmistä mahdollistaa vain yksinkertaisten SQL-kyselyiden muodostamisen, kun taas osassa järjestelmistä on mahdollista muuntaa myös monimutkaisempia kyselyitä. Lisäksi tarkasteltiin lähestymistapakohtaisesti juuri kyseiselle lähestymistavalle ominaisia haasteita.
Kandidaatintutkielmassa tarkasteltiin luonnollisen kielen muuntamista SQL-kyselyksi myös yleisellä tasolla. Työssä käsiteltiin sitä, miten erilaiset mittaustavat hankaloittavat eri järjestelmien vertailua. Lisäksi työ sisältää pohdintaa siitä, mitkä ovat muunnosprosessin mahdolliset kehityssuunnat. Myös koneoppimisen merkitys muunnosprosessien kehittymisen kannalta oli tarkastelun kohteena.
Kokoelmat
- Kandidaatintutkielmat [8798]