[Recursos] Aprehendiendo sobre redes neuronales

Ardi

#120 Lo puse creo que demasiado rapido y ahora con otros ojos veo que no se entiende.

La red tiene por decirlo asi 2 caminos que a su vez cada camino se divide en 3 subcaminos. Vale pues si intentaba implementar toda la red se me quedaba el jupyter con el asterisco pillado y eso no cambiaba en horas asi que decidi coger el camino que parace una U-NET( Este tipo de red se llama asi xk la entrada tiene el mismo shape que la salida, donde vas bajando buscando caracteristicas, y luego subes otra vez)

Este camino tiene los 3 ramales de los que hablaba donde las convoluciones son en cada camino de forma diferente hasta que acaban en [nºbatches,30,30,4] luego las fusiono y bajo hasta 15x15 y de ahi vuevlo a ir subiendo hasta que tenia la misma entrada. La cosa es que cuando lo probé mis muestras eran 45, el numero de batch es 15 asi que 45/15 = 3 y num epochs es uno.

Obviamente solo doy una vuelta con 3 pasos y eso divergia, y veo que tengo que cambiar estos numeros pero en que proporciones?? Mayor numero de muestras, disminuir el tamaño de batch, aumentar los epochs?

Lo siento por el tochopost xD

2 respuestas
Nymphetamine

#121 Mucha indentación pero luego se nos olvida usar la tecla "Enter" en los textos xD

2 1 respuesta
Ardi

#122 Apañao xD

1
Unrack

#121 En principio tienes pocas muestras, ponlo todo en un batch y prueba. Si puedes pasa un pantallazo de la arquitectura de red.

1 respuesta
Ardi

#124 He estado probando con el numero de muestras que tengo, luego por la tarde aumento las muestras, he disminuido el numero de batch y aumentado el numero de epochs, me salen numeros grandes tendiendo al NaN.

A ver como hago para pasar un pantallazo de la arquitectura porque pequeñita no es

1 respuesta
HeXaN

#125 Red con muchas capas + pocos datos = no tiene para sacar chicha.

2 respuestas
Ardi

#126 Ahi vere si al aumentar el numero de muestras el trabajo del algortimo de preprocesado,k-fold y la conversión a tfrecords han hecho su función

1 respuesta
Unrack

#127 #126 Es que es un problema concreto y la respuesta a divergencias en el entrenamiento se pueden solucionar con + datos. Como te dije antes en arquitecturas convolucionales se usan redes residuales para "dar un respiro" a la red. https://medium.com/datadriveninvestor/review-u-net-resnet-the-importance-of-long-short-skip-connections-biomedical-image-ccbf8061ff43

Frave

Has probado con una arquitectura mas sencilla, como una unet básica, con pocos filtros por conv. Creo hacias segmentado no? En principio algo debería hacer ya que no es un problema difícil el segmentado.

Lo digo porque no vaya a ser que tienes algo mal con como preprocesas los datos o como calculas el loss.

27 días después
c0b4c

https://arxiv.org/abs/1904.12320v1

Para vosotros, jugadores. Que empiece la fiesta.

1 comentario moderado
16 días después
HeXaN

#131 ¿En el objeto? ¿A qué te refieres?

2 respuestas
1 comentario moderado
Lez

#132 Podría explayarme mejor: Quisiera entender el proceso que genera un sentimiento de bienestar o de malestar como por ejemplo, el sentimiento de dolor luego de pellizcar nuestro cachete. Pienso que puede tener alguna relación con las redes neuronales

Ardi

Vuelvo a preguntar dudillas, porque ando mas perdido que un mono en un garaje se supone que si yo tengo mis imagenes [nºbatch,height,width,num_channels] ,mi numero de canales es 4 ya que tengo el mismo corte cerebral pero se ven diferentes cosillas dependiendo del canal que sea dejo ejemplo en spoiler

y se supone que la image mask que tiene la siguiente forma [nºbatch,height,width]

Aquí las dudas:

  • Simplemente con la máscara y la imagen, ¿ Sería capaz de montar un entrenamiento que me genere unas prediciciones que mostrar o hay algún paso previo que me pierdo.?

  • Dentro de que es un problema de segmentación, la máscara se supone que tiene valores 0,1,2,4 donde 0 es no tumor y 1,2,4 son diferentes cosas del tumor. Para mi facilidad he hecho una conversión de todo lo que sea mayor que 1 sea 1. Simplemente para pillar todo el tumor. Esto es correcto?

  • En la base de datos no tengo más pero no deberian estar las labels asociadas en cierta forma aparte de la máscara?

  • Deberia aplicar one_hot a la máscara para conseguir la siguiente forma [nºbatch,height,width,nºclasses] ?

