GuillaumeMougeot / DogFaceNet

FaceNet implementation for dog identification
MIT License
134 stars 47 forks source link

Loss values #9

Open razihel96 opened 1 month ago

razihel96 commented 1 month ago

Hi, I have been studying your work for some time now (I'm doing a thesis about it) and would like to verify if the final results are consistent (I implemented a small script to print out some graphs for analysis).

Here are the results of your original code without any modifications: output accuracy output loss

final result

Even though the loss values do not fall within the typical 0.1 - 0.9 range, can they still be considered valid?

And here are the results after applying the following modifications: • I divided the output of the “triplet” function by 10 using the lambda function (in order to fall within the range 0.1 - 0.9) • I made the dataset more uniform by discarding classes with too few images • I set the batch size to 63 instead of 3*10

output accuracy 2 output loss 2

final result 2

Does my modification make sense?

Thank you very much for your time. I look forward to hearing back from you.

GuillaumeMougeot commented 1 week ago

Hi, sorry just saw your message, Yes I think what you did make sense. But it seems that it affected your accuracy quite significantly (if we suppose that the two test set are identical in your examples). The loss not being between 0 and 1 is caused by the nature of its definition and should not be a problem, dividing it by ten should not change much of its performance. Changing the dataset and the batch size could make the comparison between before and after these modifications difficult because, on one side, of a potential difference in the two test sets and, on the other side, a larger batch size implies that the model will have seen more images per epochs. Just making sure that you had that in mind, if you did just forget about all of that. good luck with your thesis!