Escuela de Informatica - Universidad Nacional de Trujillo

Anuncio
Universidad Nacional de Trujillo
FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS
ESCUELA ACADEMICO PROFESIONAL DE INFORMATICA
INFORME FINAL DE TRABAJO DE GRADUACION
“DISEÑO DE UN MODELO COMPUTACIONAL BASADO EN
ALGORITMOS DE AGRUPAMIENTO PARA MEJORAR EL TIEMPO DE
RESPUESTA Y LA CORRESPONDENCIA DE RESULTADOS DE UN
SISTEMA DE BUSQUEDA DE INFORMACION BIBLIOGRAFICA”
Autores:
-
DE LA CRUZ MANTILLA, AZUCENA SARAI
-
LINARES VALDIVIA, JUAN CARLOS
-
ING. CHRISTIAN ARAUJO GONZÁLEZ
Asesor:
2014
TRUJILLO – PERU
Escuela Profesional de Informática
Universidad Nacional de Trujillo
INDICE
INDICE ...................................................................................................................... 1
LISTA DE FIGURAS.................................................................................................... 3
RESUMEN ................................................................................................................ 4
I.
PLAN DE INVESTIGACION........................................................................................ 5
1.1. REALIDAD PROBLEMÁTICA.............................................................................. 5
1.2. ENUNCIADO DEL PROBLEMA .......................................................................... 5
1.3. HIPÓTESIS......................................................................................................... 6
1.4. OBJETIVOS ........................................................................................................ 6
1.4.1. OBJETIVO GENERAL .................................................................................. 6
1.4.2. OBJETIVOS ESPECIFICOS ........................................................................... 6
1.5. JUSTIFICACION.................................................................................................. 6
1.6. LIMITACIONES .................................................................................................. 7
II. MARCO TEORICO..................................................................................................... 8
2.1. DISEÑO CONCEPTUAL ..................................................................................... 8
2.2. MODELO COMPUTACIONAL ........................................................................... 9
2.3. ALGORITMOS DE AGRUPAMIENTO................................................................. 11
2.3.1. ALGORITMO .............................................................................................. 11
2.3.2. AGRUPAMIENTO DE OBJETOS.................................................................. 11
2.3.3. ALGORITMOS DE AGRUPAMIENTO.......................................................... 12
2.3.4. APLICACIÓN DE LOS ALGORITMOS DE AGRUPAMIENTO........................ 13
2.4. CLASIFICACION DE LOS ALGORITMOS DE AGRUPAMIENTO .......................... 14
2.4.1. ALGORITMOS DE AGRUPAMIENTO PARTICIONAL .................................. 14
2.4.2. ALGORITMOS DE AGRUPAMIENTO JERÁRQUICO.................................... 18
2.4.3. ALGORITMOS DE AGRUPAMIENTO BORROSO ........................................ 19
2.4.4. ALGORITMOS DE AGRUPAMIENTO BASADOS EN LA DENSIDAD ........... 24
2.4.5. ALGORITMOS DE AGRUPAMIENTO BASADO EN GRID ............................ 26
2.4.6. ALGORITMOS DE AGRUPAMIENTO BASADO EN MODELOS ................... 28
2.4.7. ALGORITMOS DE AGRUPAMIENTO GEOGRÁFICO O ESPACIAL .............. 28
2.4.8. ALGORITMOS DE AGRUPAMIENTO EN DATOS DISTRIBUIDOS .............. 29
2.5. SISTEMA DE BUSQUEDA DE INFORMACION BIBLIOGRAFICA ........................ 30
III. DISEÑO DE LA INVESTIGACION .............................................................................. 32
3.1. TIPO DE INVESTIGACION ................................................................................. 32
3.2. DISEÑO DE LA INVESTIGACION ....................................................................... 32
3.3. POBLACION Y MUESTRA ................................................................................. 32
3.3.1. POBLACION ............................................................................................... 32
3.3.2. MUESTRA .................................................................................................. 32
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 1
Escuela Profesional de Informática
Universidad Nacional de Trujillo
3.4. VARIABLES DE ESTUDIO .................................................................................. 33
3.5. TECNICAS E INSTRUMENTOS .......................................................................... 33
IV. RESULTADOS ........................................................................................................... 34
4.1. ANALISIS COMPARATIVO DE ALGORITMOS DE AGRUPAMIENTO................. 34
4.1.1. ANALISIS DE LOS ALGORITMOS SEGÚN LOS CRITERIOS.......................... 35
4.1.2. RESULTADOS DEL ANALISIS COMPARATIVO ........................................... 38
4.1.3. CONCLUSIONES DEL ANALISIS COMPARATIVO ....................................... 39
4.2. DISEÑO DEL MODELO PROPUESTO ................................................................ 39
4.2.1. ENFOQUE DEL DISEÑO ............................................................................. 39
4.2.2. DEFINICION DEL MODELO ........................................................................ 41
4.2.3. DESCRIPCION DEL MODELO ..................................................................... 42
4.3. CASO DE ESTUDIO ............................................................................................ 46
V. REFERENCIAS BIBLIOGRAFICAS .............................................................................. 47
5.1. BIBLIOGRAFÍA GENERAL .................................................................................. 47
5.2. BIBLIOGRAFÍA ESPECÍFICA ............................................................................... 48
5.3. WEBGRAFÍA...................................................................................................... 49
ANEXO ..................................................................................................................... 50
PICTOGRAFIA ........................................................................................................... 51
CASO DE USO........................................................................................................... 52
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 2
Escuela Profesional de Informática
Universidad Nacional de Trujillo
LISTA DE FIGURAS
Figura 1. Agrupamiento Particional.
Figura 2. Agrupamiento Jerárquico.
Figura 3. Agrupamiento Borroso o Difuso.
Figura 4. Agrupamiento basado en Densidad.
Figura 5. Agrupamiento basado en Grid.
Figura 7. Tabla de las variables de estudio.
Figura 8. Cuadro Comparativo.
Figura 9. Enfoque del Modelo Computacional Propuesto
Figura 10. Fases del modelo computacional
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 3
Escuela Profesional de Informática
Universidad Nacional de Trujillo
RESUMEN
Los usuarios buscan información específica de acuerdo a sus necesidades
específicas. Ellos pueden hacer búsquedas ya sea mediante motores de búsqueda o
bases de datos particulares de sistemas de bibliotecas o algún otro Sistema de
Información.
Sin embargo, los resultados de dichas consultas, pueden saturar a un usuario
por la abundancia de resultados y tiempo de respuesta, causando pérdida de
efectividad del sistema de búsqueda.
Para resolver este problema, la siguiente tesis, propone un modelo
computacional basado en algoritmos de agrupamiento que divide el conjunto de datos
en pequeños grupos con características comunes, lo cual permite minimizar el tiempo
de búsqueda y proporcionar información adecuada a los intereses del usuario.
Dando como resultado efectividad orientada a este tipo de sistemas, y a modo
de prueba se implementó en un prototipo de software a partir del modelo propuesto.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 4
Escuela Profesional de Informática
Universidad Nacional de Trujillo
I. PLAN DE INVESTIGACION
1.1. REALIDAD PROBLEMÁTICA
Cada día es más fácil acceder a nuevas fuentes de información, los usuarios
requieren buscar información específica de acuerdo a sus necesidades
particulares.
Los usuarios pueden hacer búsquedas, ya sea mediante motores de
búsqueda o también mediante accesos a bases de datos particulares de
bibliotecas o sistemas de información.
Esta facilidad de acceso a distintas fuentes de información, trae consigo la
dificultad de causar una sobresaturación de información al usuario, debido a
la abundancia de resultados que se puede obtener al efectuar una consulta
determinada.
Otros problemas ocurren cuando la búsqueda produce demasiados
resultados, con lo que aparte de consumir mucho tiempo de cómputo, el
usuario se puede saturar ante demasiados resultados.
Estas dificultades aún persisten cuando los usuarios efectúan consultas en
las bibliotecas, por que usan vocabularios controlados y normalizados al
incluir nuevos materiales a sus sistemas de información, y estos vocabularios
no necesariamente son conocidos por usuarios finales.
El usuario, al intentar obtener resultados no nulos, usualmente adopta una
estrategia de búsqueda general, pero esto implica que muchos de los
resultados de la búsqueda que haga no serán relevantes y el orden en que
estos resultados son retornados no necesariamente será el más adecuado
para él.
Características del problema:
 Los resultados de la búsqueda son retornados en orden alfabético y no
específicamente lo que el usuario desea encontrar en el sistema.
 La búsqueda produce demasiados resultados con lo que consume
tiempo de cómputo y ejecuta instrucciones demás.
 Existe sobresaturación de información y abundancia de resultados, que
en determinados casos no corresponde con lo que el usuario desea
buscar en el sistema
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 5
Escuela Profesional de Informática
Universidad Nacional de Trujillo
1.2. ENUNCIADO DEL PROBLEMA
¿Cómo mejorar el tiempo de respuesta y correspondencia de resultados de
un sistema de búsqueda de información bibliográfica?
1.3. HIPÓTESIS
El diseño de un modelo computacional basado en algoritmos de
agrupamiento permitirá mejorar el tiempo de respuesta y la correspondencia
de resultados del sistema de búsqueda de información bibliográfica.
1.4. OBJETIVOS
1.4.1. OBJETIVO GENERAL
Diseñar un modelo computacional basado en algoritmos de
agrupamiento para mejorar el tiempo de respuesta y correspondencia de
resultados de un sistema de búsqueda de información bibliográfica.
1.4.2. OBJETIVOS ESPECIFICOS

Analizar los algoritmos de agrupamiento y su utilidad en la
optimización y aplicación.

Diseñar un algoritmo con el rendimiento de los algoritmos que se tiene
de base para este tipo de problemas.

Comparar y evaluar los resultados de los algoritmos realizados en las
consultas hechas al sistema de búsqueda de información bibliográfica.

Implementar el modelo computacional diseñado anteriormente para la
realización de pruebas.

