• No se han encontrado resultados

TÉCNICAS DE ANÁLISIS DE DATOS

N/A
N/A
Protected

Academic year: 2022

Share "TÉCNICAS DE ANÁLISIS DE DATOS"

Copied!
10
0
0

Texto completo

(1)

TÉCNICAS DE ANÁLISIS DE DATOS

A PLICACIONES PRÁCTICAS UTILIZANDO M ICROSOFT EXCEL Y WEKA

José Manuel Molina López

Jesús García Herrero 2004

(2)

PRÓLOGO

Estos apuntes pretenden dar una visión general de las técnicas de análisis de datos y de las aplicaciones que las implementan, permitiendo entender los conceptos y algoritmos sobre los que se basan las técnicas así como el resultado de su aplicación sobre diversas fuentes de ficheros.

Estos apuntes son una recolección de información de muy variadas fuentes, páginas de intenet, artículos etc.. todas ellas aparecen citadas. De entre todas ellas cabe resaltar el trabajo fin de carrera de David Sánchez titulado “Data Mining mediante Sistemas Clasificadores Genéticos. Análisis comparativo con las técnicas clásicas implementadas en WEKA”, en la titulación de Ingeniería Informática (Julio 2003) donde se realiza un gran esfuerzo por explicar el funcionamiento interno de la herramienta WEKA y de donde se ha extraído la información acerca de las clases y el código que implementa los algoritmos para estos apuntes. Así también resulta necesario resaltar la tesis doctoral de Félix Chamorr, ya que el capítulo 2 (el estado del arte) se pormenorizan todas las técnicas de análisis de datos y que ha sido utilizado para la elaboración de estos apuntes.

Esperamos que estos apuntes sean de utilidad para los alumnos que se acerquen al análisis de datos y en particular para aquellos que tengan interés en aplicar los conocimientos teóricos en el campo de la práctica.

Un saludo,

José Manuel Molina López Jesús García Herrero

(3)

Índice

Título del Proyecto i

Índice

CAPÍTULO 1. INTRODUCCIÓN 1

1.1. KDD

Y

M

INERÍA DE

D

ATOS

1

1.1.2.EL PROCESO DE KDD 3

1.1.3.MINERÍA DE DATOS 5

1.1.4.TECNOLOGÍAS DE APOYO 6

1.1.5.ÁREAS DE APLICACIÓN 9

1.1.6.TENDENCIAS DE LA MINERÍA DE DATOS 13

1.2. M

INERÍA DE

D

ATOS Y

A

LMACENAMIENTO DE

D

ATOS

14

1.2.1.ARQUITECTURA,MODELADO,DISEÑO, Y ASPECTOS DE LA ADMINISTRACIÓN 14 1.2.2.DATA MINING Y FUNCIONES DE BASES DE DATOS 16

1.2.3.DATAWAREHOUSE 17

1.2.4.DATAWAREHOUSEYDATAMINING 21

1.3. H

ERRAMIENTAS

C

OMERCIALES DE

A

NÁLISIS DE

D

ATOS

22

1.4. A

RQUITECTURA

S

OFTWARE PARA

D

ATA

M

INING

33

1.4.2.ARQUITECTURA FUNCIONAL 35

1.4.3.ARQUITECTURA DEL SISTEMA 36

1.4.4.EL DATA MINING EN LA ARQUITECTURA DEL SISTEMA 38

CAPÍTULO 2. ANÁLISIS ESTADÍSTICO MEDIANTE EXCEL

41

(4)

CAPÍTULO 3. TÉCNICAS DE MINERÍA DE DATOS

BASADAS EN APRENDIZAJE AUTOMÁTICO 42

3.1. T

ÉCNICAS DE

M

INERÍA DE

D

ATOS

42

3.2. C

LUSTERING

.

(“S

EGMENTACIÓN

”) 44

3.2.1.CLUSTERING NUMÉRICO (K-MEDIAS) 45

3.2.2.CLUSTERING CONCEPTUAL (COBWEB) 46

3.2.3.CLUSTERING PROBABILÍSTICO (EM) 50

3.3. R

EGLAS DE

A

SOCIACIÓN

53

3.4. L

A PREDICCIÓN

56

3.4.1.REGRESIÓN LINEAL 56

3.4.2.REGRESIÓN NO LINEAL. 61

3.4.3.ÁRBOLES DE PREDICCIÓN 62

