I am working on a task that requires me to classify a large amount of mixed files on a backup drive (more than 10 TB with more than 32 million files) based on content. The included file types are documents, images, videos, executable, and pretty much everything in between.

I am also required to create new tags or metadata that will allow for automatic classification of new files. It'd also allow for manual input of category. For each input I give to the system, the system would learn and improve its classification.

Here is what I have come up with so far:

  • Documents: classify using existing categories with packages like Nltk on Python. Alternatively, first run topic modeling using LDA or NMF and then classify.
  • Images: use CNN. In case of unknown label, use VAE to cluster the images.
  • Videos and other types of files: I do not know how to approach this.

Since I am not sure about my approach, any input is greatly appreciated.

  • 2
    $\begingroup$ What kind of classification scheme are you looking to implement? Is it about technical metadata ("this is a video file, this is an image from a camera") or about content ("this video is of a children's party, this image is a cat with a caption")? Or something else? $\endgroup$ – Neil Slater Jun 6 '18 at 8:51
  • 1
    $\begingroup$ How many files are there? That's probably a more important measure of the size of your task compared to space used on disk. $\endgroup$ – Neil Slater Jun 6 '18 at 8:53
  • 1
    $\begingroup$ It is content classification (probably it is only applicable to documents, images, and videos). And there are more than 32 million files in that drive. $\endgroup$ – Khang Nguyen Jun 6 '18 at 9:22
  • 1
    $\begingroup$ For video classification you could also use a CNN and classify single frames of the video. Then you have to come up with some decision function that classifies your video depending on all the single frame classifications. Using a CNN for full video classification is still a reasearch topic and really not an easy task but there are some recent papers about it regarding this. I am also assuming that you have a trained CNN on your wanted classes. $\endgroup$ – Marcel_marcel1991 Jun 6 '18 at 11:20
  • 1
    $\begingroup$ Do you have any specific goals regarding the content classification? E.g. are the classes supposed to cover specific uses of the files, are they for indexing/finding files (like user-supplied tags), do you know in advance what the classes should be, or just looking for any kind of split that would make finding content better? E.g. if you found a free classifier that identified animals in images and video, would you just use it because adding that label helps for 1% of your content, or are your goals more specific? $\endgroup$ – Neil Slater Jun 6 '18 at 11:36

Your Answer

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

Browse other questions tagged or ask your own question.