Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Overview of machine learning algorithms

A few years ago machine learning caught my attention, and since then my interest in this field keeps growing. Every day we see more and more intelligent solutions surrounding us. You probably noticed, that shopping sites adapt to our interests and suggests targeted offers, another example is spam email filters, if we mark emails as spam, they keep disappearing from our lives. Another area is robotics, where they learn how to navigate independent and perform various tasks. Autonomous flying robots, helicopters, quads, handwriting recognition, computer vision, data mining and multiple fields like markets, biomedicine, biology – all this is covered by machine learning algorithms. machine learning algorithms

Here are a few reasons why machine learning is significant and sometimes necessary:

  • Data mining. Sometimes it isn’t possible to understand the nature data and relations between, so machine learning algorithms can extract these hidden relations.

  • Adaptation. It is hard to design a flexible algorithm that could adapt to a changing environment. Machine learning algorithms can be used to improve itself according to changing data.

  • Scale. There can be a large number of knowledge in data sets that sometimes aren’t completely understood by a human designer. Machine learning algorithms can learn from this knowledge without human interaction.

  • Complexity. The relation between input and output data may not be clearly understood so designing an intelligent system might not be possible or hard. Machine learning algorithms are good at classification and finding hidden relations.

These are only a few points that give us the motivation to apply machine learning algorithms in many applications. Take a classic example – a self-driving car. It is practically impossible to write an algorithm that would tell how a car should drive and react to various obstacles. It is better to construct a neural network and teach it by example.

Try to imagine two processing has to be done to move an inch. There are a bunch of sensors that take readings and pass to machine learning algorithms to process data to make a decision. Imagine if there are several new sensors introduced. By using standard algorithms, you would need to redesign software at some level. With machine learning algorithms you only need to feed new data to re-teach neural networks and hope for better performance.

Speaking of machine learning algorithms – there are many types and variations of them. Each of then needs to be selected according to the problem you want to solve.

The primary key algorithms are:

  • Regression

  • Clustering

  • Neural networks

  • Rule-based system

  • Decision trees

  • other.

Each of them fans out to specific solutions and algorithms for instance regression algorithms may be based on linear regression, logistic regression models and other.

In the other hand machine learning algorithms can be classified into major groups:

  • Supervised

  • Unsupervised

Supervised learning is a type of algorithms when it learns by correct example. Simply speaking you give some input data and show what output data should be. By providing enough data pairs, the algorithm learns how to classify things and give correct answers when new unknown data appears.

Unsupervised learning machine learning algorithms as the name already imply doesn’t have that luxury learn from known data. Mostly they are used to classify data, extract hidden structure from unlabeled data sets. They are great in data mining problems.

I hope to expand the machine learning topic to a series of posts with a more practical approach. With very little theory and more practical example of how to solve one or another problem in your life. Let me know in comments below or forum what topics and examples you would like to see related to machine learning.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.