Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas

Introducción— En la actualidad, la industria del desarrollo de software vive su época dorada debido al avance en áreas relacionadas con el aprendizaje máquina el cual es parte de las técnicas de IA, estos avances han permitido que tareas consideradas exclusivamente del ser humano sean resueltas util...

Full description

Autores:
Arenas-Varela, Daniel Esteban
Muñoz-Ordóñez, Julián Fernando
Tipo de recurso:
Article of journal
Fecha de publicación:
2022
Institución:
Corporación Universidad de la Costa
Repositorio:
REDICUC - Repositorio CUC
Idioma:
eng
OAI Identifier:
oai:repositorio.cuc.edu.co:11323/12369
Acceso en línea:
https://hdl.handle.net/11323/12369
https://doi.org/10.17981/ingecuc.19.1.2023.04
Palabra clave:
Machine learning
Natural language processing
Graphical interface
Transfotmers
Tkinter
Deep learning
Automatic code generation
Aprendizaje automático
procesamiento de lenguaje natural
interfaz gráfica
transformadores
Tkinter
aprendizaje profundo
generación automática de código
Rights
openAccess
License
INGE CUC - 2022
id RCUC2_c7900f7d8efa6ed63514a869c69f2013
oai_identifier_str oai:repositorio.cuc.edu.co:11323/12369
network_acronym_str RCUC2
network_name_str REDICUC - Repositorio CUC
repository_id_str
dc.title.spa.fl_str_mv Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
dc.title.translated.eng.fl_str_mv Artificial neural network model for automatic code generation in graphical interface applications
title Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
spellingShingle Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
Machine learning
Natural language processing
Graphical interface
Transfotmers
Tkinter
Deep learning
Automatic code generation
Aprendizaje automático
procesamiento de lenguaje natural
interfaz gráfica
transformadores
Tkinter
aprendizaje profundo
generación automática de código
title_short Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
title_full Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
title_fullStr Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
title_full_unstemmed Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
title_sort Modelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficas
dc.creator.fl_str_mv Arenas-Varela, Daniel Esteban
Muñoz-Ordóñez, Julián Fernando
dc.contributor.author.spa.fl_str_mv Arenas-Varela, Daniel Esteban
Muñoz-Ordóñez, Julián Fernando
dc.subject.eng.fl_str_mv Machine learning
Natural language processing
Graphical interface
Transfotmers
Tkinter
Deep learning
Automatic code generation
topic Machine learning
Natural language processing
Graphical interface
Transfotmers
Tkinter
Deep learning
Automatic code generation
Aprendizaje automático
procesamiento de lenguaje natural
interfaz gráfica
transformadores
Tkinter
aprendizaje profundo
generación automática de código
dc.subject.spa.fl_str_mv Aprendizaje automático
procesamiento de lenguaje natural
interfaz gráfica
transformadores
Tkinter
aprendizaje profundo
generación automática de código
description Introducción— En la actualidad, la industria del desarrollo de software vive su época dorada debido al avance en áreas relacionadas con el aprendizaje máquina el cual es parte de las técnicas de IA, estos avances han permitido que tareas consideradas exclusivamente del ser humano sean resueltas utilizando un equipo de cómputo. Sin embargo, la complejidad y la extensa área que están abarcando los nuevos proyectos que deben ser desarrollados utilizando lenguajes de programación han generado que los tiempos de entrega de los proyectos se vean ralentizados y la productividad de la empresa afectada. Objetivo— Esta investigación presenta la metodología que se llevó a cabo para la construcción de un modelo de red neuronal recurrente para la generación automática de código fuente relacionado con interfaces gráficas de usuario utilizando lenguaje de programación Python. Metodología— Mediante la construcción de un conjunto de datos relacionado con el lenguaje natural para la descripción de interfaces gráficas programadas en Python se construye un modelo de red neuronal profunda para generar código fuente automático. Resultados— El modelo entrenado logra alcanzar valores de pérdida y perplejidad de 1.57 y 4.82 respectivamente en la etapa de validación evitando el sobreajuste en el entrenamiento del modelo. Conclusiones— Un modelo de red neuronal es entrenado logrando procesar el lenguaje natural relacionado con la petición de creación de interfaces gráficas utilizando el lenguaje de programación Python para generar automáticamente código fuente que puede ser ejecutado a través del intérprete de Python.
publishDate 2022
dc.date.accessioned.none.fl_str_mv 2022-11-10 00:00:00
2024-04-09T20:22:04Z
dc.date.available.none.fl_str_mv 2022-11-10 00:00:00
2024-04-09T20:22:04Z
dc.date.issued.none.fl_str_mv 2022-11-10
dc.type.spa.fl_str_mv Artículo de revista
dc.type.coar.eng.fl_str_mv http://purl.org/coar/resource_type/c_6501
http://purl.org/coar/resource_type/c_2df8fbb1
dc.type.content.eng.fl_str_mv Text
dc.type.driver.eng.fl_str_mv info:eu-repo/semantics/article
dc.type.local.eng.fl_str_mv Journal article
dc.type.redcol.eng.fl_str_mv http://purl.org/redcol/resource_type/ART
dc.type.version.eng.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.coarversion.eng.fl_str_mv http://purl.org/coar/version/c_970fb48d4fbd8a85
format http://purl.org/coar/resource_type/c_6501
status_str publishedVersion
dc.identifier.issn.none.fl_str_mv 0122-6517
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/11323/12369
dc.identifier.url.none.fl_str_mv https://doi.org/10.17981/ingecuc.19.1.2023.04
dc.identifier.doi.none.fl_str_mv 10.17981/ingecuc.19.1.2023.04
dc.identifier.eissn.none.fl_str_mv 2382-4700
identifier_str_mv 0122-6517
10.17981/ingecuc.19.1.2023.04
2382-4700
url https://hdl.handle.net/11323/12369
https://doi.org/10.17981/ingecuc.19.1.2023.04
dc.language.iso.eng.fl_str_mv eng
language eng
dc.relation.ispartofjournal.spa.fl_str_mv Inge Cuc
dc.relation.references.eng.fl_str_mv V. Kononenko, “10 Breakthrough Software Development Trends in Coming Years,” Computools, Aug. 2022. Available: https://computools.com/software-development-trends/
 T. Brown, “7 Software Development Trends 2023 Revealed,” Hackernoon, Nov. 2019. Available: https://hackernoon.com/software-development-trends-2020-revealed-spi305m
 J. Zhu & M. Shen, “Research on Deep Learning Based Code Generation from Natural Language Description,” presented at 5th International Conference on Cloud Computing and Big Data Analytics, ICCCBDA, CGDU, CN, 10-13 Apr. 2020. https://doi.org/10.1109/ICCCBDA49378.2020.9095560
 G. Tomassetti, “A Guide to Code Generation,” Strumenta, May. 2018. Available: https://tomassetti.me/code-generation/
 S. Shim, P. Patil, R. Yadav, A. Shinde & V. Devale, “DeeperCoder: Code Generation Using Machine Learning,” presented at 2020 10th Annual Computing and Communication Workshop and Conference, CCWC, LV, NV, USA, 6-8 Jan. 2020. https://doi.org/10.1109/CCWC47524.2020.9031149
 T. Le, H. Chen & M. Babar, “Deep Learning for Source Code Modeling and Generation: Models, Applications, and Challenges,” ACM Comput Surv, vol. 53, no. 3, pp. 1–18, Feb. 2020. https://doi.org/10.1145/3383458
 W. Ling, P. Blunsom, E. Grefenstette, K. Hermann, T. Kočiský, F. Wang, & A. Senior, “Latent Predictor Networks for Code Generation”, presented at 54th Annual Meeting of the Association for Computational Linguistics, ACL, BE, GE, 7-12 Aug. 2016. https://doi.org/10.18653/v1/p16-1057
 M. Rabinovich, M. Stern & D. Klein, “Abstract syntax networks for code generation and semantic parsing,” presented at 55th Annual Meeting of the Association for Computational Linguistics, ACL, VAN, CA, 30 Jul. - 4 Aug. 2017. http://dx.doi.org/10.18653/v1/P17-1105
 P. Yin & G. Neubig, “A syntactic neural model for general-purpose code generation,” presented at 55th Annual Meeting of the Association for Computational Linguistics, ACL, VAN, CA, 30 Jul. - 4 Aug. 2017. https://doi.org/10.18653/v1/P17-1041
 A. Stehnii, “Generation of code from text description with syntactic parsing and Tree2Tree model”, Master Thesis, Dept. Comp. Sci., Fac. Appl. Sci., UCU, LVI, UA, 2017. Available: http://er.ucu.edu.ua/handle/1/1191
 P. Yin & G. Neubig, “TRANX: A transition-based neural abstract syntax parser for semantic parsing and code generation,” presented at Conference on Empirical Methods in Natural Language Processing: System Demonstrations, ACL, BX, BE, 10-11 Nov. 2018. https://doi.org/10.18653/v1/d18-2002
 S. Gulwani, “Dimensions in Program Synthesis,” presented at 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming, PPDP'10, NY, NY, USA, 26-28 Jul. 2010. https://doi.org/10.1145/1836089.1836091
 M. Jaderberg, K. Simonyan, A. Zisserman & K. Kavukcuoglu, “Spatial transformer networks,” Adv Neural Inf Process Syst, vol. 2015, pp. 1–15, Jun. 2015. https://doi.org/10.48550/arXiv.1506.02025