Validar la optimización de los resultados de las consultas realizadas
sobre el modelo computacional.
1.5. JUSTIFICACION
Desde el punto de vista de ciencia de la computación:
Se justifica esta investigación porque se va a hacer un estudio y análisis
riguroso de distintos tipos de algoritmos de agrupamiento, base para diseñar
el modelo computacional que se va a aplicar e implementar. El problema a
investigar corresponde a la ciencia computacional el cual está en el marco y
área de la investigación, esta investigación debería llegar a conclusiones que
supusieran un avance en el conocimiento científico de la materia estudiada.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 6
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Desde el punto de vista operativa
Esta tesis se justifica en que, al ser implementado, permitiría mejorar el
tiempo de respuesta y la correspondencia de resultados de los sistemas de
búsqueda de información bibliográfica, como en la biblioteca central de la
Universidad Nacional de Trujillo.
1.6. LIMITACIONES
El trabajo tiene las siguientes limitaciones:
a. El estudio consiste en diseñar un modelo computacional basado en
algoritmos de agrupamiento, pero se elijara solo un algoritmo para
comprobar y evaluar el diseño.
b. Este diseño se aplicara solo en el sistema de búsqueda de información
bibliográfica de la biblioteca central de la UNT, por medio de una base
de datos local.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 7
Escuela Profesional de Informática
Universidad Nacional de Trujillo
II. MARCO TEORICO
2.1. DISEÑO CONCEPTUAL
Según el Diccionario RAE, el diseño es la traza o delineación de una figura,
concepción original de un objeto, proyecto o plan; y descripción o bosquejo
de verbal de algo.
El diseño se define como el proceso previo de configuración mental, "prefiguración", en la búsqueda de una solución en cualquier campo.
El verbo "diseñar" se refiere al proceso de creación y desarrollo para
producir un nuevo objeto (proceso, servicio, conocimiento o entorno) para
uso humano.
El sustantivo "diseño" se refiere al plan final o proposición determinada
fruto del proceso de diseñar.
Según David Martínez Coronel en su trabajo [25], la fase del diseño
conceptual es una serie de actividades mediante la cual se determinan y
definen el marco conceptual al que serán referidos los datos, los instrumentos
para su captación, los criterios de validación para la revisión y depuración de
inconsistencias, y el esquema para la presentación de resultados.
Etapas del proceso de diseño
Según Dioclecio Moreira Camelo en su tesis doctoral [11], nos dice que la
clasificación más aceptada por la comunidad científica divide el diseño en las
siguientes:
a. Clarificación de las tareas: conjunto de información describe los
requisitos y restricciones del problema de diseño.
b. Diseño conceptual: abstracción de las funciones del sistema y de su
estructura física para conducir a la formación de un nuevo producto.
c. Diseño preliminar: construcción de una disposición general del sistema
de diseño según los principios de seguridad, legislación, coste, factores
técnicos, estéticos, etc.
Diseño de detalle: selección de los materiales, definición de las dimensiones,
de las superficies, de los flujos, de las tolerancias, de los dibujos técnicos y de
la documentación para la producción.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 8
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.2. MODELO COMPUTACIONAL
Según Dioclecio Moreira Camelo en su tesis doctoral [11], desde el punto de
vista computacional, el diseño conceptual consiste en buscar y combinar ideas
para formar alternativas de diseño.
Los modelos Computacionales conducen o automatizan algunas tareas del
proceso de diseño.
Estos modelos provienen de los métodos cognitivo, epistemológico y
metodológico, a partir de los cuales se han desarrollado.
Con los avances de las tecnologías informáticas, se ha logrado explicitar,
racionalizar, almacenar y manipular cada vez mejor el conocimiento utilizado
durante el desarrollo de un producto en los modelos computacionales.
La mayoría de los modelos computacionales parte de las intenciones de un
producto como datos de entrada y propone una o más soluciones para las
mismas.
Estas intenciones pueden ser un conjunto de requerimientos o de
funciones que deben ser realizados por los componentes físicos.
En el caso de que no se consiga atender a dichas funciones, habitualmente
se descomponen en otras más simples para facilitar su entendimiento y
permitir la búsqueda de soluciones.
Para describir los modelos, se han agrupado según la forma en que
descomponen y relacionan las funciones, y más genéricamente el
comportamiento y las estructuras de un diseño, en base a los siguientes
métodos:
• Árbol de funciones: descompone los requerimientos de función en base
a una organización jerárquica (árbol) de funciones y sub-funciones,
antes o durante la síntesis.
• Relación del flujo de las entradas y salidas: considera la relación
existente entre las entradas y salidas de flujos o de movimiento para
encontrar posibles sub-funciones dentro de una base de conocimientos.
• Relaciones de causa y efecto (causal): esta categoría considera que para
alcanzar un determinado efecto se debe tener una causa anterior.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 9
Escuela Profesional de Informática
Universidad Nacional de Trujillo
• Características: considera las características mínimas para un producto,
que son las dimensiones de un espacio de diseño formado por un
número finito de particiones.
• Agentes: proceso computacional que utiliza agentes inteligentes para
conseguir una mejor integración y funcionalidad en entornos de
ejecución distribuidos. En estos sistemas, cada agente se encarga de una
tarea específica para interactuar con otros agentes que realizan otras
tareas.
 Redes neuronales: paradigma inspirado en el sistema nervioso biológico
que consiste en un gran conjunto de procesadores interconectados
(neuronas) que trabajan de forma simultánea para resolver problemas
específicos.
• Adbucción: método que proviene de la lógica que describe una solución
de diseño (hechos) a través de conocimientos sobre el diseño (axiomas)
y de las propiedades de otras soluciones de diseño (teoremas).
• Métodos evolutivos: métodos concebidos a partir de la abstracción
genética. Este método detecta la abstracción más favorable y, a partir
de ella, cambia los parámetros (funciones) por medio de algoritmos de
mutación o recombinación que descomponen los parámetros.
Además del método de razonamiento, también se describen los modelos
computacionales a través de los siguientes aspectos:
•
Planteamiento del modelo, es decir qué se resuelve,
•
La base que utilizan para resolver un problema de diseño,
•
Su algoritmo de síntesis,
•
Los métodos de evaluación y
•
Hasta donde llegan en la formación de la solución.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 10
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.3. ALGORITMOS DE AGRUPAMIENTO
2.3.1. ALGORITMO
Según Carlos López García en su libro [15], los algoritmos son una
herramienta que permite describir claramente un conjunto finito de
instrucciones, ordenadas secuencialmente y libres de ambigüedad, que
debe llevar a cabo un computador para lograr un resultado previsible.
Vale la pena recordar que un programa de computador consiste de
una serie de instrucciones muy precisas y escritas en un lenguaje de
programación que el computador entiende (Logo, Java, Pascal, etc.).
Un Algoritmo es una secuencia ordenada de instrucciones, pasos o
procesos que llevan a la solución de un determinado problema.
Los hay tan sencillos y cotidianos como seguir la receta del médico,
abrir una puerta, lavarse las manos, etc.; hasta los que conducen a la
solución de problemas muy complejos.
En términos generales, un Algoritmo debe ser
 Realizable: El proceso algorítmico debe terminar después de una
cantidad finita de pasos. Se dice que un algoritmo es inaplicable
cuando se ejecuta con un conjunto de datos iniciales y el proceso
resulta infinito o durante la ejecución se encuentra con un obstáculo
insuperable sin arrojar un resultado.
 Comprensible: Debe ser claro lo que hace, de forma que quien ejecute
los pasos (ser humano o máquina) sepa qué, cómo y cuándo hacerlo.
Debe existir un procedimiento que determine el proceso de ejecución.
 Preciso: El orden de ejecución de las instrucciones debe estar
perfectamente indicado. Cuando se ejecuta varias veces, con los
mismos datos iniciales, el resultado debe ser el mismo siempre. La
precisión implica determinismo.
2.3.2. AGRUPAMIENTO DE OBJETOS
El tesista Allan Roberto Avendaño Sudario especifica en su documento
[12], que una de las técnicas utilizadas para comprender la naturaleza de
las colecciones de objetos, consiste en dividirlas en pequeños grupos de
elementos que compartan cierto grado de similitud entre sí.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 11
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Este enfoque ha sido utilizado en diversas áreas científicas y
comerciales, incluyendo la organización de resultados de búsqueda y
marketing.
Es así, que se han utilizado para analizar el comportamiento histórico
de los usuarios en la Web o en las bibliotecas al agrupar manualmente los
libros de acuerdo a los tópicos tratados.
Para agrupar elementos no es necesario plantear un análisis previo en
el que se determine, por ejemplo, la independencia de las variables o de
la supervisión de un experto que determine la similitud. Sin embargo, es
necesario seleccionar las variables relevantes que describan con precisión
la naturaleza de los objetos.
Otro de los requerimientos durante el agrupamiento de objetos es la
métrica de distancia. La cual es una expresión matemática en la que se
evalúan las características de los objetos para determinar la proximidad
entre estos.
2.3.3. ALGORITMOS DE AGRUPAMIENTO
Según la página web [17], un algoritmo de agrupamiento (en inglés,
clustering) es un procedimiento de agrupación de una serie de vectores
de acuerdo con un criterio.
Esos criterios son por lo general distancia o similitud. La cercanía se
define en términos de una determinada función de distancia, como la
euclídea, aunque existen otras más robustas o que permiten extenderla a
variables discretas.
La medida más utilizada para medir la similitud entre los casos es las
matriz de correlación entre los n x n casos. Sin embargo, también existen
muchos algoritmos que se basan en la maximización de una propiedad
estadística llamada verosimilitud.
Generalmente, los vectores de un mismo grupo (o clústeres)
comparten propiedades comunes. El conocimiento de los grupos puede
permitir una descripción sintética de un conjunto de datos
multidimensional complejo. De ahí su uso en minería de datos.
Esta descripción sintética se consigue sustituyendo la descripción de
todos los elementos de un grupo por la de un representante
característico del mismo.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 12
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.3.4. APLICACIÓN DE LOS ALGORITMOS DE AGRUPAMIENTO
Según Carlos Eduardo Bedregal Lizárraga en su tesis [23], las técnicas
de agrupamiento encuentran aplicación en diversos ámbitos. Las técnicas
de agrupamiento de datos fueron inicialmente desarrolladas en biología y
zoología para la construcción de taxonomías. La necesidad de varias
disciplinas científicas de organizar grandes cantidades de datos en grupos
con significado ha hecho del agrupamiento de datos una herramienta
valiosa en el análisis de datos.
Un sin número de entidades han sido objeto de aplicaciones de
agrupamiento de datos: enfermedades, huellas digitales, estrellas,
consumidores e imágenes. Entre las principales aplicaciones de
agrupamiento de datos tenemos la segmentación de imágenes, la minería
de datos, la recuperación de información, el procesamiento del lenguaje
natural y el reconocimiento de objetos.
a. Segmentación de imágenes. Componente fundamental en muchas
aplicaciones de visión computacional, consiste en el
particionamiento de una imagen para la identificación de regiones,
cada una de las cuales es considerada homogénea con respecto a
alguna propiedad de la imagen. Para cada píxel de la imagen se
define un vector de características compuesto por lo general de
funciones de intensidad y ubicación del píxel.
b. Reconocimiento de objetos. Cada objeto es representado en
términos de un conjunto de imágenes del objeto obtenidas desde
un punto de vista arbitrario. Entonces, a través de técnicas de
agrupamiento es posible seleccionar e identificar al conjunto de
vistas de un objeto que sean cualitativamente similares.
c. Procesamiento del lenguaje natural. Técnicas de agrupamiento son
también utilizadas para el reconocimiento de caracteres y del habla.
Sistemas dependientes o independientes del sujeto capaz de
reconocer lexemas y morfemas para identificar caracteres escritos y
discursos hablados.
d. Minería de datos. Es necesario desarrollar algoritmos que puedan
extraer información significante de la gran cantidad de datos
disponibles. La generación de información útil, o conocimiento, a
partir de grandes cantidades de datos es conocida como minería de
datos.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 13
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.4. CLASIFICACION DE LOS ALGORITMOS DE AGRUPAMIENTO
Según Ignacio Javier Benítez Sánchez en su tesis sustenta la siguiente
clasificación:
2.4.1. ALGORITMOS DE AGRUPAMIENTO PARTICIONAL
Un algoritmo de agrupamiento particional obtiene una partición
simple de los datos en vez de la obtención de la estructura del clúster tal
como se produce con los dendogramas de la técnica jerárquica. En la
figura 1 se muestra un ejemplo de clustering particional.
Figura 1. Agrupamiento Particional.
El clustering particional organiza los objetos dentro de k clusters de tal
forma que sea minimizada la desviación total de cada objeto desde el
centro de su clúster o desde una distribución de clusters. La desviación de
un punto puede ser evaluada en forma diferente según el algoritmo, y es
llamada generalmente función de similitud.
Los métodos particionales tienen ventajas en aplicaciones que
involucran gran cantidad de datos para los cuales la construcción de un
dendograma resultaría complicada.
El problema que se presenta al utilizar algoritmos particionales es la
decisión del número deseado de clusters de salida. Las técnicas
particionales usualmente producen clusters que optimizan el criterio de
función definido local o globalmente.
En la práctica, el algoritmo se ejecuta múltiples veces con diferentes
estados de inicio y la mejor configuración que se obtenga es la que se
utiliza como el clustering de salida.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 14
Escuela Profesional de Informática
Universidad Nacional de Trujillo
a. Chain-map o Algoritmo de las distancias encadenadas
El algoritmo Chain-map es uno de los algoritmos de agrupamiento más
sencillos. Dado el conjunto de objetos, en forma de vectores, en donde
cada elemento es el valor de una característica, el algoritmo comienza
seleccionando un objeto cualquiera de los disponibles.
A continuación se ordenan todos los demás objetos formando una
cadena según proximidad, como se puede ver en (a), en donde el
subíndice i indica que se ha seleccionado al objeto i como al primero de la
cadena.
Zi (0) ; z i(1) ; : : : ; z i (N- 1)…………………..(a)
El procedimiento consiste en calcular todas las distancias euclídeas
entre el objeto k y el inmediatamente anterior (k- 1), y disponerlas en la
cadena por el orden establecido.
Las distancias Euclídeas pequeñas indican que los objetos pertenecen a
una misma clase, mientras que un gran salto en el valor de la distancia
Euclidea, significa una transición de un grupo a otro. De esta forma se
obtiene una agrupación de todos los objetos en grupos, sin necesidad de
definir previamente el número de estos.
Sí que es preciso determinar, sin embargo, a partir de qué valor de
salto cuantitativo de la distancia euclídea se considera que se ha saltado
de un clúster a otro.
Este algoritmo Chain-map, aunque no es el óptimo en algunos casos, sí
es muy recomendable en todos como un paso previo para la iniciación de
otros algoritmos de clustering, y para la estimación inicial del número de
grupos a buscar.
b. Max-min
El algoritmo Max-min tampoco necesita predefinir el número inicial de
grupos o clusters a buscar. El procedimiento que sigue es el siguiente:
 Se selecciona uno de los objetos al azar, quedando asignado como
