A nivel personal, quiero resaltar que me ha resultado muy interesante realizar un proyecto de este tipo, además de que me ha servido para adquirir conocimientos acerca del procesamiento de lenguaje natural y sobre las distintas métricas que sirven para determinar la complejidad de un texto. Además, también me ha servido para adquirir experiencia con el lenguaje de programación Python, puesto que a lo largo del grado se ha trabajado principalmente con Java, y con Python se había trabajado muy poco. Por ello, tenía gran interés en aprender más sobre este lenguaje y realizar un trabajo más extenso con él, puesto que considero que es un lenguaje que tiene mucho futuro
Por otro lado, especialmente al comienzo del proyecto, fue complicado compaginar el desarrollo del mismo, con la asistencia a clase y la realización de las prácticas en empresa, pero no tardé mucho en organizarme correctamente para que pudiera realizar las tres actividades de manera satisfactoria y evitar que se me acumulara el trabajo. Por lo tanto, considero que también he conseguido realizar un buen trabajo en cuanto a la organización de un proyecto se refiere, y he intentado ceñirme lo máximo posible a la planificación temporal inicial, aunque algunas de las estimaciones que hice fueron algo optimistas, la mayoría de estimaciones fueron bastante acertadas.
En este proyecto, además de desarrollar la aplicación en Python, se ha desarrollado una aplicación web mediante la cual los usuarios podrán, de manera sencilla, analizar todos aquellos documentos de texto en inglés que deseen. El código de esta aplicación, pese a que tiene algún método implementado en JavaScript (para la parte cliente), es mayormente PHP. Elegí desarrollar la parte servidor en este lenguaje porque disponía experiencia previa con él, y consideraba que sería una buena opción. En cambio, mientras estaba desarrollándolo, comencé a cursar la asignatura Desarrollo de Aplicaciones Web Enriquecidas (correspondiente al segundo cuatrimestre del cuarto curso), donde se da temario en el que se trabaja con NodeJS y me di cuenta de que desarrollar la parte servidor en JavaScript hubiese sido una mejor opción. Sin embargo, puesto que el desarrollo de la aplicación web ya estaba muy avanzado, descarté la opción de desarrollar la parte servidor en JavaScript aunque, en caso de que volviera a hacer un proyecto similar a este, me decantaría por NodeJS desde el principio.
En definitiva, me encuentro muy satisfecho con el trabajo que he realizado en este proyecto, y considero que he aprendido mucho y he mejorado mis habilidades con el lenguaje de programación Python (y, además, he aprendido a utilizar la herramienta de machine learning scikit-learn), lo cual puede ser muy beneficioso para mi futuro, puesto que muchas empresas del sector lo consideran un lenguaje muy importante.
Bibliografía
Agrawal, S. (2019). Hyperparameters in Deep Learning. Obtenido de TowardsDataScience: https://towardsdatascience.com/hyperparameters-in-deep-learning-927f7b2084dd
Asaithambi, S. (2018). Why, How and When to apply Feature Selection. Obtenido de TowardsDataScience: https://towardsdatascience.com/why-how-and-when-to-apply-feature-selection-e9c69adfabf2
Boros, T., Dumitrescu, D. S., & Burtica, R. (1 de 11 de 2018). NLP-Cube: End-to-end raw text processing with
neural networks. Bruselas, Bélgica.
Capsada Blanch, R., & Torruella Casañas, J. (2017). Métodos para medir la riqueza léxica de los textos. Carnegie Mellon University. (s.f.). The CMU Pronouncing Dictionary. Obtenido de
http://www.speech.cs.cmu.edu/cgi-bin/cmudict
Carrillo, H., Castellanos, J., & Brodersen, K. (s.f.). Probabilistic performance evaluation for multiclass classification using the posterior balanced accuracy.
Cer, D., Yang, Y., & Kong, S.-y. (2018). Universal Sentence Encoder.
Crossley, S. A., & Allen, D. B. (Abril de 2011). Text readability and intuitive simplification: A comparison of
readability formulas.
Freyhoff, G., Hess, G., Kerr, L., Menzel, E., Tronbacke, B., & Van Der Veken, K. (1998). European Guidelines
for the Production of Easy-to-Read Information.
Graesser, McNamara, Louwerse, & Cai. (2004). Coh-Metrix: Analysis of text on cohesion and language. Johansson, V. (2008). Lexical diversity and lexical density in speech and writing: a developmental perspective.
Lund University.
Le, Q., & Mikolov, T. (s.f.). Distributed Representations of Sentences and Documents. Lu, X. (2017). Haiyang Ai. Obtenido de https://aihaiyang.com/software/l2sca/
Madrazo, I. (2016). Towards Multipurpose Readability Assessment.
Mandera, P. (2016). Psycholinguistics on a Large Scale: Combining Text Corpora, Megastudies, and
Distributional Semantics to Investigate Human Language Processing.
McNamara, Graesser, McCarthy, & Cai. (2014). Automated Evaluation of Text and Discourse with Coh-Metrix. Cambridge: Cambridge University Press.
Merril, W., & Baum, E. (s.f.). Voynich2Vec: Using FastText Word Embeddings for Voynich Decipherment. Ministerio de Empleo y Seguridad Social. (2018). XVII Convenio colectivo estatal de empresas de consultoría, y
estudios de mercados y de la opinión pública. Obtenido de Boletín Oficial del Estado:
https://www.boe.es/boe/dias/2018/03/06/pdfs/BOE-A-2018-3156.pdf
NLTK. (s.f.). nltk.tokenize.punkt module. Obtenido de https://www.nltk.org/api/nltk.tokenize.html Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., . . . Duchesnay, E. (2011).
Scikit-learn: Machine Learning in Python. Journal of Machine Learning Research, 2825--2830. Rodríguez, T. (21 de Abril de 2019). Genbeta. Obtenido de https://www.genbeta.com/desarrollo/estas-razones-
que-programadores-estan-empezando-a-aprender-python
scikit-learn. (s.f.). sklearn.ensemble.AdaBoostClassifier. Obtenido de scikit-learn: https://scikit- learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostClassifier.html
scikit-learn. (s.f.). sklearn.ensemble.GradientBoostingClassifier. Obtenido de scikit-learn.com: https://scikit- learn.org/stable/modules/generated/sklearn.ensemble.GradientBoostingClassifier.html
scikit-learn. (s.f.). sklearn.ensemble.RandomForestClassifier. Obtenido de scikit-learn: https://scikit- learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html Siddharthan, A. (2002). An Architecture for a Text Simplication System.
Sieg, A. (2018). Text Similarities : Estimate the degree of similarity between two texts. Spache, G. (1953). A new readability formula for primary-grade reading materials. Speer, R. (s.f.). Obtenido de https://github.com/LuminosoInsight/wordfreq
Stahl, S. A. (2003). Vocabulary and Readability: How Knowing Word Meanings Affects Comprehension. Lippincott Williams & Wilkins.
Tavernier, J., & Bellot, P. (2012). Flesch and Dale-Chall Readability Measures for INEX 2011 Question-
Answering Track.
Vajjala, S., & Lucic, I. (2018). OneStopEnglish corpus: A new corpus for automatic readability assessment and