I have a small dataset of ~300 ultrasound clips, about evenly divided between 3 classes. Due to the nature of the data (medical) it's difficult to get more.

I need to train a model (or an ensemble) to classify these clips.

Feature reduction is a necessary first step. I've considered using HOGS (for example) on a cropped part of the video to create relatively small set of time-series features. However, even a "dumbed down" version of HOGS would give at least 100 time series features.

That being said, lets assume for a minute I'm able to reduce the feature space even more while maintaining variability between classes.

Which model(s) would be best suited for this problem?

Example screenshot


1 Answer 1


One option in similar problems is to use transfer learning on raw images. For similar problems (few hundred images for training), solution that worked for me is transfer learning + image pre-processing to generate augmented images (E.g.: Stretched / Rotated versions of images).

High level design is :

  1. Use a model that has been trained on large number of images (millions). This model has already learnt image processing as a domain (such as edge detection, phase / color changes and so on) and might remove need to feature engineering (like HOGS)
  2. Add few more layers to be trained for Ultrasound images
  3. Train these new layers with images (Existing layers are frozen since they are already trained)

enter image description here

Examples of this approach are :




  • $\begingroup$ Thank you for your answer. We had actually already tried this method and the results were poor. The issue is that even a human doctor is only able to classify these clips based on the whole clip, and not just an image from it. There is significance to the "flow" of the main features in the image. This is the reason I'm intent on doing time-series classification, rather than per image. $\endgroup$
    – Idodo
    Apr 10, 2019 at 12:41
  • $\begingroup$ That might be similar to "action classification in video" problem. You can feed each individual frame to this network and feed output of network to an LSTM. With this, you still get benefit of transfer learning and combine it with time-series / sequence via LSTM. $\endgroup$ Apr 10, 2019 at 13:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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