3.4.4.ESTIMADOR DE NÚCLEOS 66

3.5. L

A CLASIFICACIÓN

71

3.5.1.TABLA DE DECISIÓN 72

3.5.2.ÁRBOLES DE DECISIÓN 74

3.5.3.REGLAS DE CLASIFICACIÓN 86

3.5.4.CLASIFICACIÓN BAYESIANA 91

3.5.5.APRENDIZAJE BASADO EN EJEMPLARES 96

3.5.6.REDES DE NEURONAS 104

3.5.7.LÓGICA BORROSA (“FUZZY LOGIC”) 108 3.5.8.TÉCNICAS GENÉTICAS:ALGORITMOS GENÉTICOS (“GENETIC ALGORITHMS”) 108

CAPÍTULO 4. TÉCNICAS DE ANÁLISIS DE DATOS EN

WEKA 110

CAPÍTULO 5. IMPLEMENTACIÓN DE LAS TÉCNICAS DE ANÁLISIS DE DATOS EN WEKA 111 5.1. U

TILIZACIÓN DE LAS CLASES DE

WEKA

EN PROGRAMAS

INDEPENDIENTES

111

(5)

Índice

Título del Proyecto iii

5.4. C4.5

EN

WEKA (J48) 112 5.5. Á

RBOL DE

D

ECISIÓN DE UN SOLO NIVEL EN

WEKA 115 5.6. 1R

EN

WEKA 116 5.7. PRISM

EN

WEKA 117 5.8. PART

EN

WEKA 117

5.9.NAIVE

B

AYESIANO EN

WEKA 118

5.10. VFI

EN

WEKA 119 5.11. KNN

EN

WEKA (IB

K

) 120 5.12. K*

EN

WEKA 122 5.13. R

EDES DE

N

EURONAS EN

WEKA 123 5.14. R

EGRESIÓN

L

INEAL EN

WEKA 124 5.15. R

EGRESIÓN

L

INEAL

P

ONDERADA

L

OCALMENTE EN

WEKA 126 5.16. M5

EN

WEKA 127 5.17. K

ERNEL

D

ENSITY EN

WEKA 128

5.18. K

-

MEANS EN

WEKA 130

5.19. COBWEB

EN

WEKA 130

5.20. EM

EN

WEKA 131

5.21. A

SOCIACIÓN

A P

RIORI EN

WEKA 132

CAPÍTULO 6. EJEMPLOS SOBRE CASOS DE ESTUDIO 135

BIBLIOGRAFÍA 136

(6)

Capítulo 1. Introducción

En este texto se estudia uno de los campos que más se están estudiando en estos días: La extracción de conocimiento a partir de fuentes masivas de datos.

Para ello se emplean las denominadas técnicas de minería de datos, que son algoritmos capaces de obtener relaciones entre distintos atributos o conceptos para ayudar, por ejemplo, a la toma de decisiones.

Además de las técnicas estadísticas se estudian las técnicas de Minería de Datos [Data Mining] basadas en técnicas de aprendizaje automático que se implementan en una herramienta de minería de datos de libre distribución:

WEKA. Esta herramienta permite, a partir de ficheros de texto en un formato determinado, utilizar distintos tipos de técnicas para extraer información.

A continuación se definen los conceptos fundamentales empleados en el texto:

KDD y, sobretodo, minería de datos, así como sus principales características.

Posteriormente se comenta la estructura del proyecto.

1.1. KDD y Minería de Datos

Hoy en día, la cantidad de datos que ha sido almacenada en las bases de datos excede nuestra habilidad para reducir y analizar los datos sin el uso de técnicas de análisis automatizadas. Muchas bases de datos comerciales transaccionales y científicas crecen a una proporción fenomenal.

KDD [Knowledge Discovery in Databases] [PSF91] es el proceso completo de extracción de información, que se encarga además de la preparación de los datos y de la interpretación de los resultados obtenidos. KDD se ha definido como “el proceso no trivial de identificación en los datos de patrones válidos, nuevos, potencialmente útiles, y finalmente comprensibles” [FAYY96]. Se trata de interpretar grandes cantidades de datos y encontrar relaciones o patrones.

