Instituto Politécnico Nacional Escuela Superior de Fı́sica y Matemáticas C s c c c CC scs ESFM Departamento de Matemáticas Reconocimiento de Patrones, el enfoque Lógico Combinatorio Tesis que para obtener el tı́tulo de Ingeniero Matemático Presenta: Luis Eduardo Quintos Vázquez1 Director de Tesis: Dr. César Alberto Escobar Gracia 1 Esta tesis forma parte del proyecto de investigación SIP 20091395 , con apoyo parcial de CONACyT y COFAA Agradecimientos Primero que nada agradezco a Dios por el gran tesoro que me dio, que son: mi familia y todas las personas que me quieren. A mi Profesor y Gran Amigo César por lo mucho que me a dado en tan poco tiempo y que espero retribuirselo algún dia. A mis amigos, (principalmente una personita que esta conmigo, no pongo nombres por que son muchos y ya saben quienes son) por todos los momentos que me regalaron y siguen regalando. A los profesores: Adrián Alcantar Torres, Miguel Abel León Hernandez, Julio César Salas Torres y José Antonio Peralta, por haber revisado mi tesis y por sus valiosas sugerencias. Febrero de 2009 Ciudad de México Luis Eduardo Quintos Vázquez iv Agradecimientos Dedicatoria A mis padres y hermana: Ana, Luis y Lilia Por ser el pilar más grande y fuerte de mi vida, a quienes amo por sobre todas las cosas, por apoyarme y comprenderme, por ayudarme a ser quien soy, por amarme como me aman y por hacer cada dia de mi existencia especial. También a mi cuñado por ofrecerme todo lo que estuvo a su alcance, que sé, fué de corazón y por amar tanto a mi hermana y finalmente a mi sobrina por el simple hecho de ya existir. A mi hermosa familia, muchas GRACIAS. Luis Eduardo Quintos Vázquez Febrero de 2009 Ciudad de México vi Dedicatoria Resumen Objetivo: Esta tesis tiene como objetivo el mostrar las herramientas matemáticas que se me han proporcionado durante mis estudios correspondientes a la ingenierı́a con el mismo nombre, en este caso implementados en un enfoque con el cual se realiza una clasificación de una determinada muestra. Este enfoque puede ser utilizado en múltiples campos de estudio. El contenido de la tesis se desarrollará de la siguiente manera: En el primer capı́tulo se dará una perspectiva general de lo que se estudia dentro del reconocimiento de patrones. En el capı́tulo dos se pretende intoducir el objeto de estudio general, explicando en que consiste la clasificación y el reconocimiento de patrones, además de introducir los conceptos básicos para abordar dicho problema. Por otra parte en los siguientes dos capı́tulos se desarrollan dos enfoques distintos en como se puede abordar el problema de la clasificación y reconocimiento de patrones proponiendo algoritmos que realizan el agrupamiento de los elementos de la muestra, aclaremos aquı́ que como se explica antes (capı́tulo 1) estos sólo son dos enfoques de otros tantos existentes, y que nos enfocaremos en el Lógico - Combinatorio. viii Resumen Contenido Agradecimientos iii Dedicatoria v Resumen vii 1 Introducción 1.1 Objetivo de la CSA . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Paradigmas de la CSA. . . . . . . . . . . . . . . . . . . . . . . 2 Conceptos básicos 2.1 Distancia . . . . . . . . . . . . . . . . . 2.2 Distancia entre conjuntos . . . . . . . . . 2.3 Planteamiento formal del problema. . . . 2.4 El espacio de representación inicial (ERI) 2.5 Medidas de (divergencia) similitud . . . 3 Enfoque métrico: ERI=Rn ó 2n 3.1 Estrategias de agrupamiento . 3.2 Técnicas de reagrupamiento . 3.3 Algoritmo c-means. . . . . . . 3.4 Algoritmo ISODATA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Enfoque Lógico - combinatorio 4.1 Criterios agrupacionales. . . . . . . . . . . . . . 4.2 Relaciones entre criterios agrupacionales . . . . 4.3 Algoritmo CLASS . . . . . . . . . . . . . . . . . 4.4 Creación de la matriz de aprendizaje utilizando agrupamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . algoritmos . . . . . . . . . . . . . . . 1 2 2 . . . . . 5 5 12 14 16 17 . . . . 21 22 24 28 33 . . . . . . de . . 37 37 48 55 60 x CONTENIDO 4.5 Algoritmo HOLOTIPO . . . . . . . . . . . . . . . . . . . . . . 63 5 Conclusiones 73 Bibliografı́a 75 Capı́tulo 1 Introducción El reconocimiento de patrones se podrı́a decir que es una de las primeras actividades que aprende el ser humano, ya que lo utiliza algunas veces para la toma de desiciones sin entender realmente lo que esta haciendo. El reconocimiento de patrones mediante la clasificación se puede percibir y realizar en todas partes, desde la forma en que se clasifica a la raza humana por el color de piel (negra, blanca, amarilla, etc.), la religión (católicos, cristianos, ortodoxos, musulmanes, etc.), la posición social (baja, media, alta, etc.) y hasta las preferencias sexuales (heterosexual, bisexual, homosexual, etc.), o para cosas mucho mas especializadas que requieren un modelo matemático para representar la semejanza entre los elementos en estudio. Esta clasificación la podemos realizar mediante distintos enfoques, en este trabajo, en particular usaremos un enfoque Lógico-Combinatorio. En este enfoque la clasificación se realiza formando agrupamientos de los elementos de la muestra de acuerdo a la semejanza que existe entre ellos. Dando un valor especifico a cada uno de los rasgos que distingan a los elementos y de acuerdo con esos valores se estudia la semejanza entre ellos. Este enfoque puede ayudar a tomar desiciones, como por ejemplo, al formar grupos con los contactos del correo electrónico de acuerdo a la importancia que tenga cada uno para el usuario o para selecionar los correos no deseados, en este caso serı́a hacer un filtro para los niños en el cual, todos los correos que contengan palabras como: sexo, porno, chicas, etc.(estos son los rasgos de los elementos, dandoles un valor numérico ya que tal vez pueda variar un poco la palabra con el fin de confundir al usuario; por ejemplo en lugar de poner sexo, ponen seixo), sean metidos en un agrupamiento para posteriormente ser eliminados. Gracias a esta forma de organizar se puede evitar que traten de 2 Introducción engañar con solo cambiar una(s) letra(s) ya que de acuerdo al valor numérico que se asigne éste formará parte del mismo agrupamiento. 1.1 Objetivo de la CSA El objetivo de la CSA (clasificación sin aprendizaje) es resolver un problema que consiste en esencia, en hallar la estructura interna de un conjunto de descripciones de objetos en el espacio de representación. Esta estructura interna obviamente depende, en primera instancia, de la selección del propio espacio de representación y de la forma en que los objetos se comparen, es decir del concepto de similaridad que se utilice y de la forma en que éste se emplee. De dicha estructuración, en términos generales pudiéramos decir que: 1. Se sabe o se desea que se realice un número dado de agrupaciones. 2. Se desconoce en cuántas agrupaciones se estructurará el conjunto de objetos una vez definidos el espacio de representación y los conceptos de similaridad y la forma de usarlos. En cualquiera de los dos casos, un problema de clasificación sin aprendizaje consiste en hallar un procedimiento por el cual se pueda conocer la estructura interna del conjunto de descripciones de objetos dado. Para encontrar esa estructura existen tres formas generales de hacerlo, a saber: 1. El paradigma del conjunto cociente. 2. El paradigma del solapamiento. 3. El paradigma difuso. 1.2 Paradigmas de la CSA. A continuación describiremos en queconsiste cada uno de estos paradigmas. El paradigma del conjunto cociente, consiste en la formación de una partición del conjunto de objetos dado, bajo el supuesto que los mismos serán conjuntos en el sentido clásico de la Teorı́a de conjuntos. En otras palabras, 1.2 Paradigmas de la CSA. 3 de lo que se trata es de hallar el conjunto cociente del conjunto inicial en el espacio de representación en cuestión. Esto supone que los agrupamientos serán ajenos. Aquı́ las propiedades que caracterizan a un agrupamiento establecido contradicen las propiedades que caracterizan a cualquier otro de los restantes agrupamientos obtenidos. El paradigma del solapamiento permite que las agrupaciones tengan elementos comunes; es decir, se trata de hallar un cubrimiento del conjunto de descripciones de objetos representado por subconjuntos (también en el sentido clásico) no necesariamente ajenos. Las propiedades que caracterizan a un agrupamiento dado pudieran ser satisfechas por otro de los agrupamientos restantes. El paradigma difuso, sin embargo, parte de una suposición conceptual diferente: de los objetos no podemos afirmar categóricamente que pertenecen o no a un conjunto, sólo podemos hablar de grados de pertenencia. En todos estos paradigmas hay factores comunes. Uno de ellos esencial para la solución del problema de la clasificación sin aprendizaje, es la selección del criterio de agrupamiento. La selección de un criterio de agrupamiento (se definirá mas adelante con precisión) se puede realizar de maneras diferentes. Se llega al criterio de agrupamiento mediante la modelación matemática del problema y por la misma vı́a se llega al enfoque de realización de la estructuración del conjunto de objetos. Suponemos el enfoque, es decir, lo imponemos, y condicionamos el criterio de agrupamiento de modo tal que resulte una estructura acorde con el enfoque seleccionado. El estudio de todos estos enfoques se puede hacer bajo dos ópticas, que aunque muy relacionadas poseen diferencias, en apariencia sutiles, consideradas de suma importancia para los análisis posteriores. Nos referimos a lo que pudiéramos denominar una óptica clasificatoria y una óptica conjuntual. En el enfoque clasificatorio se tiene un universo de objetos y se necesita agruparlos de modo tal que los objetos del mismo agrupamiento se parezcan más entre sı́ que con objetos de otros agrupamientos. En el enfoque conjuntual se tiene un universo de objetos y se necesita agruparlos de modo tal que los objetos que estén en el mismo agrupamiento cumplan (en cierto grado) la propiedad que caracteriza al agrupamiento (como conjunto en su determinación intencional). El objetivo fundamental del problema de clasificación sin aprendizaje es el de conocer la estructura interna de una población de objetos dada. Esa población pudiera ser una clase de objetos en un problema de clasificación con 4 Introducción aprendizaje o con aprendizaje parcial. El interés en lograr esa estructura puede ser porque se desea posteriormente clasificar nuevos objetos ya que la ”población” a la que se está haciendo referencia no es todo el universo de objetos de un problema en cuestión. Capı́tulo 2 Conceptos básicos El concepto de distancia es uno de los conceptos que manejamos casi todos los seres humanos desde una edad muy temprana, gracias a él logramos distinguir y resolver varios problemas cotidianos que se nos presentan a diarı́o, sin embargo, pocos manejamos de manera formal el concepto, como veremos en éste capı́tulo su estudio y formalización puede ir más allá de lo que el concepto de distancia intuitiva significa para la mayorı́a de las personas. Ası́mismo introduciremos la manera formal de plantear un problema de clsificación. 2.1 Distancia De manera intuitiva, espacio métrico lo podemos definir como un conjunto en el que se puede hablar de distancia entre sus elementos. Sin embargo, esta definición requiere conocer lo que es distancia, la cual muchas veces se define como una función que asocia un número real positivo a todo par de elementos de un conjunto. En seguida se presenta de manera formal la definición de distancia. Definición 2.1.1 Una métrica (distancia) es una función d:E×E →R que posee las siguientes propiedades: 6 Conceptos básicos 1. ∀ x, y ∈ E : d (x,y)≥ 0 2. Para x, y ∈ E : d (x,y) = 0 ⇔ x = y. 3. ∀ x, y∈ E : d (x,y) = d (y,x ) (simetrı́a). 4. ∀ x, y, z ∈ E : d (x, y) ≤ d (x, z ) + d (y, z ) (desigualdad triangular). Definición 2.1.2 Un espacio métrico es un par (E, d) constituido por el conjunto E y una métrica d definida sobre E. Debemos mencionar que se pueden definir más de una métrica sobre un mismo espacio lo que nos lleva a obtener diferentes espacios métricos. El siguiente lema es un resultado de las propiedades que definen una métrica y que será de mucha utilidad en aplicaciones posteriores. Lema 2.1.3 En un espacio métrico (E, d) se verifica ∀ x, y, z, t ∈ E : |d(x, y) − d(z, t)| ≤ d(x, z) + d(y, t). En particular: ∀ x, y, z ∈ E : |d(x, z) − d(y, z)| ≤ d(x, y). Demostración: Sean x, y, z, t ∈ E y considerando que d es una métrica entonces se cumple: d(x, y) ≤ d(x, z) + d(y, z) ≤ d(x, z) + d(y, t) + d(z, t) luego, d(x, y) − d(z, t) ≤ d(x, z) + d(y, t)...........(1) Por otro lado: 2.1 Distancia 7 d(z, t) ≤ d(z, x) + d(t, x) = d(x, z) + d(t, x) ≤ d(x, z) + d(t, y) + d(x, y) = d(x, z) + d(y, t) + d(x, y) de donde −d(x, z) − d(y, t) ≤ d(x, y) − d(z, t) −(d(x, z) + d(y, t)) ≤ d(x, y) − d(z, t)..............(2) Por las desigualdades (1) y (2) y las propiedades de valor absoluto obtenemos: |d(x, y) − d(z, t)| ≤ d(x, z) + d(y, t) Ejemplos Ejemplo 1. Sea E un conjunto cualquiera no vacı́o. Definamos la función d:E×E →R tal que: ∀ x, y ∈ E : d(x, y) = 1, si x 6= y; d(x, y) = 0, si x = y. Demostrar que la función d es una métrica en E. En efecto, veamos que para x 6= y la función d = 1 > 0 y para x = y se tiene d =0 por lo tanto las propiedades 1.1.1.1 y 1.1.1.2 se satisfacen, respectivamente. Es fácil ver que la propiedad de simetrı́a también se cumple. Según la definición de la función d se cumple que d(y, x) = 1, si y 6= x ; d(y, x) = 0, si y = x. 8 Conceptos básicos La última propiedad, la desigualdad triangular, se verifica de la siguiente manera: Considere x, y, z ∈ E, entonces 0 ≤ d(x, y) ≤ 1 0 ≤ d(x, z) ≤ 1 0 ≤ d(y, z) ≤ 1 es decir, que pueden ser cero o uno. De ahı́ se sigue que d(x, z) + d(y, z) ≤ 2 lo que nos indica que lo mı́nimo que puede valer la suma es 0 y esto pasa para cuando los tres elementos de E son iguales y entonces se satisface la desigualdad triangular. Cuando la suma es uno se cumple para x =z o y=z. Si consideramos x =z se tiene d(x, z) + d(y, z) = 0 + d(y, x) lo que satisface que d(x, y) ≤ d(x, z) + d(y, z) = 0 + d(y, x) Algo similar pasa si consideramos y=z. Y para cuando la suma es igual a dos entonces la desigualdad triangular también se cumple. Ası́ vemos que la desigualdad triangular se cumple para todos los elementos de E y finalmente se concluye que d definida como d(y, x) = 1, si y 6= x ; d(y, x) = 0, si y = x es una métrica. Ejemplo 2. Consideremos el conjunto R de los números reales y la función d(x, y)=|x − y| con x, y en R, verificar que d es una métrica. Por definición de valor absoluto se sabe que 2.1 Distancia 9 |x − y| ≥ 0 para todo número real, y la igualdad se cumple para x =y con lo que se afirma que se d satisface las dos primeras propiedades de una métrica. Utilizando las propiedades de valor absoluto se puede mostrar que se cumple con la propiedad de simetrı́a como sigue: d(x, y) = |x − y| = | − (y − x)| = |y − x| = d(y, x) Para verificar que la función d también satisface la desigualdad triangular veamos que dados x, y, z ∈ R entonces se cumple que −|x − y| ≤ x − y ≤ |x − y| y −|y − z| ≤ y − z ≤ |y − z| luego entonces −|x − y| − |y − z| ≤ (x − y) + (y − z) ≤ |x − y| + |y − z| −(|x − y| + |y − z|) ≤ x − z ≤ |x − y| + |y − z| |x − z| ≤ ||x − y| + |y − z|| |x − z| ≤ |x − y| + |y − z| |x − z| ≤ |x − y| + |z − y| d(x, z) ≤ d(x, y) + d(z, y) Como la función d cumple con las propiedades de una métrica entonces decimos que d definida como d (x,y)=|x − y| es una métrica. 10 Conceptos básicos Ejemplo 3. Sea d((x1 , y1 ), (x2 , y2 )) = max{|x1 − x2 |, |y1 − y2 |} una función definida sobre R2 . Se quiere verificar que la función d es una métrica, a la cual se le conoce comúnmente como distancia del camión. Las dos primeras propiedades de una métrica se satisfacen ya que el valor de d es una valor positivo siempre que x 6= y o es igual a cero para x =y. Luego veamos que dados dos números reales se tiene que |x1 − x2 | = |x2 − x1 | ası́ que d((x1 , y1 ), (x2 , y2 )) = max{|x1 − x2 |, |y1 − y2 |} = max{|x2 − x1 |, |y2 − y1 |} = d((x2 , y2 ), (x1 , y1 )) entonces se satisface la propiedad de simetrı́a. Ejemplo 4. Consideremos el conjunto R2 y la función d((x1 , y1 ), (x2 , y2 )) = |x1 − x2 | + |y1 − y2 | definida en el conjunto. Dado que |x1 − x2 | ≥ 0 y |y1 − y2 | ≥ 0 y la igualdad se cumple para x1 = x2 y y1 = y2 entonces d((x1 , y1 ), (x2 , y2 )) cumple con las dos primeras condiciones de una métrica. Ahora observemos que: d((x1 , y1 ), (x2 , y2 )) = |x1 − x2 | + |y1 − y2 | = |x2 − x1 | + |y2 − y1 | = d((x2 , y2 ), (x1 , y1 )) por lo tanto se cumple la propiedad de simetrı́a de una métrica. Otro concepto de suma importancia para el estudio que nos ocupa en esta tesis es el de norma y espacio normado. Definición 2.1.4 Sea V un espacio vectorial definido sobre el conjunto de los números reales R. Entonces, una norma en V es una función de V en R que poseen las propiedades siguientes (se denotará por kxk a la norma de x): 1. ∀ x ∈ V : kxk ≥ 0 2.1 Distancia 11 2. kxk = 0 ⇔ x = θ; en donde θ es el vector nulo en V, o elemento neutro respecto a la suma en V. 3. ∀ x ∈ V, ∀ λ ∈ R: kλxk = |λ| ||x|| 4. ∀ x, y ∈ V: kx + yk ≤ kxk + kyk (desigualdad triangular de la norma). Una norma se puede considerar de manera intuitiva como la longitud de un vector. De forma semejante de la definición de espacio métrico definimos un espacio normado. Definición 2.1.5 Un espacio normado es un par (V, kk) donde el espacio vectorial V está provisto de una norma. A partir de un espacio vectorial V podemos originar diferentes espacios normados con solo definir diversas normas en el espacio. Un hecho de importancia es demostrar que un espacio normado es metri-zable; es decir, que se puede definir una métrica inducida por la norma en el espacio. Definamos la función d:V ×V →R tal que ∀ x, y ∈ V d(x, y) =k x − y k Ahora queremos verificar que d es realmente una métrica en V . Para ello veamos que por las propiedades de una norma k x − y k≥ 0 y que la igualdad se cumple para el caso en que x − y = θ, donde θ es el vector nulo, entonces x = y con lo que se verifica que la función d cumple con las primeras dos propiedades de una métrica. Por otro lado, observemos, por las propiedades de una norma, que: d(x, y) = = = = = kx−y k k (−1)(y − x) k | −1 |k y − x k ky−xk d(y, x) entonces d cumple con la propiedad de simetrı́a. Finalmente verifiquemos que d también satisface la desigualdad triangular. consideremos x, y, z ∈ R y hagamos 12 Conceptos básicos d(x, y) = k x − y k = k (x − z) + (z − y) k y por las propiedades de una norma tenemos que k (x − z) + (z − y) k ≤ k x − z k + k z − y k = d(x, z) + d(z, y) finalmente se tiene d(x, y) ≤ d(x, z) + d(z, y) = d(x, z) + d(y, z) por lo tanto se concluye que d es una métrica en V inducida por la norma y por lo tanto el espacio normado es metrizable. 2.2 Distancia entre conjuntos Dado un espacio métrico (E, d), fijemos un punto x0 ∈ E y un conjunto no vacı́o A ⊂ E. Luego, designemos por {d(x0 , x)}x∈A al conjunto de las distancias de x0 a todos los elementos de A. Observemos que el conjunto está acotado inferiormente por 0. Adoptemos la notación d(x0 , A) = inf{d(x0 , x)}x∈A Definición 2.2.1 La distancia de x0 al conjunto A está dado por el número d(x0 , A). Definición 2.2.2 Dados dos conjuntos no vacı́os A, B ⊂ E designemos por d(x, y)x∈A, y∈B al conjunto de los números reales constituidos por todas las distancias entre un punto de A y un punto de B. Entonces, la distancia entre el conjunto A y el conjunto B está definido por el número d(A, B) = inf{d(x, y)}x∈A, y∈B 2.2 Distancia entre conjuntos 13 Nuevamente, vemos que existe la cota inferior del conjunto d(x, y)x∈A, y∈B y es más, existe el infimo ya que el valor mı́nimo posible en este conjunto es cero. Es importante mencionar que si x0 ∈ A entonces d(x0 , A) = 0 pero el recı́proco no siempre se cumple. De igual forma veamos que ... Lema 2.2.3 Si A y B son conjuntos no vacı́os en un espacio métrico (E, d) se tiene: d(x, y) = inf{d(x, B)}x∈A = inf{d(y, A)}y∈B Demostración: Sea x cualquier elemento en A, entonces por definición de distancia entre conjuntos se tiene d(A, B) ≤ d(x, y) ∀y ∈ B lo que indica que d(A, B) es cota inferior del conjunto {d(x, y)}y∈B . Luego d(A, B) ≤ d(x, B) = inf{d(x, y)}y∈B para un x en A. Y como x es arbitrario entonces se sigue que d (A, B) es cota inferior del conjunto {d(x, B)}x∈A , ası́: d(A, B) ≤ inf{d(x, B)}x∈A Luego, existen x ∈ A y y ∈ B tales que: d(A, B) ≤ d(x, y) ≤ d(A, B) + ε con ε > 0 número real, entonces d(A, B) + ε no es cota inferior del conjunto {d(x, B)}x∈A por lo tanto se tiene: inf{d(x, B)}x∈A < d(A, B) + ε ⇒ inf{d(x, B)}x∈A − d(A, B) < ε Por otro lado: d(A, B) ≤ inf{d(x, B)}x∈A ⇒ 0 ≤ inf{d(x, B)}x∈A − d(A, B) 14 Conceptos básicos ası́ 0 ≤ inf{d(x, B)}x∈A − d(A, B) ≤ ε.....(1) Se asegura que inf{d(x, B)}x∈A − d(A, B) = 0 Para justificarlo se supone inf{d(x, B)}x∈A − d(A, B) = ε0 con ε0 > 0 número real entonces ya que la expresión (1) se debe cumplir para cualquier ε > 0 número real se toma ε0 = 21 ε con lo que se llega a una contradicción. 1 0 ≤ ε0 ≤ ε0 ⇒ 0 ≤ 2 ≤ 1 2 Ası́ que se debe cumplir que inf{d(x, B)}x∈A = d(A, B) 2.3 Planteamiento formal del problema. Dadas las descripciones I(Oj ) = (x1 (Oj ), ..., xn (Oj )) de los objetos O1 , ..., Om de un universo dado U . Cada xi tiene asociado un conjunto de valores admisibles Mi , i = 1, ..., n. Sobre Mi se define un criterio de comparación de valores de dicha variable Ci : Mi × Mi → ∆, donde ∆ es un conjunto dado que pudiera ser {0, 1}; {0, 1, ..}; un subconjunto de R, etc. En dependencia de lo cual los criterios de comparación, recibirán diferentes denominaciones. Entre las descripciones de los objetos se define una función de semejanza β: n Y Mi × n Y i=1 en donde Mi −→ ∆ i=1 n Y Mi i=1 denota el producto cartesiano de los conjuntos de valores admisibles de los rasgos indicados y ∆ es como antes. El problema de la clasificación sin aprendizaje, desde elQpunto de vista formal, consiste en determinar un criterio de agrupamiento , tal que se puede 2.3 Planteamiento formal del problema. 15 obtener la estructura interna del conjunto de objetos U , las relaciones entre los objetos y las agrupaciones de los objetos. Es inmediato que el criterio de agruQ pamiento buscado tendrá Q que ser una función de la función de semejanza β. Cuando este criterio y la medida de similaridad entre los objetos β, son obtenidos por medio de un proceso de modelación matemática se tiene una garantı́a o al menos una mayor certeza de que la estructuración obtenida ”es natural”. En la medida que esos parámetros del problema reflejen adecuadamente la realidad que pretenden modelar, en esa medida pudiéramos hablar de ”una estructuración natural” del universo de objetos sujeto a estudio. Resumiendo pudiéramos decir que en un problema de clasificación sin aprendizaje los tres elementos esenciales lo constituyen: • El espacio de representación de los objetos (ERI) • La medida de similaridad (β, función de semejanza, no necesariamente una distancia) y Q • El criterio de agrupamiento Es decir, la manera en que será utilizada la similaridad para la solución del problema planteado. En otras palabras, resolver un problema de clasificación sin aprendizaje (no supervisada) consiste en hallar un algoritmo A(U, β, Y ) En términos generales, se puede considerar que existen dos tendencias fundamentales en la solución de problemas de clasificación sin aprendizaje: una basada en la función de semejanza, que denominaremos clasificatoria, cuyo objetivo central consiste en encontrar los elementos que, dadas sus relaciones de semejanza, deben estar en un mismo agrupamiento y una segunda, que denominamos conceptual, cuyo interés básico es hallar la determinación intencional de los conjuntos que formarán la estructuración final. En el primer caso se tiene un universo de objetos y es necesario agruparlos de modo tal que los objetos que estén en el mismo agrupamiento se parezcan (se asemejen) más entre sı́ que con objetos de otros agrupamientos. En el segundo caso, tenemos un universo de objetos y necesitamos formar agrupamientos de modo tal que los objetos que estén en el mismo agrupamiento cumplan (satisfagan en cierto grado equivalente entre ellos) la propiedad que caracteriza al agrupamiento como conjunto, en su determinación intencional. 16 Conceptos básicos Las técnicas para la solución del problema por una u otra vı́a son variadas y en esta tesis sólo se abordaran algunas de ellas. Es natural pensar que las mismas estarán en fuerte dependencia de las caracterı́sticas del problema, en especial del espacio de representación inicial de los objetos sujetos a estudio. 2.4 El espacio de representación inicial (ERI) (Rn , 2n y E1 × ... × En ) En el proceso de modelación matemática debe obtenerse la información necesaria para poder determinar las caracterı́sticas del ERI. Esto suele violentarse, el área de aplicación de una técnica estará determinada por las caracterı́sticas del ERI. Desde el punto de vista de las herramientas matemáticas que se emplean para la solución de un problema de clasificación sin aprendizaje y de los supuestos que las mismas conllevan, existen diferentes enfoques. En el enfoque estadı́stico se asume una distribución de los valores, se suponen caracterı́sticas sobre el ERI y se aplican las técnicas. Por lo general nos encontraremos ERI’s que están definidos sobre Rn , el espacio de los números reales (n-dimensional) o el 2n , el booleano n-dimensional. Ambos proveerán al problema de la posibilidad de definir una métrica sobre el mismo, por lo que las ideas centrales se moverán en el entorno de agrupar a los objetos en la medida de la distancia a la que éstos se encuentran unos de otros, siguiendo la idea básica de que los objetos de un mismo agrupamiento estarán más cerca entre sı́ que lo que están respecto a otros en agrupamientos diferentes. Esta idea estará presente también en otros enfoques. En el enfoque lógico combinatorio, la filosofı́a es totalmente a la inversa, no se partirá de asumirle al ERI propiedades que no sean aquellas que han sido formalizadas a partir de un proceso de modelación matemática. Por lo general en este enfoque nos encontraremos con ERI que son simplemente productos cartesianos de los conjuntos de valores admisibles de las variables en términos de las cuales se describen todos los objetos. Para las técnicas basadas en el enfoque estadı́stico la forma más obvia de medir la similitud o divergencia entre dos muestras es la distancia entre ambos conjuntos, análogamente entre objetos. Veamos algunos de los ejemplos más usados de estas medidas 2.5 Medidas de (divergencia) similitud 2.5 17 Medidas de (divergencia) similitud Veamos ejemplos y algunas caracterı́sticas de las medidas de similaridad más usadas en este enfoque: Sean dadas las descripciones de dos objetos I(Oi ) = (x1 (Oi ), ..., xn (Oi )) y I(Oj ) = (x1 (Oj ), ..., xn (Oj )) Sea D2 una función que denominaremos divergencia D2 : Rn → R tal que i) Será positiva para dos objetos distintos, es decir, D2 (I(O), I(O0 )) > 0 ii) La divergencia de un objeto con sigo mismo es nula, esto es D2 (I(O), I(O)) = 0 . iii) No debe estar afectada por la denominación de los objetos, D2 (I(O), I(O0 )) = D2 (I(O0 ), I(O)) iv) La divergencia debe ser aditiva para caracterı́sticas independientes, esto es n X D2 (I(O), I(O0 )) = D2 (xi (O), xi (O0 )) i=1 suponiendo que los rasgos son independientes. v) D2 (I(O), I(O0 )) no debe crecer al aumentar el número de rasgos. vi) Debe ser invariante ante traslaciones y rotaciones. 18 Conceptos básicos vii) Debe tener en cuenta la interdependencia de los rasgos en el agrupamiento en que se hayan ubicado los objetos viii) Debe ser sensible a las diferentes ponderaciones a introducir en la cuantificación de la divergencia de cada caracterı́stica, de acuerdo con su mayor o menor importancia informacional en la discriminación de los objetos Ejemplos. 1. Distancia Euclideana 0 2 D (I(O), I(O )) = n X (xi (O) − xi (O0 ))2 i=1 Esta D2 no satisface las propiedades (vi) ni (vii) 2. Distancia Euclideana normalizada 0 2 D (I(O), I(O )) = n X ((xi (O) − xi (O0 ))Si )2 i=1 siendo Si la desviación tı́pica de xi . 3. Distancia de Mahalanobis D2 (I(O), I(O0 )) = (x1 (O), ..., xn (O))t · (x1 (O0 ), ..., xn (O0 )) I(O)t · I(O) + I(O0 )t I(O) − I(O)t I(O0 ) siendo I(O) = (x1 (O), ..., xn (O)) Supongamos que las variables sean booleanas y denotemos por: (1,1) η ij : el número de unos coincidentes entre los objetos Oi , Oj . (0,0) η ij : el número de ceros coincidentes entre los objetos Oi , Oj . (1,0) η ij : el número de unos en Oi coincidentes con ceros de Oj . (0,1) η ij : el número de ceros en Oi coincidentes con unos de Oj . ρij : el número de rasgos coincidentes entre Oi y Oj , es decir (1,1) ρij = η ij (0,0) + η ij 2.5 Medidas de (divergencia) similitud 19 θij : el número de rasgos no coincidentes entre Oi y Oj , es decir (0,1) θij = η ij (1,0) + η ij n : el número total de variables en términos de las cuales se describen los objetos (1) (1) (0) (1) η i , η j : el número de unos en Oi (respectivamente en Oj ) η i , η j : el número de ceros en Oi (respectivamente en Oj ) 4. Promedio de rasgos coincidentes: Sij = ρij m siendo 0 ≤ Sij ≤ 1. Se aplica cuando el cero y el uno aportan información. 5. Coeficiente de Rao: (1,1) η ij Sij = m siendo 0 ≤ Sij ≤ 1 6. Coeficiente Hamman: ρij − θij m se aplica cuando ρij ≥ θij , esto es, Sij ≥ 0 Sij = 7. Coeficiente de Rodgers y Tanimoto: (1,1) Sij = η ij (1) (1) (1,1) η i η j − η ij siendo 0 ≤ Sij ≤ 1 8. Coeficiente de Gekard: (1,1) Sij = siendo 0 ≤ Sij ≤ 1 η ij (1,1) η ij − θij 20 Conceptos básicos 9. Coeficiente Dake (1,1) Sij = 2η ij (1,1) 2η ij + θij siendo 0 ≤ Sij ≤ 1 10. (1,1) Sij = η ij (1,1) η ij + 2θij siendo 0 ≤ Sij ≤ 1 11. Sij = ρij ρij = 2m − θij m + θij Nota: Todos los coeficientes de semejanza ( para variables booleanas ) pueden ser extendidos al caso de variables cualesquiera, con la única restricción que todos los criterios de comparación de valores de las variables sean booleanos. Capı́tulo 3 Enfoque métrico: ERI=Rn ó 2n En el enfoque estadı́stico ante un problema de clasificación sin aprendizaje, en la mayorı́a de las situaciones se asume una distribución dada de los datos y posteriormente se aplican las técnicas adecuadas para estas suposiciones. Por ejemplo, si los objetos se distribuyen en el espacio de representación (que se asume normado) según una única distribución normal, entonces ”lo máximo que se puede obtener de los datos está contenido en los parámetros que definen la distribución del vector de los promedios y la matriz de covarianzas de la muestra” afirma Laureano Escudero [2]. Y continua ”El vector de los promedios localiza el centro de gravedad de la nube de puntos. Puede considerarse como el patrón prototipo X que mejor representa a todos los patrones de la muestra, en el sentido de minimizar la suma de los cuadrados de las distancias de los demás patrones con respecto a si mismo. La matriz de covarianzas de la muestra indica el grado de representatividad con que el vector de los promedios representa al conjunto de patrones que la componen”. Aunque es de señalar que el patrón pudiera no existir, es decir, puede no ser un elemento de la muestra dada (el universo U ). ”Si los patrones de la nube de objetos siguen una distribución normal, el vector de los promedios tiende a encuadrarse en la región en que la muestra está más densamente concentrada. Si la muestra no está normalmente distribuida, promedio y covarianzas pueden dar una errónea distribución de los datos”. Por otro lado debemos de añadir que el vector de los promedios y la matriz de covarianza son insuficientes para describir totalmente un conjunto arbitrario de datos. Volviendo sobre el concepto de ”naturalidad”, Laureano Escudero dice ”Para llegar a agrupar los patrones en clases ”naturales” el análisis cluster Enfoque métrico: ERI=Rn ó 2n 22 utiliza el criterio de minimizar la desviación interna de los patrones de un mismo grupo y por lo tanto maximizar la distancia entre los diversos grupos”, lo que es sin lugar a dudas una de las ideas intuitivamente más inmediata ante un problema de clasificación sin aprendizaje. Es muy frecuente en este enfoque plantear las cosas del siguiente modo: ERI = Rn ; β = distancia sobre Rn ; y como criterio de agrupamiento condiciones de optimalidad sobre la base de la distancia definida. En ocasiones ERI = 2n , es decir, el booleano n-dimensional sobre el que se define alguna distancia. Esto bajo el supuesto de que todas las variables que describen a los objetos son booleanas. Estos planteamientos se sostienen sobre la base de la afirmación ”la forma más obvia de medir la similitud o divergencia entre dos muestras es la distancia entre ambos conjuntos.” 3.1 Estrategias de agrupamiento Con base en lo expuesto en la sección anterior, se puede decir que en el enfoque métrico se consideran las siguientes estrategias para la formación de agrupamientos: 1. Métodos de reagrupamiento y jerárquicos . Un método de reagrupamiento es aquel en el que habiendo determinado el número c de agrupamientos a formar, el problema consiste en distribuir los objetos de universo en ciertos c agrupamientos de tal forma que se maximice alguna medida de similitud (prefijada) entre los objetos del mismo agrupamiento. Los métodos jerárquicos tienen por objetivo agrupar a agrupamientos (cada agrupamiento de objetos se trata como si fuera un objeto de un nuevo universo) para formar uno nuevo , aquı́ se tiende hacia un nivel de mayor generalización o bien separar agrupamientos formando nuevos agrupamientos llamados subagrupamientos, es decir, aquı́ se tiende hacia un nivel de mayor particularización. 2. Métodos aglomerativos y divisivos. Los métodos jerárquicos se subdividen en aglomerativos (en los que se parte de c agrupamientos hasta llegar al universo, en cada nivel se procede a fusionar agrupamientos que sean similares (este concepto hay que definirlo en cada caso)). 3.1 Estrategias de agrupamiento 23 Los métodos divisivos son aquellos en los que se parte del universo y se van obteniendo en cada nivel dos agrupamientos repartidos de modo tal que se maximice una medida de divergencia preestablecida. 3. Método tipológico. Los métodos tipológicos, aunque también son jerárquicos, se diferencian de éstos en que los jerárquicos contemplan simultáneamente las n caracterı́sticas de cada objeto para formar los agrupamientos o separarlos en nuevos agrupamientos, según se observe una mayor similitud o divergencia, respectivamente. En cambio los métodos tipológicos tienen en cuenta una caracterı́stica en la agrupación o separación de los objetos, de tal forma que si el método es, por ejemplo, tipológico divisivo se comienzan a separar los objetos seleccionados con la caracterı́stica de mayor efecto discriminante (¿cómo se puede lograr esto?). Una vez formados los dos nuevos agrupamientos de objetos se estudia, independientemente a cada uno de ellos, los dos nuevos estratos de objetos que se pueden formar con la influencia de la caracterı́stica que más discrimina. Éstas se obtienen sobre la base de maximizar la homogeneidad interna (entre los objetos del mismo agrupamiento) y por tanto maximizar la heterogeneidad entre los estratos. Cuando no se puede seguir subdividiendo con la variable más discriminante, se continúa el proceso con la siguiente variable en orden de importancia discriminatorio y ası́ sucesivamente. Si atendemos a las relaciones entre los conjuntos que se forman en la estructuración del universo. 4. Métodos generadores de agrupamientos solapados y ajenos. En los métodos que generan agrupamientos solapados se admite que un objeto pueda formar parte simultáneamente de más de un agrupamiento. Por su parte en los generadores de agrupamientos ajenos (exclusivos) si un objeto pertenece a un agrupamiento no puede pertenecer a otro. Es valioso apuntar aquı́, aunque después retomemos esta idea, que en primer caso la propiedad que caracteriza a los agrupamientos (considerados como conjuntos) no excluye a otras, mientras que en el caso de los agrupamientos exclusivos sı́ ocurre. Análogamente, si se toma en cuenta la naturaleza de dichos conjuntos, es decir si son conjuntos duros (de la Teorı́a Clásica De Conjuntos) o difusos (Teorı́a de los Subconjuntos Difusos[3]), aparecerı́an nuevas subdivisiones Enfoque métrico: ERI=Rn ó 2n 24 para los métodos generadores de agrupamientos difusos considerando los diferentes conceptos de cubrimientos y particiones difusas[4]. Considerando la forma en que se obtienen dichos agrupamientos. 5. Métodos directos e iterativos. Los métodos directos se caracterizan por utilizar algoritmos que operan de modo tal que una vez que se asigna un objeto a un agrupamiento no lo remueve del mismo. Los iterativos por su parte, corrigen sus propias asignaciones sobre la base de volver a comprobar en subsiguientes iteraciones si la asignación de la muestra total es óptima. Si no lo fuese, estos métodos efectúan un nuevo agrupamiento. 6. Métodos secuenciales y simultáneos. Los métodos secuenciales se caracterizan por aplicar la misma serie recursiva de operaciones a cada agrupamiento (por ejemplo los métodos de reagrupamiento). Mientras, los simultáneos son aquellos que de una vez provocan los agrupamientos de una muestra. 7. Métodos adaptativos y no adaptativos. Se trata de métodos que ”aprenden” en su ejecución, de la conformación de los agrupamientos que están fusionando de manera tal que, según sea la fusión ası́ cambian de medida de similitud (divergencia) o del criterio a optimizar. Los métodos no adaptativos (que son mayorı́a) son aquellos en que el algoritmo se encamina directa o iterativamente a la solución sin variar los parámetros esenciales del método, el cual está predeterminado. La estructuración de los métodos de agrupamiento antes expuesta no pretende otra cosa que no sea dar una idea global de las formas en que puede ser abordada la solución del problema que nos ocupa. Solo referiré a una de esas familias y dentro de ellas a un procedimiento especı́fico, que contiene en esencia una de las ideas más importantes para la realización de agrupamientos, para la solución del problema de clasificación sin aprendizaje. 3.2 Técnicas de reagrupamiento Sobre la base de conceptos de similaridad como los ejemplificados a través de las medidas de divergencia anteriores, se realiza el proceso de agrupamiento del universo en cuestión siguiendo los pasos siguientes: 3.2 Técnicas de reagrupamiento 25 a) Dado un universo U , se conoce el número c de agrupamientos que se desean obtener, en los que U debe estructurarse, de modo tal que se optimice un criterio. b) Los criterios por lo general estarán dirigidos a optimizar una cierta medida del grado de homogeneidad interna de los agrupamientos o de heterogeneidad entre los mismos. Ejemplos de estos criterios pueden ser: Jc = tr (SB ) = ni c X X kI(Oji ) − mi kn i=1 j=1 Donde mi es el vector de los n promedios de los valores de las variables en el i-ésimo agrupamiento.; ni la cantidad de objetos en dicho agrupamiento; tr denota la traza de la matriz, es decir, la suma de los elementos de su diagonal y SB esta dado por SB = c X ni (mi − m)(mi − m)t i=1 que es una matriz que recoge la suma ponderada de las desviaciones de cada agrupamiento respecto al objeto prototipo, promedio m de la muestra total. Si bien esta medida es simple, en particular por su cálculo, y por ser invariante ante transformaciones lineales (cambio de escala) siempre y cuando se normalicen las variables, tiene el inconveniente de que no es sensible a la relación de dependencia de las variables. Lo que sı́ se tiene en cuenta en el siguiente ejemplo. JM = ni c X X −1 (I(Oj ) − mi )t S (i) (I(Oj ) − mi ) i=1 j=1 que se conoce con el nombre de suma de las desviaciones de Mahalanobis, donde ni X (i) S = (I(Oji ) − mi )(I(Oji ) − mi )t j=1 es la matriz asociada al agrupamiento i-ésimo que nos da una medida de la variación de las descripciones de los objetos del i-ésimo agrupamiento respecto al vector de los promedios del mismo agrupamiento. Enfoque métrico: ERI=Rn ó 2n 26 Una vez determinado el criterio a optimizar, se procede de manera iterativa; en el caso que, por ejemplo las variables no tienen mayor relación de dependencia, se trabaja en la optimización del criterio Jc , si por el contrario los objetos estarán correlacionados, entonces se utiliza JM . Veamos un ejemplo de como funcionarı́a este proceso: Supongamos que se decidió trabajar con el criterio de la traza de la matriz SB , es decir, con distancia euclideana. paso 1.- Se considera que hay una solución inicial previa para la estructuración de los objetos del universo U en c agrupamientos. Ésta pudo haber sido obtenida de manera aleatoria o por vı́a del criterio de los expertos del área en cuestión. Se inicializa la variable TOTAL en cero. paso 2.- Se calcula la diagonal de la matriz de covarianzas S de la muestra U de objetos, misma que viene dada por S = kSpf knxn siendo Pm − x̄p )(xf (Oi ) − x̄f ) m−1 en la cual x̄p es el promedio de los valores de dicha variable en toda la muestra, m el tamaño de la misma. Spf = i=1 (xp (Oi ) paso 3.- Normalización del valor xf (Oi ) de la variable en el objeto en cuestión, para cada una de n las variables y para los m objetos de la muestra por medio de p xf (Oi )/ Sf f paso 4.- Obtención de la suma total del cuadrado del error de las desviaciones de los objetos con respecto a su propio promedio según la ecuación Jc = tr (SB ) = ni c X X kI(Oji ) − mi k2 i=1 j=1 paso 5.- Selección del próximo objeto. En este paso se selecciona al azar el objeto I(Oj ) del i-ésimo agrupamiento Ki , sobre el que se va a efectuar el estudio sobre el efecto que causa sobre el criterio a optimizar su traslado 3.2 Técnicas de reagrupamiento 27 del i-ésimo agrupamiento al k-ésimo, con i 6= j. Si ni = 1 y ya se ha seleccionado T OT AL = M − 1 objetos desde el último traslado, se termina el programa ya que este serı́a el agrupamiento óptimo. Si ni = 1 y T OT AL < (m − 1), se actualiza el ı́ndice de T OT AL y se selecciona un nuevo objeto. paso 6.- Se calcula el valor de ρt asociado a cada agrupamiento de Kt mediante las expresiones ρk = nk kI(Oji ) − mk k2 nk + 1 ρk = nk kI(Oji ) − mk k2 nk − 1 para k 6= i para k = i que recoge para cada k 6= i el incremento de la desviación que supondrı́a si el objeto señalado se traslada del i-ésimo agrupamiento al k-ésimo, para k = i la expresión nos dice el decremento que se producirá en la desviación en el i-ésimo agrupamiento al quitar dicho objeto. paso 7.- Obtención del ρt : menor incremento en las desviaciones asociadas a cada agrupamiento al que fue llevado el objeto que se quitó del i-ésimo agrupamiento, siendo t el ı́ndice del agrupamiento en que se produjo el menor incidente. paso 8.- Si ρi > ρk se efectúa el traslado del objeto desde el i-ésimo agrupamiento al k-ésimo. Se actualizan las magnitudes de las desviaciones asociadas a cada agrupamiento. Con lo cual se obtiene un nuevo valor para Jc . Ası́ mismo se actualizan los nuevos vectores promedio de cada agrupamiento, los nuevos tamaños de cada uno de ellos, el ı́ndice TOTAL se inicializa en cero nuevamente y se regresa al paso 4. paso 9.- Si ρi ≤ ρk no se debe efectuar el traslado del objeto desde el i-ésimo agrupamiento al k-ésimo ya que se incrementarı́a el valor del funcional Jc . Se actualiza TOTAL incrementándolo en una unidad. Si T OT AL = m, el tamaño de la muestra, significará que se han efectuado m iteraciones desde el paso 4 sin que se haya logrado mejorı́a alguna en el valor del funcional, por tanto se ha alcanzado un óptimo local del funcional con la distribución de los objetos en c agrupamientos. Si T OT AL < m Enfoque métrico: ERI=Rn ó 2n 28 todavı́a no se han seleccionado todos los objetos desde el último traslado de agrupamiento efectuado y por tanto se regresa al paso 4. 3.3 Algoritmo c-means. El algoritmo c-means es uno de los procedimientos de reagrupamiento más conocidos y se basa sobre la idea de minimizar el cuadrado de las distancias de todos los elementos del agrupamiento al centro del mismo. Esta es una de las formas de maximizar la homogeneidad de cada uno de los agrupamientos, maximizando por ende la heterogeneidad entre los mismos. Paso 1.- Seleccionemos en la primera iteración, c centros y denotemoslos por z1 (1), z2 (1), ..., zc (1) para los agrupamientos a formar, la primera estructuración propuesta, se realiza de manera arbitraria, aleatoriamente, o siguiendo el criterio de los expertos*. Paso 2.- En el k-ésimo paso de la iteración del algoritmo, distribuyamos los elementos de la muestra en los c agrupamientos siguiendo el siguiente criterio: O ∈ Sj (k) si kI(O) − zj (k)k < kI(O) − zi (k)k (3.1) para todo i = 1, ..., c; i 6= j, donde S − j(k) denota el agrupamiento del cual zj (k) es el centro. Observe que la expresión (1) significa que un elemento del universo se ubica en el agrupamiento cuyo centro se encuentra más cercano a dicho elemento. Paso 3.- A partir de los resultados obtenidos en el paso anterior se calcula los nuevos centros zj (k + 1), j = 1, ..., c, de manera tal que la suma de los cuadrados de las distancias de cualquier punto de Sj (k) al nuevo centro de ese agrupamiento sea mı́nima. Esto es, el nuevo agrupamiento con centro zj (k + 1) se determina de modo tal que el parámetro Jj = X O∈sj (k) kI(O) − zj (k + 1)k2 con j = 1, ..., c (3.2) 3.3 Algoritmo c-means. 29 sea minimizado, El zj (k + 1) que minimiza la expresión (2.2) es el valor medio del conjunto Sj (k). De esta forma el centro del nuevo agrupamiento viene dado por la expresión zj (k + 1) = 1 X I(O) Nj (3.3) O∈Sj (k) donde Nj = kSj (k)k El nombre del algoritmo, c-means, obedece a la manera en que se van calculando secuencialmente los centros de los nuevos agrupamientos. Paso 4.- Si zj (k + 1) = zj (k) para todo j = 1, ..., c, termina el procedimiento con la propuesta de estructuración del universo, de lo contrario se regresa al paso 2. Antes de hacer algunos comentarios acerca de los supuestos sobre los que se ha elaborado este algoritmo, veamos un ejemplo numérico en el plano* . Sea U un universo dado por la siguiente tabla: Objeto O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 x1 , x2 0,0 1,0 0,1 1,1 2,1 1,2 2,2 3,2 6,6 7,6 Objeto O11 O12 O13 O14 O15 O16 O17 O18 O19 O20 x1 , x2 8,6 6,7 7,7 8,7 9,7 7,8 8,8 9,8 8,9 9,9 Paso 1.- Sea c = 2. Tomemos como distribución inicial de los centros la siguiente: z1 (1) = I(O1 ) = (0, 0), z2 (1) = I(O2 ) = (1, 0) Paso 2.- Como kI(O1 ) − z1 (1)k < kI(O1 ) − zi (1)k Enfoque métrico: ERI=Rn ó 2n 30 y kI(O3 ) − z1 (1)k < kI(O3 ) − zi (1)k para i = 2; y para los restantes objetos de la muestra se cumple que kI(Op ) − z2 (1)k < kI(Op ) − zi (1)k para p = 2, 4, 5, ..., 20; i = 1, tenemos que: S1 (1) = {O1 , O3 }, y S2 (1) = {O2 , O4 , O5 , ..., O20 }. De esta manera tenemos la primera iteración, es decir la primera propuesta de estructuración para el universo dado. Paso 3.- Determinemos los nuevos centros para los agrupamientos calculados verificando que éstos satisfagan la expresión a (2). Para ello haremos uso de la expresión (3): z1 (2) = 1 1 X I(O) = (I(O1 ), I(O3 )) = (0, 0.5) N1 2 O∈S1 (1) z2 (2) = 1 X 1 I(O) = (I(O2 ), I(O4 ), I(O5 ), ..., I(O20 )) N2 18 O∈S2 (1) = (5.67, 5.33) Paso 4.- Como quiera que zj (2) 6= zj (1) para j=1,2, es decir, como los nuevos centros calculados son diferentes a los iniciales, regresamos al paso 2. Paso 2(A).- A partir de los nuevos centros, haciendo uso de la expresión (1), distribuimos los elementos del universo en una nueva estructuración dado que: kI(Op ) − z1 (2)k ≤ kI(Op ) − z2 (2)k para p = 1, 2, ..., 8 y kI(Op ) − z2 (2)k ≤ kI(Op ) − z1 (2)k para p = 9, 10, ..., 20 formamos los nuevos agrupamientos: S1 (2) = {O1 , ..., O8 } y Vamos al paso 3 S2 (2) = {O9 , ..., O20 } 3.3 Algoritmo c-means. 31 Paso 3.- De nuevo determinamos los nuevos centros haciendo uso de la expresión (2): z1 (3) = 1 1 X I(O) = (I(O1 ) + I(O2 ) + ... + I(O8 )) = (1.25, 1.13) N1 8 O∈S1 (2) z2 (3) = 1 X 1 I(O) = (I(O9 ) + ... + I(O20 )) = (7.67, 7.33) N2 12 O∈S2 (2) Paso 4.- Se nos presenta la misma situación anterior que zj (3) 6= zj (2) para j = 1, 2; por lo que regresaremos al paso 2. Paso 2.- Al calcular los nuevos agrupamientos resulta que Sj (4) = SJ (3) para j = 1, 2. Vamos al paso 3 Paso 3.- Como era de esperar aquı́ también obtenemos los mismos centros que en la iteración anterior. Paso 4.- Y como zj (4) = zj (3) para j = 1, 2; el algoritmo termina Si observa la representación geométrica de los puntos dados en el plano, corroborará que la estructuración obtenida es la que razonablemente se esperarı́a. Es importante que subrayemos que el comportamiento del algoritmo, su aplicabilidad y efectividad práctica depende de los siguientes supuestos: X Se debe conocer la cantidad c de agrupamientos a formar. X Se tienen que seleccionar, entre los objetos del universo a estructurar, los c centros (semillas), siguiendo criterios de expertos, de manera aleatoria o por medio de una heurı́stica. X El ERI tiene que ser al menos métrico. Esto descarta la posibilidad de aplicarlo en problemas donde aparezcan mezcladas variables cuantitativas y cualitativas. En los problemas que aparezcan sólo variables cuantitativas o cualitativas, no puede haber ausencia de información en la descripción de objeto alguno. X La expresión (1) garantiza que los agrupamientos elaborados formen una partición, luego sólo se obtendrán estructuraciones de este tipo. 32 Enfoque métrico: ERI=Rn ó 2n X El algoritmo, como otros de este tipo y enfoque, supone que homogeneidad (en el sentido del cumplimiento de la(s) propiedad(es) que caracteriza(n) a los objetos de un mismo agrupamiento) es equivalente a cercanı́a (En el sentido de la distancia que se defina sobre el ERI). Eso conlleva a la estrecha vinculación de dependencia entre la selección del ERI, la distancia definida y la calidad real de la solución propuesta. X La expresión (3) puede llevar a un centro que no pertenezca a la muestra de estudio. Esto puede tener diferentes lecturas, algúnas en las que no se le de mucha importancia al asunto y otras en las que se llegue a desconfiar totalmente de la estructuración propuesta. Una ”solución” a este hecho puede venir dada por la decisión de tomar como centro al objeto de la muestra más cercano al centro virtual calculado y radio igual al mı́nimo de las distancias de éste a los objetos de la muestra dada. Esto lleva a estructuraciones diferentes, ¿cuál de ellas es la buscada?. Por otro lado está suponiendo que dicho centro es un valor central, ya que lo determina mediante el promedio de los valores, y como ya sabemos esto es cierto siempre y cuando la distribución de datos en la muestra sea al menos simétrica. 3.4 Algoritmo ISODATA. 33 X No es difı́cil apreciar que la velocidad con que se alcance la solución estará en dependencia de la geometrı́a de los datos, siendo más factible alcanzar respuestas rápidas y relativamente confiables en los casos en que las descripciones de los objetos queden como empaquetadas en el ERI respecto a la distancia seleccionada. X El algoritmo no establece qué hacer cuando un objeto equidiste de más de uno de los centros en una iteración cualquiera. En términos de la expresión(1) no se puede decidir la ubicación de dicho elemento. X No hay un teorema que garantice en el caso general la convergencia del algoritmo. 3.4 Algoritmo ISODATA. ISODATA (Iterative Self-Organizing Data Analysis Techniques, la A es para que resulte pronunciable) es también un algoritmo de la familia de técnicas de reagrupamiento, muy parecido al c-means, en particular a lo referente a la determinación de los centros de los agrupamientos, pero presenta interesantes heurı́sticas que pueden ser de mucha utilidad práctica. En especial la de cambiar el número de centros con la idea de mejorar los agrupamientos, es decir la estructuración del universo de objetos en estudio. Este algoritmo, supone que se trabajan con descripciones de objetos que están en un espacio métrico, por lo que se utilizarán también métricas para la comparación entre los objetos. Se supone además que se tiene una solución inicial para el conjunto de Nc centros, es decir, se parte de una estructuración en torno a cada uno de los centros. No necesariamente el número de centros será igual al número de centros deseados. Los centros iniciales podrán ser seleccionados entre los m objetos en estudio. El algoritmo puede ser descrito como sigue: Paso 1.- Determinación de los parámetros: • K = número de centros deseados; • θN = número mı́nimo de objetos deseados; • θs = parámetro de desviación estándar; • θc = parámetro de aglomeración; Enfoque métrico: ERI=Rn ó 2n 34 • L = número máximo de centros que pueden ser aglutinados; • I = número máximo de iteraciones; Paso 2.- Distribuir todos los objetos entre los centros actuales usando los siguientes criterios: O ∈ Sj si kI(O) − zj k < kI(O) − zi k para i = 1, ..., Nc , i 6= j, donde Sj representa el subconjunto de los objetos asociados al centro zj Paso 3.- Se descartan los subconjuntos cuyo cardinal sea menor que θN y por cada subconjunto descartado, reducir Nc en uno Paso 4.- Actualizar todos los centros zj con j=1,...,Nc usando el vector promedio de cada subconjunto, es decir, zj = 1 X I(O) |Sj | O∈S j para j = 1, ..., Nc Paso 5.- Calcular los la distancia promedio de los objetos de un agrupamiento a su centro correspondiente usando: Dj = 1 X kI(O) − zj k, |Sj | O∈S j para j = 1, ..., Nc Paso 6.- Calcular el promedio general de las distancias de los objetos a sus respectivos centros, usando la relación: Nc 1 X D= |Sj |Dj N j=1 Paso 7.- a) Si esta es la última iteración, hacer θc = 0 (para forzar que no se genere un aglutinamiento de agrupamientos) e ir al paso 11. b) Si Nc ≤ K2 , ir al paso 8 (lo que permite la división de agrupamientos si hubiese unos pocos). 3.4 Algoritmo ISODATA. 35 c) Si esta es una iteración de número par o si Nc ≥ 2K, ir al Paso 11 (lo que permite el aglutinamiento de agrupamientos en el caso de que estos sean muchos), de lo contrario continuar. Paso 8.- Encontrar el factor desviación estándar σ i = (σ 1j , ..., σ nj ) para cada subconjunto Sj aplicando la relación: 1 1 X kXi (Ok ) − zij k2 ) 2 σ ij = ( |Sj | O∈S j donde Xi (Ok ) es la i-ésima coordenada del k-ésimo objeto y zij es la i-ésima coordenada del j-ésimo centro. Paso 9.- Encontrar la máxima coordenada de cada σ j , j = 1, ..., Nc y denótese por σ j max Paso 10.- Si para cualquier σ j max , j = 1, ..., Nc , se tiene que σ j max ≥ θs y se cumple una de las siguientes condiciones: a) Dj > D y Nj > 2(θN + 1) b) Nc ≤ K 2 Entonces a partir de zj crear dos nuevos centros zj+ y zj− e incrementar Nc en uno. El centro zj+ se construye sumando una cantidad dada γ a la componente de zj que corresponde al ı́ndice de la máxima componente de σ j . zj− se forma de manera análoga, pero restando γ. El requerimiento básico de escoger γ es que sea suficiente para proveer de una diferencia detectable entre la distancia de un objeto arbitrario a los nuevos centros, pero no tan grande que transforme apreciablemente la estructura general de todos los agrupamientos. Si se hizo una división de algún agrupamiento. ir al Paso 2, de otra forma, continuar. Paso 11.- Calcular las distancia a pares, entre centros de agrupamientos diferentes: Dij = kzi − zj k con i = 1, ..., Nc−1 , j = 1, ..., Nc , j > i Paso 12.- Compárense las distancia Dij con el parámetro θc para ordenar en forma ascendente las L distancias más pequeñas que sean menores o iguales a θc 36 Enfoque métrico: ERI=Rn ó 2n Paso 13.- Con cada distancia Dil jl hay un par de centros asociados zil , zjl . Empezando con la más pequeña de estas distancias, llevar acabo el aglutinamiento por pares, siguiendo la siguiente regla. Para l = 1, ..., L si ninguno de los zil o zjl ha sido utilizado para un aglutinamiento en esta iteración, unir este par de centros utilizando la fórmula: 1 (|Sil |zil + |Sjl |zjl ) zl∗ = |Sil | + |Sjl | (que constituye un promedio pesado). Al unirlos borrar zil y zjl reduciendo Nc en uno. Paso 14.- Si esta es la última iteración, se terminará el proceso; de otra manera ir al paso 1 si alguno de los parámetros del proceso requiere cambios a discreción del usuario o ir al Paso 2, para conservar los parámetros como están. Se cuenta una iteración cada vez que se regresa al paso 1 o al 2. Resumiendo se puede decir que este algoritmo supone el conocimiento de una serie de parámetros, tales como: el número de agrupamientos a formar, (aunque a diferencia del c-means pudiera iniciar el trabajo por un número menor que el deseado); la cantidad mı́nima de objetos que debe tener cada agrupamiento ; qué tan aglutinados estarán los objetos de un agrupamiento; qué tan alejados deben estar los agrupamientos ; la ubicación de los centros iniciales que se hace de manera análoga al cmeans; la expresión del paso 2 garantiza la formación de agrupamientos disjuntos, ya que la misma no preveé que un objeto esté a igual distancia de dos centros dados; se supone que los agrupamientos son más homogéneos en la medida que sus objetos están más cercanos, por lo que este hecho depende de la métrica que se utilice y por supuesto del ERI seleccionado; el paso 4 puede darnos como centro un objeto que no está en la muestra y presupone que el centro está dado por el valor central del agrupamiento, lo cual es cierto si la distribución de los objetos es simétrica. Capı́tulo 4 Enfoque Lógico - combinatorio 4.1 Criterios agrupacionales. El problema de reconocimiento de patrones sin aprendizaje consiste en: Dado un conjunto de objetos (muestra inicial) M I, subconjunto de un universo U y β una función de semejanza entre los objetos, identificar a éstos en diferentes agrupaciones las cuales se generan (responden) de manera ”natural” según el comportamiento global o particular de las semejanzas entre los objetos o atendiendo al cumplimiento de una cierta propiedad. Se puede plantear entonces que este problema consiste en la búsqueda de estructuras en un subconjunto del espacio de representación por lo que también se le ha denominado estructuración de universos. No se tiene a priori ninguna información al respecto de las agrupaciones o estructuras, por lo que el PCSA, inicia con ciertas suposiciones o criterios que nos describan cómo o qué es una agrupación que responde de manera natural al comportamiento, digamos por caso, de las semejanzas entre los objetos, o en otras palabras, cómo son los agrupamientos que estamos buscando. Se parte del hecho de que se cuenta con M I = {I(O1 ), ..., I(Om )} un subconjunto de descripciones de los objetos O1 , ..., Om , de un universo U , dadas como I(Oi ) = (x1 (Oi ), ..., xn (Oi )). Para cada xi se tiene asociado un conjunto de valores admisible Mi , i = 1, ..., n, consecuentemente el ERI de los objetos, no es otra cosa que M1 × · · · × Mn , el producto cartesiano de los conjuntos admisibles de valores de los rasgos x1 , ..., xn . Sobre Mi se define un criterio de comparación de valores Ci : M i×Mi −→ ∆, donde ∆ es un conjunto dado (∆ = [0, 1], ∆ = {0, 1}, ∆ = 1, ..., k, u otros). Entre las descripciones de 38 Enfoque Lógico - combinatorio objetos se define una función de semejanza β = (M1 × · · · × Mn )2 −→ ∆. Por ejemplo: | d(Oi , Oj ) | max | d(Oi , Oj ) | A partir de M I y β se puede construir una matriz que refleje las relaciones de semejanza entre todos los objetos sujetos a estudio. A esta matriz la llamaremos matriz de semejanza y será: β(Oi , Oj ) = 1 − M S = kβ(I(Oi ), I(Oj ))km×m M S es simétrica y β(I(Oi ), I(Oi )) = 1, i = 1, ..., m Definición 4.1.1 La magnitud β 0 ∈ ∆ la denominaremos umbral de semejanza y puede ser calculada, por ejemplo, de la siguiente manera: a) m−1 m X X 2 β(I(Oi ), I(Oj )) β0 = m(m − 1) i=1 j=i+1 b) m β0 = 1 X max {β(I(Oi ), I(Oj ))} m i=1 j=1,...,m i6=j c) β0 = min { min i=1,...,m−1 j=i+1,...,m i6=j {β(I(Oi ), I(Oj ))}} Veamos un ejemplo numérico en el plano*. Sea U un universo dado por la siguiente tabla: Objeto O1 O2 O3 O4 O5 O6 O7 O8 x1 , x2 0,1 1,1 1,2 2,2 4,5 5,5 5,6 6,7 4.1 Criterios agrupacionales. 39 Utilizando la distancia entre cada punto calculamos la MI: MI O1 O2 O3 O4 O5 O6 O7 O8 O1 0.0 1.0 2.0 3.0 8.0 9.0 10.0 12.0 O2 1.0 0.0 1.0 2.0 7.0 8.0 9.0 11.0 O3 2.0 1.0 0.0 1.0 6.0 7.0 8.0 10.0 O4 3.0 2.0 1.0 0.0 5.0 6.0 7.0 9.0 O5 8.0 7.0 6.0 5.0 0.0 1.0 2.0 4.0 O6 O7 O8 9.0 10.0 12.0 8.0 9.0 11.0 7.0 8.0 10.0 6.0 7.0 9.0 1.0 2.0 4.0 0.0 1.0 3.0 1.0 0.0 2.0 3.0 2.0 0.0 Utilizando la función de semejanza β(Oi , Oj ) = 1 − MS: MS O1 O2 O3 O4 O5 O6 O7 O8 O1 1.0 .92 .83 .75 .67 .25 .17 0.0 O2 .92 1.0 .92 .83 .42 .33 .25 .08 O3 .83 .92 1.0 .92 .5 .42 .33 .17 O4 .75 .83 .92 1.0 .58 .5 .42 .25 O5 .67 .42 .5 .58 1.0 .92 .83 .67 O6 .25 .33 .42 .5 .92 1.0 .92 .75 |d(Oi ,Oj )| , max|d(Oi ,Oj )| O7 .17 .25 .33 .42 .83 .92 1.0 .83 calculamos O8 0.0 .08 .17 .25 .67 .75 .83 1.0 Definición 4.1.2 Dos descripciones ( objetos ) I(Oi ), I(Oj ) se denominan β 0 -semejantes si β(I(Oi ), I(Oj )) ≥ β 0 . Sea un espacio de representación Φ = {E, β}, sea dado un conjunto de descripciones de objetos: M I = {I(O1 ), ..., I(Om )}, Una función de semejanza β : M I × M I −→ δ y un umbral β 0 ∈ δ que define la β 0 -semejanza entre los elementos de MI. De aquı́ en adelante por comodidad, no se hará distinción entre objetos y descripciones de objetos, por lo que se usará Γ(Oi , Oj ) en lugar de Γ(I(Oi ), I(Oj )) 40 Enfoque Lógico - combinatorio Definición 4.1.3 Entenderemos como un criterio agrupacional duro sobre Φ(E, β), Π(M I, β, β 0 ) a un conjunto de proposiciones con parámetros MI, β, β 0 que: 1. Genera una familia τ = {N U1 , ..., N Uc } de subconjuntos de MI (agrupaciones duras) que cumplen: (a) N U = 6 ∅, ∀ N U ∈ τ . S (b) NU = MI N U ∈τ k S (c) k∃ N Ur , N Uj1 , ..., N Ujk ∈ τ tales que N Ur ⊆ N U jt t=1 jt 6=r 2. Define una relación RΠ ⊆ M I × M I × p(M I) ( donde p(M I) es el conjunto potencia de M I) que cumple ∀ Oi , Oj ∈ M I, ∃ N U ∈ τ con Oi , Oj ∈ N U ⇔ ∃ S ⊆ M I tal que Rπ (Oi , Oj , S) A cada N Ur ∈ τ lo denominaremos núcleo. La relación Rπ es en sı́ la representación matemática de las proposiciones de π, y por ello Rπ genera a la familia τ en el mismo sentido en que una relación de equivalencia genera una partición, es decir, nos define cuándo dos objetos Oi y Oj están en una misma estructura. Los argumentos de Rπ son tales que la razón por la cual dos objetos pertenecen o no a un mismo agrupamiento puede ser dependiente del comportamiento global de las semejanzas entre otros objetos además de ellos mismos. Ese conjunto de otros objetos es S, y por esto, Rπ representa que de acuerdo a: • El comportamiento entre las semejanzas de los objetos de S ⊆ M I entre sı́, • La semejanza entre Oi y Oj • Y las semejanzas de éstos con los elementos de S, se dará el que Oi y Oj pertenezcan a un mismo agrupamiento o no. 4.1 Criterios agrupacionales. 41 El criterio agrupacional unido a Γ y a la existencia de otros objetos es la razón por la cual un objeto va a pertenecer a un agrupamiento o el por qué dos objetos pertenecerán a una misma agrupación. La selección del criterio a usar es crucial en la calidad de la solución del PCSA. Se observa que la definición del criterio debe estar basada en el conocimiento que se tenga al respecto del problema en concreto que se está tratando, para poder definir ası́ el tipo de comportamiento entre los objetos a partir de sus semejanzas que resulte, según el problema en particular, significativo. Al seleccionar un criterio, dado un conjunto de objetos y la función de semejanza, hemos ya definido indirectamente la familia de agrupaciones, es decir, la estructura del universo ha sido conformada. Definición 4.1.4 Diremos que C ⊆ M I, C 6= 0 es una componente β 0 -conexa si : a) ∀ Oi , Oj ∈ C ∃ Oi1 , ..., Oiq ∈ C tales que Oi = Oi1 , Oj = Oiq y ∀ p ∈ {1, ..., q − 1} se tiene β(Oip , Oip+1 ) ≥ β 0 b) ∀ Oi ∈ M I, si Oj ∈ C y β(Oi , Oj ) ≥ β 0 entonces Oi ∈ C c) Todo elemento β 0 -aislado es una componente β 0 -conexa (degenerada) La condición a) significa que para cualquier par de elementos de C existe una sucesión de elementos de C, que empieza en Oi y termina en Oj tales que uno es β 0 -semejante al siguiente, b) significa que no existe fuera de C un elemento β 0 -semejante a un elemento de C. Definición 4.1.5 Diremos que B ⊆ M I, B 6= ∅ es un conjunto β 0 -compacto si: a) ∀ Oj ∈ M I si Oi ∈ B y max {β(Oi , Ot )} = β(Oi , Oj ) ≥ β 0 entonces Ot ∈M I Ot 6=Oi Oj ∈ B b) Si max {β(Op , Oi )} = β(Op , Ot ) ≥ β 0 y Ot ∈ B entonces Op ∈ B Oi ∈M I Oi 6=Op c) |B| es la mı́nima 42 Enfoque Lógico - combinatorio d) Todo elemento β 0 -aislado constituye un conjunto β 0 -compacto ( degenerado ) La condición a) dice que todo elemento de B tiene en B al elemento que más se le parece que es β 0 -semejante con él. La condición b) dice que no existe fuera de B un elemento cuyo elemento más parecido que sea β 0 -semejante esté en B, la tercera condición c) dice que B debe ser el conjunto más pequeño de cardinalidad mayor que 1. Los conceptos de componentes β 0 -conexa y conjunto β 0 -compacto en ocasiones coinciden y en otras no. Por ejemplo, consideremos las siguientes M S: MS O1 O2 O3 O4 O5 O1 1 0.8 0.5 0.6 0.7 O2 O3 O4 O5 0.8 0.5 0.6 0.7 1 0.7 0.6 0.5 0.7 1 0.7 0.9 0.6 0.7 1 0.8 0.5 0.9 0.8 1 Sea β 0 = 0, 8, si formamos las componentes conexas, estas serán: 1 2 4 3 5 Es decir, hay dos componentes conexas, que coinciden con los únicos conjuntos compactos, definiciones 4 y 5, se pueden formar en la M S dada. Sin embargo, si consideramos β 0 = 0.7 y la siguiente M S: MS O1 O2 O3 O4 O5 O1 1 0.8 0.7 0.6 0.6 O2 O3 O4 O5 0.8 0.7 0.6 0.6 1 0.3 0.4 0.5 0.3 1 0.1 0.9 0.4 0.1 1 0.1 0.5 0.9 0.1 1 4.1 Criterios agrupacionales. 43 Si formamos en este nuevo caso las componentes β 0 -conexas, estas serán: 1 2 4 5 3 mientras que los conjuntos β 0 -compactos que se forman son: 1 2 4 3 5 De este último ejemplo puede surgir la idea de que si variamos β 0 siempre pudiéramos hacer coincidir las componentes β 0 -conexas y los conjuntos β 0 compactos. Sin embargo en general esto no se cumple, es decir, existe M S tal que no existe β 0 ∈ [0, 1] y que la componentes β 0 -conexas para (M S, β 0 ) coincidan con los conjuntos β 0 -compactos de M S. Definición 4.1.6 Diremos que B (conjunto β 0 -compacto) es un conjunto β 0 homogéneo si y sólo si: ∀ Oi , Oj ∈ B, β(Oi , Oj ) ≥ β 0 . Por definición, todo conjunto β 0 -aislado es β 0 -homogéneo. 44 Enfoque Lógico - combinatorio Definición 4.1.7 Diremos que F ⊆ M I, F 6= ∅ es β 0 -fuertemente compacto, si y sólo si: a) ∀ Oj ∈ M I si Oi ∈ F y max {β(Oi , O)}=β(Oi , Oj ) ≥ β 0 entonces Oj ∈ F O∈M I O6=Oi b) ∃ Oi ∈ F tal que ∀ Oj ∈ F ∃n Oi1 , ..., Oiq ∈ F que cumplen: Oi = Oi1 , Oj = Oiq y ∀ p < q se tiene max {β(Oip , O)} = β(Oip , Oip+1 ) ≥ β 0 O∈M I O6=Oip c) No existe F 0 que cumpla a) y b) tal que F ⊂ F 0 d) Todo elemento β 0 -aislado constituye un conjunto fuertemente β 0 -compacto (degenerado). La condición a) expresa que todo elemento de F tiene en F al elemento que más se le parece que es β 0 -semejante con él. La condición b) significa que en F existe un elemento tal que para cualquier otro que pertenezca a F existe una sucesión de elementos de F tales que uno es más parecido a β 0 -semejante al siguiente y por último la condición c) dice que F es el más grande. Definición 4.1.8 Un conjunto ` ⊂ M I, ` 6= ∅, es un conjunto β 0 -completo maximal si y sólo si: a) ∀ Oi , Oj ∈ ` β(Oi , Oj ) ≥ β 0 b) ∀ Oi ∈ M I, (∀ Oj ∈ ` β(Oi , Oj ) ≥ β 0 ) =⇒ Oi ∈ ` c) Todo elemento β 0 -aislado constituye un conjunto β 0 -completo maximal (degenerado) La condición a) dice que para cualquier par de elementos de ` que se tomen, estos deben ser β 0 -semejantes y la condición b) dice que ` debe ser el conjunto más grande. 4.1 Criterios agrupacionales. 45 A continuación presentamos unos ejemplos de la aplicación de estos criterios a un conjunto de datos de una matriz de semejanza {β ij }, donde β ij = β(Oi , Oj ), ∆ = [0, 1] y β 0 = 0.80 MS O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 1.0 .85 .75 .78 .63 .70 .51 .38 .43 .27 .22 .13 O2 .85 1.0 .90 .90 .76 .62 .58 .45 .56 .38 .36 .27 O3 .75 .90 1.0 .88 .83 .50 .60 .47 .65 .47 .47 .33 O4 .78 .90 .88 1.0 .85 .58 .68 .55 .63 .45 .42 .30 O5 O6 .63 .70 .76 .62 .83 .50 .85 .58 100 .48 .48 100 .73 .51 .65 .36 .80 .27 .65 .11 .58 .05 .50 0.0 O7 O8 O9 O10 .51 .38 .43 .27 .58 .45 .56 .38 .60 .47 .65 .47 .68 .55 .63 .45 .73 .65 .80 .65 .51 .36 .27 .11 1.0 .83 .66 .58 .83 1.0 .66 .63 .66 .66 1.0 .83 .58 .63 .83 1.0 .48 .53 .80 .88 .51 .61 .70 .85 O11 .22 .36 .47 .42 .58 .05 .48 .53 .80 .88 1.0 .80 O12 .13 .27 .33 .30 .50 0.0 .51 .61 .70 .85 .80 1.0 A continuación veremos los graficos de como quedarı́an los objetos de acuerdo a las definiciones dadas anteriormente. O11 * * O12 * * O*3 O9 O10 * O5 * O7 * O2 * O1 * O4 *O6 * O8 M I = {O1 , O2 , O3 , O4 , O5 , O6 , O7 , O8 , O9 , O10 , O11 , O12 } 46 Enfoque Lógico - combinatorio * O11 * O12 * Núcleo 1 O*3 O9 * * O5 O10 * O7 * Núcleo 2 O8 * O2 * O1 * O4 *O6 Núcleo 3 Familia de componentes β 0 -conexas: τ = {{O1 , O2 , O3 , O4 , O5 , O9 , O10 , O11 , O12 }, {O7 , O8 , }, {O6 }}. Núcleos del criterio β 0 -conexo Núcleo 2 * O11 * O12 * * O*3 O9 * O5 O10 * O7 Núcleo 1 O 2 * * O4 * O1 *O6 Núcleo 4 * Núcleo 3 O8 Familia de conjuntos β 0 -compactos: τ = {{O1 , O2 , O3 , O4 , O5 }, {O9 , O10 , O11 , O12 }, {O7 , O8 , }, {O6 }}. Núcleos del criterio β 0 -compacto 4.1 Criterios agrupacionales. 47 ' Núcleo $ Núcleo 3 ' $1 ' $ O*3 * O2 O9 * O11 * O1 * O4 * % & & % * O5 O12 O# 10 Núcleo 2 * % * & * 6 *O Núcleo 4 O7 Núcleo 6 5 * Núcleo " ! O8 Familia de conjuntos β 0 -fuertemente compactos: τ = {{O1 , O2 , O3 , O4 }, {O2 , O3 , O4 , O5 }, {O9 , O10 , O11 }, {O10 , O11 , O12 }, {O7 , O8 , }, {O6 }}. Núcleos del criterio β 0 -fuertemente compacto Núcleo 3 Núcleo 2 Núcleo '5 $ '$ * O11 * O9 '$ O*3 Núcleo *4O5 O10 * * & % * & % O7 Núcleo 6 * O8 Núcleo 7 * O2 Núcleo 1 * O4&% * O1 O12 k *O6 Núcleo 8 Familia de conjuntos β 0 -completo maximal: τ = {{O1 , O2 }, {O2 , O3 , O4 }, {O3 , O4 , O5 }, {O5 , O9 }, {O9 , O10 , O11 }, {O10 , O11 , O12 }, {O7 , O8 , }, {O6 }}. Núcleos del criterio β 0 -completo maximal 48 Enfoque Lógico - combinatorio 4.2 Relaciones entre criterios agrupacionales A continuación realizaremos un sstudio entre los diferentes criterios agrupacionales del enfoque lógico-combinatorio: Definición 4.2.1 Sea P ⊂M I, definamos DP y TP como sigue: DP = {Oi ∈ M I | β(O, Oi ) = max {β(O, Oj ) ≥ β 0 }; O ∈ P} Oj ∈M I Oj 6=O TP = {Oi ∈ M I | Γ(Oi , O) = max {β(Oi , Oj ) ≥ β 0 }; O ∈ P} Oj ∈M I Oj 6=Oi Lema 4.2.2 Sea C una componente β 0 -conexa en MI, P ⊂ C entonces se tiene que DP ⊂ C y TP ⊂ C. Demostración : Es inmediata a partir de la definición de componente β 0 conexa ya que en DP están los elementos que son los más parecidos β 0 semejantes a O ∈ P ⊂ C; y sabemos que si un elemento es β 0 -semejante a otro que está en la componente β 0 -conexa el también esta en la componente β 0 -conexa por lo que DP ⊂ C. Por otro lado en TP están los elementos que tienen como elementos más parecidos β 0 -semejantes a O ∈ P ⊂ C también por definición tenemos que estos elementos están en la componente β 0 -conexa por lo que TP ⊂ C 2 Proposición 4.2.3 En toda componente β 0 -conexa, existe al menos un subconjunto β 0 -compacto. Demostración : Sea C una componente β 0 -conexa, construyamos un conjunto β 0 -compacto en C. Si C es degenerada, la demostración es inmediata. En otro caso se O1 ∈ C recursivamente tenemos lo siguiente; P0 = {O1 } calculemos DP0 y TP0 y S formemos P1 = DP0 TP0 (P1 ⊂ C por el lema anterior), puede suceder que S P0 6= P1 ; en cuyo caso calculemos DP1 y TP1 y formemos P2 = DP1 TP1 (P2 ⊂ C por el lema anterior), nuevamente puede suceder que P1 6= P2 ; en cuyo caso calculemos DP2 y TP2 , como C es finita en algún momento sucederá que Ps−1 6= Ps y el conjunto ası́ construido es un conjunto β 0 -compacto, la condición de minimalidad se da también por la construcción 2 Proposición 4.2.4 Toda componente β 0 -conexa es la unión finita de conjuntos β 0 -compactos. 4.2 Relaciones entre criterios agrupacionales 49 Demostración : Sea C una componente β 0 -conexa, por la proposición anterior podemos construir un conjunto β 0 -compacto en C. Si C es degenerada la demostración es inmediata. En otro caso denotemos B(Oi ) al conjunto β 0 -compacto generado a partir de Oi , puede suceder que B(Oi ) = B(Oj ) para Oi 6= Oj , lo que significa que Oi y Oj generan el mismo conjunto β 0 compacto además como |C| < ∞ entonces podemos afirmar que el número de conjuntos β 0 -compactos generados a partir de cada elemento de C es finito, simbólicamente tenemos: |{B(Oi )}Oi ∈C | < ∞ y por como se construyeron los conjuntos β 0 -compactos concluimos que C= [ B(Oi ), Oi ∈C es decir, que toda componente β 0 -conexa es la unión finita de conjuntos β 0 compactos 2 Proposición 4.2.5 Si B es un conjunto β 0 -compacto. Entonces ∀ Oi ∈ B B\{Oi } no es un conjunto β 0 -compacto. Demostración : Es evidente a partir de la condición c) de minimalidad de la definición de β 0 -compacto 2 Proposición 4.2.6 Si B es un conjunto β 0 -compacto en MI, entonces no necesariamente B es componente β 0 -conexa de MI. Demostración : Por la definición de β 0 -compacidad lo que garantizamos es la existencia en B dado Oi de un Oj tal que max {Γ(Oi , O)} = Γ(Oi , Oj ) ≥ β 0 O∈M I O6=Oi y no se garantiza que otros elementos, digamos Oq tal que Γ(Oi , Oq ) ≥ β 0 =⇒ Oq ∈ B 2 Proposición 4.2.7 Sea C un conjunto β 0 -compacto con Oi ,Oj ∈ C, y sea Oi ∈ M I entonces max β(Op , Oi ) = β(Oi , Oi1 ) ≥ β 0 Op ∈M I Op 6=Oi 50 Enfoque Lógico - combinatorio Demostración : Si Oi1 no existe Oi es aislado, contradiciendo la minimalidad de C ∴ ∃Oi1 . Si Oi1 =Oj ya acabamos. ( Nota: Oi1 ∈ C ) Si no, sea Oi2 ∈ M I entonces max β(Op , Oi1 ) = β(Oi1 , Oi2 ) ≥ β 0 (Nota Op ∈M I Op 6=Oi1 β(Oi , Oi1 ) ≥ β 0 ) y por la compacidad necesitamos Oi2 ∈ C. Si Oi2 =Oj ya acabamos . Si Oi2 =Oi , entonces C1 ={ Oi , Oi2 } es compacto y C1 ⊆ C ]c la minimalidad. Sea ahora Oi3 el más β 0 -semejante a Oi2 ,...,Oin como C es finito se tendrá que cumplir. 2 Corolario 4.2.8 Una condición necesaria y suficiente para que una componente β 0 -conexa C sea un conjunto β 0 -compacto B es que exista O ∈ C tal que B(O)=C. Proposición 4.2.9 En toda componente β 0 -conexa existe al menos un conjunto β 0 -fuertemente compacto. Demostración : Sea C una componente β 0 -conexa, construyamos un conjunto β 0 -fuertemente compacto en C. Si C es degenerada, la demostración es inmediata. En otro S caso sea O1 ∈ C, tomemos P0 = {O1 }, calculemos DP0 y formemos P1 = P0 DP0 (P1 ⊂ C por el lema anterior), puede S suceder que P0 6= P1 , en este caso calculamos DP1 y formamos P2 = P1 DP1 (P2 ⊂ C por el lema anterior), como C es finita en algún momento tendremos que Pr = Pr−1 , hagamos F0 = Pr−1 . Ahora calculamos Q0 = TP0 y formemos R0 = Q0 \F0 , puede suceder que R0 6= ∅ entonces tomemos Ot ∈ R0 , hagamos P00 = {Ot } y aplique0 mos el mismo proceso que para Oi hasta tener Pr0 = Pr−1 sólo que ahora S 0 0 Pi0 = Pi−1 (DP 0 \F0 ) (Pr−1 ⊂ C por el lema anterior). Formemos F1 = i−1 S 0 F0 Pr−1 y calculamos Q1 = TP00 pongamos R1 = Q1 \F1 nuevamente puede suceder que R1 6= ∅ entonces repetimos el mismo procedimiento. Como C es finita en algún momento tendremos que Rs = ∅ y entonces el conjunto Fs es β 0 -fuertemente compacto ya que para cualquier elemento de él, éste tiene al (o los) elemento(s) más parecido(s) β 0 -semejante(s) y además existe un elemento Oi ∈ Rs−1 (u Oi ∈ P0 ) tal que: ∀ Oj ∈ Fs−1 ∃Oi1 , ..., Oiq ∈ Fs−1 con 4.2 Relaciones entre criterios agrupacionales Oi1 = Oi , Oiq = Oj y ∀ p < q max O∈M IO6=Oip 51 {Γ(Oip , O)} = Γ(Oip , Oip+1 ) ≥ β 0 y por construcción Fs−1 es maximal 2 Proposición 4.2.10 Toda componente β 0 -conexa es la unión finita de conjuntos β 0 -fuertemente compactos. Demostración : Sea C una componente β 0 -conexa, por la proposición anterior podemos construir un conjunto fuertemente β 0 -compacto en C. Si C es degenerada la demostración en inmediata. En otro caso denotemos como F(Oi ) al conjunto β 0 -fuertemente compacto generado a partir de Oi , puede suceder que F(Oi ) = F(Oj ) Oi 6= Oj lo que significa que Oi y Oj generan el mismo conjunto β 0 -fuertemente compacto, además como | C |< ∞ entonces podemos afirmar que el número de conjuntos β 0 -fuertemente compactos generados a partir de cada elemento de C es finito. Simbólicamente tenemos: | {F(Oi )}Oi ∈C |< ∞ y por como se construyeron los conjuntos β 0 -fuertemente compactos podemos S concluir que C = F(Oi ) es decir que toda componente β 0 -conexa es la Oi ∈C unión finita de conjuntos β 0 -fuertemente compactos 2 Lema 4.2.11 Sea B un conjunto β 0 -compacto, P ⊂B, sean Dp y Tp como antes, entonces se tiene que Dp ⊂ B y Tp ⊂ B. Demostración : Es inmediata a partir de la definición de conjunto β 0 compacto ya que en Dp están los elementos que son los más parecidos β 0 semejantes a O ∈ P ⊂ B y por definición éstos están en B por lo tanto Dp ⊂ B. Por otra parte en Tp están los elementos que tienen como elementos más parecidos a los O ∈ P ⊂ B, también por definición tenemos que estos elementos están en B, por lo tanto Tp ⊂ B 2 Proposición 4.2.12 En todo conjunto β 0 -compacto existe al menos un subconjunto β 0 -fuertemente compacto. 52 Enfoque Lógico - combinatorio Demostración : Sea B un conjunto β 0 -compacto, construyamos un conjunto β 0 -fuertemente compacto en B. Si B es degenerado la demostración es inmediata. En otro caso sea O1 ∈ B tomemos P0 = {O1 }, calculemos DP0 y formemos P1 = P0 ∪ DP0 (P1 ⊂ C por el lema anterior), puede suceder que P0 6= P1 , en ese caso calculamos DP1 y formamos P2 = P1 ∪DP1 (P2 ⊂ C por el lema anterior), como B es finito en algún momento tendremos que Pr = Pr−1 , hagamos F0 = Pr−1 . Ahora calculemos Q0 = FP0 y formemos R0 = Q0 \ F0 , puede suceder que R1 = ∅ entonces tomemos Ot ∈ R0 , hagamos P00 = {Ot } y apliquemos 0 sólo que ahora Pi0 = el mismo proceso para que O1 hasta tener Pr0 = Pr−1 0 0 0 0 ⊂ B por el lema anterior). Formemos F1 = F0 ∪ Pr−1 \ F0 ) (Pr−1 ∪ (DPi−1 Pi−1 y calculamos Q1 = TP00 , pongamos R1 = Q1 \ F1 nuevamente puede suceder que R1 6= ∅ entonces repetimos el mismo procedimiento. Como B es finito en algún momento tendremos que Rs = ∅ y entonces el conjunto Fs es un conjunto β 0 -fuertemente compacto ya que para cualquier elemento de él, éste tiene al (o los) elemento(s) más parecidos β 0 -semejante(s) y además existe un elemento Oi ∈ RS−1 (o Oi ∈ P0 si Q0 = ∅) tal que: ∀ Oj ∈ FS−1 ∃n Oi1 , ..., Oiq ∈ FS−1 con Oi1 = Oi, Oiq = Oj y ∀ p < q max {Γ(Oip , O)} = Γ(Oip , Oip+1 ) ≥ β 0 O∈M I O6=OiP y por construcción de FS−1 es maximal 2 Proposición 4.2.13 Todo conjunto β 0 -compacto es la unión finita de conjuntos -fuertemente compactos. Demostración : Sea B un conjunto β 0 -compacto, en la proposición anterior se da el proceso para construir un conjunto β 0 -fuertemente compacto F en un conjunto β 0 -compacto a partir de un elemento Oi ∈ B. Si B es degenerado la demostración es inmediata. En otro caso sea F (Oi ) al conjunto β 0 -fuertemente compacto generado a partir de Oi . Podemos aplicar este proceso para cada elemento de B, puede ocurrir que F (Oi ) = F (Oj ) para Oi 6= Oj , lo que significa que Oi y Oj generan el mismo 4.2 Relaciones entre criterios agrupacionales 53 conjunto β 0 -fuertemente compacto además como | C |< ∞ entonces podemos afirmar que el número de conjuntos β 0 -fuertemente compactos generados a partir de cada elemento de B es finito, simbólicamente tenemos: | {F (Oi )}Oi ∈B |< ∞ y por como e construyeron los conjuntos β 0 -fuertemente compactos tenemos que B = ∪ F (Oi ), es decir que un conjunto β 0 -compacto es la unión finita Oi ∈B de conjuntos β 0 -fuertemente compactos 2 Proposición 4.2.14 En toda componente β 0 -conexa existe al menos un conjunto β 0 -completo maximal. Demostración : Sea C una componente β 0 -conexa, construyamos un conjunto β 0 -completo maximal en C. Si C es degenerada la demostración es inmediata. En otro caso sea O1 ∈ C, entonces por la definición de componente β 0 -conexa existe O2 ∈ C O2 6= O1 tal que β(O1 , O2 ) ≥ β 0 . Pueden suceder dos casos: 1) {O1 , O2 } es un conjunto β 0 -completo maximal 2) {O1 , O2 } NO es un conjunto β 0 -completo maximal Para el primer caso hemos terminado y hemos encontrado un conjunto β 0 completo maximal. En el segundo caso como el conjunto no lo es, entonces existe O3 ∈ C , O3 6= O1 , O3 6= O2 tal que β(O2 , O3 ) ≥ β 0 y β(O1 , O3 ) ≥ β 0 ahora nuevamente pueden suceder dos casos 1) {O1 , O2 , O3 } es un conjunto β 0 -completo maximal 2) {O1 , O2 , O3 } NO es un conjunto β 0 -completo maximal Como C es finita en algún momento se termina el proceso y habremos encontrado un conjunto β 0 -completo maximal 2 Proposición 4.2.15 Toda componente β 0 -conexa, es la unión finita de conjuntos β 0 -completos maximales. Demostración : Sea C una componente β 0 -conexa, en la proposición anterior se da el proceso para construir un conjunto β 0 -completo maximal en una componente β 0 -conexa a partir de un elemento Oi ∈ C . Si C es degenerada la demostración es inmediata. En otro caso sea ϑ(O1 ) el conjunto completo maximal generado por el procedimiento anterior a partir de 54 Enfoque Lógico - combinatorio O1 . El proceso anterior puede aplicarse a partir de cualquier O ∈ C, entonces se puede dar el caso de que ϑ(Oi ) = ϑ(Oj ) para Oi 6= Oj , es decir, que dos objetos diferentes generen el mismo conjunto β 0 -completo maximal y ademas como C es finita podemos afirmar que el número de conjuntos β 0 -completos maximales es finito, simbólicamente tenemos: | {ϑ(Oi )}Oi ∈C |< ∞ y por construcción se tiene que C = ∪ ϑ(Oi ), es decir, que toda componente Oi ∈C β 0 -conexa es la unión finita de conjuntos β 0 -completos maximales 2 Puesto que la estructura de un universo está formada por los agrupamientos encontrados al aplicar un criterio agrupacional, entonces se tienen diferentes maneras de estructurar a los objetos y obviamente cada criterio dará una estructuración diferente, pero si hacemos uso de las proposiciones demostradas anteriormente nos damos cuenta que agrupamientos formados por un criterio Π resultan ser unión de agrupamientos formados por otro criterio Π0 los cual nos da la posibilidad de hallar una estructuración más fina del universo y establecer comparaciones del cumplimiento o no de propiedades diferentes entre los objetos. Estos últimos resultados tienen importancia práctica ya que permite realizar diferentes agrupamientos de objetos conociendo el nivel de exigencia con el cual se forman dichos grupos. Esos resultados, sometidos al análisis, digamos 4.3 Algoritmo CLASS 55 por caso, en el contexto de un modelo geólogo-geofı́sico con vistas a la determinación de perspectivas de cualquier materia prima mineral, arroja información valiosa para los objetivos mencionados [6]. 4.3 Algoritmo CLASS Vamos a considerar a continuación el algoritmo CLASS [7] elaborado por la especialista soviética Susana Valeroanovna Sirotinskaia. Este algoritmo fue elaborado bajo las motivaciones de la prospección geológica y forma parte de una extensa colección de trabajos dedicados al desarrollo de los métodos lógicos del análisis de la información geológica, unas de las lı́neas de investigaciones aplicadas en las que mayor éxito han alcanzado los métodos lógicocombinatorios. Este algoritmo usa como concepto fundamental un análogo al conjunto β 0 -compacto. En su versión original contenı́a algunas restricciones que aquı́ fueron eliminadas. ALGORITMO CLASS Paso 1.- Se calculan los valores de Γ(Oi , Oj ) para todos los pares posibles de MI, es decir, se forma MS. Paso 2.- Se calcula β 0 . En el caso del original CLASS, Sirotinskaia usa la variante a) de la definición 1. Estos dos primeros pasos del algoritmo descansan sobre el proceso de formalización del concepto de analogı́a implı́citos en el problema en cuestión, es decir después de ejecutados los dos primeros pasos se tiene la matriz MS y el umbral de semejanza, con lo cual se puede determinar si dos descripciones son o no β 0 -semejantes. Paso 3.- Se obtiene β ∗i = max {Γ(Oi , Oj )}. Aquı́ i recorre las filas y j j=1,..,m las columnas de la matriz MS, i = 1, ..., m, j 6= i. Paso 4.- La magnitud β ∗i se compara con β 0 , si β ∗i < β 0 , entonces el objeto Oi se considera ”aislado” y conforma un conjunto unitario. Si si β ∗i ≥ β 0 se va al paso 5. Paso 5.- Se determinan los ı́ndices t = t∗i tales que β(I(Oi ), I(Ot )) = β ∗i . 56 Enfoque Lógico - combinatorio Paso 6.- Para cada fila i, i = 1, .., m se forman r vectores del siguiente tipo β S = (t∗S , iS1 , .., iS1S ) s = 1, ..., r, donde r es el número de valores diferentes de las columnas t∗i y tS1 , ..., tS1S , los ı́ndices de las filas que contienen valores maximales iguales a β ∗i en la columna de ı́ndice t∗S . Paso 7.- El vector B1 , empezando por el segundo elemento, es decir, i11 , se compara con los elementos t∗2 , ..., t∗r de los vectores B2 , ..., Br . Si para algún vector Bv , 2 ≤ v ≤ r, i11 = t∗v , entonces se forma un nuevo vector B11 = B1 ∪ Bv que tiene la siguiente forma: B11 = (t∗1 , i11 , .., i11 , iv1 , ..., iv1v ) Paso 8.- El vector B11 (o al B1 si es que en el Paso 7 no se le incluyó elemento alguno) se pone al final de la lista y se renumera la misma (pasando ahora a encabezarla el vector B2 , si es que este no fue eliminado en el Paso 7). Ahora se aplica al Paso 7 para el nuevo primer vector de la lista. Los Pasos 7 y 8 se repiten hasta obtener r∗ vectores BS∗ para los cuales t∗s 6= ikµ ; s, k = 1, ..., lk . Los elementos de los vectores ası́ obtenidos, serán los ı́ndices de los objetos de MI que conforman los subconjuntos compactos buscados As . En el caso de que todos los vectores B1 , ..., Br se unan (r∗ = 1), esto querrá decir que todo el conjunto MI forma un compacto y el procedimiento de estructuración de MI termina. Sin embargo, en el caso en que r∗ > 1 se va al Paso 9. PROCEDIMIENTO JERÁRQUICO Paso 9.- Se calculan las medidas de semejanza entre todos los pares posibles de subconjuntos A1 , ..., As y se conforma una nueva matriz de semejanza (ahora entre subconjuntos compactos de MI) que denotaremos MS’ formada por los valores m Dsv m s X v 1 X = β(I(Ot ), I(Oq )) ms mv t=1 q=1 donde Ot ∈ As , Oq ∈ Av , ms = |As |, mv = |Av | y β(I(Ot ), I(Oq )) se calculo en el Paso 1. Paso 10.- En la matriz de semejanza de compactos MS’ se obtiene Ds∗ = max Dsv . Después se repiten los Pasos 4 a 8 para estos elemento. Como v = 1, ...r s 6= v 4.3 Algoritmo CLASS 57 resultado de estas operaciones vamos a obtener nuevas agrupaciones de objetos (un nivel superior al anterior, más débil si se quiere) para los cuales también se pueden repetir los Pasos del 9 al 10. La estructuración (jerárquica) del conjunto de objetos MI en grupos de semejanza se considerará concluida si en el Paso 4 para cualquier s = 1, ..., r∗ , Ds∗ < β 0 o si en el Paso 8 todos los grupos se unen. Observación 4.3.1 Es importante señalar que la idea de asociar a MS su grafo de semejanza GS y en él buscar los compactos o la agrupación jerárquica deseada no es mero ejercicio intelectual. Se trata que para, digamos, el geólogo; poder ver esa estructura de su MI en un grafo en el que las longitudes de las aristas son inversamente proporcionales al grado de semejanza entre los objetos que representan los vértices que esta une, tiene valor incalculable en el proceso de investigación, en la toma de decisiones que no son de carácter matemático, es decir, intrı́nsecas al modelo. En resumen, el algoritmo permite: 1. Resolver el problema del agrupamiento de los objetos MI sobre la base de los criterios de semejanza definidos, en particular, cuando los objetos están descritos en términos de un gran número (más de 100) rasgos. 2. No es necesario previamente establecer el número de agrupamientos en los que hay que estructurar a MI; 3. La estructuración de MI no depende del orden en que se escojan los objetos para agruparlos, Dado β 0 , la agrupación es única a cada nivel; 4. El método nos permite obtener una estructuración jerárquica de MI; 5. Los resultados expresados en forma de grafo reflejan la dirección del cambio de las propiedades de los objetos de uno a otro. El siguiente ejemplo de aplicación del CLASS es tomado de la autora del algoritmo en su versión original [7]: MI O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 x1 0 0 0 0 0 0 0 1 1 1 0 0 x2 0 1 0 0 0 0 0 0 0 1 0 0 x3 0 1 0 0 0 0 0 1 1 0 0 0 x4 0 0 0 1 1 0 0 1 1 0 1 1 x5 0 1 0 1 0 0 0 0 0 1 0 0 x6 1 1 1 0 1 1 1 0 0 1 1 0 x7 1 1 1 0 0 0 1 0 0 1 1 0 x8 1 0 1 1 1 1 0 1 1 1 0 1 x9 0 0 0 1 0 0 0 0 0 0 0 1 x10 0 0 0 1 1 1 1 0 0 1 1 1 x11 0 0 0 1 0 0 1 1 0 1 0 1 x12 1 1 1 0 1 0 1 0 0 1 1 0 x13 1 1 0 0 0 0 0 0 0 0 0 0 x14 0 0 0 0 0 0 0 0 1 0 0 0 x15 0 1 1 0 0 0 1 1 0 1 1 1 x16 1 0 0 1 1 1 0 0 0 0 0 0 58 Enfoque Lógico - combinatorio Para el cálculo de MS de utilizó como función de semejanza entre los vectores I(Oi ), I(Ot ) ∈ M I: n P Γ(I(Oi ), I(Ot )) = cos(I(Oi ), I(Ot )) = Xp (Oi )Xp (Ot ) p=1 s n P Xp2 (Oi ) n P Xp2 (Oi ) p=1 p=1 i, j = 1, ..., m propuestas por R.M Konstantinov [8] para el análisis de la semejanza entre yacimientos de minerales. MS O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 100 58 73 31 67 61 50 17 18 51 50 17 O2 58 100 63 13 29 18 58 29 16 67 58 14 O3 73 63 100 17 55 45 73 36 20 70 73 36 O4 31 13 17 100 62 57 31 46 34 48 31 77 O5 67 29 55 62 100 82 50 33 36 51 67 50 O6 61 18 45 57 82 100 41 20 22 47 41 41 O7 50 58 73 31 50 41 100 33 0 77 83 50 O8 17 29 36 46 33 20 33 100 73 51 33 67 O9 18 16 20 34 36 22 0 73 100 28 18 36 O10 51 67 70 48 51 47 77 51 28 100 64 51 O11 50 58 73 31 67 41 83 33 18 64 100 50 O12 17 14 36 77 50 41 50 67 36 51 50 100 Por comodidad los valores de la medida de semejanza los hemos puesto en la tabla multiplicados por 100. Hemos subrayado los β ∗i , i = 1, ..., 12. Los resultados del CLASS en forma de tabla son los siguientes: Primer nivel de agrupamiento. (β 0 como a) de la definición 3.1.1) I = {O7 , O3 , O1 , O10 , O2 , O11 } II = {O5 , O6 } III = {O4 , O12 } IV = {O8 , O9 } Como antes los valores de la semejanza entre sub-conjuntos compactos están multiplicados por 100 MS’ I I 100 II 48 III 33 IV 25 II III 48 33 100 53 53 100 28 46 IV 25 28 46 100 4.3 Algoritmo CLASS 59 Segundo nivel de agrupamiento (β 0 como b) de la definición 3.1.1) I = {O7 , O3 , O1 , O10 , O2 , O11 } II 0 = {O5 , O6 , O4 , O12 } III 0 = {O8 , O9 } MS’ I I 100 II’ 40 III’ 25 II’ III’ 40 25 100 37 37 100 Tercer nivel de agrupamiento (β 0 como a)de la definición 3.1.1 ) I = {O1 , ..., O12 } En forma de grafos nos queda como el cuadro de la parte superior. Más adelante veremos otro algoritmo, diseñado fundamentalmente con el objetivo de resolver el problema de reconocimiento de patrones a partir de 60 Enfoque Lógico - combinatorio una matriz de aprendizaje con una sola clase (el problema tiene por supuesto más de una) y que en su primera parte puede realizar funciones análogas al CLASS, con la diferencia que el HOLOTIPO, al cual hacemos referencia, usa como concepto básico el de la componente conexa, a su vez hablaremos de una adaptación del CLASS para usarlo en la solución del problema citado. Es necesario decir antes de continuar que una gran cantidad de trabajos abordan estas cuestiones desde un enfoque métrico. Resulta para muchos autores natural el considerar distancias entre las representaciones de los objetos MI y sobre esa base confirmar los grupos. 4.4 Creación de la matriz de aprendizaje utilizando algoritmos de agrupamiento No hay que olvidar, que uno de los intereses fundamentales en la teorı́a de reconocimiento de patrones es la clasificación de nuevos objetos. Esto es, el no disponer de matriz de aprendizaje no nos hace disentir del propósito de elaborarla, en caso que el especialista no pueda darla, y a partir de esa estructuración obtenida, iniciar un proceso de clasificación de nuevos objetos. Más de un autor considera, en tales casos, la conveniencia que el proceso de formación de las clases (más bien los grupos, que a su vez pudieran ser considerados ”subclases”) lo hagamos independientemente del proceso posterior de reconocimiento. Esto es debemos considerar que en el caso que tengamos un problema de reconocimiento de patrones, sin matriz de aprendizaje, es decir, descripciones de objetos sin los tuplos informacionales verdaderos, esto es, las relaciones verdaderas entre los objetos y todas las clases, el proceso para resolver el problema tiene dos partes: la formación de las clases y la clasificación de nuevos objetos. Con esta filosofı́a de trabajo en el laboratorio de Reconocimiento de Patrones del centro de Cálculo de la academia de Rusia se ha desarrollado un procedimiento que consiste en lo siguiente: Supongamos seleccionado un algoritmo AT que divide al conjunto MI de 0 0 las descripciones de los objetos O1 , ..., Om en clases disjuntas K1 , ..., Kl para cada Oi , i = 1, ..., m se resuelve el problema de reconocimiento del objeto Oi con respecto a MI\{I(Oi )} (cuyos objetos se distribuyen en las citadas l clases según AT ) haciendo uso del algoritmo de reconocimiento AT . Para cada Oi puede ocurrir: 4.4 Creación de la matriz de aprendizaje utilizando algoritmos de agrupamiento 61 1. Ar relaciona a Oi con la misma clase en que lo puso AT . Si eso ocurre en todos los objetos de MI (según el procedimiento anterior), el proceso termina. por eso hay que entender una especie de ”armonı́a” entre AT y Ar ; 2. Ar relaciona a Oi con una clase diferente a la hallada por AT . en este caso Oi se pasa para la clase en que Ar lo ubicó. Esto debemos de interpretarlo como una prioridad entre las decisiones de AT y Ar . Este proceso se repite tantas veces como sea necesario para lograr que Ar relacione a cada Oi con la clase en la que fue ubicado en el paso anterior (bien por AT o por Ar ) 3. El algoritmo Ar se abstiene de clasificar a Oi . Si el problema admite cualquier número de clases, estos elementos sobre los que Ar se abstiene, conforman la clase Kl+1 , de lo contrario es necesario ajustar Ar para que no se abstenga. En principio puede o no compartirse la idea de armonizar AT y Ar , como presuponen los especialistas del mencionado laboratorio. En cualquier caso, recordamos recordando lo estudiado anteriormente, cabe preguntarse: (a) ¿Son los criterios de semejanza (para las variables y las descripciones) reflejos adecuados de la realidad? (b) En caso afirmativo ¿AT realiza adecuadamente estos criterios de modo tal que los agrupamientos alcanzados son, ”naturales” (Laureano Escudero [2])? (c) En caso afirmativo ¿Qué sentido tiene armonizar AT con Ar dándole prioridad a las decisiones de este último algoritmo?, ¿No serı́a acaso más consecuente que nosotros ajustáramos Ar , para que su ”conducta” fuera la que AT le indique?. Cuando existe MA y buscamos un Ar , claro disponemos de un MC, ¿no ajustamos el comportamiento de Ar a lo que indica MA y MC (sobre la base del funcional de calidad seleccionado)? Este es un aspecto de este procedimiento sobre el que debemos pensar. No obstante veamos un poco más en detalle, en qué consiste el procedimiento. Sea M I = {I(O1 ), ..., I(Om )} el conjunto inicial de las descripciones de los objetos en términos de los rasgos x1 , ..., xn , con conjuntos de valores admisibles 62 Enfoque Lógico - combinatorio M I, i = 1, ..., n, en los que han sido definidas métricas ϕi , consideremos los parámetros numéricos P = (P (x1 ), ..., P (xn )) y ε = (ε1 , ..., εn ) respectivamente iguales al peso informacional de los rasgos y a los umbrales de exactitud de cada uno de ellos, como sabemos, 0 ≤ P (xi ) ≤ 1, εi ≥ 0. Para cuales quiera dos objetos de M I, Op y Oq definimos una medida de semejanza (criterio de comparación de valores) rj (Op , Oq ) con respecto al j-esimo rasgo de xj del siguiente modo 0 si ϕj (xj (Op ), xj (Oq )) > εj rj (Op , Oq ) = (4.1) P (αj ) si ϕj (xj (Op ), xj (Oq )) ≤ εj (esto es, si los valores son semejantes, se le asigna el peso informacional del rasgo). Sobre la base de (4) definimos una distancia entre los tuplos I(Op ) e I(Oq ) como sigue R(I(Op ), I(Oq )) = R(p, q) = N −1 n X rj (Op , Oq ) (4.2) j=1 donde N es un parámetro de normalización, es decir 0 ≤ R(p, q) ≤ 1 Sobre la base de distancia definida en (5) introducimos una función booleana de semejanza Γ(Op , Oq ) de la siguiente manera: 0 si R(p, q) > δ 1 Γ(Op , Oq ) = 1 si R(p, q) ≤ δ 1 en donde δ 1 es un parámetro numérico 0 ≤ δ 1 ≤ 1 que funcionará como una evaluación de umbral. Como ya hemos dicho anteriormente la distancia y la semejanza son inversamente proporcionales. Dado un objeto Op , I(Op ) ∈ M I una distancia del mismo a la clase Kj se define por medio de la expresión: −1 D(Op , Kj ) = k(j) k(j) X Γ(Op , Ot ) t=1 0 0 en donde I(Ot ) ∈ Kj , k(j) = |Kj |. Análogamente introducimos otra función boolena de semejanza: 0 si D(Op , Kj )>δ 2 G(Op , Kj ) = 1 si D(Op , Kj ) ≤ δ 2 4.5 Algoritmo HOLOTIPO 63 en donde δ 2 es un parámetro numérico 0 ≤ δ 2 ≤ 1 que será también una evaluación del umbral. Diremos que ”Op ∈ Kj ” para los umbrales ε, δ 1 , δ 2 si G(Op , Kj ) = 1. En caso contrario ”Op ∈ / Kj ”. Con estas definiciones previas se propone el siguiente funcionamiento entre AT y Ar : Algoritmo AT : El objeto O1 de la muestra inicial se pone en K1 . Para los restantes objetos se calcula G(Oi , K1 ) = Γ(Oi , O1 ). Entre los restantes Oi se separa el objeto con orden (ı́ndice) minimal (¿no serı́a más pertinente tomar el Oj tal que R(Oj , O1 ) = max R(t, 1)?) y se pone en K2 . Después de t=1,...,m manera análoga a como se formó K1 se forma la clase K2 y ası́ sucesivamente. Obviamente, el proceso es finito. Algoritmo Ar : el algoritmo AT formó una matriz de aprendizaje Tmnl análoga a la que habı́amos considerado en los problemas con aprendizaje. Dado un nuevo objeto admisible O se calculan las magnitudes D(O, Kj ), j = 1, .., l posteriormente se pueden tomar diferentes formas de regla de solución, por ejemplo O ∈Kj si D(O, Kj ) = max D(O, Kt ) (si el máximo es único) y t=1,...,l G(O, Kj ) ≤ δ 2 ; en caso contrario Ar se abstiene. Aquı́ se supone que Ar y AT 0 00 0 han sido ”armonizados” tomando O = Op ∈ Kj y Kj = Kj \ {Oj } y operando Ar como aquı́ se indica. En ocasiones se usa para clasificar a los nuevos objetos el propio AT ajustado mediante una regla de solución igual al criterio de clasificación usado para elaborar las clases y estas como MA. Este tema es uno en los que aún hay mucho por hacer, de hecho sus vı́nculos con el problema ”intermedio” que a continuación analizaremos son grandes. 4.5 Algoritmo HOLOTIPO El algoritmo HOLOTIPO fue desarrollado inicialmente para resolver problemas de reconocimiento de patrones con aprendizaje, número de clases l ≥ 2 y se extendió al caso l = 1. Nos ocuparemos de la parte del algoritmo que tiene que ver con l ≤ 1, ya que como veremos, el caso l = 0 está relacionado, según nuestro criterio, de manera interesante, complementaria en cierto sentido, con las ideas del algoritmo CLASS (que es posterior al HOLOTIPO). La idea general del HOLOTIPO se resume desde el punto de vista geométrico y haciendo uso del concepto de componente conexa, a construir un 64 Enfoque Lógico - combinatorio recubrimiento por hiperesferas de una cierta región n-dimensional de forma compleja. En el centro de cada hiperesfera se ubicará un objeto (denominado ”holotipo”) el cual en medida, será el objeto que más se parece a los restantes del mismo grupo, de l hiperesfera que se construye. Para los casos que nos interesa, l ≥ 1, el algoritmo, como veremos más adelante nos permite: 1. Estructurar la MA dada, agrupando sus objetos al estilo como lo hace el CLASS pero en base a la componente conexa en lugar de los conjuntos compactos. 2. Construir una regla de solución sobre la base del sistema de hiperesferas que construye, que nos permite decidir si un objeto pertenece a la clase dada en MA. 3. Establecer un orden entre los objetos que el algoritmo considera que no pertenecen a la clase dada, de modo tal que permite establecer el grado en el que dichos objetos ”se alejan” de las descripciones que caracterizan a la muestra de la clase dada. Observación 4.5.1 A groso modo podemos decir que el problema que queremos resolver es un problema de reconocimiento de patrones con dos clases del cual tenemos una muestra de aprendizaje de una de las clases. Más compleja, pero aplicable, lo que aquı́ haremos es la situación en la que el problema de reconocimiento de es de l clases y las muestras que disponemos son l−s clases. Algoritmo HOLOTIPO. Paso 1.- Se construye una matriz de semejanza para cada uno de los rasgos x1 , ..., xn en términos de los cuales se describen los objetos admisibles. Como criterio de comparación de los valores de las variables, de los indicadores del algoritmo consideraron: |xk (Oi ) − xk (Oj )| (4.3) ∆xk siendo ∆xk = max {xk (O)}− min {xk (O)}, para el caso de rasgos aritméticos O∈M A O∈M A y 1 si xk (Oi ) = xk (Oj ) Ck (Oi , Oj ) = 0 en otro caso Ck (Oi , Oj ) = l − 4.5 Algoritmo HOLOTIPO 65 para las variantes de rasgos lógicos, k = 1, ..., n; i, j = 1, ..., m En general no tenemos que restringirnos a un criterio particular, por muy socorrido que este sea en un área de conocimientos dados. Entre otras razones porque aquı́ pueden predominar criterios matemáticos apriorı́sticos en el momento de la modelación matemática de dichos problemas. Obviamente las matrices M S(xk ) calculadas en este paso son cuadradas, de orden m × m, simétricas, l en la diagonal principal y valores del intervalo [0,1] en el resto. Paso 2.- Como quiera que los rasgos x1 , ..., xn pueden tener valores asociados que reflejen su heterogeneidad informacional, consideraremos δ k , k = 1, ..., n valores de pesos asociados a cada xk . En cualquier caso, se construye la matriz de semejanza MS, haciendo n P MS = δ k MS(xk ) k=1 Como ya vimos anteriormente de (7) sólo necesitamos del triángulo superior. Paso 3.-Determinación del umbral β 0 para la agrupación de objetos dentro del MA. El valor β 0 se determina por cualquiera de las variantes de la definición 1. Paso 4.- Determinación de los subgrupos dentro de la clase dada en MA haciendo uso del concepto de componente conexa. Sean G1 , ..., Gr los subgrupos formados, r ≥ 1. Observación 4.5.2 El resultado de estos primeros pasos es análogo al que obtiene CLASS después de ejecutados sus primeros 8 pasos. Ambos logran agrupamientos de objetos pero, como analizamos anteriormente componentes β 0 − conexas y conjuntos β 0 − compactos, no siempre coinciden y justo esos casos de no coincidencias suelen ser muy informativos en el proceso de modelación matemática. Ası́ las cosas, a partir de este punto pudiéramos continuar con los pasos del 9 al 10 haciendo los ajustes pertinentes, es decir, en lugar de agrupar según la definición de conjunto compacto, hacerlo utilizando la de componente conexa. A continuación para el siguiente ejemplo se toma la misma MI utilizada en el algoritmo ClASS: 66 Enfoque Lógico - combinatorio MI O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 x1 0 0 0 0 0 0 0 1 1 1 0 0 x2 0 1 0 0 0 0 0 0 0 1 0 0 x3 0 1 0 0 0 0 0 1 1 0 0 0 x4 0 0 0 1 1 0 0 1 1 0 1 1 x5 0 1 0 1 0 0 0 0 0 1 0 0 x6 1 1 1 0 1 1 1 0 0 1 1 0 x7 1 1 1 0 0 0 1 0 0 1 1 0 x8 1 0 1 1 1 1 0 1 1 1 0 1 x9 0 0 0 1 0 0 0 0 0 0 0 1 x10 0 0 0 1 1 1 1 0 0 1 1 1 x11 0 0 0 1 0 0 1 1 0 1 0 1 x12 1 1 1 0 1 0 1 0 0 1 1 0 x13 1 1 0 0 0 0 0 0 0 0 0 0 x14 0 0 0 0 0 0 0 0 1 0 0 0 x15 0 1 1 0 0 0 1 1 0 1 1 1 x16 1 0 0 1 1 1 0 0 0 0 0 0 Dada la MI se construye una matriz de semejanza para cada de los ras1 siuno xk (Oi )=xk (Oj ) gos xk utilizando como criterio de comparación Ck (Oi , Oj ) = 0 , en otro caso esto nos da las siguientes matrices: M S(x1 ) O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 1 1 1 1 1 1 1 0 0 0 1 1 O2 1 1 1 1 1 1 1 0 0 0 1 1 O3 1 1 1 1 1 1 1 0 0 0 1 1 O4 1 1 1 1 1 1 1 0 0 0 1 1 O5 1 1 1 1 1 1 1 0 0 0 1 1 O6 1 1 1 1 1 1 1 0 0 0 1 1 O7 1 1 1 1 1 1 1 0 0 0 1 1 O8 0 0 0 0 0 0 0 1 1 1 0 0 O9 0 0 0 0 0 0 0 1 1 1 0 0 O10 0 0 0 0 0 0 0 1 1 1 0 0 O11 1 1 1 1 1 1 1 0 0 0 1 1 O12 1 1 1 1 1 1 1 0 0 0 1 1 M S(x2 ) O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 1 0 1 1 1 1 1 1 1 0 1 1 O2 0 1 0 0 0 0 0 0 0 1 0 0 O3 1 0 1 1 1 1 1 1 1 0 1 1 O4 1 0 1 1 1 1 1 1 1 0 1 1 O5 1 0 1 1 1 1 1 1 1 0 1 1 O6 1 0 1 1 1 1 1 1 1 0 1 1 O7 1 0 1 1 1 1 1 1 1 0 1 1 O8 1 0 1 1 1 1 1 1 1 0 1 1 O9 1 0 1 1 1 1 1 1 1 0 1 1 O10 0 1 0 0 0 0 0 0 0 1 0 0 O11 1 0 1 1 1 1 1 1 1 0 1 1 O12 1 0 1 1 1 1 1 1 1 0 1 1 4.5 Algoritmo HOLOTIPO M S(x3 ) O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 1 0 1 1 1 1 1 0 0 1 1 1 O2 0 1 0 0 0 0 0 1 1 0 0 0 O3 1 0 1 1 1 1 1 0 0 1 1 1 O4 1 0 1 1 1 1 1 0 0 1 1 1 67 O5 1 0 1 1 1 1 1 0 0 1 1 1 O6 1 0 1 1 1 1 1 0 0 1 1 1 O7 1 0 1 1 1 1 1 0 0 1 1 1 O8 0 1 0 0 0 0 0 1 1 0 0 0 O9 0 1 0 0 0 0 0 1 1 0 0 0 O10 1 0 1 1 1 1 1 0 0 1 1 1 O11 1 0 1 1 1 1 1 0 0 1 1 1 O12 1 0 1 1 1 1 1 0 0 1 1 1 O7 0 1 1 0 0 0 1 1 0 1 1 1 O8 0 1 1 0 0 0 1 1 0 1 1 1 O9 1 0 0 1 1 1 0 0 1 0 0 0 O10 0 1 1 0 0 0 1 1 0 1 1 1 O11 0 1 1 0 0 0 1 1 0 1 1 1 O12 0 1 1 0 0 0 1 1 0 1 1 1 .. . M S(x15 ) O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 1 0 0 1 1 1 0 0 1 0 0 0 O2 0 1 1 0 0 0 1 1 0 1 1 1 O3 0 1 1 0 0 0 1 1 0 1 1 1 O4 1 0 0 1 1 1 0 0 1 0 0 0 O5 1 0 0 1 1 1 0 0 1 0 0 0 O6 1 0 0 1 1 1 0 0 1 0 0 0 68 Enfoque Lógico - combinatorio O1 1 0 0 1 1 1 0 0 0 0 0 0 M S(x16 ) O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O2 0 1 1 0 0 0 1 1 1 1 1 1 O3 0 1 1 0 0 0 1 1 1 1 1 1 O4 1 0 0 1 1 1 0 0 0 0 0 0 O5 1 0 0 1 1 1 0 0 0 0 0 0 O6 1 0 0 1 1 1 0 0 0 0 0 0 O7 0 1 1 0 0 0 1 1 1 1 1 1 O8 0 1 1 0 0 0 1 1 1 1 1 1 O9 0 1 1 0 0 0 1 1 1 1 1 1 O10 0 1 1 0 0 0 1 1 1 1 1 1 O11 0 1 1 0 0 0 1 1 1 1 1 1 O12 0 1 1 0 0 0 1 1 1 1 1 1 A continuación se construye la matriz de semejanza MS, haciendo MS = n P δ k MS(xk ), dados los δ k siguientes: k=1 δ 1 = 0.25, δ 2 = 0.166, δ 3 = 0.25, δ 5 = 0.25, δ 6 = 0.66, δ 7 = 0.5, δ 4 = 0.5 δ 8 = 0.75 δ 9 = 0.16, δ 10 = 0.58, δ 11 = 0.41, δ 12 = 0.58 δ 13 = 0.16, δ 14 = 0.08, δ 15 = 0.58, δ 16 = 0.33 lo que nos da: MS O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O1 6.25 3.91 5.16 2.42 4.50 4.41 3.41 2.00 2.91 3.50 3.33 1.75 O2 3.91 6.25 4.67 0.58 2.16 2.08 4.41 2.00 1.75 3.83 4.33 1.25 O3 5.16 4.67 6.25 1.67 3.75 3.67 4.50 3.08 2.83 4.58 4.41 2.83 O4 2.42 0.58 1.67 6.25 4.16 4.25 1.91 3.83 3.91 2.50 2.00 5.08 O5 4.50 2.16 3.75 4.16 6.25 5.16 3.16 2.58 3.50 3.25 4.08 3.50 O6 4.41 2.08 3.67 4.25 5.16 6.25 3.08 2.67 3.58 3.16 3.00 3.58 O7 3.41 4.41 4.50 1.91 3.16 3.08 6.25 2.16 1.08 4.83 5.33 3.08 O8 2.00 2.00 3.08 3.83 2.58 2.67 2.16 6.25 5.17 2.75 2.25 5.00 O9 2.91 1.75 2.83 3.91 3.50 3.58 1.08 5.17 6.25 1.67 2.00 3.92 O10 3.50 3.83 4.58 2.50 3.25 3.16 4.83 2.75 1.67 6.25 3.91 3.16 O11 3.33 4.33 4.41 2.00 4.08 3.00 5.33 2.25 2.00 3.91 6.25 3.16 O12 1.75 1.25 2.83 5.08 3.50 3.58 3.08 5.00 3.92 3.16 3.16 6.25 4.5 Algoritmo HOLOTIPO 69 Ahora se calcula el umbral β 0 por cualquier variante de la definición 1 para la agrupación de objetos en este caso es m 1 X max {β(I(Oi ), I(Oj ))} = 5.11 β0 = m i=1 j=1,...,m i6=j . Después se hace la agrupación haciendo uso del concepto de componente conexa lo que nos da: I = {1, 3} V = {7, 11} II = {2} V I = {8, 9} III = {4} V II = {10} IV = {5, 6} V III = {12} Para optimizar y no hacer tan tedioso el calculo de las matrices se hace el siguiente programa: #include<conio.h> #include<stdio.h> #include<math.h> main() { int k,i,j,h,l; float MI[12][16]= {{0,0,0,0,0,1,1,1,0,0,0,1,1,0,0,1},{0,1,1,0,1,1,1,0,0,0,0,1,1,0,1,0}, {0,0,0,0,0,1,1,1,0,0,0,1,0,0,1,0},{0,0,0,1,1,0,0,1,1,1,1,0,0,0,0,1}, {0,0,0,1,0,1,0,1,0,1,0,1,0,0,0,1},{0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,1}, {0,0,0,0,0,1,1,0,0,1,1,1,0,0,1,0},{1,0,1,1,0,0,0,1,0,0,1,0,0,0,1,0}, {1,0,1,1,0,0,0,1,0,0,0,0,0,1,0,0},{1,1,0,0,1,1,1,1,0,1,1,1,0,0,1,0}, {0,0,0,1,0,1,1,0,0,1,0,1,0,0,1,0},{0,0,0,1,0,0,0,1,1,1,1,0,0,0,1,0}}; float MS[12][12]; int MSA[12][12]; float delta[16]={0.25,0.1666,0.25,0.5,0.25,0.666,0.5,0.75,0.1666,0.5833, 0.4166,0.5833,0.1666,0.0833,0.5833,0.333}; for(i=0;i<12;i++) for(j=0;j<12;j++) 70 Enfoque Lógico - combinatorio MS[i][j]=0; for(k=0;k<16;k++) for(i=0;i<12;i++) for(j=0;j<12;j++) if(MI[i][k]==MI[j][k]) MS[i][j]=delta[k]+MS[i][j]; for(i=0; i<12; i++) { for(j=0;j<12;j++) printf(" %2.2f ",MS[i][j]); printf("\n"); } float beta=0; for(i=0;i<11;i++) for(j=i+1;j<12;j++) beta=beta+MS[i][j]; beta=beta/66; printf("el beta es %2.2f",beta); beta=5.11; for(i=0;i<12;i++) for(j=0;j<12;j++) if(MS[i][j]>beta) MSA[i][j]=1; else MSA[i][j]=0; int total=12; printf("\n"); for(i=0;i<12;i++) { for(j=0;j<total;j++) printf("%d ",MSA[j][i]); printf("\n"); } 4.5 Algoritmo HOLOTIPO for(i=0;i<total;i++) for(j=i+1;j<total;j++) for(l=0;l<12;l++) if(MSA[i][l]==MSA[j][l]&&(MSA[i][l]==1)) { for(k=0;k<12;k++) MSA[i][k]=MSA[i][k]||MSA[j][k]; for(k=j;k<total;k++) for(h=0;h<12;h++) MSA[k][h]=MSA[k+1][h]; total--; } printf(" %d",total); for(i=0;i<12;i++) {for(j=0;j<total;j++) printf("%d ",MSA[j][i]); printf("\n"); } for(i=0;i<total;i++) { for(j=0;j<12;j++) if (MSA[i][j]==1) printf(" %d, ",j+1); printf("\n"); } getch(); } 71 72 Enfoque Lógico - combinatorio Capı́tulo 5 Conclusiones El enfoque Lógico-Combinatorio desarrollado en este trabajo de tesis se basa principalmente en el estudio de dos algoritmos, el CLASS y Holotipo. El primero utiliza una función de semejanza (habiendo construido previamente un modelo) que se le aplica a una muestra inicial dada para formar la matriz de semejanza (MS)que no es mas que la representación de la relación existente entre los objetos, posteriormente se calcula el umbral de semejanza utilizando cualquier variante de la definición (este valor, es el promedio de los valores de la MS) que nos permitira saber si los objetos son semejantes. Obtenidos los datos anteriores se procede a utilizar herramientas algebraı́cas para la aplicación de la definición de conjunto compacto. El segundo utiliza un criterio de comparación (este depende de la forma de las variantes(rasgos lógicos o aritméticos)) aplicado a la muestra inicial formando con el una matriz de semejanza (MS) para cada uno de los rasgos, la cual representa en cada vector la semejanza existente entre los objetos con respecto a ese rasgo. Después se le da un valor que otorgue a cada rasgo la importancia que se le quiera dar, para posteriormente formar una matriz de semejanza general , que no es mas que la suma de los productos de la matriz de cada rasgo con el valor de importancia que se le dio. Luego se calcula el umbral de semejanza utlizando alguna variante de la definición para después operar con los datos obtenidos y utilizar, la definición de componente conexa para la formación de agrupamientos. Al ya conocer el algoritmo se pueden mencionar algunas ventajas y desventajas. Algunas ventajas podrı́an ser que es muy sencillo de utilizar, ya que las operaciones utilizadas son fáciles de usar, también esto ayuda a que el costo computacional sea poco y fácil de programar ademas garantiza que todos los elementos van a estar agrupados; algunas desventajas podrı́an ser que se nece- 74 Conclusiones sita hacer un modelo matemático para poder estudiar la semejanza entre los objetos y esto requiere de un conocimiento especializado. Estas son solo algunas de las ventajas y deventajas que se podrian encontrar en el manejo del algoritmo. Bibliografı́a [1] Ruiz Shulcloper, José y Lazo Cortés, Manuel (1995). Introducción al Reconocimiento de Patrones: enfoque lógico combinatorio. Serie Verde No. 51, CINVESTAV-IPN. México. [2] Escudero, Laureano (1977). Reconocimiento de Patrones. Paraninfo. Madrid. [3] Zadeh, L.A. Fuzzy Sets. Information and Control, No. 8, pp. 338356. [4] Ruiz Shulcloper, José y Montellano Ballesteros, Juan José (1995). A new approach to fuzzy clustering. Proceedings of the EUFIT’95, Aachen, pp. Alemania. [5] Tou, J.J. and González, R.C. (1974). Pattern Recognition Principles. Addison-Wesley P.C. [6] Gómez Herrera, Julio et al. (1994). Pronóstico gasopetrolı́fero en la asociación ofiolı́tica cubana aplicando modelación matemática. Revista Geofı́sica Internacional, vol.33, No. 3, pp 447-467. México. [7] Sirotinskaia, S.V.(1986). Métodos lógicos de análisis de la información gelógica (en ruso). Nedra. [8] Konstantinov, R.M. and Koroliova, Z.E. (1973). Aplicación de los algoritmos de test a problemas del pronóstico geológico. Reconocimiento de Patrones, pp.194-199. En ruso. [9] Voronin, Yu.A.; Karataeva, G.N.; Epshtein, E.N. et al. (1968). Programas HOLOTIPO para la soluci‘’on de problemas de reconocimiento de partrones(en ruso). Alma Atá. 76 BIBLIOGRAFÍA [10] Michalski, R. S. and Stepp, R. Reveling conceptual sructure in data by inductive inference; en Macine Intelligence ]10 pp 173-198, USA. [11] Gotlieb, C.C. and Kumar, S. (1968). Semantic clustering of index terms. Journal of the Association for Computing Machinary, Vol. 15, No. 4, october , pp. 493-513. [12] Ruiz Shulcloper, José et al. (1992). PROGNOSIS y sus aplicaciones a las geociencias. Proceedings del Congreso Iberoamericano de Inteligencia Artificial IBERAMIA’92; febrero de 1992, La Habana, pp 561-586, Cuba. [13] Tamura, S. et al. (1971). Pattern Clasification Based on Fuzzy Relations. IEEE Transaction on Systems, Man and Cybernetics, Vol. SMC-1, No. 1, pp 61-66, january. [14] Ruspini, E. R. A New Approach to Clustering. Information and Control, Tomo 15, pp 22-32, (1969). [15] Bezdek, J.C. (1973). Fuzzy Mathematics in Pattern Classification. Ph. D. Thesis; Applied Math. Center, Cornell Univ. Ithaca. [16] Montellano Ballesteros, Juan José (1994). Agrupaciones en gráficas difusas. Tesis en opción al grado de Maestro en Ciencias. UNAM, México. [17] Ignacio L. Iribarren, Topologı́a de espacios métricos, 1973, Limusa, primera edición.