cambiar a curso:   2017-18   2019-20


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2018-19

Modelos de clasificación subjetiva para la evaluación de la calidad de restaurantes en base a las opiniones de los usuarios. Una perspectiva de aprendizaje profundo.


Tecnologías Específicas

Computación
 


Descripcion y Objetivos

En estos últimos tiempos es cada vez más habitual utilizar las redes sociales para guiarnos en la recomendación de ciertos negocios, eventos, etc. Es muy habitual utilizar aplicaciones como TripAdvisor, Yelp, Flirck, etc, para ver las recomendaciones de otros usuarios que han utilizado previamente los servicios evaluados, tales como restaurantes, hoteles, monumentos, visitas, fotografías, etc.

 

El procediendo para evaluar cada uno de estos negocios es casi siempre el mismo. Las evaluaciones se apoyan en los votos/ratings que les otorgan los usuarios junto, normalmente, las reseñas u opiniones textuales que escriben los usuarios.

 

La compañía Yelp ha lanzado estos últimos años unos retos sobre extracción del conocimiento para problemas particulares. Para el desarrollo de estos retos basados en aprendizaje automático libera una base de datos de negocios, mayoritariamente restaurantes, con información relevante estos negocios, juntos con las opiniones de los usuarios, ratings, fotos del negocio, etc.

 

El principal objetivo de este proyecto es utilizar esta fuente de información para predecir los votos de un determinado negocio/restaurante en función de ciertas características del mismo.

Este problema puede encuadrarse en un problema de clasificación binaria, esto es, este determinado restaurante es de calidad o no la es. Estando muy relacionada con los sistemas de recomendación, no es el mismo problema debido a que nosotros no conocemos el perfil del usuario que consulta el producto en cuestión.

En la literatura de aprendizaje automatico, y mas concretamente del aprendizaje supervisado es donde encajaría este problema de clasificación, hay un problema a la hora de abordarlo con procedimientos estándares, y es que no  tenemos la valoración definitiva de cada producto, esto es, nadie nos da el valor de su etiqueta, es de calidad o no lo es. En este caso, además, en este tipo de problemas existe una gran subjetividad en la valoración, es decir, para un experto/usuario un prodcuto puede ser de calidad y para otro experto/usurario puede que no lo sea, es por ello, que se recurre a cuanto mas anotadores/usuarios mejor para obtener información sobre la posible calidad de cada producto.

Este tipo de problemas donde el valor de la etiqueta para cada objeto no se conoce de forma directa, se les conoce en la literatura especifica de aprendizaje automatico, como problemas debilmente supervisados.

 

 


Metodología y Competencias

METODOLOGÍA:

  1. Revisar el contexto del problema y la literatura disponible.
  2. Realizar un análisis exploratorio de los datos existentes.
  3. Sobre la partición de datos de entrenamiento diseñar procesos de minería de datos centrados en:
    1. Preprocesamiento de datos (selección de variables, construcción de variables, discretización, etc.)
    2. Identificación de los algoritmos de minería de datos que mejor encajen en el problema objetivo. Aplicar realizando selección de modelos en función de los parámetros.
    3. Validación de los modelos obtenidos.
    4. Iterar refinando los pasos anteriores hasta determinar uno o varios modelos exitosos.
  4. Documentar todo el proceso anterior para que sea repetible.
  5. Estimar la bondad de los modelos finales (seleccionados) sobre el conjunto de datos de test reservado a tal efecto.

COMPETENCIAS:

Se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:

  • 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.
  • Capacidad para conocer los fundamentos, paradigmas y técnicas propias de los sistemas inteligentes y analizar, diseñar y construir sistemas, servicios y aplicaciones informáticas que utilicen dichas técnicas en cualquier ámbito de aplicación.
  • Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes entornos inteligentes.
  • Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar, 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

Todos los medios que se utilizan para la realización de este trabajo fin de grado están disponibles en la ESII y estarán a disposición de alumno que realice este trabajo.

Ordenadores, compiladores, APIs específicas para el desarrollo de las propuestas, etc.

 


Bibliografía

Libros y manuales de aprendizaje automático, procesamiento del lenguaje natural y ciencia/minería de datos.

Libros y manuales de lenguajes de programación y librerías específicas (machine learning, deep learning, visión artificial, etc.).

Todo disponible en la ESIIAB y/o en internet.

 


Tutores


PUERTA CALLEJON, JOSE MIGUEL
OSSA JIMENEZ, LUIS DE LA
 

Alumno


MARTÍNEZ PARRAS, BERNARDO