midusi / proyecto2019

Proyecto de investigación y desarrollo con alumnos. Detección de atributos faciales.
https://midusi.github.io/proyecto2019
GNU Affero General Public License v3.0
4 stars 1 forks source link

Primeros modelos entrenados #8

Closed torresclucia closed 3 years ago

torresclucia commented 5 years ago

Dataset: expressions in the wild

Usando la red entrenada con el dataset expressions in the wild.
Metrica Angry Disgust Fear Happy Sad Surprise Neutral
precision 0% 50% 0% 58.36% 0% 33.33% 79.58%
recall 0% 4.87% 0% 89.34% 0% 0.90% 56.06%
accuracy 98.10% 98.98% 99.85% 69.07% 97.83% 97.23% 70.34%
f-measure 0% 8.88% 0% 70.60% 0% 1.76% 65.78%
Usando la red entrenada con el dataset facial_expressions.
Metrica Angry Disgust Fear Happy Sad Surprise Neutral
precision 0% 0% 0% 53.83% 0% 28.57% 79.56%
recall 0% 0% 0% 93.77% 0% 10.90% 41.53%
accuracy 98.13% 98.98% 99.85% 63.98% 98.18% 96.81% 64.85%
f-measure 0% 0% 0% 68.39% 0% 15.78% 54.58%

Dataset: facial_expressions

Usando la red entrenada con el dataset facial_expressions.
Metrica Angry Disgust Fear Happy Sad Surprise Neutral
precision 0% 0.5% 0% 58.36% 0% 33.33% 79.58%
recall 0% 4.87% 0% 89.34% 0% 0.90% 56.06%
accuracy 98.10% 98.98% 99.85% 69.07% 97.83% 97.23% 70.34%
f-measure 0% 8.88% 0% 70.60% 0% 1.76% 65.78%
Usando la red entrenada con el dataset expressions in the wild.
Metrica Angry Disgust Fear Happy Sad Surprise Neutral
precision 4.34% 6.25% 0% 33.93% 36.44% 41.37% 61.28%
recall 0.54% 0.15% 0% 83.26% 2.43% 0.95% 47.26%
accuracy 94.96% 95.97% 98.76% 54.11% 88.91% 92.19% 62.01%
f-measure 0.96% 3.05% 0% 48.21% 4.55% 1.85% 53.37%
torresclucia commented 5 years ago
facundoq commented 5 years ago

Joya! Hay un sesgo fuerte en todos los casos con happy y neutral. Quizás estaría bueno ajustar los pesos por clase Que arquitectura usaron? Capas? Features?

El mié., 3 de abr. de 2019 18:23, torresclucia notifications@github.com escribió:

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/midusi/proyecto2019/issues/8#issuecomment-479664195, or mute the thread https://github.com/notifications/unsubscribe-auth/ABgPB_oERnouCdUOA23bK1gs1doFZqOpks5vdRvEgaJpZM4cbdDw .

FrancoRonchetti commented 5 years ago

Chicos, fijense que en varias clases tienen un Acc de 98% y un precis-recall de 0%. Esto es muy raro... se me ocurre que el clasificador podría estar diciendo siempre "No"... y que haya muchas clases negativas... Miren bien la matriz de confusión tanto en training como en testing. Si es es el problema se puede solucionar, como dice Facu, cambiando los "class_weights" al entrenar.

El mié., 3 abr. 2019 a las 19:00, Pepe Mandioca (notifications@github.com) escribió:

Joya! Hay un sesgo fuerte en todos los casos con happy y neutral. Quizás estaría bueno ajustar los pesos por clase Que arquitectura usaron? Capas? Features?

El mié., 3 de abr. de 2019 18:23, torresclucia notifications@github.com escribió:

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <https://github.com/midusi/proyecto2019/issues/8#issuecomment-479664195 , or mute the thread < https://github.com/notifications/unsubscribe-auth/ABgPB_oERnouCdUOA23bK1gs1doFZqOpks5vdRvEgaJpZM4cbdDw

.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/midusi/proyecto2019/issues/8#issuecomment-479674640, or mute the thread https://github.com/notifications/unsubscribe-auth/AkH5EVp6JUFSXCrp4RxiAmj-HsW4PgIaks5vdSSMgaJpZM4cbdDw .

facundoq commented 5 years ago

Si, también estaría bueno ver la distribución de ejemplos por clase en training y testing

torresclucia commented 5 years ago
facial_expressions train validation
0_angry 173 75
1_disgust 93 41
2_fear 14 6
3_happy 3897 1671
4_sad 170 73
5_surprise 256 110
6_neutral 4769 2044
expressions_in_the_wild train validation
0_angry 10242 733
1_disgust 1493 639
2_fear 468 201
3_happy 9720 4166
4_sad 4125 1768
5_surprise 2947 1263
6_neutral 14632 7468
torresclucia commented 5 years ago
torresclucia commented 5 years ago
precision recall f1-score support
0_angry 0.00 0.00 0.00 1711
1_disgust 0.00 0.00 0.00 1493
2_fear 0.00 0.00 0.00 468
3_happy 0.47 0.81 0.59 9720
4_sad 0.00 0.00 0.00 4125
5_surprise 0.42 0.27 0.33 2947
6_neutral 0.49 0.57 0.53 10242
avg / total 0.35 0.47 0.40 30706
precision recall f1-score support
0_angry 0.00 0.00 0.00 733
1_disgust 0.00 0.00 0.00 639
2_fear 0.00 0.00 0.00 201
3_happy 0.40 0.80 0.53 4166
4_sad 0.00 0.00 0.00 1768
5_surprise 0.37 0.26 0.31 1263
6_neutral 0.62 0.58 0.60 7468
avg / total 0.42 0.49 0.44 16238
facundoq commented 5 years ago

