1 Introduction  
2 Challenges  
2.1 Heterogeneity in space and time  
2.2 Large number of classes  
2.3 Paucity of labeled data  
2.4 Imperfect labels  
2.5 High-dimensional spatio-temporal data  
3 ML Methods  
4 Discussions, Future Directions and Concluding Remarks