Para conseguirlo harán falta técnicas de aprendizaje automático [Machine Learning] [MBK98], estadística [MIT97, DEGR86], bases de datos [CODD70], técnicas de representación del conocimiento, razonamiento basado en casos [CBR, Case Based Reasoning], razonamiento aproximado, adquisición de conocimiento, redes de neuronas y visualización de datos. Tareas comunes en KDD son la inducción de reglas, los problemas de clasificación y clustering, el reconocimiento de patrones, el modelado predictivo, la detección de dependencias, etc.

(7)

Capítulo 1 Introducción

Ejemplos sobre casos de estudio Página 2 de 160

Los datos recogen un conjunto de hechos (una base de datos) y los patrones son expresiones que describen un subconjunto de los datos (un modelo aplicable a ese subconjunto). KDD involucra un proceso iterativo e interactivo de búsqueda de modelos, patrones o parámetros. Los patrones descubiertos han de ser válidos, novedosos para el sistema (para el usuario siempre que sea posible) y potencialmente útiles.

Se han de definir medidas cuantitativas para los patrones obtenidos (precisión, utilidad, beneficio obtenido...). Se debe establecer alguna medida de interés [interestingness] que considere la validez, utilidad y simplicidad de los patrones obtenidos mediante alguna de las técnicas de Minería de Datos. El objetivo final de todo esto es incorporar el conocimiento obtenido en algún sistema real, tomar decisiones a partir de los resultados alcanzados o, simplemente, registrar la información conseguida y suministrársela a quien esté interesado.

Ha llegado un momento en el que disponemos de tanta información que nos vemos incapaces de sacarle provecho. Los datos tal cual se almacenan [raw data] no suelen proporcionar beneficios directos. Su valor real reside en la información que podamos extraer de ellos: información que nos ayude a tomar decisiones o a mejorar nuestra comprensión de los fenómenos que nos rodean.

Se requiere de grandes cantidades de datos que proporcionen información suficiente para derivar un conocimiento adicional. Dado que se requieren grandes cantidades de datos, es esencial el proceso de la eficiencia. La exactitud es requerida para asegurar que el descubrimiento del conocimiento es válido. Los resultados deberán ser presentados de una manera entendible para el ser humano. Una de las premisas mayores de KDD es que el conocimiento es descubierto usando técnicas de aprendizaje inteligente que van examinando los datos a través de procesos automatizados. Para que una técnica sea considerada útil para el descubrimiento del conocimiento, éste debe ser interesante; es decir, debe tener un valor potencial para el usuario.

KDD proporciona la capacidad para descubrir información nueva y significativa usando los datos existentes. KDD se define como: "The nontrivial process of identifying valid, novel, potentially useful, and ultimately understandable patterns in data" en Fayyad, Piatetsky-Shapiro & Smyth: "From data mining to knowledge discovery: An overview" Advances in Knowledge Discovery and Data Mining (AAAI / MIT Press, 1996) y se puede resumir en la Figura 1.

(8)

Figura 1.1: Esquema del proceso de KDD

KDD rápidamente excede la capacidad humana para analizar grandes cantidades de datos. La cantidad de datos que requieren procesamiento y análisis en grandes bases de datos exceden las capacidades humanas y la dificultad de transformar los datos con precisión es un conocimiento que va más allá de los límites de las bases de datos tradicionales. Por consiguiente, la utilización plena de los datos almacenados depende del uso de técnicas del descubrimiento del conocimiento.

La utilidad de aplicaciones futuras en KDD es de largo alcance. KDD puede usarse como un medio de recuperación de información, de la misma manera que los agentes inteligentes realizan la recuperación de información en el Web.

Nuevos modelos o tendencias en los datos podrán descubrirse usando estas técnicas. KDD también puede usarse como una base para las interfaces inteligentes del mañana, agregando un componente del descubrimiento del conocimiento a un sistema de bases de datos o integrando KDD con las hojas de cálculo y visualizaciones.

1.1.2. El proceso de KDD

El proceso de KDD se inicia con la identificación de los datos. Para ello hay que imaginar qué datos se necesitan, dónde se pueden encontrar y cómo conseguirlos. Una vez que se dispone de datos, se deben seleccionar aquellos que sean útiles para los objetivos propuestos. Se preparan, poniéndolos en un formato adecuado.

Una vez se tienen los datos adecuados se procede a la minería de datos, proceso en el que se seleccionarán las herramientas y técnicas adecuadas para lograr los objetivos pretendidos. Y tras este proceso llega el análisis de

(9)

Capítulo 1 Introducción

