Open franyack opened 6 years ago
Como herramienta, podemos usar Microsoft Visio, que en eso es muy útil y práctico, o bien https://www.draw.io/ que es muy bueno la verdad
Utilicé draw.io para realizar el diseño y acá comparto el link para hacer comentarios (en todo caso si se quisieran hacer modificaciones me avisan y les doy permisos): https://drive.google.com/file/d/1y2KGV0eL3_WHFK9Ej0IDIu7f77vn-qqH/view?usp=sharing
Además lo comparto en formato jpg:
Muy bueno y re claro el diagrama! Faltaría nomás delimitar los scopes de App y Motor, que por ahora por cuestiones de implementación está algo difuso. Luego solo algunos mínimos cambios en las definiciones y listo! Aquí detallo esas sugerencias de mi parte:
Hola gente, También me parece muy bueno! Dejé un comentario en la imagen, fijate si aparece. Para mi hay mucho detalle en la última etapa, es como que baja a un nivel mucho más bajo que en las otras etapas. Si explicás en ese detalle del markov clustering entonces tendrías que explicar con el mismo nivel de detalle la red convolucional, y me parece que no es necesario. Opino que en la 3era etapa debería ser un sólo bloque sin entrar en detalles de lo que hace internamente el algoritmo de clustering (que de hecho podría ser cualquier otro).
Saludos!
Dr. Leandro Daniel Vignolo Assistant Professor | Assistant Research Scientist sinc(i), FICH-UNL/CONICET, Santa Fe, Argentina www.sinc.unl.edu.ar | Tel: +54 (342) 4575233 ext 117
2018-05-09 0:18 GMT-03:00 Leandro Ferrado notifications@github.com:
Muy bueno y re claro el diagrama! Faltaría nomás delimitar los scopes de App y Motor, que por ahora por cuestiones de implementación está algo difuso. Luego solo algunos mínimos cambios en las definiciones y listo! Aquí detallo esas sugerencias de mi parte:
- En lugar de "Aplica un pre-proceso .." poner "Pre-procesamiento (escalado, ?algo más?, etc)"
- En lugar de "Realización de predicciones" poner "Obtención de predicciones"
- Aclarar (de una forma muy breve) que las etiquetas padres, o la jerarquía, está definida por el mismo esquema de las imágenes utilizadas en el entrenamiento de la red (ImageNet)-
- "Mientras no converge y no se alcanza máximo de iteraciones (o iteracion < max_iteraciones)"
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/franyack/IMachineApp/issues/7#issuecomment-387607962, or mute the thread https://github.com/notifications/unsubscribe-auth/APJ-G8NSt0nUWUlrCpsfn4NSjpOd17fgks5twmACgaJpZM4TSieW .
Buenas! Muchas gracias por las recomendaciones y la ayuda!! Lelo, no pude encontrar tu comentario dentro de draw. Busqué entre las opciones y no pude encontrarlo, y en Google no encuentro ayuda tampoco jaja. Si es algo más además del que me hiciste sobre el motor, mandalo por acá nomas! Vuelvo a pegar la imagen con las correcciones:
Creo que era eso nomas Fran. Para mi quedó muy bien así! Saludos
Dr. Leandro Daniel Vignolo Assistant Professor | Assistant Research Scientist sinc(i), FICH-UNL/CONICET, Santa Fe, Argentina www.sinc.unl.edu.ar | Tel: +54 (342) 4575233 ext 117
2018-05-15 17:18 GMT-03:00 franyack notifications@github.com:
Buenas! Muchas gracias por las recomendaciones y la ayuda!! Lelo, no pude encontrar tu comentario dentro de draw. Busqué entre las opciones y no pude encontrarlo, y en Google no encuentro ayuda tampoco jaja. Si es algo más además del que me hiciste sobre el motor, mandalo por acá nomas! Vuelvo a pegar la imagen con las correcciones:
[image: motor de procesamiento de imagenes] https://user-images.githubusercontent.com/26559238/40081302-f86ba398-5863-11e8-8695-5c3244772696.jpg
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/franyack/IMachineApp/issues/7#issuecomment-389299617, or mute the thread https://github.com/notifications/unsubscribe-auth/APJ-Gyo1NSrfvemDmzpFeGMT30HFxoN5ks5tyzgjgaJpZM4TSieW .
Por mi está perfecto! Si es por el diagrama ya se podría cerrar este issue, pero quisiera que eso ocurra cuando tengamos clara la división entre la app y el motor, más que nada para expresar cómo se hace la llamada del motor desde la app y lo que éste le retorna. Ya que dijimos que este límite iba a existir, sería bueno que le demos una vuelta de rosca a lo que tenemos para que se aclare y con eso ya podemos tener totalmente hecha la definición del motor.
Gracias al refactor hecho en #15, las clases referidas al motor se encapsularon en un package llamado com.example.fran.imachineappv.CIEngine
por lo cual ahora se considera modular a este motor y con ello se aisla su funcionamiento del de la app. Se puede cerrar este issue entonces!
Buenas! Vuelvo a comentar acá ya que hice una pequeña actualización sobre el diseño del motor (entregable en el informe de avance 2), agregando los embeddings como otro resultado de salida de la red. A continuación va la imagen, si creen que debería corregirse algo, me avisan!
A mi parecer está muy bueno y re claro el diagrama! Viéndolo un poco detenidamente, se me volvió a cruzar la idea de un motor genérico que acepte N formas de armar una matriz de afinidad para las imágenes, y que luego las pondere con una función dada para pasar de N matrices a 1 sola compacta, con la cual ejecutar el clustering. O incluso ejecutar el clustering para las N matrices, y luego agregar los grupos resultantes con algún criterio. Son ideas que se me ocurren y las pienso en voz alta, que podrían impactar en este diseño del motor, pero que por el momento solo complican el deadline asi que sólo tomenlo como comentario para trabajos futuros que le agreguen esteroides al motor y lo hagan más elegante.
Están muy buenas las ideas Lea! Me parecen que suman muchísimo y por eso dejemos el issue abierto para un futuro no tal lejano.
Se puede cerrar este issue? Falta algo que especificar?
De momento no. Quizás haya que actualizar el diseño del motor en caso de que se agregue una nueva matriz de afinidad en el futuro. Si te parece lo podemos cerrar ahora y luego volver a abrir en caso de que nos pongamos a trabajar en ello.
Realizar un diagrama de flujo sobre las diferentes etapas con las que se encuentra el conjunto de imágenes dentro del motor de procesamiento hasta llegar a la agrupación de las mismas.