Machine Learning

With the advent of Artificial Intelligence, we are increasingly using machines and computer systems to make predictions/decisions and perform our tasks. The behaviour of these systems is typically defined by skilled programmers with knowledge of the domain that the system is designed for. Machine Learning, a subtopic of the Artificial Intelligence field, involves having machines learn from data without having specific instructions on how to perform their function.

The process involves machines looking at large amounts of data/information and identifying complex patterns in order to solve problems. As an example, to find out which bank transaction (among a million transactions a second) is fraudulent, a machine trained with historical data can extensively identify common patterns of fraudsters and outperform even security experts.

Depending on the problem nature, typically Machine Learning can be subdivided into the following subdomains:

Supervised Learning 

Algorithms learn from labelled data – That is, the algorithm learns how to map input-output pairs of data. During the process of learning for a given input, there is a target label that defines what the outcome of the algorithm should give. 

Tasks like Image Recognition and Weather Prediction are two examples where labelled data can be used to learn patterns.

Unsupervised Learning 

Algorithms learn from unlabelled data – that is, there is no information about what the output should be for the given inputs. Normally the main task of those algorithms is to find similarities and structures in the data itself.

Grouping these structures of data can be useful for example in problems like Image Compression or Recommender Systems.

Machine learning main subcategories (ref. Oreilly)

Reinforcement Learning

Algorithms learn by having software agents interact with their environment and use a feedback system related to their actions and experiences. This allows algorithms to grow smarter over time and learn from changing environments.

Robot Navigation and Games are example domains where behaviour can be learnt from experience to achieve exemplary performance.

Machine Learning at Almende

At Almende we have been applying Machine Learning across multiple projects and domains. Some algorithms were developed to be used for Semantic Analyses, Image recognition, Object Detection, Natural Language Processing (NLP) and among other interesting fields.

Here are some examples where Almende used Machine Learning.

KRISTINA – Semantic Gesture Recognition

A Semantic Gesture Recognition module was developed in KRISTINA, a project in the healthcare domain. One of the goals was to recognize semantic gestures, like head shake/nod and right/left-hand wave, from a video stream. 

During a meeting with virtual doctor assistance (Called KRISTINA) , the person would stay in front of the camera interacting with her (talking, writing and pointing to body regions). Once a known semantic gesture was recognized by the algorithm it would pass this information, together with the amount of arousal (movement), to other modules to be processed and analysed. This information in combination with other outputs from different modules of the system ( Voice analyses, Face expression analyses, etc. ) would help to make better analysis reports of the patients.

Using Machine Learning algorithms, in combination with other techniques from Computer Vision, we were able to localize human body areas and successfully track and extract semantic gestures (Fig. X1+2).

FigX1 – Body areas location and tracking

FigX2 – Hand Wave gesture semantic recognition in a video stream

RURITAGE – Natural Language Processing (NLP)

A Semantic Natural Language Processing module was used in the RURITAGE project for a Decision Support System. 

This project is in the rural heritage regeneration domain. In order to better understand which are the best practices, methodologies and techniques that should be performed in certain regions to use and promote these rural heritage areas, professionals need to study and understand valuable information of Role Models and Lessons Learned that were previously collected and analysed from similar regions. This search sometimes can be extensive and time consuming due to the amount of text that was necessary to be read and analysed by the users. To help in this process we decided to use Machine Learning techniques to retrieve more accurate and relevant results on users searches.

During the searches, even when the input contained different styles of writing or synonymous words, the module was capable of understanding the meaning (semantics) of the sentences, comparing the similarities between the input and the text in the database and then bringing to the user the most relevant information according the their needs (FigY).

FigY – Semantic evaluation using NLP


Another area we have explored in the recent past is to use Machine learning to teach robots so they can perform tasks autonomously. In the Interactive Robot Teaching project we worked on teaching tasks to a robotic arm using Interactive Imitation Learning. This involved enabling the robot to interact with a human and ‘imitate’ their behavior.

In the algorithm we developed, a human teacher provided feedback and guidance to the robotic arm through a keyboard interface as the robot executed the required task. One such task was to place a ball attached to the arm via a string into a nearby cup. Through continuous improvement via corrective feedback, the robot can quickly learn how to move its joints to correctly swing the ball into the cup (Figure Z).

FigZ – Robot Learning: Ball in a cup

Connect with us

Having self-organization as part of our DNA, to embrace the increased complexity and faster communications between systems alongside with the incredible amount of data that is being produced every single day, Machine Learning fits well on our solutions and vision.

With its ability to extract deep insights from complex and huge amounts of data to make smarter decisions, Machine Learning is on top of our minds when designing solutions.

About Luís F.M. Cunha - Research Engineer

I have been passionate about Artificial Intelligence since the first time I took a class in it at university. Creating machines that can mimic human behaviour and even surpass human capabilities fascinates me. 

For me, Machine Learning is bringing to life technology that existed only in science-fiction movies. When used smartly and ethically, it can have a big impact in improving people’s lives and society overall. This is just the beginning of a big change! 

Connect with me! Would you like to know more about the possibilities of Machine Learning and what it can do for you? Reach out to me or one of our experts via tel. +31(0)10 404 9444 or send an email to