dc.relation.citationendpage.none.fl_str_mv 38–46
dc.relation.citationstartpage.none.fl_str_mv 38–46
dc.relation.citationissue.spa.fl_str_mv 1
dc.relation.citationvolume.spa.fl_str_mv 19
dc.relation.bitstream.none.fl_str_mv https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4583
https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4808
https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4846
dc.relation.citationedition.spa.fl_str_mv Núm. 1 , Año 2023 : (Enero - Junio)
dc.rights.eng.fl_str_mv INGE CUC - 2022
dc.rights.uri.eng.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0
dc.rights.accessrights.eng.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.eng.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv INGE CUC - 2022
http://creativecommons.org/licenses/by-nc-nd/4.0
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.mimetype.eng.fl_str_mv application/pdf
text/html
text/xml
dc.publisher.spa.fl_str_mv Universidad de la Costa
dc.source.eng.fl_str_mv https://revistascientificas.cuc.edu.co/ingecuc/article/view/4455
institution Corporación Universidad de la Costa
bitstream.url.fl_str_mv https://repositorio.cuc.edu.co/bitstreams/0a1400d4-d668-4cde-a6e1-50ca09cd966d/download
bitstream.checksum.fl_str_mv 8077281bda54c603a0c2e54fd248cc40
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositorio de la Universidad de la Costa CUC
repository.mail.fl_str_mv repdigital@cuc.edu.co
_version_ 1811760835244064768
spelling Arenas-Varela, Daniel EstebanMuñoz-Ordóñez, Julián Fernando2022-11-10 00:00:002024-04-09T20:22:04Z2022-11-10 00:00:002024-04-09T20:22:04Z2022-11-100122-6517https://hdl.handle.net/11323/12369https://doi.org/10.17981/ingecuc.19.1.2023.0410.17981/ingecuc.19.1.2023.042382-4700Introducción— En la actualidad, la industria del desarrollo de software vive su época dorada debido al avance en áreas relacionadas con el aprendizaje máquina el cual es parte de las técnicas de IA, estos avances han permitido que tareas consideradas exclusivamente del ser humano sean resueltas utilizando un equipo de cómputo. Sin embargo, la complejidad y la extensa área que están abarcando los nuevos proyectos que deben ser desarrollados utilizando lenguajes de programación han generado que los tiempos de entrega de los proyectos se vean ralentizados y la productividad de la empresa afectada. Objetivo— Esta investigación presenta la metodología que se llevó a cabo para la construcción de un modelo de red neuronal recurrente para la generación automática de código fuente relacionado con interfaces gráficas de usuario utilizando lenguaje de programación Python. Metodología— Mediante la construcción de un conjunto de datos relacionado con el lenguaje natural para la descripción de interfaces gráficas programadas en Python se construye un modelo de red neuronal profunda para generar código fuente automático. Resultados— El modelo entrenado logra alcanzar valores de pérdida y perplejidad de 1.57 y 4.82 respectivamente en la etapa de validación evitando el sobreajuste en el entrenamiento del modelo. Conclusiones— Un modelo de red neuronal es entrenado logrando procesar el lenguaje natural relacionado con la petición de creación de interfaces gráficas utilizando el lenguaje de programación Python para generar automáticamente código fuente que puede ser ejecutado a través del intérprete de Python.Introduction: Currently, the software development industry is living in its golden age due to the progress in areas related to machine learning, which is part of AI techniques. These advances have allowed tasks considered exclusively human to be solved using a computer. However, the complexity and the extensive area covered by new projects that must be developed using programming languages have slowed down project delivery times and affected the company's productivity. Objective: This research presents the methodology carried out for constructing a recurrent neural network model for the automatic generation of source code related to graphical user interfaces using Python programming language. Method: By constructing a natural language-related dataset for describing graphical interfaces programmed in Python, a deep neural network model is built to generate automatic source code. Results:  The trained model achieves loss and perplexity values of 1.57 and 4.82, respectively, in the validation stage, avoiding overfitting in the model's training. Conclusions: A neural network model is trained to process the natural language related to the request to create graphical interfaces using the Python programming language to automatically generate source code that can be executed through the Python interpreter.application/pdftext/htmltext/xmlengUniversidad de la CostaINGE CUC - 2022http://creativecommons.org/licenses/by-nc-nd/4.0info:eu-repo/semantics/openAccessEsta obra está bajo una licencia internacional Creative Commons Atribución-NoComercial-SinDerivadas 4.0.http://purl.org/coar/access_right/c_abf2https://revistascientificas.cuc.edu.co/ingecuc/article/view/4455Machine learningNatural language processingGraphical interfaceTransfotmersTkinterDeep learningAutomatic code generationAprendizaje automáticoprocesamiento de lenguaje naturalinterfaz gráficatransformadoresTkinteraprendizaje profundogeneración automática de códigoModelo de red neuronal artificial para la generación automática de código en aplicaciones de interfaces gráficasArtificial neural network model for automatic code generation in graphical interface applicationsArtículo de revistahttp://purl.org/coar/resource_type/c_6501http://purl.org/coar/resource_type/c_2df8fbb1Textinfo:eu-repo/semantics/articleJournal articlehttp://purl.org/redcol/resource_type/ARTinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/version/c_970fb48d4fbd8a85Inge CucV. Kononenko, “10 Breakthrough Software Development Trends in Coming Years,” Computools, Aug. 2022. Available: https://computools.com/software-development-trends/ T. Brown, “7 Software Development Trends 2023 Revealed,” Hackernoon, Nov. 2019. Available: https://hackernoon.com/software-development-trends-2020-revealed-spi305m J. Zhu & M. Shen, “Research on Deep Learning Based Code Generation from Natural Language Description,” presented at 5th International Conference on Cloud Computing and Big Data Analytics, ICCCBDA, CGDU, CN, 10-13 Apr. 2020. https://doi.org/10.1109/ICCCBDA49378.2020.9095560 G. Tomassetti, “A Guide to Code Generation,” Strumenta, May. 2018. Available: https://tomassetti.me/code-generation/ S. Shim, P. Patil, R. Yadav, A. Shinde & V. Devale, “DeeperCoder: Code Generation Using Machine Learning,” presented at 2020 10th Annual Computing and Communication Workshop and Conference, CCWC, LV, NV, USA, 6-8 Jan. 2020. https://doi.org/10.1109/CCWC47524.2020.9031149 T. Le, H. Chen & M. Babar, “Deep Learning for Source Code Modeling and Generation: Models, Applications, and Challenges,” ACM Comput Surv, vol. 53, no. 3, pp. 1–18, Feb. 2020. https://doi.org/10.1145/3383458 W. Ling, P. Blunsom, E. Grefenstette, K. Hermann, T. Kočiský, F. Wang, & A. Senior, “Latent Predictor Networks for Code Generation”, presented at 54th Annual Meeting of the Association for Computational Linguistics, ACL, BE, GE, 7-12 Aug. 2016. https://doi.org/10.18653/v1/p16-1057 M. Rabinovich, M. Stern & D. Klein, “Abstract syntax networks for code generation and semantic parsing,” presented at 55th Annual Meeting of the Association for Computational Linguistics, ACL, VAN, CA, 30 Jul. - 4 Aug. 2017. http://dx.doi.org/10.18653/v1/P17-1105 P. Yin & G. Neubig, “A syntactic neural model for general-purpose code generation,” presented at 55th Annual Meeting of the Association for Computational Linguistics, ACL, VAN, CA, 30 Jul. - 4 Aug. 2017. https://doi.org/10.18653/v1/P17-1041 A. Stehnii, “Generation of code from text description with syntactic parsing and Tree2Tree model”, Master Thesis, Dept. Comp. Sci., Fac. Appl. Sci., UCU, LVI, UA, 2017. Available: http://er.ucu.edu.ua/handle/1/1191 P. Yin & G. Neubig, “TRANX: A transition-based neural abstract syntax parser for semantic parsing and code generation,” presented at Conference on Empirical Methods in Natural Language Processing: System Demonstrations, ACL, BX, BE, 10-11 Nov. 2018. https://doi.org/10.18653/v1/d18-2002 S. Gulwani, “Dimensions in Program Synthesis,” presented at 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming, PPDP'10, NY, NY, USA, 26-28 Jul. 2010. https://doi.org/10.1145/1836089.1836091 M. Jaderberg, K. Simonyan, A. Zisserman & K. Kavukcuoglu, “Spatial transformer networks,” Adv Neural Inf Process Syst, vol. 2015, pp. 1–15, Jun. 2015. https://doi.org/10.48550/arXiv.1506.0202538–4638–46119https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4583https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4808https://revistascientificas.cuc.edu.co/ingecuc/article/download/4455/4846Núm. 1 , Año 2023 : (Enero - Junio)PublicationOREORE.xmltext/xml2677https://repositorio.cuc.edu.co/bitstreams/0a1400d4-d668-4cde-a6e1-50ca09cd966d/download8077281bda54c603a0c2e54fd248cc40MD5111323/12369oai:repositorio.cuc.edu.co:11323/123692024-09-17 14:07:57.038http://creativecommons.org/licenses/by-nc-nd/4.0INGE CUC - 2022metadata.onlyhttps://repositorio.cuc.edu.coRepositorio de la Universidad de la Costa CUCrepdigital@cuc.edu.co