Si, más allá del tema del desbalance, es un toque guazo tantas densas, es un problema de 7 clases, además por eso les tarda tanto. Pueden probar con dos densas, una de 256 y otra de 7, y hacer más finetuning.

También si se animan, en lugar de una cnn con finetuning, pueden usar Face Embeddings como feature con una red pre entrenada ( https://github.com/ageitgey/face_recognition tiene un binding fácil de usar a la versión de dlib). Eso solo se usa para codificar cada cara como un vector de 128 o 256 elementos. Luego con eso, se pueden armar una red fully connected para clasificar.

On Wed, Apr 10, 2019 at 11:27 PM torresclucia notifications@github.com wrote:

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/midusi/proyecto2019/issues/8#issuecomment-481940667, or mute the thread https://github.com/notifications/unsubscribe-auth/ABgPB4s_Vlh1U-m8r7nPT13p5cZM7Stpks5vfp2PgaJpZM4cbdDw .

torresclucia commented 5 years ago

Train:

precision recall f1-score support
0_angry 0.19 0.23 0.21 1711
1_disgust 0.08 0.03 0.05 1493
2_fear 0.22 0.02 0.04 468
3_happy 0.60 0.69 0.64 9720
4_sad 0.46 0.13 0.21 4125
5_surprise 0.44 0.37 0.40 2947
6_neutral 0.52 0.66 0.58 10242
avg / total 0.48 0.51 0.48 30706

Test:

precision recall f1-score support
0_angry 0.15 0.22 0.18 733
1_disgust 0.06 0.03 0.04 639
2_fear 0.14 0.02 0.03 201
3_happy 0.54 0.69 0.60 4166
4_sad 0.40 0.13 0.20 1768
5_surprise 0.36 0.35 0.36 1263
6_neutral 0.65 0.66 0.66 7468
avg / total 0.52 0.54 0.52 16238
torresclucia commented 5 years ago

Train

metricas_ponderado_train

Test

metricas_ponderado_test

FrancoRonchetti commented 5 years ago

Chicos. Prueben reentrenar toda la red en vez del finetuning.

El jue., 9 de may. de 2019 19:07, torresclucia notifications@github.com escribió:

Train

[image: metricas_ponderado_train] https://user-images.githubusercontent.com/17890888/57489821-9f4ba200-728d-11e9-8e39-3e6304e9bc28.png

Test

[image: metricas_ponderado_test] https://user-images.githubusercontent.com/17890888/57489839-aa9ecd80-728d-11e9-8f6b-de097cc044ef.png

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/midusi/proyecto2019/issues/8#issuecomment-491085748, or mute the thread https://github.com/notifications/unsubscribe-auth/AJA7SEINHUWQHKKZ2AVOQKTPUSOCHANCNFSM4HDN2DYA .

facundoq commented 5 years ago

No estoy seguro igual de que esté dando mal. Probando el reconocedor que subieron Gastón y Ulises, la mayoría de las caras también te las reconoce como neutral o happy, pero no se siente como que está equivocado, sino que para angry, surprised, etc, necesitás tener una expresión más "extrema. Para mi habría que probarlo con una webcam o ver qué ejemplos no está clasificando bien. Yo iría por ahí también, además de entrenar desde 0 para ver qué da.

Por otro lado, esta semana instalamos la GPU, el lunes Gastón le instala kubuntu/cuda para poder correr cosas. Creo que les sería util pasar y dejar corriendo algunos experimentos.

On Thu, May 9, 2019 at 8:27 PM Franco Ronchetti notifications@github.com wrote:

Chicos. Prueben reentrenar toda la red en vez del finetuning.

El jue., 9 de may. de 2019 19:07, torresclucia notifications@github.com escribió:

Train

[image: metricas_ponderado_train] < https://user-images.githubusercontent.com/17890888/57489821-9f4ba200-728d-11e9-8e39-3e6304e9bc28.png

Test

[image: metricas_ponderado_test] < https://user-images.githubusercontent.com/17890888/57489839-aa9ecd80-728d-11e9-8f6b-de097cc044ef.png

— You are receiving this because you commented. Reply to this email directly, view it on GitHub <https://github.com/midusi/proyecto2019/issues/8#issuecomment-491085748 , or mute the thread < https://github.com/notifications/unsubscribe-auth/AJA7SEINHUWQHKKZ2AVOQKTPUSOCHANCNFSM4HDN2DYA

.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/midusi/proyecto2019/issues/8#issuecomment-491102224, or mute the thread https://github.com/notifications/unsubscribe-auth/AAMA6B42WPHFBINZI34DKWLPUSXP5ANCNFSM4HDN2DYA .