Ejemplos sobre casos de estudio Página 4 de 160 Figura 1.2: Metodología para el descubrimiento de conocimiento en bases de datos.

KDD es un proceso interactivo e iterativo, que involucra numerosos pasos e incluye muchas decisiones que deben ser tomadas por el usuario, y se estructura en las siguientes etapas [FAYY96]:

Comprensión del dominio de la aplicación, del conocimiento relevante y de los objetivos del usuario final.

Creación del conjunto de datos: consiste en la selección del conjunto de datos, o del subconjunto de variables o muestra de datos, sobre los cuales se va a realizar el descubrimiento.

Limpieza y preprocesamiento de los datos: Se compone de las operaciones, tales como: recolección de la información necesaria sobre la cual se va a realizar el proceso, decidir las estrategias sobre la forma en que se van a manejar los campos de los datos no disponibles, estimación del tiempo de la información y sus posibles cambios.

Reducción de los datos y proyección: Encontrar las características más significativas para representar los datos, dependiendo del objetivo del proceso. En este paso se pueden utilizar métodos de transformación para reducir el número efectivo de variables a ser consideradas o para encontrar otras representaciones de los datos.

Elegir la tarea de Minería de Datos: Decidir si el objetivo del proceso de KDD es: Regresión, Clasificación, Agrupamiento, etc.

Elección del algoritmo(s) de Minería de Datos: Selección del método(s) a ser utilizado para buscar los patrones en los datos. Incluye además la decisión sobre que modelos y parámetros pueden ser los más apropiados.

Minería de Datos: Consiste en la búsqueda de los patrones de interés en una determinada forma de representación o sobre un conjunto de

(10)

representaciones, utilizando para ello métodos de clasificación, reglas o árboles, regresión, agrupación, etc.

Interpretación de los patrones encontrados. Dependiendo de los resultados, a veces se hace necesario regresar a uno de los pasos anteriores.

Consolidación del conocimiento descubierto: consiste en la incorporación de este conocimiento al funcionamiento del sistema, o simplemente documentación e información a las partes interesadas.

El proceso de KDD puede involucrar varias iteraciones y puede contener ciclos entre dos de cualquiera de los pasos. La mayoría de los trabajos que se han realizado sobre KDD se centran en la etapa de minería. Sin embargo, los otros pasos se consideran importantes para el éxito del KDD. Por eso aunque la Minería de Datos es una parte del proceso completo de KDD [FAYY96], en buena parte de la literatura los términos Minería de Datos y KDD se identifican como si fueran lo mismo.

En la figura 1.3 se muestra el esfuerzo que requiere cada fase del proceso de KDD.

0%

10%

20%

30%

40%

50%

60%

70%

Esfuerzo (%)

Entendimiento del Dominio

Preparación de los Datos

Data Mining Interpretación y Consolidación del

Conocimiento

Fase

Figura 1.3: Esfuerzo requerido por cada fase del proceso de KDD.

Como se observa en la figura 1.3, gran parte del esfuerzo del proceso de KDD recae sobre la fase de preparación de los datos, fase crucial para tener éxito como ya se comentó anteriormente.

1.1.3. Minería de Datos

Minería de Datos es un término genérico que engloba resultados de

Referencias

Documento similar

Este Experto Universitario en Técnicas de Análisis de Datos contiene el programa científico más completo y actualizado del mercado. Tras la superación de las evaluaciones por

El Curso de Especialista en Técnicas de Programación en PL/SQL en Bases de Datos Oracle 11g le prepara para administrar y optimizar una base de datos de manera experta,

Las bases de datos hoy en día han cobrado una importancia muy alta dentro de una empresa ya que es ahí donde residen todos los datos operacionales y funcionales de la

Se compone de dos partes, un cuadro de mandos que explota un Datamart con la información almacenada de los precios por operador, por provincia y por día y otra para la minería

• Describir las posibles fuentes de error en el proceso de recolección de datos • Identificar las técnicas usadas para la recolección de datos en ejemplos que se le

Así, con el presente curso se pretende aportar los conocimientos necesarios para las técnicas de análisis de datos para investigaciones de mercado, y para intervenir, bajo

8. Utiliza bases de datos orientadas a objetos, analizando sus características y aplicando técnicas para mantener la persistencia de la información... Gestiona información

En la etapa de selección se extrae una pequeña cantidad de datos de la base de datos, conocida como muestra, para aplicar la técnica de minería de datos deseada, esto