Machine Learning is an extremely popular field both of researchers as well as programmers. After spending several years programming and building application machine learning acts as a natural area where you would like to evolve to.

This course starts by building basic concepts on what machines learning is and how machines learn. You built your very own learning model in Java from scratch and improve it as you learn more concepts.

You will then move on to building Deep Neural networks using Java. You will use these networks to train models on Image Recognition and test their accuracy.

Later, the course discussed Convolutional Neural Networks, the state of the art Deep Learning network that can achieve more than 90% accuracy in image recognition.

- Module I: Machine Learning Basics
- Introduction to Artificial Intelligence
- What is Machine Learning
- Review of Mathematics
- Matrices and vector
- Differentiation

- Writing your first Machine Learning Algorithm
- Working with Data and Files
- Matrix method
- Loss based Methods
- Gradient Descent
- Saving and Reusing your models

- Module II : Machine learning Ecosystem
- Concepts
- Parameters an Hyper Parameters
- Regularization
- Data Normalization
- Loss Functions
- Probability Theory
- Maximum Likelihood Estimation

- Working with Popular Datasets
- CIFAR Dataset for Image Recognition

- Popular Machine Learning algorithms
- Linear Regression
- Logistic Regression
- Clustering
- Support Vector Machines
- K Nearest Neighbor

- Concepts
- Building Deep Network for Image recognition
- K Nearest Neighbor
- Softmax Classifier
- Neural Networks

- Convolutional Neural Networks
- Understanding Convolution
- Setting up Convolution Units
- Develop an End to end Convolutional network
- Train, Test and Improve

- Case Studies
- Image Recognition with CIFAR Dataset
- Price prediction

- Conclusion
- Getting help in future
- Taking it from here
- Acknowledgement and citations

- Experience with programming in Java Language
- Basic understanding of String and File operations using Java Language
- Familiarity with Eclipse development environment

- Understanding of How Machines Learn
- Ability to write a Machine learning algorithm from scratch in Java
- Get acquainted with Machine Learning concepts and popular algorithms
- Understand working with popular datasets
- Ability to Train, Test and Deploy your own learning models using Neural Networks
- Develop your very own Deep learning networks

- This course is meant for Java developers who want to learn Machine Learning and implement in their programs .
- This course is NOT meant for people looking to get deeper understanding of Machine Learning algorithms, especially the mathematical and scientific portions of it
- This course will get you familiar in developing and testing a deep neural network using Java.

Basic concepts

Hands on learning

Reading material