patrón del grupo A1.
 Se calculan todas las distancias euclídeas de todos los objetos
restantes con respecto al objeto patrón del grupo A1. El objeto con
la distancia euclídea más grande (el más alejado de A1), queda
seleccionado como patrón de un segundo grupo A2.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 15
Escuela Profesional de Informática
Universidad Nacional de Trujillo
 A continuación se calculan todas las distancias euclídeas de todos
los objetos restantes con respecto al objeto patrón del nuevo grupo
A2. De las dos distancias obtenidas para cada objeto, se selecciona
la más pequeña.
 De todo el conjunto de distancias así formado, se selecciona la
mayor, y si esta es mayor que la distancia, ponderada por un factor
f, entre los patrones de los grupos A1 y A2, entonces se crea un
nuevo grupo, A3 (b).
 El mismo procedimiento se repite, creando nuevos grupos hasta
que la respectiva distancia máxima ya no sea mayor que el valor
medio de todas las distancias entre patrones de todos los grupos
creados.
 Se recalculan por última vez todas las distancias euclídeas de los
objetos restantes a todos los respectivos patrones de todos los
grupos creados, asignando cada objeto como perteneciente al
clúster que tenga más cercano (menor distancia euclídea).
dmax > f d(z1; z2); 0 < f < 1 ……………………………(b)
El inconveniente de este algoritmo es la apropiada elección del factor
de ponderación f, ya que interviene directamente en la creación de un
mayor o menor número de grupos o clases distintas.
c. K-means
El algoritmo de K-medias o k-means es muy conocido y muy usado, por
su eficacia y robustez. Su nombre hace referencia al número K de clases o
grupos a buscar, que debe definirse con antelación. El procedimiento del
algoritmo es el siguiente:
 Se comienza seleccionando K objetos al azar del conjunto total y
asignándolos como patrones o centroides de las K clases que se van
a buscar.
 A continuación, se calculan todas las distancias euclídeas de todos
los objetos restantes a todos los K centroides, y se asigna la
pertenencia a cada objeto al clúster que tenga más cercano.
 Entonces se recalcula el centroide de cada clúster, como la media
de todos los objetos que lo componen, buscando minimizar el valor
de una función de coste, que es un sumatorio de todos los
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 16
Escuela Profesional de Informática
Universidad Nacional de Trujillo
sumatorios de las distancias euclídeas de los objetos de cada clase
al centroide de su respectiva clase, como se puede ver en (c).
 Los dos pasos anteriores se repiten sucesivamente hasta que los
centros de todos los grupos permanezcan constantes, o hasta que
se cumpla alguna otra condición de parada.
J =∑𝑘𝑖=1 (∑𝑗,𝑧𝑗 ∈𝐴𝑖 ‖𝑧𝑗 − 𝑐𝑖 ‖ ) … … … (c)
La eficacia del algoritmo K-means depende de la idoneidad del
parámetro K. Si este es mayor o menor que el número real de grupos, se
crean grupos ficticios o se agrupan objetos que deberían pertenecer a
clusters distintos.
El cual genera k grupos de elementos. Este número debe ser
seleccionado ante del procesamiento; además, debe ser mayor que dos y
menor que el número de elementos que componen la colección.
El objetivo de este algoritmo consiste en minimizar el promedio
cuadrado de la distancia de cada documento con el centroide de cada
grupo.
d. PAM
PAM (Partitioning Around Medoids) es una extensión del algoritmo Kmeans, en donde cada grupo o clúster está representado por un medoide
en vez de un centroide.
El medoide es el elemento más céntrico posible del clúster al que
pertenece; similar al centroide, pero no necesariamente, ya que el
centroide representa el valor patrón o medio del conjunto, que no
siempre coincide con el más céntrico. El procedimiento para el
agrupamiento es similar al del K-means.
e. CLARA
El algoritmo CLARA (Clustering Large Applications) divide la base de
datos original en muestras de tamaño s, aplicando el algoritmo PAM
sobre cada una de ellas, seleccionando la mejor clasificación de las
resultantes. Este algoritmo está indicado para bases de datos con gran
cantidad de objetos, y su principal motivación es la de minimizar la carga
computacional, en detrimento de una agrupación optima y precisa.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 17
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.4.2. ALGORITMOS DE AGRUPAMIENTO JERÁRQUICO
Un método jerárquico crea una descomposición jerárquica de un
conjunto de datos, formando un dendograma (árbol) que divide
recursivamente el conjunto de datos en conjuntos cada vez más
pequeños. La figura 2 muestra la representación gráfica de un
dendograma.
Figura 2. Agrupamiento Jerárquico.
a. BIRCH
BIRCH (Balanced Iterative Reducing and Clustering using Hierarchies),
almacena para cada clúster un triplete de datos que contiene el número
de objetos que pertenecen a ese grupo.
El valor de la suma de todos los valores de los atributos de todos los
objetos pertenecientes al grupo, y la suma de los cuadrados de los
atributos de los objetos que pertenecen al clúster.
Con esta información construye un árbol de grupos llamado CF-tree
(Clúster Features tree).
En cada nodo se indica el número de grupos que pertenecen a esa
ramificación y cuáles son sus características.
El procedimiento del algoritmo BIRCH es el siguiente:
 Generar un CF-tree inicial, leyendo los datos y asignándolos a una
rama o a otra. Si la distancia entre un objeto nuevo y los anteriores
se hace mayor que cierto parámetro T, se crea una rama nueva.
 Revisar el árbol creado para ver si es demasiado grande, y
moldearlo modificando el valor del parámetro T. Si el valor de este
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 18
Escuela Profesional de Informática
Universidad Nacional de Trujillo
parámetro se aumenta, las ramas del árbol se juntan al no haber
distinción de grupos.
 Aplicar algún procedimiento de clustering, como el K-means, sobre
la información contenida en los nodos de cada nivel.
 Redistribuir los datos según los centroides descubiertos en el paso
