An Evolutionary Method for Natural Language to SQL Translation
In this paper, we propose a new methodology where complex natural language requests from a user to a relational database are broken into simple sentences through an Evolutionary Computing method. Such basic sentences are then translated by another module, which tries to perform a pattern matching between a model filled by local grammars and the basic sentences generated by the Evolutionary Programming algorithm. The output of this system is a set of SQL queries to a specific database. The main feature is its combinatorial approach, as an alternative for the use of methods that employs many linguistic levels (lexicon, syntax rules and semantics) and intermediate languages. The proposed methodology is applied to Brazilian Portuguese. In our test bed, a 92% translation correctness was achieved.
KeywordsEvolutionary Computing Natural Language Processing Local Grammars SQL
Unable to display preview. Download preview PDF.
- 2.Gross, M.: The Construction of Local Grammars. In: Roche, E., Shabes, Y. (eds.) Finite State Language Processing, pp. 329–352. MIT, Massachusetts (1997)Google Scholar
- 3.Roche, E., Shabes, Y.: Parsing with Finite-State Transducers. In: Roche, E., Shabes, Y. (eds.) Finite State Language Processing, pp. 241–278. MIT, Massachusetts (1997)Google Scholar
- 6.Owda, M., Bandar, Z., Crockett, K.: Conversation-Based Natural Language Interface to Relational Databases. In: IEEE/WIC/ACM International Conferences on Web Intelligence and Intelligent Agent Technology (2007)Google Scholar
- 8.Nerode, A.: Logic for Applications. Graduate Texts in Computer Science. Springer, Heidelberg (1997)Google Scholar
- 9.Silva, G.A.P.: Teoria dos Atos de Fala. Cadernos do CNLF 1, 259–263 (2005)Google Scholar
- 10.Pauw, G.D.: Evolutionary Computing as a Tool for Grammar Development. In: GECCO, pp. 549–560 (2003)Google Scholar