Please enable JavaScript.
Coggle requires JavaScript to display documents.
Análisis y comparación de algoritmos de detección de anomalías - Coggle…
Análisis y comparación de algoritmos de detección de anomalías
Detección de anomalías
Estado del arte
Aumenta la eficiencia y el rendimiento
La información importante se obtiene de los datos
Es mejor detectar anomalías antes de causar daños
La inteligencia artificial cada vez es más necesitada
Ayuda a identificar problemas más rápida y fiablemente
Aplicaciones prácticas
Salud
La inteligencia artificial genera muchos avances
El diagnóstico y la monitorización de pacientes utilizan detección de anomalías
Ejemplo: La radiología detecta tratamientos erróneos.
Industria
Puede detectar fallos pronto en los procesos industriales
Ventas al por menor, gestión de inventario, control de calidad y otros procesos la utilizan
Finanzas
Ataques por red u otros crímenes pueden ser evitados
Fraudes de tarjeta de crédito, predicción de bancarrota, inversiones en bolsa y otros la utilizan
Anomalía
Existen 3 categorías
Colectiva
Un dato puede no ser una anomalía pero en conjunto si
Es una colección de instancias anómala con respecto a los datos
Contextual
Cada instancia de datos es un atributo contextual y de comportamiento
Es una anomalía debido al contexto de la observación
Puntual
Anomalías de datos individuales respecto a otros datos
Hay diferentes modelos para su detección
Su detección permite identificar eventos raros
Es un defecto de funcionamiento
Conjunto de datos
Qué es
Un dataset es un conjunto de datos
Almacenados por columnas y filas
Cada columna es una variable
Cada fila es un miembro del conjunto
Es una colección de conjuntos de información separados y tratados como una sola unidad por la computadora
Selección
La detección de anomalías es frenada por la falta de buenos conjuntos de datos
Hay diferentes tipos
Puntos Multidimensionales
Compuesto por un registro por cada punto de datos
Gráficos de series temporales
Etc.
Es importante seleccionar conjuntos exactos y completos
Uso y manipulación
Subajuste
Algoritmo de aprendizaje que obtiene un bajo rendimiento
No proporciona suficientes datos o el modelo es demasiado simple
Realiza un gran número de predicciones erróneas
Sobreajuste
Algoritmo de aprendizaje que obtiene bajo rendimiento
Se entrena con demasiados datos o el modelo es muy complejo
Aprende del ruido y los datos inexactos
Preparación
Prueba - Entrenamiento
Conjunto de entrenamiento
Se utiliza en la práctica
Ajusta los parámetros de los algoritmos
Conjunto de prueba
Prueba el modelo entrenado
Proporciona una evaluación y analiza resultados
Debe ser grande para generar buenos resultados, representativo del conjunto de datos y separado del entrenamiento
Normalización de entrada
Se deben normalizar los conjuntos de entrada para evitar problemas
Cambia los valores a una escala común
Algoritmos
Aprendizaje No supervisado
Vecino Cercano
K-NN
Se centra en anomalías globales
2 formas
Se usa la distancia a un solo vecino cercano (kph-NN)
Se usa la distancia media a todos los vecinos cercanos (k-NN)
Encuentra los vecinos más cercanos de cada registro y calcula una puntuación de anomalía.
Forma más sencilla de detectar anomalías
LOF
Factor Anómalo Local
Mide la desviación local de la densidad de una muestra respecto a sus vecinos
La puntuación de la anomalía depende de qué tan aislado está
Tiene 3 pasos
Los k-vecinos son encontrados por cada punto p
Se estima la densidad de accesibilidad local LRD
Se calcula LOF comparando LRD con los de sus vecinos
COF
Factor anónimo basado en la conectividad
Estima la densidad local de los vecinos con la distancia de encadenamiento
Añade la distancia mínima entre la instansia dada y cualquier otra
LOCI
Correlación local integral
Utiliza todos los valores posibles de k para cada registro y se toma la puntuación máxima
Compara dos grupos de vecinos de diferente tamaño.
Es demasiado lento para conjuntos grandes
Agrupación
Determina áreas densas en los datos y estima la densidad de cada una
El usuario selecciona la partición y clasifica la heurística en grupos resultantes
Calcula una puntuación de anomalía por la distancia de cada instancia al centro del cúmulo
IForest
Aísla las observaciones seleccionando una característica al azar
Selecciona un valor al azar y un valor de división
Si el bosque produce caminos más cortos es probable que sean anomalías
Estadísticos
HBOS
Histogram-based Outlier Score
Cada característica del conjunto de datos crea un histograma
Se multiplica la altura inversa de los recipientes en que está el conjunto
Para cada dimensión d se calcula un histograma individual donde la altura del mismo es una estimación de la densidad
Subespaciales
PCA
Principal Component Analysis
Utilizada para detectar subespecies en los conjuntos de datos
Las desviaciones de los subespecies pueden indicar anomalías
Utilidad
Sirve en la detección de anomalías para identificar patrones normales
Busca aprender la estructura inherente de los datos sin etiquetas proporcionadas
Puede identificar automáticamente la estructura de los datos
Los problemas de asociación son aquellos que buscan reglas que describan a la mayor parte de sus datos
Métricas de análisis
ROC-AUC
Curva de característica operativa del receptor
Gráfica que muestra el rendimiento de un modelo de clasificación
AUC representa el grado de separabilidad y mientras más alto es su valor mejor es el modelo
Si es cercano a 1 el modelo es excelente, si es cercano a 0.5 este no tiene la capacidad de separar clases.
Matriz confusión
Es una herramienta que muestra el desempeño de un algoritmo de clasificación
Describe cómo se distribuyen los valores reales y las predicciones
Tiene 4 distintas variables
Valores actuales: verdadero o falso
Valores predichos: positivo o negativo
Otros aspectos
La sensibilidad es la proporción de casos positivos que fueron correctamente identificados
La especificidad son los casos negativos que el que se han clasificado correctamente
La precisión se refiere a la dispersión del conjunto obtenido a partir de mediciones repetidas
La exactitud es lo cerca que está el resultado de una medición del valor verdadero
F1 combina precisión y sensibilidad en una sola métrica
Kappa
El coeficiente kappa mide la concordance entre dos examinadores
Su valor puede variar entre 0-1, donde 0 es que hay un acuerdo aleatoria entre clasificadores y el 1 es un acuerdo completo
Herramientas
Python
Lenguaje de programación de alto nivel que x y facilita proyectos de aprendizaje automático
Ofrece un buen rendimiento para el desarrollo
Facilita proyectos de aprendizaje automático
Anaconda
Distribución de python con herramientas de instalación y paquetes
Posibilidad de crear diferentes entornos de Python con su propia configuración
Utiliza Conda para organizar todas las herramientas
PyOD
Es una librería completa y escalable de Python
Está diseñada para la detección de anomalías
Google Colab
Entorno gratuito de Jupyter Notebook
Permite importar conjuntos de datos y crear sistemas muy completos
se ejecuta completamente en la nube
Numpy
Se usa principalmente para los conjuntos de datos
Forma la base de potentes librerías de aprendizaje automático
Numba
Es un compilador que se centra en la computación científica
Compila un subconjunto del código de máquina eficiente comparable a uno tradicional
Scipy
Ecosistema basado en Python para matemáticas, ciencia e ingeniería
Scikit-learn
Biblioteca de aprendizaje automático de software libre para Python
Técnicas principales
Hay tres enfoques para el aprendizaje automático y dependen de la disponibilidad de los datos sobre el dominio
La clasificación esta presente al tener una categoría como variable de salida
La regresión se presenta cuando la variable de salida es un valor real
Tienes una variable de entrada y una de salida (Y = f(x))
Busca aproximar la función de mateo para poder predecir la salida de nuevos datos