anterior, logrando un mayor refinamiento en el agrupamiento.
Las principales desventajas del algoritmo BIRCH son su secuencialidad,
lo cual puede provocar asignación a distintos clusters de objetos
replicados, colocados en distintos lugares de la secuencia, y la fuerte
dependencia del parámetro T.
De forma que una mala elección de este valor puede generar la
creación de falsas agrupaciones, o ramificaciones duplicadas, o la
asignación de objetos a un mismo nodo, cuando deberán estar en nodos
distintos.
b. CURE
CURE (Clustering Using REpresentatives) es un algoritmo que se basa
en la selección de más de un elemento representativo de cada clúster.
Como resultado, CURE es capaz de detectar grupos con múltiples formas
y tamaños.
Es un algoritmo de tipo aglomerativo, que comienza considerando
todos los objetos como grupos independientes, y a partir de ahí combina
sucesivamente los objetos, agrupándolos en clusters.
De cada uno de estos grupos, almacena los objetos extremos,
desplazándolos hacia el centro del clúster mediante un factor de
acercamiento que es el valor medio de todos los elementos que
componen el grupo.
2.4.3. ALGORITMOS DE AGRUPAMIENTO BORROSO
Los algoritmos de agrupamiento borroso se basan todos en una
partición no-exclusiva de las pertenencias de los objetos a los distintos
clusters. En una partición clásica (exclusiva) todos los objetos del
conjunto son asignados (pertenecen) a un único clúster y sólo uno,
cumpliendo los grupos formados las propiedades que se muestran en las
expresiones (d), (e) y (f).
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 19
Escuela Profesional de Informática
Universidad Nacional de Trujillo
𝐴𝑖 ∩ 𝐴𝑗 = ∅ , 1 ≤ 𝑖 ≠ 𝑗 ≤ 𝑐
…………. (d)
∅ ∁ 𝐴𝑖 ∁ 𝑍 , 1 ≤ 𝑖 ≤ 𝑐
…………. (e)
⋃𝑐𝑖=1 𝐴𝑖 = 𝑍
…………. (f)
La expresión (d) indica que la intersección de los elementos de dos
clusters distintos debe generar como resultado el conjunto vacío (c es el
número de grupos). Las expresiones (e) y (f) indican que ningún grupo es
el conjunto vacío, y que la unión de todos los elementos de todos los
grupos da como resultado el conjunto total de objetos (Z).
Si se genera una matriz de pertenencias U = [𝜇1𝑘 ]de dimensiones c x N
(c número de clusters, N número de objetos), se define un espacio de
particiones clásicas como el conjunto de la expresión (g).
Mℎ𝑐 = {
𝑈 ∈ 𝑅 𝑐𝑥𝑁 |𝜇1𝑘 ∈ {0,1} , ∀𝑖, 𝑘 ; ∑𝑐𝑖=1 𝜇1𝑘 = 1,| ∀𝑘 ;
0 < ∑𝑁
𝑘=1 𝜇1𝑘 < 𝑁, ∀𝑖
}…….. (g)
Figura 3. Agrupamiento Borroso o Difuso.
En una partición clásica, los valores de todo 𝜇1𝑘 sólo pueden ser 0 o 1.
Sin embargo, en una partición borrosa, los elementos 𝜇1𝑘 de la matriz de
pertenencias U, pueden tomar cualquier valor entre cero y uno. La
partición borrosa se define según la expresión (h), que tiene las mismas
propiedades que la partición clásica (g), pero incorporando la posibilidad
de que las pertenencias puedan adquirir valores dentro del rango [0; 1].
M𝑓𝑐 = {
𝑈 ∈ 𝑅 𝑐𝑥𝑁|𝜇1𝑘 ∈ {0,1} , ∀𝑖, 𝑘 ; ∑𝑐𝑖=1 𝜇1𝑘 = 1,| ∀𝑘 ;
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
0 < ∑𝑁
𝑘=1 𝜇1𝑘 < 𝑁, ∀𝑖
}…………… (h)
Pág. 20
Escuela Profesional de Informática
Universidad Nacional de Trujillo
En ambas particiones se requiere que la suma de todas las
pertenencias de un único objeto a todos los clusters ha de sumar uno.
Este es un requerimiento no-posibilista.
Aunque no es tan usada, también existe la variante posibilista de
partición, en donde no se exige que la suma de pertenencias para cada
objeto sea exactamente igual a uno, sino que al menos la pertenencia de
algún objeto a un determinado clúster sea mayor de cero.
En los algoritmos que se detallan a continuación se usa la partición
borrosa no-posibilista (suma de pertenencias en cada objeto ha de ser
igual a uno).
a. Algoritmo de las c-medias o fuzzy c-means
El algoritmo FCM o Fuzzy c-means, está basado en la minimización de
la función objetivo definida en (i), que es una medida ponderada del error
cuadrático que se comete al definir los elementos ci como centroides de
los c clusters.
𝑚
2
𝐽(𝑍; 𝑈; 𝐶 ) = ∑𝐶𝐼=1 ∑𝑁
𝐾=1( 𝜇𝑖𝑘 ) ‖𝑧𝑘 − 𝑐𝑖 ‖𝐵 …………………(i)
Los elementos implicados en esta función son: Z, que es el número de
objetos; la matriz de pertenencias U, cuyos elementos μik aparecen
elevados a un factor de `borrosidad' m, que puede tomar cualquier valor
mayor de uno; y la matriz C de centroides de los clusters. La expresión
‖ 𝑧𝑘 − 𝑐𝑖 ‖ 2𝐵 es una medida de la distancia, como se puede ver en (j).
2
‖𝑧𝑘 − 𝑐𝑖 ‖ 2𝐵 = (𝑧𝑘 − 𝑐𝑖 )𝑇 𝐵 (𝑧𝑘 − 𝑐𝑖 ) = 𝐷𝑖𝑘𝐵
……..(j)
Cuando a B se le da de valor la matriz identidad, se tiene como
resultado la distancia euclídea elevada al cuadrado. Si B se sustituye por
la inversa de la matriz de covarianzas, el resultado es la distancia de
Mahalanobis.
El resultado de minimizar esta función objetivo, mediante igualación a
cero de las respectivas derivadas parciales, produce dos expresiones para
obtener los valores de los centroides y de las pertenencias, mostradas en
las expresiones (k) y (l).
𝜇𝑖𝑘 =
1
2
2
𝑚−1
𝐷
∑𝑐𝑗=1 ( 𝑖𝑘𝐵
2 )
𝐷𝑗𝑘𝐵
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
, 1 ≤ 𝑖 ≤ 𝑐, 1 ≤ 𝑘 ≤ 𝑁 … … … . . (k)
Pág. 21
Escuela Profesional de Informática
Universidad Nacional de Trujillo
𝑐𝑖 =
∑𝑁
(
)𝑚 𝑧𝑘
𝑘=1 𝜇𝑖𝑘
∑𝑁
(
)𝑚
𝑘=1 𝜇𝑖𝑘
, 1≤ 𝑖 ≤ 𝑐
… … … … … … … … … … … … … . . (𝑙)
Partiendo de estas expresiones, el algoritmo FCM sigue los siguientes
pasos:
 Inicializar la matriz de pertenencias U con valores aleatorios, pero
que cumplan con los requisitos definidos en (h).
 Calcular los centros de los clusters según expresión (l).
 Hallar todas las distancias de los objetos a los respectivos centros
de sus grupos (j).
 Recalcar toda la matriz de particiones U aplicando la expresión (k)
2
cuando 𝐷𝑗𝑘𝐵
para todo i, k, y aplicando la solución expuesta (m)
para cualquier otro caso.
 Verificar si se cumple la condición de parada. Si no se cumple,
volver a empezar desde el segundo paso del algoritmo.
 La condición de parada es que la variación en la matriz de
pertenencias de la nueva iteración respecto a la calculada en la
iteración anterior esté por debajo de un valor umbral 𝜀 tal y como
se indica en (n). El parámetro " suele tener un valor pequeño,
normalmente 0:001 o menor, indicando que la nueva matriz de
pertenencias debe ser muy similar a la anterior para que se pare el
algoritmo.
𝜇𝑖𝑘 = 0 𝑠𝑖 𝐷𝑖𝑘𝐵 > 0 … … … … … … … … … … (𝑚)
𝑐
𝜇𝑖𝑘 ∈ [0,1], 𝑐𝑜𝑛 ∑
𝑖 =1
𝜇𝑖𝑘 = 1 𝑝𝑎𝑟𝑎 𝑒𝑙 𝑟𝑒𝑠𝑡𝑜
‖𝑈(𝑘) − 𝑈(𝑘−1) ‖ < 𝜀 … … … … … … … … … … . (𝑛)
b. Algoritmo de Gustafson-Kessel o GK
El algoritmo GK es una variante del algoritmo FCM, propuesta por
Gustafson y Kessel en 1979. Esta consiste en asignar distintas clases de
normas B a los distintos grupos o clases, con lo cual se obtienen
agrupaciones con distintas formas.
Así pues, se define un vector B que contiene c normas, y se modifica la
función objetivo a minimizar de forma que quede como en (o).
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 22
Escuela Profesional de Informática
Universidad Nacional de Trujillo
𝑚
2
𝐽(𝑍; 𝑈; 𝐶; 𝐵 ) = ∑𝐶𝐼=1 ∑𝑁
𝐾=1( 𝜇𝑖𝑘 ) ‖𝑧𝑘 − 𝑐𝑖 ‖ 𝐵𝑖 ……………….(o)
Para obtener una solución viable, el rango de posibles valores de los
elementos Bi se limita estableciendo un valor fijo para su determinante,
como se puede ver en: |𝐵𝑖 | = 𝜌𝑖 , 𝜌 > 0
El resultado de minimizar la función objetivo resulta en una nueva
expresión para el cálculo de las normas (p), en donde la variable Fi
representa la matriz de covarianzas de la clase i, y se puede obtener
usando la expresión (q).
La fórmula para el cálculo de los centroides se mantiene como en el
FCM (l), y la nueva expresión para calcular las pertenencias a las clases es
como la anterior (k), pero incorporando el hecho de que hay una norma
distinta para cada grupo, como se puede ver en (r).
1
𝐵𝑖 = [𝜌𝑖 det(𝐹𝑖 )]𝑛 𝐹𝑖−1 … … … … … … … … … … … … … … … . . (𝑝)
𝐹𝑖 =
𝑚
𝑇
∑𝑁
𝑘=1( 𝜇𝑖𝑘 ) (𝑧𝑘 − 𝑐𝑖 )(𝑧𝑘 − 𝑐𝑖 )
… … … … … … … … … (𝑞)
∑𝑁
( )𝑚
𝑘 =1 𝜇𝑖𝑘
𝜇𝑖𝑘 =
1
2
2
𝑚−1
𝐷
𝑖
∑𝑐𝑗=1 ( 𝑖𝑘𝐵
2 )
𝐷𝑗𝑘𝐵
𝑖
, 1 ≤ 𝑖 ≤ 𝑐, 1 ≤ 𝑘 ≤ 𝑁 ≤ 𝑁 … … (𝑟)
Los pasos que sigue el algoritmo son, pues, los siguientes:
 Inicializar la matriz de pertenencias U con valores aleatorios.
 Calcular los centros de los grupos, según la expresión (l).
 Calcular la matriz de covarianzas de cada clase (q).
 Calcular todas las distancias, aplicando la norma correspondiente en
cada caso, según (p) y (j).
 Hallar todos los nuevos valores de la matriz de pertenencia,
siguiendo el mismo procedimiento descrito para el FCM, y teniendo
en cuenta que hay una norma distinta para cada cluster (r).
 Verificar la condición de parada, que es la misma que en el caso del
FCM (n). Si no se cumple, volver al paso 2 del algoritmo.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 23
Escuela Profesional de Informática
Universidad Nacional de Trujillo
c. Algoritmo de estimación de la máxima probabilidad o FMLE
El algoritmo FMLE (Fuzzy Maximum Likelihood) es otra variante del
FCM que incluye una norma con un término exponencial, que se calcula
mediante el uso de las expresiones (s), (t) y (u).
2
𝐷𝑖𝑘𝐺
=
𝑖
𝐺𝑖 =
1
√𝑑𝑒𝑡(𝐺𝑖 )
𝑒𝑥𝑝 [ (𝑧𝑘 − 𝑐𝑖 )𝑇 𝐺𝑖−1 (𝑧𝑘 − 𝑐𝑖 )] … … … . (𝑠)
𝑃𝑖
2
𝑇
∑𝑁
𝑘=1 𝜇𝑖𝑘 ( 𝑧𝑘 − 𝑐𝑖 )( 𝑧𝑘 − 𝑐𝑖 )
… … … … … … … … … … . . (𝑡)
∑𝑁
𝑘 =1 𝜇𝑖𝑘
𝑁
1
𝑃𝑖 = ∑ 𝜇𝑖𝑘 … … … … … … … … … … … … … … … … … … … . (𝑢)
𝑁
𝑘=1
Al igual que el algoritmo GK, cada grupo o clase tiene su propia norma
asociada, que se calcula de la forma que se ha mostrado. El resto del
procedimiento es similar a la secuencia de pasos del algoritmo GK .
2.4.4. ALGORITMOS DE AGRUPAMIENTO BASADOS EN LA DENSIDAD
Los algoritmos basados en densidad obtienen clusters basados en
regiones densas de objetos en el espacio de datos que están separados
por regiones de baja densidad (estos elementos aislados representan
ruido). En la figura 4 se muestra un ejemplo de agrupamiento basado en
densidad.
Figura 4. Agrupamiento basado en Densidad.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 24
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Este tipo de métodos es muy útil para filtrar ruido y encontrar clusters
de diversas formas. La mayoría de los métodos de particionamiento,
realizan el proceso de agrupamiento con base en la distancia entre dos
objetos. Estos métodos pueden encontrar solo clusters esféricos y se les
dificulta hallar clusters de formas diversas.
a. GDBSCAN
El algoritmo GDBSCAN (Generalized Density Based Spatial Clustering of
Applications with Noise) está basado en la densidad de los grupos
formados.
Al buscar formas densas que pueden ocupar zonas geográficas, este es
también un algoritmo clasificado como de clustering geográfico.
El principio en que se basa es que para que se reconozca un cluster en
una zona, esta debe rebasar cierto límite o threshold de densidad.
Este valor de densidad es una relación entre el número de objetos y el
área que ocupan en el conjunto considerado como perteneciente a un
único cluster.
Los grupos detectados (o inicializados) son considerados como objetos
o cuerpos geométricos, con sus propias características, como son el
centro de gravedad, el área total, la densidad, etc.
Todos los objetos pueden compararse entre sí para establecer
relaciones de distancia entre los centros de los clusters, o si hay un
solapamiento entre regiones, con lo cual se puede plantear la fusión o
reorganización de los distintos grupos.
Normalmente se realiza un proceso iterativo, en el que a cada objeto
de la base de datos se le calcula si pertenece o no a alguno de los clusters
reconocidos, y a qué distancia se encuentra de todos ellos.
Si este objeto no se asigna como perteneciente a ningún grupo, se
considera como ruido y se pasa al siguiente elemento, hasta completar un
barrido de todos los objetos. Finalizado el proceso, si la condición de
parada no se satisface, se vuelve a empezar variando las condiciones
iniciales.
El resultado final es un mapa geográfico de densidades, en donde las
zonas con mayor densidad de objetos se agrupan para formar clusters
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 25
Escuela Profesional de Informática
Universidad Nacional de Trujillo
geométricos, con sus propios valores definiendo su forma, densidad y
situación en el espacio de coordenadas.
b. DENCLUE
DENCLUE (DENsity-based CLUstEring) usa el concepto de las funciones
de influencia para catalogar la influencia que cada objeto ejerce sobre los
elementos cercanos.
Estas funciones de influencia son similares a las funciones de
activación usadas para redes neuronales: superado cierto valor umbral de
distancia entre objetos (distancia euclídea), la salida cambia de un estado
a otro, normalmente entre un estado inactivo (0) y otro activo (1).
El valor umbral viene definido por funciones de activación, como la
gaussiana o la sigmoidal.
La densidad se computa como la suma de todas las funciones de
influencia de todos los objetos.
Los clusters se determinan mediante la detección de los atractores, o
máximos locales de densidad. Se consigue así un algoritmo de
agrupamiento robusto, capaz de manejar datos ruidosos o erróneos.
2.4.5. ALGORITMOS DE AGRUPAMIENTO BASADO EN GRID
Recientemente un número de algoritmos de agrupamiento han sido
presentados para datos espaciales, estos son conocidos como algoritmos
basados en Grid.
Figura 5. Agrupamiento basado en Grid.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 26
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Estos algoritmos cuantifican el espacio en un número finito de celdas y
aplican operaciones sobre dicho espacio.
La mayor ventaja de este método es su veloz procesamiento del
tiempo, el cual generalmente es independiente de la cantidad de objetos
a procesar. En la figura se muestra un ejemplo de agrupamiento basado
en Grid.
a. STING
STING (STatistical INformation Grid) particiona el espacio según
niveles, en un número finito de celdas con una estructura jerárquica
rectangular.
De cada celda extrae la información de los objetos que allí encuentra,
que es: media, varianza, mínimo y máximo de los valores y tipo de
distribución de los objetos encontrados.
Con cada nivel se vuelven a particionar las celdas, construyendo un
árbol jerárquico a semejanza del algoritmo BIRCH.
Acabada la partición del espacio hasta el nivel de detalle deseado, los
clusters se forman asociando celdas con información similar mediante
consultas especializadas.
b. CLIQUE
CLIQUE (CLustering In QUEst) también realiza particiones del espacio
según niveles, pero en esta ocasión cada nivel nuevo es una dimensión
más, hasta alcanzar la n dimensiones o características de los objetos.
La estructura de partición es en forma de hiper-rectángulos.
El funcionamiento es el siguiente: comienza con una única dimensión,
y la divide en secciones, buscando las más densas, o aquellas donde se
encuentran más objetos.
A continuación incluye la segunda dimensión en el análisis,
particionando el espacio en rectángulos, y buscando los más densos.
Luego sigue con cubos en tres dimensiones, y así sucesivamente.
Cuando acaba con todas las características o dimensiones de los
objetos, se definen los clusters y las relaciones entre ellos mediante
semejanza de densidades y otra información extraída, en todos los niveles
o dimensiones.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 27
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.1.1. ALGORITMOS DE AGRUPAMIENTO BASADO EN MODELOS
a. Expectation-Maximization
El algoritmo de Expectation-Maximization o EM, asigna cada objeto a
un cluster predefinido, según la probabilidad de pertenencia del objeto a
ese grupo concreto.
Como modelo se usa una función de distribución gaussiana, siendo el
objetivo el ajuste de sus parámetros, según cómo los distintos objetos del
conjunto se ajustan a la distribución en cada cluster.
El algoritmo de EM puede identificar grupos o clases de distintas
formas geométricas, si bien implica un alto coste computacional, para
conseguir un buen ajuste de los parámetros de los modelos .
2.1.2. ALGORITMOS DE AGRUPAMIENTO GEOGRÁFICO O ESPACIAL
a. GRAVIclust
El GRAVIclust es un algoritmo de clustering geográfico, que busca
conjuntos geográficos definidos por el área, el centro y el radio del área
localizada (con lo cual los grupos tienen una forma más o menos circular).
La densidad de cada grupo, es decir, las zonas más concurridas son las
que más probabilidad tienen de formar un cluster de datos.
Como medida de similitud se usa la distancia euclídea, siendo la
función objetivo a optimizar la mostrada en la expresión (v)
𝑘
𝐽 = ∑ ∑ 𝑑(𝑝, 𝐿 𝑖 ) … … … … … . . (𝑣)
𝑖 =1 𝑝∈𝐶𝑖
En donde k es el número de clusters a buscar, p es un objeto
perteneciente al cluster Ci, y d es la distancia del objeto p al centro de
gravedad de la agrupación Ci , llamado Li. El objeto p pertenece
únicamente al conjunto cuya distancia al centro de gravedad Li sea
menor.
La búsqueda se perfecciona en sucesivas iteraciones, buscando los
centros de los clusters formados mediante el cálculo del centro de masas
(o centro de gravedad) de todos los objetos que componen el cluster
correspondiente.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 28
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.1.3. ALGORITMOS DE AGRUPAMIENTO EN DATOS DISTRIBUIDOS
a. Collective Principal Component Analysis
En [22] se propone un algoritmo para el agrupamiento de objetos cuyas
características se encuentran distribuidas entre varios nodos de una red,
lo que se conoce como datos heterogéneamente distribuidos.
Para ello se basa en la técnica del PCA (Principal Components Analysis),
la cual busca una representación reducida de los datos que contenga la
información más relevante para permitir la agrupación (el Principal
Components).
El nombre resultante es el de CPCA (Collective Principal Components
Analysis). Cada nodo local realiza el agrupamiento sobre sus
características, y envía la información con los datos más representativos
obtenidos a una unidad central.
Allí se vuelve a aplicar el procedimiento de clustering sobre los datos
recibidos; los resultados son enviados de vuelta a todos los nodos, que
vuelven a aplicar la tarea de agrupación tomando como patrones los
datos recibidos. Los clusters locales resultantes son vueltos a enviar a la
unidad central.
b. RACHET
RACHET (Recursive Agglomeration of Clustering Hierarchies by
Encircling Tactic) es un algoritmo de clustering jerárquico diseñado para
conjuntos de objetos distribuidos homogéneamente (con todas sus
características o dimensiones) en distintos nodos en una red.
Cada nodo genera primero un dendograma (árbol jerárquico de
agrupamiento) local, según los objetos contenidos en él.
A continuación todos los dendogramas locales son enviados a una
unidad central, pero para reducir costes de comunicación, lo que se envía
es una aproximación de los resultados en forma de resúmenes
estadísticos de ciertos indicadores, como el número de objetos en cada
grupo o la distancia euclídea media de todos los datos al centroide del
grupo.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 29
Escuela Profesional de Informática
Universidad Nacional de Trujillo
2.2. SISTEMA DE BUSQUEDA DE INFORMACION BIBLIOGRAFICA
Según en la página web [18], un sistema informático es un sistema que
permite almacenar y procesar información; como todo sistema, es el conjunto
de partes interrelacionadas: en este caso, hardware, software y recursos
humanos.
El hardware incluye computadoras o cualquier tipo de dispositivo
electrónico inteligente, que consisten en procesadores, memoria, sistemas de
almacenamiento externo, etc.
El software incluye al sistema operativo, firmware y aplicaciones, siendo
especialmente importante los sistemas de gestión de bases de datos. Por
último el soporte humano incluye al personal técnico que crean y mantienen
el sistema (analistas, programadores, operarios, etc.) y a los usuarios que lo
utilizan.
La información bibliográfica se extiende como una visión de conjunto de
todas las publicaciones en alguna categoría, intenta dar una visión de
conjunto completa de la literatura.
Las bibliografías se pueden ordenar de diferentes maneras, de igual modo
a los catálogos de biblioteca. Las bibliografías anotadas ofrecen descripciones
aproximadas de las fuentes, construyendo protocolos o argumentos, que son
de gran utilidad para los autores. Creando estas anotaciones, generalmente
unas cuantas frases, se establece un resumen que da pistas sobre la idoneidad
de cada fuente antes de escribir una obra.
a. Recuperación de la información
En el área de extracción de información, las técnicas de agrupamiento de
documentos son utilizadas con diversos fines. Es así, que en lugar de listar los
resultados en la forma tradicional, los documentos resultantes de una
búsqueda son agrupados de acuerdo a la similitud de los términos que
contienen.
El resultado del proceso de agrupamiento de objetos son grupos cuyos
elementos comparten características comunes. Los algoritmos se clasifican de
acuerdo a las características del agrupamiento, descritas a continuación.
De acuerdo a la relación que existe entre los grupos. Los algoritmos de
particionamiento generan grupos sin una estructura explícita que relacione se
relacionen con otros grupos. Por el contrario, los algoritmos jerárquicos
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 30
Escuela Profesional de Informática
Universidad Nacional de Trujillo
organizan los grupos en categorías y consecuentemente son organizados en
sub-categorías.
El tesista Allan Roberto Avendaño Sudario específica en su documento [12],
que con la aparición de los medios electrónicos ha aumentado la generación
de documentos y, de igual manera, la capacidad de almacenamiento de los
dispositivos electrónicos, aunque sigue siendo mínima la extracción de
información contextual de los documentos.
El proceso de extracción de información consiste en representar,
almacenar, organizar y acceder a documentos relevantes tomados a partir de
una colección de documentos sin estructurar (generalmente en lenguaje
natural), con el objetivo de satisfacer las necesidades de los usuarios.
Estos sistemas de extracción de información además, brindan el soporte a
los usuarios al filtrar los resultados en grupos de documentos
automáticamente creados. Las técnicas de agrupamiento o clustering
permiten obtener grupos de documentos similares entre sí, sin la supervisión
de expertos.
Es por esto que estas técnicas son empleadas para que los usuarios finales
tengan una visión global de las características de colecciones de objetos con
mayor facilidad.
b. Stemming
Stemming es un método para reducir una palabra a su raíz o (en inglés) a
un stem o lema. Hay algunos algoritmos de stemming que ayudan en sistemas
de recuperación de información. Algoritmos utilizados para desechar prefijos
y sufijos: Paice/Husk, S-stemmer / n-gramas y Técnicas lingüísticas
Morfológicamente las palabras están estructuradas en prefijos, sufijos y la
raíz. La técnica de Stemming lo que pretende es eliminar las posibles
confusiones semánticas que se puedan dar en la búsqueda de un concepto,
para ello trunca la palabra y busca solo por la raíz.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 31
Escuela Profesional de Informática
Universidad Nacional de Trujillo
III. DISEÑO DE LA INVESTIGACION
3.1. TIPO DE INVESTIGACION
Investigación aplicada
3.2. DISEÑO DE LA INVESTIGACION
Para el análisis se aplicara el diseño de contrastación Pre-experimental a
post-prueba único y un grupo de control.
Este diseño incluye dos grupos, uno (G1) recibe el tratamiento
experimental y el otro no (G2). Cuando concluya la manipulación, a ambos
grupos se le realiza una medición sobre la variable dependiente en estudio.
El diseño se diagrama de la siguiente manera:
𝐺1 𝑋 𝑂1
𝐺2 − 𝑂2
Dónde:
-
X: Modelo computacional basado en algoritmos de agrupamiento.
-
G1: Grupo experimental.
-
G2: Grupo Control.
-
O1: Medición al aplicar X a G1.
-
O2: Medición sin aplicar X a G2.
3.3. POBLACION Y MUESTRA
3.3.1. POBLACION
Nuestra población corresponde a todos los datos de los sistemas
documentarios, catálogos, bibliotecarios, librerías y demás sistemas de
información.
3.3.2. MUESTRA
Se tomará como muestra los datos del sistema de búsqueda de
información bibliográfica de la Biblioteca Central de la Universidad
Nacional de Trujillo.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 32
Escuela Profesional de Informática
Universidad Nacional de Trujillo
3.4. VARIABLES DE ESTUDIO
TIPO DE VARIABLE
NOMBRE DE LA VARIABLE
INDICADORES
Independiente
Modelo computacional basado
en algoritmos de agrupamiento.
- Análisis de los
algoritmos de
agrupamiento
Dependiente
Mejora del tiempo de respuesta
y correspondencia de los
resultados del sistema de
búsqueda de información
bibliográfica.
- Tiempo de respuesta
- Correspondencia de
resultados
Figura 7. Tabla de las variables de estudio.
3.5. TECNICAS E INSTRUMENTOS
En la presente investigación se utilizan las siguientes técnicas e
instrumentos que permitan probar los objetivos planteados:
• Observación directa de un sistema de búsqueda de información
bibliográfica diseñado tradicionalmente.
• Técnica de análisis comparativo entre algoritmos de agrupamiento.
• Comparación de características técnicas de la aplicación en base a
criterios.
• Evaluación y Verificación.
• Investigación y consulta bibliográfica.
• Desarrollo humano.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 33
Escuela Profesional de Informática
Universidad Nacional de Trujillo
IV. RESULTADOS
4.1. ANALISIS COMPARATIVO DE ALGORITMOS DE AGRUPAMIENTO
En esta sección se analizara los tipos de algoritmos de agrupamiento según
criterios que optimicen nuestro modelo computacional para el sistema de
búsqueda de información bibliográfica, y también se presentara un cuadro
comparativo que resumirá el análisis de los algoritmos de agrupamiento
según los criterios.
Los algoritmos de agrupamiento que se analizaran serán los siguientes:
1. Algoritmos Particionales
2. Algoritmos Jerárquicos
3. Algoritmos Borrosos
4. Algoritmos basado en la Densidad
5. Algoritmos basado en Grid
Para este análisis comparativo se tomara en cuenta los siguientes criterios
de comparación, según Hernández Valadez Edna en su Tesis [26]:
a. Correspondencia de resultados, este criterio se ajusta en la fase de
evaluación, está dado por el nivel de concordancia que tiene la
búsqueda que realiza el usuario con los resultados que arroja el sistema.
b. Complejidad computacional, es la eficiencia que tienen los algoritmos,
estableciendo su efectividad de acuerdo al tiempo de corrida, al espacio
requerido y los recursos que utiliza.
c. Similitud entre clústeres y dentro de cada clúster, es la distancia que hay
entre dos objetos de diferentes clústeres y del mismo clúster
respectivamente.
d. Escalabilidad, es la capacidad que tienen ciertos algoritmos para realizar
agrupamiento de grandes cantidades de datos.
e. Insensibilidad al orden de entrada, es la capacidad que tienen ciertos
algoritmos para devolver los mismos clústeres, independientemente del
orden de entrada del mismo conjunto de datos.
f. Datos ruidosos, algunos algoritmos de agrupamiento son sensibles a
tales datos, como datos faltantes, desconocidos o erróneos.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 34
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.1.1. ANALISIS DE LOS ALGORITMOS SEGÚN LOS CRITERIOS
A continuación se analizara cada tipo de los algoritmos de
agrupamiento seleccionados según los criterios que se han definido:
1. Algoritmos de Agrupamiento Particionales
a. Correspondencia de resultados, las técnicas particionales
usualmente producen clústeres que optimizan el criterio de función
definido, es decir favorecen este criterio para la optimización y
concordancia de resultados con la búsqueda.
b. Complejidad computacional, la complejidad típica de la mayoría de
este tipo de algoritmos es O(n).
c. Similitud entre clústeres y dentro de cada clúster, fallan cuando los
objetos de un grupo o clúster están cerca del centroide de otro
clúster, también cuando los grupos tienen diferentes tamaños y
formas.
d. Escalabilidad, los métodos particionales tienen ventajas en
aplicaciones que involucran gran cantidad de datos, a diferencia de
los que utilizan dendogramas como los jerárquicos.
e. Insensibilidad al orden de entrada, en este tipo de algoritmos no
varía los resultados si es que se ponen en diferente orden el mismo
conjunto de datos que son captados por el algoritmo.
f. Datos ruidosos, en algunos casos puede afectar al algoritmo si es
que faltan algunos atributos a los datos.
2. Algoritmos de Agrupamiento Jerárquicos
a. Correspondencia de resultados, crea una descomposición jerárquica
de un conjunto de datos, formando un dendograma, el sistema
podría arrojar algunos resultados que no sean muy relevantes para
el usuario.
b. Complejidad computacional: La complejidad típica de este tipo de
algoritmos es O (n2 log n).
c. Similitud entre clústeres y dentro de cada clúster, este tipo de
algoritmos tiene varios grados de similitud, porque divide
recursivamente el conjunto de datos en conjuntos cada vez más
pequeños, haciendo que la similitud varié.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 35
Escuela Profesional de Informática
Universidad Nacional de Trujillo
d. Escalabilidad, utilizar un dendograma resulta complicado para
grandes cantidades de datos.
e. Insensibilidad al orden de entrada, puede variar el dendograma
cuando se altera el orden de entrada del conjunto de datos.
f. Datos ruidosos, el algoritmo es capaz de aceptar datos dañados o
con atributos faltantes.
3. Algoritmos de Agrupamiento Borrosos
a. Correspondencia de resultados, en este tipo de algoritmos, los
objetos pueden pertenecer a dos o más clústeres, por lo que los
resultados que arroje el sistema puede pertenecer a distintos
grupos, y no tenga concordancia con la búsqueda.
b. Complejidad computacional, este tipo de algoritmos tiene
complejidad computacional de O(n log n).
c. Similitud entre clústeres y dentro de cada clúster, el grado de
similitud entre clústeres se puede medir siempre y cuando los
objetos no pertenezcan a un mismo clúster.
d. Escalabilidad, por ser un derivado de los algoritmos particionales
también tienen ventaja con respeto a grandes cantidades de datos,
con otros algoritmos.
e. Insensibilidad al orden de entrada, en este tipo de algoritmos no
varía los resultados si es que se ponen en diferente orden el mismo
conjunto de datos que son captados por el algoritmo.
f. Datos ruidosos, el algoritmo es capaz de aceptar datos dañados o
con atributos faltantes.
4. Algoritmos de Agrupamiento basado en Densidad
a. Correspondencia de resultados, este tipo de algoritmos utiliza
funciones de densidad, el cual podría beneficiar la correspondencia
de los resultados puesto que arrojaría resultados que tengan buena
similitud entre ellos.
b. Complejidad computacional, la complejidad típica de este tipo de
algoritmos es O(n log n).
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 36
Escuela Profesional de Informática
Universidad Nacional de Trujillo
c. Similitud entre clústeres y dentro de cada clúster, por ser basado en
funciones de densidad estos algoritmos tiene alto grado de similitud
de los objetos dentro de un clúster, y bajo grado de similitud entre
objetos de distintos clústeres.
d. Escalabilidad, en algunos casos presenta dificultades en la
escalabilidad con grandes cantidades de datos, y en específico con
datos de alta dimensionalidad.
e. Insensibilidad al orden de entrada, en este tipo de algoritmos no
varía los resultados si es que se ponen en diferente orden el mismo
conjunto de datos que son captados por el algoritmo.
f. Datos ruidosos, este tipo de métodos es muy útil para filtrar ruido y
encontrar clústeres de diversas formas, clasifica a los datos ruidosos
en un solo clúster.
5. Algoritmos de Agrupamiento basado en Grid
a. Correspondencia de resultados, el algoritmo agrupa los datos sin
utilizar alguna función predefinida, es decir de forma arbitraria,
haciendo que el sistema arroje resultados que no tengan ninguna
correspondencia con la búsqueda.
b. Complejidad computacional, la implementación es sencilla, la
complejidad típica de este tipo de algoritmos es O(n).
c. Similitud entre clústeres y dentro de cada clúster, este tipo de
algoritmos tiene muy baja similitud entre clústeres y dentro de cada
clúster.
d. Escalabilidad, con este tipo de algoritmos se pueden agrupar
grandes cantidades de datos aunque tengan alta dimensional.
e. Insensibilidad al orden de entrada, en este tipo de algoritmos no
varía los resultados si es que se ponen en diferente orden el mismo
conjunto de datos que son captados por el algoritmo.
f. Datos ruidosos, este algoritmo acepta toda clase de datos, incluso
datos dañados o con atributos faltantes.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 37
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.1.2. RESULTADOS DEL ANALISIS COMPARATIVO
CUADRO COMPARATIVO
El presente Cuadro comparativo está basado en las características de los
algoritmos de agrupamiento presentadas en el análisis anterior.
Algoritmos
a
b
c
d
e
f
Particionales
Jerárquicos
Borrosos
Basado en
Densidad
Basado en
Grid
Figura 8. Cuadro Comparativo.
Leyenda:
a. Correspondencia de resultados
b. Complejidad computacional
c. Similitud entre clústeres y dentro de cada clúster
d. Escalabilidad
e. Insensibilidad al orden de entrada
f. Datos ruidosos
: Si Cumple
: No Cumple
: Parcialmente
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 38
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.1.3. CONCLUSIONES DEL ANALISIS COMPARATIVO
Del cuadro comparativo anterior se pueden resumir las siguientes
conclusiones:
-
Los algoritmos basados en Grid son los que en más criterios tiene
ventaja sobre los demás algoritmos, sin embargo ciertos criterios
son mucho más importantes que otros para nuestro caso de
estudio, los algoritmos basados en Grid no tienen ventaja en esos
criterios que podrían optimizar mejor nuestro caso de estudio.
-
A partir del punto anterior los criterios más significantes o que tiene
más peso son los primeros: a, b y c sin dejar de lado los otros d, e y
f que también tienen un buen aporte.
-
Los algoritmos Particionales son los que tienen ventaja en criterios
con mayor importancia que son la correspondencia de resultados,
complejidad computacional y similitud de objetos entre clústeres
diferentes y dentro de cada clúster.
-
Entre los algoritmos particionales el que es más reconocido es el
algoritmos K-means, nuestro modelo computacional estará basado
en este algoritmo.
4.2. DISEÑO DEL MODELO PROPUESTO
La presente investigación se orienta al uso de algoritmos de agrupamiento
para desarrollar un modelo computacional, que nos permita mejorar el
tiempo de respuesta y la correspondencia de resultados de un sistema de
búsqueda de información bibliográfica.
El modelo computacional estará basado, como se concluyó anteriormente,
en los algoritmos de agrupamiento particionales y en específico en el
algoritmo k-means.
4.2.1. ENFOQUE DEL DISEÑO
La fase inicial de la investigación se enfocó en la comprensión de la
problemática, haciendo algunas pruebas de consultas al sistema de
búsqueda de información bibliográfica de la biblioteca central de la
Universidad Nacional de Trujillo.
Este modelo computacional una vez implementado proveerá una
herramienta académica a los usuarios, la cual a partir de una
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 39
Escuela Profesional de Informática
Universidad Nacional de Trujillo
representación lógica de los documentos y la agrupación automática de
los mismos, proporcionara información relevante de acuerdo a la
búsqueda del usuario y sus intereses.
MODELO COMPUTACIONAL DE
BUSQUEDA DE INFORMACION
BIBLIOGRAFICA UTILIZANDO
ALGORITMOS DE AGRUPAMIENTO
ALGORITMOS:
IMPERATIVO O
POR
PROCEDIMIENTOS
-
TECNICA A
UTILIZAR:
+
ALGORITMOS DE
AGRUPAMIENTO
PARTICIONAL:
K-MEANS
+
RECUPERACION
De INFORMACION
DE UN SISTEMA
DE INFORMACION
TECNICAS DE
RECUPERACION
DE
INFORMACION:
STEMMING
Figura 9. Enfoque del Modelo Computacional Propuesto
Los algoritmos de agrupamiento, también llamada de segmentación,
es útil para el descubrimiento de las distribuciones de datos y los
patrones en ellos. Se trata de un proceso de agrupación de objetos en
clases de objetos similares. Estos algoritmos están sujetos dentro un
enfoque por procedimientos o imperativo, el sistema hace un llamado a
este algoritmo que es procedimiento.
El sistema de información bibliográfica analiza los objetos recuperados
(documentos), usando los intereses señalados por el usuario y las
recomendaciones propuestas sobre dichos objetos; y emplea algoritmos
de agrupamiento que permiten organizar automáticamente la
información, a partir de sus similitudes. Para seleccionar los contenidos se
han empleado diversos enfoques, entre los que destaca en el área de
Recuperación de Información mediante el cual se representa el carácter
temático de los objetos.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 40
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.2.2. DEFINICION DEL MODELO
A continuación se propondrá los pasos o las fases que tiene nuestro
modelo computacional:
Fase I: Representación lógica de los documentos,
Fase II: Captación de las consulta del usuario
Fase III: Agrupación de los documentos
Fase IV: Salida de los resultados
FASE I:
Representación lógica de los
documentos, los cuales deben
estar depurados.
FASE II:
Captación de la consulta del
usuario, entrada de la consulta
para ejecutar el algoritmo.
FASE III:
Agrupación de los documentos,
utilización de las técnicas de
agrupamiento
según
la
consulta.
FASE IV:
Salida de los resultados,
contenido debe de tener alta
correspondencia con el área de
interés.
Figura 10 . Fases del modelo computacional
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 41
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.2.3. DESCRIPCION DEL MODELO
El modelo se puede describir a través de sus tareas básicas:
representación lógica de los documentos, representación de las
necesidades de los usuarios, agrupación de los documentos:
1. Representación lógica de los documentos
El sistema provee un espacio de búsqueda y recuperación de
información adaptada a las necesidades de los usuarios, se
representara documentos en sistemas destinados al agrupamiento,
la clasificación o la visualización de grandes colecciones.
La representación de documentos es fundamental para poder
procesar estos y es una fase previa en el tiempo a la recuperación
de información, pero es parte integrante del conjunto.
El objetivo de la representación de documentos es la traducción
de los mismos a términos del sistema. Esta representación se lleva a
cabo mediante un conjunto de fases que contribuyen mediante
ciertas simplificaciones y generalizaciones a presentar una vista
lógica de los documentos que permita su comparación con las
consultas. Es por tanto un proceso imprescindible para la
recuperación de información.
En general podríamos equiparar la representación de
documentos al análisis documental, aunque con algunos matices. El
primero de ellos hace referencia al ámbito automatizado en que
tienen lugar estos procesos. Las representaciones que generaremos
serán aptas para su procesamiento por parte de aplicaciones
informáticas según diversos modelos. Además la representación de
los documentos se hace en torno a criterios temáticos, y para ser
más exactos, en torno a criterios temáticos analíticos.
Se tienen las siguientes fases:
1. Elección y selección de elementos de representación
El término “elemento de representación” hace referencia a la
unidad de sentido mínima utilizada para representar un
documento, pueden tomar la forma de un descriptor unitérmino,
un descriptor sintagmático, una agrupación de palabras, el
elemento de representación está formado por tanto de una o más
palabras que forman un descriptor u otra construcción con valor
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 42
Escuela Profesional de Informática
Universidad Nacional de Trujillo
representativo, de manera que cada una de las palabras que forman
dicho elemento de representación no poseen carga de significación
autónoma.
2. Creación del léxico de la colección
Entendemos por léxico de la colección al conjunto cerrado de
elementos de representación base de entre el que podremos elegir
los términos de indización para cada uno de los documentos
concretos de la colección. Es fundamental escoger un léxico
adecuado para la colección, que refleje correctamente el significado
de los documentos y cuyo número de términos no sea
excesivamente elevado.
3. Indización Automática
Existen dos opciones consolidadas a tener en cuenta a la hora de
representar los documentos. Podemos optar por la representación
binaria, propia del modelo booleano clásico y del probabilístico de
independencia binaria, o por la representación ponderada de los
documentos, que es propia del modelo de espacio vectorial y de
casi todos los modelos más modernos.
La representación binaria implica que la única información que
consignamos acerca de los elementos de representación es la de si
están o no presentes en el documento, básicamente estamos
renunciando a la posibilidad de ponderar los documentos, ya que
utilizaremos todas las unidades de representación que hayan
superado el filtro de la eliminación de palabras vacías y el de
reducción de la dimensionalidad.
La representación ponderada de los documentos incluye un
conjunto de procedimientos destinados a averiguar el valor
representativo de un término, una raíz o un sintagma en el contexto
de un documento, y en el contexto de la colección.
Este conjunto de procedimientos se puede identificar
básicamente con la indización tal y como se entiende en
Recuperación de Información Automatizada. Lo fundamental de
elegir una representación ponderada de los términos reside en el
hecho de que podamos representar los documentos en torno a la
importancia que tiene cada uno de los elementos que los
conforman.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 43
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Durante la fase de indización se asignan los pesos que
cuantifican la importancia relativa de cada “elemento de
representación” en su función de descripción de los contenidos de
un documento. Se trata, por tanto, de ponderar la carga semántica
y la capacidad descriptiva de los elementos de representación de un
documento, y no tan sólo de seleccionar un conjunto de trazos
descriptivos
2. Captación de las consulta del usuario
El usuario hace la consulta, se ingresan los términos de búsqueda
para que el sistema tenga el parámetro de entrada para el
algoritmo,
se
refiere
al
contexto del proceso de
interacción persona-ordenador
-
La interfaz gráfica de usuario, es un programa informático que
actúa de interfaz de usuario, utilizando un conjunto de imágenes
y objetos gráficos para representar la información y acciones
disponibles en la interfaz. Su principal uso, consiste en
proporcionar un entorno visual sencillo para permitir la
comunicación con el sistema operativo de una máquina o
computador.
Morfológicamente las palabras están estructuradas en prefijos,
sufijos y la raíz. La técnica de Stemming lo que pretende es eliminar
las posibles confusiones semánticas que se puedan dar en la
búsqueda de un concepto, para ello trunca la palabra y busca solo
por la raíz.
3. Agrupación de los documentos:
Una vez que los documentos se han caracterizado, el modelo los
agrupa utilizando el algoritmo de agrupamiento k-means, propuesto
por McQueen en el 2007, el cual es ampliamente utilizado por su
facilidad, rapidez y efectividad.
El modelo sigue una forma fácil y simple para dividir los
documentos en k grupos de documentos similares de una misma
área de investigación, donde k representa el número de áreas de
investigación.
La idea principal es definir k centroides (uno para cada grupo),
estos k centroides representan los documentos más relevantes de
cada área de investigación.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 44
Escuela Profesional de Informática
Universidad Nacional de Trujillo
Ahora bien, una vez que se ha establecido el número de grupos,
se eligen k documentos que representarán los centroides (centros)
iniciales de cada clúster.
En este paso es importante seleccionar documentos cuyo
contenido tenga una alta correspondencia con el área de
investigación, por lo tanto si los documentos no son los apropiados,
la clasificación podría ser ineficiente.
Se pueden identificar cuatro pasos en el algoritmo:
 Paso 1. Inicialización: Se definen el conjunto de objetos para
particionar, el número de grupos y un centroide por cada
grupo. Algunas implementaciones del algoritmo estándar
determinan los centroides iniciales de forma aleatoria;
mientras que algunos otros procesan los datos y determinan
los centroides mediante de cálculos.
 Paso 2. Clasificación: Para cada objeto de la base de datos, se
calcula su distancia a cada centroide, se determina el
centroide más cercano, y el objeto es incorporado al grupo
relacionado con ese centroide.
 Paso 3. Cálculo de centroides: Para cada grupo generado en el
paso anterior se vuelve a calcular su centroide.
 Paso 4. Condición de convergencia: Existe varias condiciones
de convergencia, converger cuando alcanza un número de
iteraciones dado, converger cuando no existe un intercambio
de objetos entre los grupos, o converger cuando la diferencia
entre los centroides de dos iteraciones consecutivas es más
pequeño que un umbral dado. Si la condición de convergencia
no se satisface, se repiten los pasos dos, tres y cuatro del
algoritmo.
4. Salida de los resultados
Una vez realizado el agrupamiento el sistema habrá filtrado los
objetos recuperados (documentos), usando los intereses señalados
por el usuario, este paso se seleccionaron documentos cuyo
contenido tenga una alta correspondencia con el área de
investigación, por lo tanto si los documentos no son los apropiados,
la clasificación podría ser ineficiente.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 45
Escuela Profesional de Informática
Universidad Nacional de Trujillo
4.3.
CASO DE ESTUDIO
El presente caso de estudio estará orientado a desarrollar un diseño de
un modelo computacional basado en algoritmos de agrupamiento para
mejorar el tiempo de respuesta y la correspondencia de resultados de un
sistema de búsqueda de información bibliográfica para la Universidad
Nacional de Trujillo.
En el anexo se detalla el desarrollo del caso a mayor detalle
respectivamente.
El software permitirá a un usuario final plantear una consulta general y
obtener los resultados de su consulta en forma agrupada. El usuario define
como parámetro de entrada adicional, el número de grupos que desea
obtener.
Para el desarrollo del prototipo se utilizara la colección de datos del
sistema de información bibliográfico de la biblioteca central de la
universidad nacional de Trujillo que consta alrededor de 4500 libros, 1500
revistas y periódicos entre otros.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 46
Escuela Profesional de Informática
Universidad Nacional de Trujillo
IV. REFERENCIAS BIBLIOGRAFICAS
5.4. BIBLIOGRAFÍA GENERAL
[1] Sergio López García. (2001). Algoritmo de Agrupamiento Genético Borroso
basado
en
el
Algoritmo
de
las
C-Medias
Borroso.
http://oa.upm.es/786/1/09200116.pdf
[2] José L. Díez, José L. Navarro y A. Sala. Algoritmos de Agrupamiento en la
identificación
de
Modelos
Borrosos.http://riai.isa.upv.es/CGIBIN/articulos%20revisados%202004/num2/601/riai-2004601impr.pdf
[3] J. Pérez, M. F. Henriques, R. Pazos, L. Cruz, G. Reyes, J. Salinas, A.
Mexicano. Mejora al Algoritmo de Agrupamiento k-Means mediante un nuevo
criterio de convergencia y su aplicación a bases de datos poblacionales de
cáncer. http://www.tlaio.org.mx/EventosAnteriores/TLAIOII/T2_5_A27iJPO.pdf
[5] Andrea Villagra, Ana Guzmán, Daniel Pandolfi y Guillermo Leguizamón.
Análisis de medidas no-supervisadas de calidad en clusters obtenidos por kmeans
y
particle
swarm
optimization
(PSO).
http://www.palermo.edu/ingenieria/Cica2009/Papers/20.pdf
[6] Andrea Villagra. Meta-heurísticas aplicadas a Clustering.
[7] Marcelo Barroso, Gonzalo Navarro y Nora Reyes. Combinando Clustering
con aproximación espacial para Búsquedas en espacios métricos.
http://www.dcc.uchile.cl/~gnavarro/ps/cacic05.pdf
[9] Carlos Ruiz, Martha Zorrilla, Ernestina Menasalvas y M. Spiliopoulou.
Clustering Semi-Supervisado sobre datos procedentes de una plataforma elearning. http://personales.unican.es/zorrillm/PDFs/caepia07.pdf
[11] Dioclécio Moreira Camelo. (2007). Modelado y desarrollo de un modelo
computacional de síntesis interactivo y multirrelacional para guiar la actividad
de
diseño
en
la
fase
conceptual.
www.tdx.cat/bitstream/10803/10557/1/moreira.pdf
[13] Cristina García Cambronero, Irene Gómez Moreno. Algoritmos de
Aprendizaje: KNN & KMEANS. http://www.it.uc3m.es/jvillena/irc/practicas/0809/06.pdf
[14] Elmer A. Fernández. Clustering (Agrupamiento). Universidad Católica de
Córdoba.
[15] Juan Carlos López García. Algoritmos y Programación. Universidad Católica
de Córdoba. Eduteka.
[16] Silberschatz Korth Sudarshan. Fundamentos de bases de datos. Mac Graw
Hill.
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 47
Escuela Profesional de Informática
Universidad Nacional de Trujillo
[25]
Martínez
C.
David.
(2005).
Diseño
http://www.inegi.org.mx/inegi/spc/doc/INTERNET/21%20Manual%20para%20el%20Dise%C3%B1o%20Conceptual.pdf
Conceptual.
5.5. BIBLIOGRAFÍA ESPECÍFICA
[4] Andrés Marín, John W. Branch B. Aplicación de dos nuevos Algoritmos para
agrupar resultados de Búsquedas en Sistemas de Catálogos Públicos en línea
(OPAC).
http://aprendeenlinea.udea.edu.co/revistas/index.php/RIB/article/view/1918/
1572
[8] Eugenio Yolis. Algoritmos Genéticos aplicados a la Categorización
Automática
de
Documentos.
http://laboratorios.fi.uba.ar/lsi/yolis tesisingenieriainformatica.pdf
[10] Matylin Giugni O., Luis León G., Joaquín Fernández. ClusterDoc, un
sistema de recuperación y recomendación de Documentos Basado en
Algoritmos
de
Agrupamiento.
http://www.redalyc.org/pdf/784/78415900002.pdf
[12] Allan Roberto Avendaño Sudario. Sistema de agrupamiento y búsqueda de
contenidos de la blogosfera de la ESPOL, utilizando HADOOP como plataforma
de procesamiento masivo y escalable de datos. Año 2009.
http://www.dspace.espol.edu.ec/bitstream/123456789/8141/3/SISTEMA%20D
E%20AGRUPAMIENTO%20Y%20B%C3%9ASQUEDA%20DE%20CONTENIDOS%20
DE%20LA%20BLOGOSFERA%20DE%20LA%20ESPOL%2c%20UTILIZANDO%20HA
DOOP%20COMO%20PLATAFORMA%20DE%20PROCESAMIENTO%20MASIVO%2
0Y%20ESCALABLE%20DE%20DATOS%20%28BONSAI%29.pdf
[23] Bedregal L. Carlos. (2008). Agrupamiento de datos utilizando tecnicas
mam-som
[24] Benítez S. Ignacio. (2006). Técnicas de Agrupamiento para el Analisis de
Datos Cuantitativos y Cualitativos.
[26] Hernández Valadez Edna. (2006). Algoritmo de clustering basado en
entropía para descubrir grupos en atributos de tipo mixto.
http://www.cs.cinvestav.mx/TesisGraduados/2006/tesisEdnaHernandez.pdf
[27] Estudio comparativo de métodos de agrupamiento no supervisado de
latidos de señales ECG. Diego Hernán Peluffo Ordóñez
http://www.bdigital.unal.edu.co/2112/1/Diegohernanpeluffoordonez.2009.pdf
[29] Marta Millán. Segmentación o Clustering.
http://ocw.univalle.edu.co/ocw/ingenieria-de-sistemas-telematica-yafines/descubrimiento-de-conocimiento-en-bases-de-datos/material1/Segmentacion08.pdf-e-introduccin
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 48
Escuela Profesional de Informática
Universidad Nacional de Trujillo
[30]
Dra.
Silvia
Schiaffino.
Clustering.
http://www.exa.unicen.edu.ar/catedras/optia/public_html/clustering.pdf
[31] Damaris Pascual González Algoritmos de Agrupamiento basados en
densidad y
Validación de clusters..
http://www.cerpamid.co.cu/sitio/files/DamarisTesis.pdf
[32] J. Pérez, M. F. Henriques, R. Pazos, L. Cruz, G. Reyes, J. Salinas, A.
Mexicano. Mejora al Algoritmo de Agrupamiento k-Means mediante un nuevo
criterio de convergencia y su aplicación a bases de datos poblacionales de
cáncer. http://www.tlaio.org.mx/EventosAnteriores/TLAIOII/T2_5_A27iJPO.pdf
5.6. WEBGRAFÍA
[17] Algoritmo de agrupamiento. Recuperado en Octubre del 2014, a partir de
http://es.wikipedia.org/wiki/Algoritmo_de_agrupamiento
[18] Sistema. Recuperado en
http://es.wikipedia.org/wiki/Sistema
Octubre
del
2014,
a
partir
de
[19] ¿Cómo funcionan los sistemas de búsqueda de información? Recuperado
en Octubre del 2014, a partir de http://www2.ual.es/ci2bual/como-funcionanbuscadores-como-google-y-las-bases-de-datos/#sthash.5X0NfDhP.dpuf
[20] Servicio de información bibliográfica y referencia. Recuperado en Octubre
del 2014, a partir de http://sabus.usal.es/docu/pdf/Informacbibl.PDF
[21] Sistema de información. Recuperado en Octubre del 2014, a partir de
http://es.wikipedia.org/wiki/Sistema_de_informaci%C3%B3n
[22]
Titulo,
Resumen
e
Introduccion.
http://es.slideshare.net/cristiandiazv/titulo-resumen-e-introduccin
[28] Criterios de Calidad. http://personal.lobocom.es/claudio/moddat004.htm
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 49
Escuela Profesional de Informática
Universidad Nacional de Trujillo
ANEXO
ASPECTOS GENERALES DEL CASO
DESCRIPCION DE LA EMPRESA:
DESCRIPCION
La Universidad Nacional de Trujillo fue fundada durante la época republicana por el
General Simón Bolívar, los primeros ambientes donde funcionó la universidad fueron
dentro del colegio fundado por obispos El Salvador.
La Universidad Nacional de Trujillo, es una institución educativa que imparte educación
superior gratuita como lo establece la Constitución del Estado, tiene personería
jurídica de Derecho Público Interno, regida por la ley 23733 y su Estatuto.
Se dedica al estudio, la investigación, la difusión del saber y la cultura así como a la
extensión universitaria y proyección social. Tiene autonomía académica, normativa,
administrativa y económica dentro de la ley
MISION:
La Universidad Nacional de Trujillo en el año 2011, será una institución moderna,
acreditada, reconocida a nivel nacional e internacional por realizar investigación
científico - tecnológica con enfoque interdisciplinario, por ser aliada estratégica en el
proceso de desarrollo sostenido de la Región La Libertad, y del país y contar con una
gestión administrativa flexible e innovadora.
VISION:
Ser una institución educativa pública que forma profesionales y académicos de pre y
postgrado altamente competitivos realizando investigación científica con proyección y
extensión a la comunidad de la región La Libertad y del país.
UBICACIÓN:
Campus Universitario: Av. Juan Pablo II Ciudad Universitaria S/N. 044 Trujillo - Perú .
Local Central: Diego de Almagro 344, Trujillo
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 50
Escuela Profesional de Informática
Universidad Nacional de Trujillo
PICTOGRAFICO
El sistema basado en
nuestro modelo
computacional ejecuta el
algoritmo de agrupamiento.
Usuario realiza una consulta al
sistema de información
bibliográfico.
El sistema arroja los
resultados esperados por el
usuario.
Biblioteca Central de la Universidad Nacional de Trujillo
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 51
Escuela Profesional de Informática
Universidad Nacional de Trujillo
CASO DE USO
SISTEMA DE INFORMACION BIBLIOGRAFICO
DE LA BIBLIOTECA CENTRAL
Realizar una
búsqueda
bibliográfica
Usuario
Agregar nueva
bibliografía.
Actualizar una
bibliografía.
Administrador
De La Cruz Mantilla Azucena Sarai
Linares Valdivia Juan Carlos
Pág. 52
Descargar