Lessons Learned Using Machine Learning in Java
summary
Builds a Java image classifier for Lego using ResNet-50 and the Deep Java Library backed by MXNet and TensorFlow, trains with generated plus real photos, and applies transfer learning and data augmentation. Reports concrete numbers: training hit ~81% accuracy while held‑out validation fell to ~56%, zooming synthetic renders raised accuracy (~80% vs 65%), and adding real images plus frame averaging pushed results into the high tens of percent range. Includes a physical conveyor camera sorter that ultimately works.
AI-written summary · about
chapters (28)
- 0:00Introduction to machine learning in Java
- 1:22Java vs Python for ML
- 3:28Java ML frameworks
- 5:38Java vs Python performance
- 6:21Dog vs muffin exercise
- 8:07Building dog/muffin dataset
- 11:36Data augmentation for images
- 12:18Setting up Java ML project
- 14:27Batch size in training
- 15:29Pre-trained model selection
- 17:15Model accuracy & loss
- 19:24Reproducibility in training
- 20:29Save/load trained models
- 21:36Using model for predictions
- 23:00Early stopping in training
- 24:52Learning rates explained
- 26:17Transfer learning techniques
- 27:41Hibernate Criteria API
- 28:24Python-Java ML integration
- 29:47ML for Lego sorting
- 31:11Generating Lego images
- 32:15Zooming vs real-size images
- 33:20Training 100 Lego categories
- 34:24Confusion matrix analysis
- 35:52Improving accuracy with real images
- 37:41Adjusting contrast & grayscale
- 39:12Adding real images to dataset
- 40:16Key takeaways
related talks
48mLessons learned using Machine Learning in Java
58mAn introduction to Machine Learning using LEGO
58mAn introduction to Machine Learning using LEGO
37mJavaScript Machine Learning from Magic to Science
51mMachine Learning Exposed Introduction to Machine Learning
47mML in Java, YES it's possible!
50mML in Java, YES it's possible!
40mMachines are Learning
