I am working on a research project aimed at classifying babies' cries based on their needs. However, I have encountered difficulties in obtaining a suitable cry dataset.

The only dataset I was able to access was the donate-a-cry-corpus-features-dataset, which consists of only 457 samples. Unfortunately, this limited dataset has posed challenges for my model. Specifically, over 300 samples are labeled as "hungry," resulting in a biased prediction towards this class.

How to overcome this issue and acquire a more diverse cry dataset that covers a broader range of needs?

  • $\begingroup$ Requests for datasets are often better at OpenData.se. Better to focus here on what to do with the current dataset. $\endgroup$
    – Ben Reiniger
    Aug 8 at 2:17

1 Answer 1


1. Data Augmentation: You can create new training images from the existing ones by slightly changing them (Vertical shift, Horizontal shift, Vertical flip, Horizontal flip, Rotation, Brightness adjustment, etc.) You can check out this paper.

2. Create your own dataset: You can create your own dataset by scraping the images from internet and labelling them. But in your case, the dataset can be noisy as the search results can be similar for different classes. Also, I am not sure if it would be reliable since the images used in articles related to a particular class will not necessarily contain picture of the same class. (For e.g., an author writing an article about illness in babies would not be concerned about whether the picture is specifically of an ill baby; any picture of a crying baby would suffice). But if you want to try, this tutorial can prove to be helpful.

To tackle the class imbalance problem, you can also try:
1. Class weighing: To reduce the bias associated with class imbalance, you can increase the weight of examples associated with minority class.
2. Hierarchical classification: This involves training multiple models, each on a different level of the hierarchy. For example, if you have 3 classes, the highest level of the hierarchy could be "ill," followed by "hunger," and then "alone." Each model is trained on the data at that level, with the results then being combined to form the overall prediction.

References: [1]: https://www.picsellia.com/post/improve-imbalanced-datasets-in-computer-vision

  • $\begingroup$ Thank you @shi.inu I will check them out. $\endgroup$ Jul 17 at 16:03
  • $\begingroup$ I think the dataset in question is audio of cries, not images. $\endgroup$
    – Ben Reiniger
    Aug 8 at 2:18

Your Answer

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

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