martes, 15 de noviembre de 2016

Citizen security using Machine Learning algorithms through Open Data - Parte 1

1. Introducción

El siguiente artículo, con nombre, Citizen security using Machine Learning algorithms through Open Data, ha sido presentado para el 8th IEEE Latin-American Conference on Communications (LATINCOM) que se ha celebrado entre los días 15 y 17 de noviembre del 2016 en la Universidad Pontificia Bolivariana de Medellín en Colombia.
Para poder realizar todo este tratamiento de datos se ha tomado como referencia la Base de datos abierta de la Municipalidad de San Isidro; en esta base de datos se ha escogido la tabla de seguridad ciudadana como muestra la figura 1.
Figura 1: Seguridad ciudadana de Open Data San Isidro. Fuente: http://datosabiertos.msi.gob.pe/
Dicho artículo ha sido realizado en conjunto de los investigadores de la Escuela de Ciencia de la Computación de la Facultad de Ciencias y Centro de Tecnologías de la Información y Comunicación (CTIC) de la Universidad Nacional de Ingeniería (UNI) de Perú y el investigador/catedrático del Instituto de Investigación de Informática de Albacete (I3A) de la Universidad de Castilla-La Mancha (UCLM) de España.

Antes de resumir el trabajo, dejar la citación del artículo:
G. B. Rocca, M. Castillo-Cara, R. A. Levano, J. V. Herrera and L. Orozco-Barbosa, "Citizen security using machine learning algorithms through open data," 2016 8th IEEE Latin-American Conference on Communications (LATINCOM), Medellin, Colombia, 2016, pp. 1-6. doi: 10.1109/LATINCOM.2016.7811562
El artículo que tiene como objetivo principal realizar una comparativa entre los dos modelos de Machine Learning, Random Forest y Regresión Logística, a través de los datos obtenidos, en concreto los relativos a la seguridad ciudadana, de una Base de datos abierta (Open Data) de la Municipalidad de San Isidro. Esta comparativa se basa en tres componentes principales: (i) cómo realizar un preprocesamiento de los datos para dejarlos limpios y así poder utilizar los diferentes modelos; (ii) analizar qué modelo de los estudiados se acomodan mejor a los datos en tres ámbitos principales: fiabilidad, predictibilidad y comportamiento de los datos en sí; y (iii) cómo trasladar el estudio a la necesidad que se tiene en el ámbito de las administraciones públicas y la sociedad. Todo este contexto de trabajo, a través de los pasos seguidos para la metodología de desarrollo, puede verse en la figura 2.
Figura 1: esquema general del trabajo
Figura 2: esquema general del trabajo
Por tanto una vez establecido el ámbito de trabajo y la tabla a trabajar para hacer la comparativa, establecemos las metas en dos ámbitos principales:
  1. Reducir el riesgo de integridad física de los ciudadanos mediante geolocalización en tiempo real, analizando los datos y estableciendo probabilidades de sucesos negativos referente a su seguridad.
  2. Desarrollar una aplicación para los ciudadanos que puedan retroalimentarse de todos estos datos y, sobre todo, a las autoridades de la municipalidad para que puedan actuar premeditadamente ante cualquier suceso en futuro próximo y lejano.
 Bajo este contexto, los siguientes puntos describen como es el proceso de trabajo llevado a cabo en este trabajo.

2. Limpieza de los datos

El primer punto que se debe realizar cuando se está tratando una BBDD, es proceder a un procesamiento de los datos para limpiarlos y dejarlos de la manera más óptima para poder analizar cualquier técnica de Machine Learning.
Por ejemplo, en la tabla pre-formateada que muestra la figura 3 puede verse los datos extraídos tal y como se encuentran en la BBDD de San Isidro.
Figura 2: tabla de seguridad preformateada
Figura 3: tabla de seguridad preformateada
Realizamos el procesamiento que consiste en:
  1. Validación de datos: asegurar que la data esté limpia, correcta y útil.
  2. Ordenamiento: organizar la data en algún tipo de secuencia, de tal manera que los grupos de datos que comparten afinidad estén adyacentes en la tabla.
  3. Resumir: sintetizar los detalles a sus puntos principales; si un grupo de datos brindan una misma información entonces es recomendable trabajar con la principal variable más significativa, para evitar el solapamiento de datos. Se tiene que tener cierto cuidado y criterio con esta técnica ya que la omisión de data puede causar que el modelo pierda precisión en los detalles, es decir, en las variables puntuales de la microsimulación de un evento.
  4. Combinar: Múltiples piezas de la data pueden no tener un significado individual, pero al unirlas, la información de dicha unión puede tener un nuevo alcance para el modelo.
Este proceso descrito anteriormente, nos proporciona la siguiente tabla postformateada que se observa en la figura 4.
Figura 4: tabla de seguridad postformateada
Figura 4: tabla de seguridad postformateada

Una vez postformateada la tabla podemos ver la representación gráfica de los datos para poder determinar, como se dicen en ingles, "a naked eye", el comportamiento de los datos y buscar la correlación entre todos ellos. La figura 5 muestra la frecuencia de los sucesos en en las diferentes partes del día, siendo en la mañana cuando más sucesos existen. 
Figura 5: número sucesos a lo largo del día

La figura 6 muestra la cantidad de sucesos según el tipo. Por ejemplo vemos que tenemos un pico máximo de choque de coches en comparación los otros sucesos.                 
Figura 6: frecuencia de cada uno de los sucesos
Finalmente, la figura 7 muestra la matriz de correlación teniendo en cuenta tres variables importantes para las predicciones según la tabla: TIME_n, SECTOR y SUBSECTOR. A través de esta matrix podemos ver tres comportamientos fundamentales para poder utilizar Machine Learning:
  1. Intentamos buscar independencia entre características para un problema de clasificación. Mas cerca de 1 significa más dependencia entre variables, es por esto que vemos un buen comportamiento, ya que no llega a 0.4.
  2. Este aspecto anterior, nos clarifica el poder eliminar algoritmos de regresión.
  3. Vemos también una buena visualización de los datos de preprocesamiento.
Figura 7: matriz de correlación
Figura 7: matriz de correlación
Con este procesamiento de los datos observamos la siguiente tabla de entrenamiento, figura 8, para poder lanzar los diferentes modelos que hemos seleccionado.
Figura 8: datos de entrenamiento
En la siguiente entrada, ya con los datos limpios se explicará los modelos de Machine Learning utilizados y los resultados de los mismos de cara a predicciones y traducción a la ciudadanía.

0 comentarios:

Publicar un comentario