So as my university project I am planning to make a prediction system as described in the title. My current idea is to use the age/gender classifier and run it on a video(taken in front of a shop) which outputs a csv file of the age/gender/Customer ID. In addition, I will use the existing data of the shop of who came in/who didn't come into the shop but passed by the shop and by running XGBoost on this csv data I can predict which customer will come into the shop or not.

Do you think this idea is possible? Is there any other way to implement this idea. It would also be great if we could implement this in such a way as to make the deep learning model learn the various features of those who come into the shop or not.

  • 1
    $\begingroup$ Don't you think the number of features is too less? From first look I can't see a significant correlation between the features and the classification..I maybe wrong though...Also with such a less number of features regular statistics should be enough. $\endgroup$
    – user9947
    Sep 4 '18 at 10:30
  • $\begingroup$ Yup, that's exactly what I thought. Is it possible for the model to learn features(neural network) given the input video file? $\endgroup$ Sep 4 '18 at 10:44
  • $\begingroup$ I haven't worked on such computation intensive tasks like processing video so you have to ask someone else $\endgroup$
    – user9947
    Sep 4 '18 at 10:55
  • $\begingroup$ I think it's hard to tell from a short video of a camera, if a customer come into the shop or not.... I guess the only way to do so is actually to see the direction where the person goes... But as @JohnDoucette said in the answer, the only way to know is to try..... $\endgroup$ Sep 4 '18 at 12:04

This should be possible, but it's not completely clear what you are trying to do.

If you're trying to predict customer age and gender from a video, then you've got a computer vision problem. Deep learning methods are the state of the art for this, and probably some sort of convolutional deep neural network is your friend.

If you're trying to predict whether the customer will enter the shop from their age and gender, then @DuttA suggestion to start with simple classification techniques is probably the best bet. Try out logistic regression as a starting point.

If you really want to do both of these things at once, you can again try out a deep convolutional neural network.

All that said, it's not completely clear that there is signal in the videos you want to collect: it might be that predicting whether they'll enter the shop is not really possible on the basis of a short video. The only way to know for sure is to give it a try however.

  • $\begingroup$ Thank you very much for your answer. If I were to use CNN to complete both the tasks at once, do I still need to annotate the features(age,gender,etc)? To be clear what I aim to do is to identify the customer features and predict whether they come into the shop or not in one go(The third option you mentioned). I am also planning to train the model to classify a new type of images(such as company worker, housewives,etc). $\endgroup$ Sep 5 '18 at 2:33
  • $\begingroup$ @DukeGlacia If you annotate with features that are actually predictive, then your model should learn faster. If you annotate with features that are not predictive, it might actually slow things down though. $\endgroup$ Sep 5 '18 at 11:07
  • $\begingroup$ This might be a very dumb question but why did it take a long time to achieve a facial recognition system of reasonable accuracy? Isn't it sufficient to feed the data with lots of images? I'm starting to think my project may face the same type of problem. i.e too many features to learn but very fewer data. $\endgroup$ Sep 5 '18 at 11:29
  • $\begingroup$ @DukeGlacia it take a very large number of images, and a very large amount of computational time. If you don't have a pretty large number of images (at least many thousands), then this probably won't work. $\endgroup$ Sep 5 '18 at 11:36
  • $\begingroup$ Thanks a lot. Additionally, given that my I have sufficient data. Is it possible to detect the object from a video file and output(the customer data) as a csv file? $\endgroup$ Sep 5 '18 at 11:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.