On-line learning and anomaly detection methodsapplications to fault assessment
- Martínez Rego, David
- Amparo Alonso Betanzos Directora
- Óscar Fontenla Romero Director
Universidad de defensa: Universidade da Coruña
Fecha de defensa: 11 de julio de 2013
- Vicente Moret-Bonillo Presidente
- Bertha Guijarro-Berdiñas Secretaria
- Deniz Erdogmus Vocal
- Antonio Bahamonde Rionda Vocal
- Enrique Castillo Ron Vocal
Tipo: Tesis
Resumen
El presente trabajo de tesis se centra en la investigación en el campo del Aprendizaje Computacional (AC) y en su aplicación a entornos industriales. Más concretamente, se estudiará la aplicación de métodos de AC a la implementación de sistemas automáticos de mantenimiento predictivo de maquinaria rotativa. Por una parte, el AC intenta detectar patrones en conjuntos de datos que pueden haber sido originados por fenómenos de la más variada tipología. Por otra parte, el mantenimiento predictivo es una disciplina perteneciente al campo de la ingeniería industrial que se centra en detectar la posibilidad de aparición de roturas significativas en la maquinaria que impidan su funcionamiento en el presente o en el futuro cercano. Para llevar a cabo ésta detección, se basa en medidas físicas de las condiciones de funcionamiento de sus componentes internos. En esta tesis se pone de manifiesto que estas dos disciplinas pueden beneficiase mutuamente. El mantenimiento predictivo de maquinaria rotativa supone un reto para el AC debido a la naturaleza de los datos generados por ésta: (a) cada máquina tiene sus propias particularidades y condiciones de montaje que la convierten en un caso individual - motivo por el cual no es viable disponer de datos de fallo para cada una de ellas, con los que construir un modelo de clasificación -, (b) las condiciones de funcionamiento de la máquina (velocidad, carga, etc.) son cambiantes en muchos casos y generan desviaciones en los datos que deben ser distinguidas de una situación de fallo. El mantenimiento predictivo supone la revisión periódica, por parte de expertos en la materia, de medidas físicas recogidas in situ en la propia maquinaria. Este proceso genera costes de gestión de la información, recursos humanos especializados y tecnologías de adquisición. El AC puede ayudar al mantenimiento predictivo en los siguientes aspectos principales: (a) reducir los costes de producción de planta a través de la automatización de actividades de revisión periódica y (b) reducir la probabilidad de daños significativos en la maquinaria debido a la posibilidad de aumentar la frecuencia de monitorización de ésta, con un incremento de costes reducido. La construcción de sistemas automáticos de revisión de la condición supondría un ahorro de costes en sectores tan estratégicos como la producción de energía eléctrica, transporte público, etc. La construcción de un sistema de este tipo supone un reto tanto desde el punto de vista de las TIC como desde el punto de vista de la Inteligencia Artificial. El principal objetivo de esta tesis es desarrollar algoritmos novedosos en el campo del AC capaces de abordar el problema del mantenimiento predictivo de maquinaria rotativa en escenarios reales. Se proponen técnicas de propósito general dentro del campo del AC y algoritmos específicos para resolver la problemática del mantenimiento predictivo automático de maquinaria. Los algoritmos propuesto son capaces de tratar las restricciones en los datos antes mencionadas. La disponibilidad solamente de datos en condiciones normales, o dicho de otro modo la ausencia de contraejemplos para realizar el proceso de aprendizaje, nos obliga a la utilización de algoritmos de detección de anomalías, éste será por tanto uno de los bloques principales del trabajo. Además, el mantenimiento predictivo también precisa valorar cuál va a ser el estado de la máquina en el futuro cercano de cara a tomar las contramedidas necesarias a tiempo. Esta necesidad nos lleva al segundo bloque principal del presente trabajo también dedicado al AC, el aprendizaje en tiempo real, que nos ayudará en esta tarea. A continuación se resumen las aportaciones principales de cada uno de los bloques de la tesis. El primer bloque de la tesis se dedica a la detección de anomalías o, expresado de otro modo, al aprendizaje de modelos de clasificación en ausencia de contraejemplos. Los algoritmos de detección de anomalías han ido ganado importancia en las últimas décadas debido a la proliferación de problemas que implican el aprendizaje de modelos de clasificación cuando el número de datos en condiciones normales es muy abundante, pero el número de contraejemplos es reducido o nulo. Desde un punto de vista abstracto, el término de detección de anomalías se refiere al problema de encontrar patrones que no están conformes con un comportamiento esperado o normal. En términos matemáticos, contamos con un fenómeno a estudiar que genera patrones de datos descriptivos de sí mismo en un espacio de entrada. Bajo condiciones normales, estos datos son generados siguiendo una distribución de probabilidad P(x). Puesto que la distribución real que genera los datos bajo condiciones de normalidad es desconocida, necesitamos construir un modelo/algoritmo, a partir de una muestra disponible, capaz de determinar qué patrones no están conformes con las condiciones esperadas. En este trabajo se proponen tres nuevos algoritmos de detección de anomalías: - Envoltura de volumen mínimo a través de un conjunto de elipsoides [Minimum Volume Set of Covering Ellipsoids]. A pesar de esta amplia variedad de algoritmos de detección de anomalías, casi todos comparten una característica común: determinar la región del espacio de entrada a la que pertenecen los patrones generados bajo condiciones de `normalidad¿. Algunos algoritmos suponen de antemano una forma abstracta para la región del espacio de entrada que recoge los patrones generados bajo condiciones normales. Una de las elecciónes más utilizadas en la literatura es la esfera o su generalización en un elipsoide. Esta elección convierte el problema del aprendizaje de un modelo de detección de anomalías en el problema clásico de determinar el elipsoide de volumen mínimo que cubre un conjunto de datos. Esta elección de forma puede ser muy restrictiva y generar un clasificador con pobres resultados en la práctica si la forma de los datos no se ajusta a la asumida (por ejemplo en el caso de datos multimodales). El primer algoritmo propuesto extiende el citado problema en los siguientes aspectos: (a) se calcula un conjunto de elipsoides de volumen mínimo que genere una envoltura del conjunto de datos disponible y (b) se utiliza una función de coste que proporciona una estimación robusta contra datos ruidosos. Gracias a estas dos propiedades, se proporciona un algoritmo más flexible y robusto capaz de aproximar regiones más complejas de manera más precisa. - Clasificación de una clase basada en estadísticos de orden [Extreme Value Statistics One-class Classifier]. En ciertas aplicaciones prácticas, es complejo asumir a priori una forma de la región del espacio de entrada que alberga los patrones generados bajo condiciones de `normalidad¿. En el segundo algoritmo propuesto se establece un criterio de decisión capaz de decidir si un patrón es anómalo o no sin basarse directamente en la determinación de una región del espacio de entrada. Este algoritmo pone de manifiesto que, utilizando resultados del campo de los estadísticos de orden y modelando la distancia entre patrones bajo condiciones de `normalidad¿, es posible abordar la tarea de detección de anomalías de un modo efectivo. Además, este algoritmo puede ser aplicado a tipos de datos más complejos no pertenecientes necesariamente a un espacio Euclídeo (secuencias, grafos, etc.), debido a que la estrategia de clasificación propuesta sólo requiere disponer de una medida de distancia entre patrones. - Detección de anomalías en tiempo real [On-line Stream Data Anomaly Detection]. La mayoría de los algoritmos de detección de anomalías existentes en la literatura tratan el problema considerando que un conjunto finito de patrones bajo condiciones de `normalidad¿ está disponible de antemano para construir el modelo. Una problemática diferente aparece cuando nuevos patrones son recibidos continuamente y se desea señalizar de manera automática y en tiempo real aquellas regiones del flujo de datos que presentan un comportamiento anómalo. El último algoritmo propuesto está especialmente diseñado para abordar este problema haciendo uso de la combinación de un algoritmo de clasificación de una clase pasivo-agresivo y gráficos CUSUM para distribuciones de Bernouilli. Este algoritmo es capaz de tratar en tiempo real un flujo de datos y señalizar aquellas regiones en las que es posible encontrar un comportamiento anómalo. Además de a espacios Euclídeos, el algoritmo propuesto puede aplicarse a patrones pertenecientes a otros espacios kernel. El segundo bloque de este trabajo se dedica al aprendizaje en tiempo real de redes de neuronas artificiales. En el aprendizaje en tiempo real, el modelo de los datos se ajusta utilizando cada patrón en un único paso de actualización. El objetivo de realizar el aprendizaje de este modo es cumplir con las restricciones de ciertos escenarios como pueden ser: (a) restricciones de procesamiento en tiempo real, (b) contemplar grandes bases de datos o (c) adaptarse a cambios en la distribución de los datos de entrada y la variable a predecir. Los algoritmos de aprendizaje en tiempo real están ganando protagonismo debido a su gran aplicabilidad en las grandes bases de datos modernas. En el presente trabajo se revisa la problemática del aprendizaje en tiempo real así como los distintos contextos en los que puede aparecer (grandes conjuntos de datos, cambios de contexto y datos distribuidos) y se propone un nuevo algoritmo de aprendizaje para redes de neuronas monocapa con función de salida no lineal. El algoritmo propuesto es capaz de entrenar cada neurona procesando cada patrón una única vez. De este modo, se reducen en gran medida los recursos de memoria y procesamiento necesarios para realizar el aprendizaje. Además es posible demostrar que, bajo ciertas condiciones, el algoritmo alcanza el mínimo global de la función de coste para todo el conjunto de entrenamiento disponible. También se demuestra que el algoritmo propuesto recoge implícitamente un término de regularización que puede ser explotado en problemas mal condicionados. Es destacable también que este algoritmo abarca como casos concretos varios algoritmos de aprendizaje que ya estaban presentes previamente en la literatura, como el algoritmo de Mínimos Cuadrados Recursivo. Mantenimiento predictivo basado en el análisis automático de vibraciones En el bloque final del trabajo se trata el campo del mantenimiento predictivo automático de maquinaria rotativa basado en el análisis de registros de vibración.Un proceso de mantenimiento deficiente puede poner en peligro la viabilidad económica de ciertos procesos de producción, como el de la energía eólica, tanto por la indisponibilidad no programada de la maquinaria como por los altos costes de las reparaciones. El mantenimiento predictivo es una metodología que establece la viabilidad de funcionamiento de maquinaria rotativa basándose en la medida y el análisis periódico de variables que revelan el estado de sus componentes internos. Gracias a una detección temprana de los defectos (inevitables debido a la fatiga a la que se someten los materiales), se evitan roturas con posibles consecuencias catastróficas y es posible la programación de actividades de reparación de la manera menos costosa posible. El mantenimiento predictivo y las tecnologías asociadas a él se han convertido en factores clave a la hora de extender la vida de los equipos, reducir costes y aumentar la disponibilidad de los activos de producción. La inspección continua de la maquinaria es, desafortunadamente, imposible en muchos casos debido a que el incremento de los costes en recursos humanos es prohibitivo. Uno de los factores que influyen en gran medida en dicho coste es la necesidad de inspeccionar continuamente capturas de datos que no presentan ningún problema. ésta es la razón que hace que, en la práctica, la periodicidad de las inspecciones no sea tan frecuente como sería deseable. Es en este aspecto en donde el presente trabajo pretende dar una respuesta efectiva. El objetivo principal de la segunda parte es construir un software que sea capaz de: (a) `percibir¿ los síntomas de fallo interno de la maquinaria, (b) notificarlos antes de que puedan producir una rotura desastrosa y (c) interpretar dichos síntomas para realizar un diagnóstico. La viabilidad de inversión en un software de este tipo es fácilmente palpable en ciertos sectores como el de la energía eólica, que en 2012 acumulaba una potencia instalada de 238 GW en todo el mundo. El primer paso para construir un software de esta naturaleza es determinar las variables físicas que nos van a permitir percibir un síntoma de fallo. El análisis de vibraciones es una de las técnicas más efectivas a este respecto debido a su capacidad para revelar síntomas de fallo interno, sus reducidos costes con respecto a otros sistemas de adquisición de datos de condición (como son el análisis de aceite, ultrasonidos, etc.) y su capacidad para monitorizar continuamente y de manera automática cualquier tipo de maquinaria rotativa. En segundo lugar, de cara a automatizar el proceso de detección de fallos, un software de mantenimiento predictivo basado en vibraciones debe ser capaz de distinguir entre capturas de vibración que no revelan síntomas de defectos de aquellas en las que se revela algún tipo de fallo. El Aprendizaje Computacional puede dar una respuesta efectiva a esta problemática y será un tema central en la última parte del trabajo. Se propone la aplicación de algoritmos de detección de anomalías a la clasificación de capturas de vibración y se detalla la metodología a utilizar para analizarlas automáticamente utilizando tanto algoritmos ya disponibles en la literatura como los algoritmos propuestos en la primera parte de este trabajo. Algunos de estos algoritmos se integraron en el prototipo de software comercial GIDAS. Este software fue desarrollado por el autor. Las experiencias extraídas en la aplicación del Aprendizaje Computacional al campo del mantenimiento predictivo en plantas reales con el citado software y los casos reales de fallos detectados in situ en condiciones de producción también son descritos.