SESIÓN 3
EL PROCESO KDD
A veces tenemos que hacer un modelo de regresión y a veces un modelo de
segmentación
MODELO DE SEGMENTACIÓN:
Poder diferenciar de un grupo de individuos, segmentos. La idea es poder
establecer segmentos para un grupo de individuos.
A veces el target no funciona porque no es específico, se tiene que especificar
de la mejor manera posible.
¿Qué dificultades encontramos para ello?
Complejidad: parte de la información puede no ser entendida, debido a
la no estructuración de la misma
Almacenamiento: hablamos de cantidades enormes de información,
¿cómo gestionar tal cantidad de datos a nivel de almacenamiento?
Rendimiento: ¿cómo se puede procesar de manera eficiente la
información para mejorar el rendimiento?
¿De donde viene la información que se procesa en Big Data?
Sensores meteorológicos
Geografía
Textos
Chats de redes sociales
Sensores de tráfico
Imágenes de satélite
Toda esta información no puede ser gestionada por aplicaciones
normales o datawarehouses, y en su mayoría se producen por sistemas
automáticos.
En ocasiones, es información no estructurada, y crece a gran velocidad.
El target es un valor en un determinado momento de la historia/vida
El target es la variable a predecir.
A las variables que no son target se les llaman atributos, o variables
predictoras.
No todas las variables vienen de la base de datos
El proceso KDD
El proceso de identificación de patrones y relaciones ocultas dentro de
los datos
La minería de datos ayuda a los usuarios finales a extraer información
comercial útil de una gran base de datos.
¿Por qué se usa el KDD?
Pepitas escondidas de información valiosa enterradas en lo profundo de
una montaña de datos que de otra manera no serían nada interesantes
Datos omnipresentes
Buscar la ventaja competitiva
La importancia del proceso
Un usuario de negocios estará interesado en la eficiencia y los
resultados, la validez puede no ser tan importante
Un investigador estará claramente interesado en un tipo diferente de
resultados, y la validez será importante
Data Scientist: un informático puede estar interesado en introducir
nuevos algoritmos o enfoques computacionales y lograr mejores
resultados o un procesamiento más eficiente.
Conocimientos necesarios
Estadística
Visualización
Inteligencia artificial
Aprendizaje automático
Tecnología de base de datos
Redes neuronales
Reconocimiento de patrones
Sistemas basados en el conocimiento
Adquisición de conocimientos
Recuperación de información
Computación de alto rendimiento
¿Qué se necesita?
Datos adecuados
Poder de computación
Software de minería de datos
Operador cualificado que conoce tanto la naturaleza de los datos como
las herramientas de software
Razón, teoría o corazonada (criterio)
Aplicaciones típicas basadas en KDD
Servicios financieros
o Aprobación de crédito
o Detección de fraude
o Marketing
Cuidado de la salud
o Análisis epidemiológico: incidencia y prevalencia de la
enfermedad en grandes poblaciones y detección del origen y la
causa de las epidemias de enfermedades infecciosas
o Conocimientos para la financiación
o Política, programas
Dos aproximaciones:
Supervisadas
o Dependen de la variable de salida
No supervisadas
o Técnicas de análisis de patrones o tendencias
o Estudios de nichos de mercado
o Típicamente se emplea el uso de clustering
Automatización del proceso KDD
La capacidad de apuntar una herramienta a algunos datos y pulsar un
botón
Algunos métodos de KDD/minería de datos son más adecuados para la
automatización que otros
Preparación de los datos
Este paso tiene que ver con la transformación de los datos en bruto
que se recogieron en una forma que pueda ser utilizada en el
modelado
Las técnicas de preprocesamiento de datos generalmente se refieren
a la adición, eliminación o transformación de los datos del conjunto
de capacitación.
Limpieza de datos
Tratamiento de missing values (valores desconocidos o perdidos)
Esto también implica limpiar datos outliers (fuera de rango)
Los valores nulos o perdidos no proporcionan información par aun
modelo, y por eso necesitamos encontrar una forma de tratarlos
Podemos eliminar toda la característica si faltan más de un 80% de los
valores
Tener este tipo de característica explicará muy poco mientras se entrena
el modelo, y no tendrá un gran efecto durante la clasificación o la
regresión.
Podemos usar los valores disponibles de esa característica en particular
y construir un modelo de regresión para predecir los valores que faltan
Esto es aconsejable si los valores perdidos son inferiores al 10-15%
Integración de datos
Esto incluye el agrupamiento de datos similares (estudiar correlación
entre variables)
Implica acceder a diferentes bases de datos y extraer información de
varias fuentes de confianza y unirlas
Este proceso dará significado a los datos no estructurados
enmarcándolos de manera que puedan ser entendidos
Transformación de datos
Por lo general, los datos tendrán enormes diferencias en los números y
una computadora dará peso a los valores que sean más altos
El escalado de datos es obligatorio para asegurarse de que el modelo da
igual peso a todos los valores
Un modelo ve las variables como simples números, mientras que
nosotros los interpretamos. Por lo tanto, para dar igual peso a ambas
características, necesitamos escalar los valores.
Este proceso también se llama normalización.
Reducción de datos / dimensiones
Este proceso implica la reducción de características basadas en el grado
de información que proporciona.
Esto implica los métodos:
o Selección de características, donde algunas de las características
son descuidadas mientras se entren aun modelo porque dan muy
poca información
o Extracción de características, donde diferentes métodos como el
PCA (Análisis de Componentes Principales) mapean las
características en una dimensión alta con menos número de
características.
En este procedimiento se pueden utilizar tanto métodos lineales como
no lineales. Las ventajas de la reducción de la dimensión es que la
correlación de los datos puede ser altamente reducida con una baja
varianza.
Finalizando el proceso de datos
Una vez que hayamos computado los datos y los hayamos analizado
Debemos centrarnos en seleccionar el modelo que mejor se adapte a
nuestros datos
Esto depende únicamente del tipo de datos con los que estamos
tratando
Hay muchos modelos de Machine Learning
Principales modelos por usar
Arboles de decisión
Redes neuronales (artificiales)
Grupo/vecino más cercano KNN
Algoritmos genéticos/computación evolutiva
Redes bayesianas
Estadísticas
Híbridos
Árboles de decisión
Representaciones gráficas de las relaciones con los datos
Excelencia en los modelos de clasificación y predicción
¿Cómo evaluamos el modelo?
El propósito de la evaluación es probar un modelo con datos diferentes a
los que se les entrenó
Esto proporciona una estimación imparcial del rendimiento del
aprendizaje
o División conjunta de entrenamiento y test
o Validación cruzada
En este método, el conjunto de datos se divide aleatoriamente en dos
subconjutos:
o El conjunto de entrenamiento es un subconjunto del conjunto de
datos utilizado para construir modelos predictivos
o El conjunto de validación es un subconjunto del conjunto de datos
utilizado para evaluar el rendimiento del modelo construido en la
fase de entrenamiento.
Validación cruzada
Esta validación se realiza en K fases:
o Se genera tantos conjuntos como valor de K
o Dejando uno para k-1 para entrenamiento y 1 para test
o Se repite el proceso K veces