|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2023-24
Elaboración de una herramienta para el análisis forense de textos |
Tecnologías Específicas
Computación
Descripcion y Objetivos
Este proyecto se enfoca en el desarrollo de una herramienta que, a través de la extracción de características, facilite el análisis comparativo de textos. Su objetivo final es asistir a un forense en la identificación o distinción de la autoría. Consiste en dos partes bien diferenciadas.
En la primera de ellas se han de definir características que pueden resultar de interés, e implica el uso de técnicas y herramientas de procesamiento de lenguaje natural como nltk, spacy o chatGPT. También se ha determinar el tipo de análisis estadístico, y la presentación de los datos.
La segunda parte consiste en la elaboración de una aplicación que permita importar documentos de texto, word o pdf, analizarlos, y generar un informe con el análisis comparativo entre autores. En este caso podría utilizarse cualquier lenguaje pero, por compatibilidad con el módulo de análisis, se utilizarán las librerías de Python, incluyendo Pyside6, los bindings con Python de la librería Qt.
El proyecto se llevará a cabo bajo la supervisión de la Dra. Sheila Queralt, lingüista forense profesional.
Metodología y Competencias
Este trabajo se organiza en varias partes bien diferenciadas que, si bien se plantean para ser abordadas secuencialmente, en algunos casos se pueden solapar.
- Estudio sobre técnicas de NLP en general y de las herramientas nltk, Spacy y chatGPT.
- Análisis de los requisitos y características proporcionadas por una lingüista profesional.
- Diseño e implementación de los módulos para la extracción de características de los textos.
- Diseño e implementación de los módulos para el análisis comparativo de los textos.
- Diseño de la aplicación.
Por otra parte, el proyecto trabaja las siguientes competencias de la intensificación de computación:
- [CM3] Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.
- [CM5] Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas medianteun sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes o entornos inteligentes.
- [CM6] Capacidad para desarrollar y evaluar sistemas interactivos y de presentación de información compleja y su aplicación a la resolución de problemas de diseño de interacción persona computadora.
- [CM7] Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción automática de información y conocimiento a partir de grandes volúmenes de datos.
Medios a utilizar
- Un PC
- Lenguaje de programación python y librerías
- API de OpenAI (opcionalmente)
Bibliografía
- Documentación del lenguaje de programación Python: https://docs.python.org/3/tutorial/index.html
- Manual de la librería Pandas: https://pandas.pydata.org/
- Manual de la librería Seaborn: https://seaborn.pydata.org/
- Manual de la librería Numpy: https://numpy.org/doc/stable/user/tutorials_index.html
- Manual de la librería spacy: https://spacy.io/usage
- Manual de la librería pyside: https://doc.qt.io/qtforpython-6/tutorials/index.html
Tutor OSSA JIMENEZ, LUIS DE LA | Alumno CERRO MORENO, RAÚL |
| |