# How long it takes to train face recognition deep neural network? (rough estimation)

If I use a desktop PC with a GPU, how long it might take to train face recognition deep neural network on let's say dataset of 2.6 million images and 2600 identities? I guess it should depend on various properties (e.g., type of the DNN). But I am just looking for a rough estimation. Is it a matter of hours/days or years?

Thanks!

• Does not have enough details to be commented upon.E.g. $O(n^2)$ complexity compared to $O(n)$ can make a problem go to a year from a day. – DuttaA May 25 at 3:51
• Very much dependent on your processing power and the computational complexity per DuttaA's comment. – DukeZhou May 29 at 20:32

Training time depends on a lot of parameters. Some of them are:

1. Size of each image (resolution)
2. Color/Monochrome image (color image has 3 times data if you consider RGB image)
3. Like you mentioned on the type of DNN. No. of layers of DNN. No. of neurons in each layer.
4. Total no. of images in the dataset. (2.6 million here)
5. GPU you are using (you didn't mention which GPU you are using. There are GPUs with wide range of capabilities, to predict the time, you need to know the exact specs of GPU).
6. Training time also depends on RAM on your machine and also how fast host PC can transfer data to GPU for processing.
7. Since you mentioned face recognition, i am assuming you are using CNN, but if you again use fully connected network, training time will change and will obviously increase manifold.

Making some reasonable assumptions for the parameters you didn't mention, i feel your task is similar to ILSVRC and i am predicting the training time will be a few days.

Below are the links which mention time of training for ILSVRC.