Detección de comportamientos anómalos en la marcha de peatones mediante técnicas de aprendizaje automático

Egido Grande, Belén del (2017). Detección de comportamientos anómalos en la marcha de peatones mediante técnicas de aprendizaje automático. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. Industriales (UPM).

Descripción

Título: Detección de comportamientos anómalos en la marcha de peatones mediante técnicas de aprendizaje automático
Autor/es:
  • Egido Grande, Belén del
Director/es:
  • Barrientos Cruz, Antonio
  • Garzón Oviedo, Mario
Tipo de Documento: Proyecto Fin de Carrera/Grado
Grado: Grado en Ingeniería en Tecnologías Industriales
Fecha: Septiembre 2017
Materias:
Palabras Clave Informales: Machine Learning supervisado, clasificación, trayectoria, Scikit Learn, simulación
Escuela: E.T.S.I. Industriales (UPM)
Departamento: Automática, Ingeniería Eléctrica y Electrónica e Informática Industrial
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img]
Vista Previa
PDF (Document Portable Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (2MB) | Vista Previa

Resumen

En este Trabajo Fin de Grado se desarrolla un sistema para la identificación de comportamientos anómalos en peatones en un entorno determinado. Para ello, recibiremos información de un simulador de peatones que será procesada por una serie de algoritmos de Machine Learning que decidirán si una trayectoria es correcta o anómala. Debido al aumento de las escenas de terrorismo en los últimos años, se ha hecho necesario ampliar los sistemas de vigilancia y seguridad para la defensa de las personas, y para la detección temprana de comportamientos anómalos en peatones. Las personas tenemos la capacidad de detectar comportamientos extraños tanto por motivos de adaptación al entorno como por reglas sociales adquiridas. Trasladar esta capacidad de detección a sistemas autónomos plantea un reto tecnológico muy alto, pero brinda muchísimas posibilidades. Por eso surge este Trabajo Fin de Grado. El objetivo de este proyecto es que un sistema robótico sea capaz de emular dicha capacidad humana. Uno de los grandes retos en la defensa de la seguridad de las personas es detectar con exactitud la presencia de un comportamiento extraño y el potencial peligro que conlleva. El problema será, pues, reconocer de entre todos los datos disponibles aquellos que corresponden a posibles comportamientos que darían lugar a situaciones de peligro. Será necesaria, por tanto, una recopilación de información para analizarla y utilizarla de acuerdo a estos requerimientos. La solución aquí propuesta parte de unos datos obtenidos de diferentes trayectorias recibidas de un simulador, el cual ha sido escogido tras un ejercicio de análisis y comparación de algunos de ellos encontrados en la literatura. Se trata de MassMotion 9.0, un software de simulación de peatones que puede hacer un análisis de multitudes. Se escogió este porque permite visualizar y calcular un número muy elevado de agentes individuales que interactúan con su entorno en tiempo real.Una vez obtenidos dichos datos, se procederá a su análisis mediante una serie de algoritmos de Machine Learning de clasificación. Se trata de un aprendizaje supervisado, que será capaz de inferir el modelo subyacente en un proceso de entrenamiento mediante ejemplos. Los algoritmos utilizados han sido: 1. Máquina de soporte de vectores: busca un hiperplano que separe datos de una clase de los de otra. 2. K Vecinos Próximos: almacena instancias de los datos de entrenamiento, estimando la probabilidad a posteriori de que un elemento x pertenezca a la clase C. 3. Descenso del Gradiente: realiza el cálculo de un mínimo local, reduciendo este a una secuencia de problemas de búsqueda lineal (o búsqueda unidimensional). 4. Clasificador Bayesiano Ingenuo: se trata de un clasificador probabilístico fundamentado en el teorema de Bayes y algunas hipótesis simplificadoras adicionales. 5. Árboles de decisión: crea un modelo que predice el valor de una entrada variable aprendiendo reglas simples de decisión basadas en los elementos de entrada. 6. Bosques Aleatorios: se trata de una combinación de árboles predictores en el que cada árbol depende de los valores de un vector aleatorio probado independientemente y con la misma distribución para cada uno de ellos. Para poder seleccionar cuál de todos ellos será mejor para unos óptimos resultados, se realizan diferentes experimentos unitarios e integrados en el que, con un escenario determinado, se obtienen unos porcentajes de acierto y error para cada uno. Para el estudio de los resultados de estos algoritmos, ha sido necesaria la implementación de un programa realizado en Python así como la herramienta Scikit-Learn, y la aplicación Excell. Posteriormente serán necesarias unas técnicas de análisis: las métricas de calidad de los algoritmos se definen en función de la relación entre las etiquetas de los datos del set de validación y las salidas producidas por los algoritmos. Para evitar que se acabe sobreajustando el algoritmo a los datos utilizados para validarlo, se han empleado asimismo técnicas de validación cruzada, en las que se dividen los datos en subgrupos. Para cada subgrupo se entrena un algoritmo con los datos de este, y se valida con los datos de fuera de él. De acuerdo con ello, en este proyecto se han realizado dos escenarios y se ha realizado esta tarea. La principal aportación de este proyecto es, dentro de la estructura de la solución propuesta, estudiar diferentes algoritmos de clasificación presentes en la literatura y utilizarlos con el fin de detectar comportamientos anómalos y compararlos, de tal manera que se pueda encontrar aquel que mejor satisfaga estas necesidades. Parámetros elegidos La alimentación de los algoritmos de Machine Learning se ha realizado mediante unos parámetros que se han escogido de acuerdo a la naturaleza de nuestro problema, y a la solución que pretendemos conseguir. Por un lado se encuentran los que podemos obtener directamente del simulador, los parámetros descriptivos, que podríamos obtener directamente de la trayectoria de una persona, como son la velocidad máxima, la aceleración, la distancia, etc. Por otro lado, hemos seleccionado otros que nos pueden ofrecer una información relevante aunque a priori no sepamos identificarla. Estos son los parámetros estadísticos, que nos han permitido crear un modelo de la realidad, debido a que hemos contado con un número muy elevado de datos procedentes de igualmente numerosas trayectorias. El conjunto de todos ellos ha formado el vector de datos de entrada, que ha servido para alimentar nuestros algoritmos, y que consta de 36 parámetros. Los resultados se pueden dividir en dos partes: pruebas unitarias, en las que se ha alimentado al algoritmo con los datos correspondientes a un único comportamiento anómalo, pidiéndole que prediga la validez de unas trayectorias que se engloban dentro de esos datos; y pruebas integradas, donde se alimentan los algoritmos con datos correspondientes a varios comportamientos anómalos y se le pide que prediga la validez de unas trayectorias que se engloban en cualquiera de estos comportamientos. Conclusiones y líneas futuras.Tras un profundo análisis de las diferentes partes de este proyecto y los resultados obtenidos, podemos llegar a las siguientes conclusiones: El algoritmo que mejor resultados nos ofrece es K Vecinos Próximos, tanto para las pruebas unitarias como para las integradas. La mayoría de los algoritmos de Machine Learning presentan resultados diversos en función del experimento que se realice, siendo casi en su totalidad mejores cuando se trata de pruebas unitarias. La validez cruzada ha indicado que se obtienen resultados menos favorables si se alimentan los algoritmos con datos procedentes de un escenario distinto al que se pide que prediga. Como líneas futuras se propone llevar la solución propuesta a un sistema real, así como emplear otras variables que enriquezcan los algoritmos y probar otros nuevos dentro del conjunto de Aprendizaje Automático supervisado de clasificación, especialmente los basados en redes neuronales.

Más información

ID de Registro: 48901
Identificador DC: http://oa.upm.es/48901/
Identificador OAI: oai:oa.upm.es:48901
Depositado por: Biblioteca ETSI Industriales
Depositado el: 27 Dic 2017 10:06
Ultima Modificación: 27 Dic 2017 10:06
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • e-ciencia
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM