¿Qué es la detección de anomalías?
Definición de detección de anomalías
La detección de anomalías es el proceso de identificar puntos de datos en un set de datos o sistema fuera de lo comunes. Durante el análisis de datos o a través de machine learning, la detección de anomalías identificará instancias que no se ajustan a tus patrones usuales o modelos estadísticos en la mayoría de tus datos. Las anomalías pueden aparecer como valores atípicos, cambios inesperados o errores; depende del tipo de datos que estás analizando y cualquier parámetro predeterminado que hayas configurado. La detección de anomalías es útil porque puedes abordar problemas potenciales o amenazas con rapidez y de forma eficiente, y mantener la integridad y la confiabilidad de tu sistema.
Tipos de anomalías
Aquí puedes encontrar algunos tipos de anomalías que los métodos de detección de anomalías pueden hallar. (Es importante notar que estas categorías no son mutuamente excluyentes; las anomalías pueden mostrar características de varias categorías al mismo tiempo).
- Las anomalías de puntos son puntos de datos individuales notablemente diferentes del resto del conjunto de datos. Por ejemplo, una compra repentina elevada con tarjeta de crédito que está fuera de lo habitual para un titular de tarjeta de crédito en particular sería un punto de anomalía marcado para su investigación por posible fraude con la tarjeta de crédito.
- Las anomalías contextuales suceden cuando el comportamiento normal de los puntos de datos pueden variar según el contexto. Un ejemplo común es que el sitio minorista experimenta un mayor aumento en el tráfico y las ventas en el Viernes Negro, el día más concurrido de compras del año. Este pico sería anómalo en otro momento del año, por lo que se ajustan parámetros especiales para este día.
- Las anomalías colectivas involucran un grupo de puntos de datos que muestran comportamiento anómalo a pesar de que os puntos de datos individuales pueden verse normales. Estas anomalías se identifican observando las relaciones o los patrones entre varios puntos de datos. Un ataque de DDoS es un ejemplo de anomalía colectiva, porque crea tráfico desde varias fuentes distinto a los patrones de tráfico normal.
- Las anomalías temporales y las anomalías de series temporales suceden cuando hay desviaciones en los datos en una secuencia temporal, como una secuencia de eventos o cambios de temporada. Por ejemplo, un turno en temporada alta de turismo en un destino de vacaciones, patrones climáticos inusuales durante una temporada en particular o un aumento repentino del tráfico fuera de la hora pico serían todas anomalías temporales.
- Las anomalías espaciales y anomalías geográficas involucran anomalías que suceden en datos espaciales o geográficos. Estas anomalías pueden encontrarse mirando las relaciones espaciales entre los puntos de datos. Por ejemplo, en datos de salud pública, una concentración inusualmente alta en los individuos diagnosticados con una enfermedad en un área en particular sería una anomalía espacial que se investiga como brote localizado.
¿Por qué es importante la detección de anomalías?
La detección de anomalías es importante porque te ayuda a identificar patrones , comportamientos o eventos inusuales que pueden llevar a problemas más adelante. Tu organización puede recibir alertas de riesgos potenciales, ineficiencias y anomalías en cada sistema y conjunto de datos que elegiste monitorear. Esto te brinda la información que necesitas para intervenir de forma rápida y proactiva antes de que escalen los problemas. Estar al tanto de todas estas anomalías en varios aspectos de tu empresa mantiene todo funcionando sin inconvenientes, te muestra dónde puedes enfocarte en realizar mejoras y te protege de ataques internos y externos.
¿Cómo funciona la detección de anomalías?
La detección de anomalías funciona estableciendo primero un perfil de comportamiento de referencia. Este perfil representa los patrones y comportamientos esperados de los datos cuando todo funciona con normalidad. Se suele crear usando datos históricos o una muestra representativa del comportamiento normal.
Una vez que el perfil de comportamiento normal se haya establecido, se comparan los datos nuevos entrantes con estos perfiles. Los puntos de datos se evalúan para ver qué tan bien coincidieron con las características esperadas del perfile de comportamiento normal. Cualquier punto de datos que se desvíe significativamente de este se marca como anomalía. (Estas desviaciones se pueden identificar usando varias técnicas estadísticas, algoritmos de machine learning o enfoques basados en reglas que explicaremos en la siguiente sección).
A continuación, las anomalías detectadas se investigan en más detalle para comprender sus causas e implicaciones. Es importante validar las anomalías para asegurarse de que no sean falsos positivos o valores atípicos provocados por errores de medición o fluctuaciones aleatorias. Una vez verificadas las anomalías, es momento de tomar medidas. Esto puede significar investigar en más detalle, realizar más mantenimiento o reparaciones, tomar medidas de seguridad, realizar ajustes de control de calidad o cualquier otro paso que reduciría su impacto.
Técnicas de detección de anomalías
La mayoría de las técnicas de detección de anomalías pueden basarse en reglas o en machine learning. Estas últimas pueden desglosarse en tres grupos basados en machine learning: técnicas supervisadas, técnicas no supervisadas y técnicas semisupervisadas. La técnica que elijas dependerá de los requisitos específicos según el problema que intentas resolver y cuántos datos etiquetados tienes.
Las técnicas de detección de anomalías de ML supervisadas son técnicas que requiere datos etiquetados que definan con claridad tanto las instancias normales como las anómalas durante el entrenamiento. El modelo aprende los patrones de los datos normales y luego clasifica los puntos de datos nuevos como normales o anómalos conforme a lo que aprendió.
Las técnicas de detección de anomalías de ML no supervisadas funcionan sin datos etiquetados. Suponen que las anomalías son poco frecuentes y significativamente diferentes a la mayoría de los datos. Estas técnicas tienen como objetivo identificar patrones inusuales, valores atípicos o desviaciones del comportamiento normal.
Las técnicas de detección de anomalías de ML semisupervisadas usan una combinación de datos etiquetados y no etiquetados. Aprovechan los datos etiquetados para establecer un punto de referencia del comportamiento normal y luego identifican varias desviaciones con relación a este punto de referencia usando los datos no etiquetados. Resulta especialmente útil al trabajar con datos no estructurados.
Mientras que el machine learning se usa comúnmente en la detección de anomalías, vale la pena mencionar que otras técnicas (como los métodos estadísticos, los enfoques basados en reglas y las técnicas de procesamiento de señales) también pueden usarse para la detección de anomalías. Estas técnicas que no incluyen machine learning dependen de distintos principios y algoritmos para identificar las anomalías en los datos.
Casos de uso de detección de anomalías
La detección de anomalías tiene una variedad de casos de uso en diferentes áreas. Estos son algunos pocos casos de uso que puedes encontrar:
- Ciberseguridad: la detección de anomalías ayuda a identificar patrones o comportamientos inusuales en el tráfico de red, los logs del sistema y las actividades de los usuarios. Esto ayuda a detectar amenazas cibernéticas, como intentos de intrusión, malware y filtraciones de datos.
- Monitoreo de sistemas y aplicaciones: la detección de anomalías es crucial para monitorear el rendimiento de tus aplicaciones, servidores e infraestructura de red. Puede ayudarte a evitar potenciales interrupciones dado que puede encontrar y reportar rápidamente anomalías en métricas como latencia, uso de CPU y uso de memoria.
- Detección de fraudes: la detección de anomalías puede acorralar fraudes de tarjeta de crédito y robo de identidad detectando patrones de gasto fuera delo normal, compras realizadas desde ubicaciones geográficas inusuales y otras actividades sospechosas.
- Mantenimiento de hardware: puedes usar la detección de anomalías para monitorear cómo está funcionando tu hardware. Esto incluye factores como la temperatura de la CPU, las velocidades de los ventiladores y los niveles de voltaje. Puede marcar anomalías que podrían significar que hay fallas inminentes en el horizonte, de modo que puedes comenzar las reparaciones antes de que se produzca una interrupción.
- Analíticas de comportamiento del usuario: la detección de anomalías puede analizar los patrones y las tendencias de comportamiento del usuario en tus aplicaciones, sitios web y otras plataformas en línea, al mismo tiempo que evita el perfilado del usuario. Ayuda a identificar interacciones inusuales del usuario y también puede ayudar a personalizar medidas de seguridad.
Beneficios de la detección de anomalías
La detección de anomalías tiene varios beneficios. Estas son solo algunas de las maneras en que puede ayudar a tu organización:
- Te permite detectar los problemas de forma temprana antes de que se conviertan en problemas más grandes. Si detectas las anomalías al principio, puedes tomar medidas para detener posibles daños o interrupciones.
- Tiene un rol calve en la identificación de actividades sospechosas que pueden ser maliciosas, como los ciberataques o el fraude. Esto te permite detectar rápidamente amenazas potenciales y mejorar tu seguridad.
- Puede detectar ineficiencias buscando desviaciones del rendimiento óptimo de un sistema. Esto puede ayudarte a optimizar tus procesos y pensar ideas para mejoras generales en tus sistemas.
- Es fundamental para el servicio al cliente porque encuentra anomalías que podrían afectar la satisfacción del cliente, ya sean interrupciones del servicio o un aumento inusual en las consultas de servicio al cliente que pueden indicar un problema.
- La detección de anomalías basada en machine learning tiene el beneficio agregado de poder monitorear tus sistemas en todo momento.
- Incluso puede ayudarte con el cumplimiento normativo, porque puede detectar desviaciones de los requisitos regulatorios y los estándares de la industria.
Limitaciones y desafíos de la detección de anomalías
Las técnicas de detección de anomalías traen aparejadas ciertas limitaciones y beneficios. Estas son algunas desventajas que deben tenerse en cuenta:
- Los modelos de machine learning supervisados pueden requerir muchos datos etiquetados para funcionar bien. Si el modelo de entrenamiento de detección de anomalías tiene una cantidad insuficiente de datos etiquetados, la precisión se verá afectada.
- Configurar umbrales imprecisos para el algoritmo de detección de anomalías puede provocar una variedad de errores de reporte.
- Si el algoritmo se entrenó con un modelo histórico que ahora está desactualizado, el rendimiento del modelo puede degradarse. Actualizar el modelo puede ser laborioso y requerir mucho tiempo.
- Incluso con umbrales precisos, el algoritmo puede generar ocasionalmente falsos positivos (puntos de datos normales marcados como anomalías) o falsos negativos (anomalías no detectadas). Balancear la compensación entre estos dos tipos de errores puede ser difícil, dado que reducir uno suele llevar a un aumento en el otro.
- Los algoritmos de detección de anomalías pueden ser sensibles a los datos irrelevantes o ruidosos. Puedes usar técnicas de preprocesamiento y otros métodos de reducción de ruido para mitigar esto.
- La escalabilidad puede ser un desafío cuando estás aplicando detección de anomalías a grandes sets de datos o datos de transmisión en tiempo real. Tu organización puede necesitar más recursos informáticos de los que tienes para procesar todo.
Mejores prácticas de detección de anomalías
Es importante seguir las mejores prácticas de detección de anomalías para obtener los mejores resultados. Estas son algunas cuestiones que deberías tener en cuenta:
- Antes de comenzar, asegúrate de comprender en detalle las características y los detalles de tus datos.
- Establece patrones o umbrales de punto de referencia para el comportamiento esperado que sean lo más precisos posibles. No escatimes en este paso; tendrás problemas más adelante si lo haces.
- Elige una técnica de detección de anomalías que sea una buena coincidencia para el tipo de datos que genera tu organización. (Puedes combinar varias técnicas, si ese es el mejor enfoque).
- Monitorea con regularidad el rendimiento del sistema de detección de anomalías y actualízalo si los datos que estás generando cambiaron.
- Si tienes preguntas, asegúrate de incluir a miembros de tu equipo que sean expertos en la materia que se está analizando. Pueden ayudarte a interpretar los resultados con más precisión.
Detección de anomalías con Elastic
Elastic proporciona una interfaz clara y fácil de usar que usa una variedad de técnicas de machine learning a fin de proporcionar análisis sofisticado en tiempo real de tus datos. Las características de detección de anomalías de Elastic incluyen flujos de trabajo paso a paso para ayudarte a crear un mejor trabajo de machine learning de detección de anomalías. También incluye visualizaciones que facilitan comprender tus anomalías y cuál puede ser su causa raíz, esto sumado a la detección confiable de comportamiento anormal en todos tus diversos dominios.
Conoce más sobre el machine learning de Elastic y cómo Elastic Observability puede ayudar a tu empresa hoy.
Recursos de detección de anomalías
Guía de Kibana: Detección de anomalías
Getting started with anomaly detection (Primeros pasos con la detección de anomalías)
Anomaly detection algorithms (Algoritmos de detección de anomalías)