REVISTA INGENIERÍA DE SISTEMAS
VOLUMEN XIV, Nº 1, JUNIO 2000
Data Mining en la Empresa y en las Finanzas
Utilizando Tecnologías Inteligentes
Richard Weber1
Departamento de Ingeniería Industrial,
Universidad de Chile
Resumen
El desarrollo de software y hardware computacional ha resultado en la generación
de enormes cantidades de datos almacenados en muchas empresas y organizaciones.
Estos datos contienen información valiosa, que puede ser usada para mejorar la
competitividad de estas instituciones. Data mining (minería de datos) se ha
convertido en un área de investigación y desarrollo, en el cual se están proponiendo
técnicas que apuntan a encontrar la información oculta en los datos. Este trabajo
presenta aplicaciones de técnicas de data mining que han sido realizadas por un
departamento de marketing en una institución bancaria.
1. Introducción
El marketing juega un papel crucial en la mayoría de las empresas, tanto en las
áreas de negocios y finanzas, como de comercio, servicios y telecomunicaciones. Entre
las metas respectivas se incluyen las de encontrar nuevos clientes y mantener los
actuales reconociendo y satisfaciendo sus necesidades. Hoy en día el desarrollo de
software y hardware computacional permite a las empresas recoger y almacenar
enormes cantidades de datos descriptivos de sus clientes y su comportamiento. El área
de investigación y aplicación en la que se desarrolla estrategias de marketing fundadas
en tales bases de datos se llama database marketing (Furness 1994; Nash 1993).
El presente trabajo considera aplicaciones de técnicas de data mining para el
database marketing, tratando en mayor detalle del uso de tecnologías inteligentes
tales como la lógica difusa (fuzzy logic) y las redes neuronales (neural networks).
1 Dirección: Departamento de Ingeniería Industrial, Universidad de Chile, República 701, Santiago,
Chile. E-mail:
[email protected]
61
R. WEBER
DATA MINING EN LA EMPRESA Y EN LAS FINANZAS UTILIZANDO TECNOLOGÍAS INTELIGENTES
En la Sección 2 se presentan las definiciones básicas junto con un resumen
panorámico de data mining. La sección 3 presenta las tecnologías inteligentes usadas
en esta publicación. En la sección 4 se presentan dos sub-tareas de un proyecto de
database marketing realizado por una institución bancaria, junto con sus
correspondientes resultados. La sección 5 presenta un resumen del trabajo, haciendo
alusión además a futuros desarrollos y aplicaciones de los enfoques de data mining.
2. Descubrimiento de Conocimientos en Bases de Datos y
Data Mining
Data mining entrega diversas técnicas para encontrar patrones en grandes conjuntos
de datos. Este enfoque multidisciplinario combina los resultados e intuiciones
provenientes de varias ramas científicas tales como la estadística, el aprendizaje
de máquina (machine learning), tecnologías difusas (fuzzy technologies), y redes
neuronales (véase por ejemplo, Adriaans y Zantinge 1996).
En la literatura existen muchas definiciones para caracterizar expresiones
como “descubrimiento de conocimiento en base de datos” (KDD: Knowledge Discovery
in Databases”) y “data mining” (véase por ejemplo Frawley et al. 1991), donde se
hacen las siguientes aseveraciones:
“El descubrimiento de conocimiento en bases de datos es el proceso no trivial
de identificar patrones en datos que sean válidos, novedosos, potencialmente
útiles y, por último, comprensibles” (Fayyad 1996, p. 21)
“... data mining se refiere al acto de extraer patrones o modelos a partir de
los datos ...” (Fayyad 1996)
Una representación frecuente de un proceso típico de KDD, contempla los
siguientes nueve pasos (véase por ejemplo Fayyad 1996, p. 23)
1. Desarrollar una comprensión del dominio de la aplicación
2. Crear un conjunto de datos objetivo
3. Limpieza y pre-procesamiento de los datos
4. Reducción y transformación de los datos
5. Elegir la tarea de data mining
6. Elegir los algoritmos de data mining
7. Data mining
8. Evaluar el resultado del data mining
9. Consolidar el conocimiento descubierto
En el paso 2 hay que seleccionar un sub-conjunto de los datos disponibles que
normalmente están almacenados en una base de datos o en un Data Warehouse
(bodega de datos). En una base de datos como sistema tradicional de almacenamiento
62
REVISTA INGENIERÍA DE SISTEMAS
VOLUMEN XIV, Nº 1, JUNIO 2000
se puede captar datos de transacciones de un negocio. En cambio un Data
Warehouse como sistema analítico apoya la toma de decisiones ofreciendo varias
vistas distintas a los datos almacenados (Anahory y Murray 1997). Ambos sistemas
sirven como fuente de un conjunto de datos objetivo.
En muchas aplicaciones reales los datos en una base de datos o también en
un Data Warehouse contienen varias formas de errores, como por ejemplo valores
faltantes, valores fuera del rango del atributo considerado o valores no plausibles
(Guynes et al. 1996). Esa razón hace necesario el paso 3 de limpieza y pre-
procesamiento de los datos (Famili et al. 1997).
En el paso 5 se elige la tarea de data mining específica para un análisis más
detallado. Aquí se debe decidir si el propósito es, por ejemplo, la agrupación de
objetos, la regresión o el modelaje de dependencia. Sobre la base de esta decisión,
los más importantes algoritmos de data mining deben ser seleccionados (paso 6),
los que se usan en la búsqueda real de patrones en los datos (paso 7).
Este trabajo presenta una aplicación del proceso de KDD para un banco donde,
en el paso 5, han sido elegidas las tareas de segmentación de clientes y análisis de
respuesta. El propósito de la segmentación de clientes es la agrupación (clustering)
de los clientes, mientras que el análisis de respuesta apunta al modelaje de la
dependencia existente entre las medidas de marketing y el comportamiento de
respuesta posterior. En la aplicación considerada en el presente trabajo, se ha
realizado la segmentación de clientes utilizando la llamada agrupación difusa (fuzzy
clustering), haciendo uso además de técnicas de redes neuronales y selección
automática de atributos, para aumentar las tasas de respuesta.
3. Fundamentos de Tecnologías Inteligentes
En las siguientes sub-secciones se presenta tecnologías difusas y redes neuronales,
respectivamente. Ambos métodos se utilizan para el data mining en el proyecto
descrito en esta publicación.
3.1 Tecnologías Difusas
La idea básica de la teoría de conjuntos difusos (fuzzy set theory) es que a diferencia
de la teoría clásica de conjuntos un elemento puede ser miembro de un conjunto
con un grado de pertenencia que normalmente es un número entre 0 y 1 (Zadeh
1965). La noción de un conjunto difuso se define de la siguiente manera:
Sea X un conjunto convencional de elementos. Un conjunto difuso se define
~
A sobre X de tal manera que:
como
~A := fx; ~
Ax ; x 2 Xg
63
R. WEBER
DATA MINING EN LA EMPRESA Y EN LAS FINANZAS UTILIZANDO TECNOLOGÍAS INTELIGENTES
La expresión µ~
conjunto difuso
asume valores entre 0 y 1.
~
A , llamándose µ~
A (x) se denomina grado de pertenencia del elemento x al
A la función de pertenencia, que normalmente
A base de estas definiciones elementales de un conjunto difuso, en el pasado
se han desarrollado muchas teorías y aplicaciones en el área de lógica difusa, un
resumen de las cuales se puede encontrar en (Zimmermann 1996). Un método
difuso, de especial interés para el presente trabajo, es el algoritmo de agrupación
fuzzy c-means. Una presentación detallada del fuzzy c-means se encuentra en
(Bezdek 1981), y las aplicaciones de la agrupación difusa se describen, por ejemplo,
en (Meier et al. 1994; Strackeljan, Weber 1999).
El algoritmo fuzzy c-means asigna un conjunto de objetos, caracterizados
por sus respectivos valores de atributos, a un número determinado de clases. Como
resultado del fuzzy c-means, cada objeto tiene un grado de pertenencia a cada
clase, representada por su centro de clase. Básicamente, el algoritmo fuzzy c-means
se realiza aplicando los siguientes cuatro pasos (para más detalles véase, por
ejemplo, Bezdek et al. 1999):
Paso 1: Inicialización
Paso 1: Inicialización
Paso 1: Inicialización
Paso 1: Inicialización
Paso 1: Inicialización
Utilizamos la siguiente notación
•
•
•
•
número de clases a encontrar:
número de objetos a agrupar:
vector de atributos del objeto j:
grado de pertenencia del objeto j a clase i:
(Θ
Sea (0) una matriz (c x J) con el elemento µ
c
J
xj,
µ
ij,
j = 1, ..., J
i = 1, ..., c; j = 1, ...,J.
ij en posición (i,j),i = 1, ..., c; j = 1, ...J.
Esta matriz se inicializa en forma aleatoria con la siguiente restricción:
C
X
i=1
ij = 1 ; 8 j = 1; : : : ;
Paso 2: Cálculo de Centros de Clase
Dados los valores de pertenencia µ
ij, los centros vi de cada clase i están dados por:
xj
j=1ij
j=1ij
; 8 i = 1; : : : ; C
vi =
64
REVISTA INGENIERÍA DE SISTEMAS
VOLUMEN XIV, Nº 1, JUNIO 2000
El parámetro m, utilizado en la formula anterior, se llama difusor (fuzzifier)
y determina el grado de difusión (fuzziness) para las clases encontradas (1 < m < ∝).
Para m “cercano a 1” se calcula una solución con clases no-difusas (crisp); mientras
mayor sea m más difusa se hace la solución.
Paso 3: Actualización de valores de pertenencia
Paso 3: Actualización de valores de pertenencia
Paso 3: Actualización de valores de pertenencia
Paso 3: Actualización de valores de pertenencia
Paso 3: Actualización de valores de pertenencia
Dados los centros de clase calculados en el paso 2, los valores de pertenencia µ
son actualizados utilizando la siguiente fórmula:
ij
ij =
0
B@
c
X
k=1
0
@
dij
dkj
1
A
1
2
11
CA
8 i = 1; : : : ; c
8 j = 1; : : : ;
El valor dij es la distancia entre el objeto j y el centro de clase i (vi). En el
cálculo de esta distancia se utilizan l
Comentarios de: Data Mining en la Empresa y en las Finanzas Utilizando Tecnologías Inteligentes (0)
No hay comentarios