Unsupervised Learning
How it works: In unsupervised learning, the network learns certain patterns or behaviors in the data without seeing an example, and only by finding similarities between data points. This is specifically helpful when one needs to find similar groups in the data. Since there is no labeled data, these algorithms are helpful when the human expert does not necessarily know what to look for in the data. This family of ML algorithms are typically used in pattern recognition and clustering. Since there is no target outcome based on which the algorithm can model relationships, these algorithms use techniques to mine the data for rules, patterns, and structures, and group data points based on similar characteristics.
Common algorithms: The main types of unsupervised learning algorithms include clustering and Association rule mining algorithms. Some common unsupervised algorithms inlcude k-means clustering, hierarchical clustering, and Boltzman Machines.
Reinforcement Learning
How it works: In reinforcement learning, the computer learns certain behaviors or algorithms based on feedback from the environment. This algorithm can be learnt once or it could keep adapting using continuous feedback. Reinforcement learning overcomes some disadvantages of supervised learning, but is more complex and computationally expensive.
Common algorithms: An example of reinforcement learning algorithms are Q-learning, and Deep Q networks (DQN). Some applications of the reinforcement learning algorithms include computer played board games (such as Chess, and Go), robotic hands, and self-driving cars.
Building a machine learning model
Building a deep learning model is similar to building any other machine learning model. It involves some high level steps that need to be taken in order to design and validate the model. The main steps in building a general machine learning model include:
- Splitting the data into train and test data
- Train a machine learning model
- Evaluate the model on the test data
In addition to the above steps, there are some specific steps that need to be taken to build a machine learning model in Python including importing the required Python libraries, and importing and cleaning your data. In the next section, we will walk through a simple machine learning problem and how we can approach it using above steps in Python.