A child that pricks itself on a cactus will not touch it again. A robot programmed to touch cacti will not stop touching them, not even if it is harmful to it. The moral of the example is: all human beings (almost) learn from their mistakes, computers do not. But, what if they could learn too? In this case we are dealing with a kind of artificial intelligence (AI).
Machine Learning is the branch of IT that studies and develop solutions for the creation of AI. Implementing Machine Learning algorithms means you have to give the software the ability to learn independently and improve from experience. This means that, once the software processes are activated, developers do not need to intervene to correct the errors, at least in theory.
This independent learning is based on large digital databases from which the software can take data to learn to organise and recognise information that is useful for the task assigned. In other words, the learning is activated by the observation of data, which can initially occur with or without the assistance of a human supervisor, based on the type of approach adopted. Usually the software elaborates decisional models based on the data and then applies these choices, improving over time.
Machine Learning can be helpful, for example, in all the fields in which the scale of activities to be performed is so large that it becomes extremely expensive, time consuming and tiring if performed by human beings. Think for example of the monitoring of violent or offensive content prohibited on social networks which numbers in the thousands every day and the psychological damage they can cause to operators in the long term.