7 research outputs found
Luonnollisesta kielestä SQL-kyselyksi
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
Natural Language Interfaces to Data
Recent advances in NLU and NLP have resulted in renewed interest in natural
language interfaces to data, which provide an easy mechanism for non-technical
users to access and query the data. While early systems evolved from keyword
search and focused on simple factual queries, the complexity of both the input
sentences as well as the generated SQL queries has evolved over time. More
recently, there has also been a lot of focus on using conversational interfaces
for data analytics, empowering a line of non-technical users with quick
insights into the data. There are three main challenges in natural language
querying (NLQ): (1) identifying the entities involved in the user utterance,
(2) connecting the different entities in a meaningful way over the underlying
data source to interpret user intents, and (3) generating a structured query in
the form of SQL or SPARQL.
There are two main approaches for interpreting a user's NLQ. Rule-based
systems make use of semantic indices, ontologies, and KGs to identify the
entities in the query, understand the intended relationships between those
entities, and utilize grammars to generate the target queries. With the
advances in deep learning (DL)-based language models, there have been many
text-to-SQL approaches that try to interpret the query holistically using DL
models. Hybrid approaches that utilize both rule-based techniques as well as DL
models are also emerging by combining the strengths of both approaches.
Conversational interfaces are the next natural step to one-shot NLQ by
exploiting query context between multiple turns of conversation for
disambiguation. In this article, we review the background technologies that are
used in natural language interfaces, and survey the different approaches to
NLQ. We also describe conversational interfaces for data analytics and discuss
several benchmarks used for NLQ research and evaluation.Comment: The full version of this manuscript, as published by Foundations and
Trends in Databases, is available at http://dx.doi.org/10.1561/190000007