Laburo España: 250.000 ofertas de empleo
Atención: el agujero de gusano está ahora en http://agujerodegusano.aiz.es.

Puedes ver esta anotación: La maldita práctica en el nuevo blog.

La maldita práctica

27-05-2005
Cuando ya creía que lo más gordo de la carrera había pasado, pues resulta que aún quedaban algunas pruebas especiales con las que sufrir, tal sadismo no se había visto ni en Humor Amarillo.

Pues bien, voy a tratar de explicar aquí de que va la maldita práctica, de la forma lo más sencilla que pueda:

Se trata de hacer una red de neuronas artificiales (que viene siendo una estructura matemática un tanto compleja) para clasificar cosas como imágenes de radiografías en "cancer brutal" y "no le pasa nada", o clasificar pollos entre machos y hembras, etc. De las aplicaciones hablaremos al final.

En este ejemplo vamos a clasificar las posiciones de una imágen:
peque.

Para ello elegimos unos patrones, o puntos de muestra, representados por los puntos verdes. En este caso, elegimos puntos aleatorios:
patrones.

Ahora, representamos la red de neuronas en la imagen. Al principio, los centros estan en sitios aleatorios tambien.
mapa_1.

Despues del entrenamiento (proceso en que los puntos de la red intentan acercarse a las posiciones de los patrones, es decir, los puntos rojos intentan acercarse a los verdes), la cosa queda asi:

mapa_2

Los puntos de la imagen mas cercanos a cada centro de clasificacion (puntos rojos) serian de esa clase. Es decir, hay 16 clases distintas en la imagen. Ahora, mediante un algoritmo nada sencillo, clasificamos esas 6 clases en 4 clases finales, y las representamos en color:

segmentacion_final


¿Sencillo, verdad? Pues no. Algunas partes son sencillas, otras son terriblemente. Por ejemplo, ¿cómo re-clasificar las 16 clases en 4 clases finales? El problema se replantea: Dados 'x' puntos de dimensión 'n', ¿cómo clasificarlos en 'K' clases de forma que la distancia entre puntos de la misma clase sea la minima posible? Varias formas:

  • Creación dinámica de clases a partir de un umbral.
  • Recorrer las clases y añadir elementos contiguos a la misma clase o crear dos clases en base a su distancia. Vaya, el problema está en que el número de clases está definida, no puede ser dinámico. El código a la basura.
  • Iteracion del algoritmo anterior hasta que de un número 'K' de clases
  • Problemas: complicación de hacerlo en 2-D, problemas de convergencia y de inicialización de umbral. Nada, otra cosa.
  • Algoritmo K-Means
  • Algoritmo típico de clasificación, me pasé todo el miércoles implementándolo en Matlab. Problema: acojonante dependencia de la inicialización aleatoria de las K clases. Lo solucioné parcialmente haciéndolo iterativo hasta encontrar una solución razonable, pero no me acababa de convencer.
  • Agrupación de las dos clases con distancia mínima hasta que sólo queden K clases
  • Gracias a un compañero de clase, ese es el actual. Falta pulirlo un poco pero parece hacer bien el trabajo.

    Ayer en el bus escuchaba a una chica que tenía problemas para acabar un trabajo con el que aprobaría una asignatura: Consistía en pegar hojas en una cartulina, pero en esta época no hay hojas de castaño. Ya no es sólo la diferencia abismal de dificultad de las prácticas, es que yo tengo que tener esta práctica perfecta para poder ir a un examen que es la mitad de la asignatura con menos créditos de mi carrera.

    ¿Entendéis ahora mi odio y ganas de matar?


    Referencia

    URL: http://agujerodegusano.bitacoras.com/archivos/2005/05/27/la-maldita-practica/trackback/

    QuarkBlog » Blog Archive » Época de exámenes | 2005-05-30 20:34:30
    [...] El Agujero de Gusano, un blog de un pobre desgraciado como yo que un buen día decidió entrar a cursar la carrera de informática. Él cuenta sus peripecias haciendo una práctica para procesar imágenes utilizando redes neuronales, yo tuve el [...]

    demasiada Cafeína v3.0 | 2005-06-02 20:25:34
    [...] Me siento plenamente identificada con esta situación, y también con esta otra. Estar sin dormir por culpa de segmentations faults mientras que los de Magisterio juegan alegremente al corro de la patata es deprimente… BenK [...]

    demasiada Cafeína | 2005-06-02 20:25:49
    Me siento plenamente identificada con esta situación, y también con esta otra. Estar sin dormir por culpa de segmentations faults mientras que los de Magisterio juegan alegremente al corro de la patata es deprimente......

    Sim Foo Ny » Pobres Ingenieros | 2005-06-02 23:11:18
    [...] Notscape explicaba una practica que había echo y que era hacer un sistema de redes neuronales para clasificar zonas de una imagen. Bueno, yo que he echo alguna cosilla de redes neuronales, aunque la practica era aprender funciones y los pr [...]

    Comentarios

    1. Moises dice:

      Tio, no sabes lo mucho que me identifico con tu historia.
      Tan solo tienes que sustituir hojas por macarrones y cartulina por hilo de pescar :)

    Agregar un comentario

    /

    Recordar datos
    ¡Un solo click vale!

    LaInformacion.com lainformacion.com - Medio Oficial de los Premios Bitacoras 2009