Gracias al que se lea el tocho post xD

Zerokkk

Una cosa, gente: ¿sabéis de algún buen repositorio de datasets para entrenar vuestras ANNs?

Quiero hacer unas prácticas en el campo ahora que me veo capaz de hacer algún experimentito, pero primero quiero ideas, y viendo datasets quizá se me ocurra alguna.

1 respuesta
R

#136 claro hombre: https://www.kaggle.com/datasets

2
HeXaN

Novedades por el mundillo neuronal: Few-Shot Adversarial Learning of Realistic Neural Talking Head Models.

Several recent works have shown how highly realistic human head images can be obtained by training convolutional neural networks to generate them. In order to create a personalized talking head model, these works require training on a large dataset of images of a single person. However, in many practical scenarios, such personalized talking head models need to be learned from a few image views of a person, potentially even a single image. Here, we present a system with such few-shot capability. It performs lengthy meta-learning on a large dataset of videos, and after that is able to frame few- and one-shot learning of neural talking head models of previously unseen people as adversarial training problems with high capacity generators and discriminators. Crucially, the system is able to initialize the parameters of both the generator and the discriminator in a person-specific way, so that training can be based on just a few images and done quickly, despite the need to tune tens of millions of parameters. We show that such an approach is able to learn highly realistic and personalized talking head models of new people and even portrait paintings.

2 1 respuesta
R

#138 veni a postearlo yo.
Ahora podremos hacer peliculas historicas sin tener que usar actores
quiero ver a este chico malo en movimiento

7 días después
Ardi

Una duda rapidilla a ver si alguien me puede decir. Si tengo 4 clases donde 0 es no tumor y 1,2,4 son distintos tipos de tumores al aplicar tf.image.per_image_standardization(image) esto me devuelve se supone cada imagen normalizada, mi duda es tengo valores negativos -0,algo y de máximo valor de cada imagen 2,algo esto es correcto??

8 días después
Casimirott

que buen curro, ahora mismo estoy dando inteligencia artificial en la uni y mi profe es un entusiasta de las redes neuronales y ya nos dejo caer que vendria algo sobre esto, espero que me pueda guiar con algo de lo que esta aca.

Kike_Knoxvil

No sé por que no conocía este hilo

Por cierto, el que quiera los libros de Packtpub y creo que el de O'reilly los tengo en pdf

9 días después
telemaco103

Seguramente en mi TFG tenga que usar ELM y SVM, y ahora mismo ando bastante perdido. Así que el hilo a favoritos por si os tengo que hacer alguna pregunta.

3 respuestas
HeXaN

#143 from sklearn.svm import SVC

Problema resuelto xD

1 1 respuesta
telemaco103

#144 Ojalá jajaja pero me ya me ha dicho mi tutor que tendré que meterme en las matemáticas y explicarlas, aparte de hacer experimentos con las dos.

Tú manejas de SVM o ELM? Que he leído que te dedicas a trabajar con NN.

1 respuesta
HeXaN

#145 SVM lo uso como regresor (no es una NN) y de ELM es la primera vez que hoygo hablar.

Huk

#143 Debe referirse a que expliques el deep learning en una convolutional neural network. Lo de usar SVM debe de ser porque en cross-domain y petabyte scale, puede mejorar un ELM hasta un 10% o según mi experiencia, porque es lo que el profesor entiende o quiere darle uso en su spinoff xD. Suerte!

Ulmo

¿Entender las matemáticas y algoritmos detrás de las NN? ¡¿Nos hemos vuelto locos?! Si precisamente la gracia es usarlas como black box sin saber qué demonios están haciendo pero que bien que predicen mi modelo.

Ahora fuera bromas, espero que le grado de #143 le haya dado amplios conocimientos, porque yo cada vez que he intentado comprenderlo me ha explotado el cerebro y no he llegado a nada claro más allá del funcionamiento general.

1 2 respuestas
perez_chuck

.

1 respuesta
rackinck

#149 Bueno, DeepDream tuvo un poco de eso en mente, pero a nivel visual:

"Once trained, the network can also be run in reverse, being asked to adjust the original image slightly so that a given output neuron (e.g. the one for faces or certain animals) yields a higher confidence score. This can be used for visualizations to understand the emergent structure of the neural network better, and is the basis for the DeepDream concept.

The dreaming idea can be applied to hidden (internal) neurons other than those in the output, which allows exploration of the roles and representations of various parts of the network.[12] It is also possible to optimize the input to satisfy either a single neuron (this usage is sometimes called Activity Maximization)[15] or an entire layer of neurons."