Agriculture is undergoing a profound transformation. This upheaval implies integrating more and more new technologies in order to satisfy the obligation of yield, the respect of environmental norms, the constraints of work arduousness and the problems of manpower.
To meet these challenges, Artificial Intelligence has made a sensational entry into the agricultural world. Its appearance and democratization are revolutionizing our working methods and opening up new perspectives.
But what exactly do we mean by Artificial Intelligence? When we talk about AI, we often evoke other terms such as Deep Learning or Machine Learning. These two terms, commonly used in image analysis, are at the heart of crop or livestock monitoring.
To help you understand, here is an explanation and a precise definition of each of these terms.
What is Artificial Intelligence used in agriculture?
For many of us, the term Artificial Intelligence (AI) remains vague. The CNIL defines AI as "the great myth of our time". For their part, insiders refer to it as a branch of computer programs capable of complex interpretation of information.
But did you know that Artificial Intelligence is not as new as one might think, as it has been around since the 1950s?
Artificial Intelligence and its Machine Learning & Deep Learning divisions.
Artificial Intelligence is a very vast field, where Machine Learning techniques are a part of it. Deep Learning is a subset of Machine Learning.
|Yann Le Cun, a researcher in Artificial Intelligence, considered as one of the inventors of deep learning, defines AI as "a set of techniques allowing machines to accomplish tasks and solve problems normally reserved to humans and some animals.|
However, we can question the ability of machines to interpret information and their level of autonomy. It is often difficult to decide at what "algorithmic complexity" one passes from a "simple computer program" to an Artificial Intelligence.
The spectrum of definitions of AI is very wide and it is regularly opposed to the notion of «Strong AI - General AI» to the «Weak AI - Narrow AI».
Strong Artificial Intelligence vs Narrow Artificial Intelligence
Narrow Artificial Intelligence is an application of Artificial Intelligence techniques that allows a system to replicate, or even surpass, human intelligence in performing a specific task.
Strong Artificial Intelligence is a system with complete knowledge and cognitive capabilities, so that its performance is indistinguishable from that of a human being. Although widely present on the big screen - Wall-E, Terminator, Star Wars or even Matrix and Her - no fear, such a system has not been developed yet!
Nevertheless, AI is still present in a large number of applications ranging from the first programs playing checkers in the 50's to the current autonomous car projects. These applications cannot only be defined as weak AI or strong AI, but rather are at different degrees of autonomy.
Machine Learning to solve agricultural problems
Among the branches of AI, the most important one is "Machine Learning", which can be translated as automatic learning. This approach is based on the use of algorithms that read input data and learn from it (i.e., find a mathematical model of it) in order to solve a specific problem. The goal is to recreate human reasoning by adapting to new problems and using what it has learned from similar situations.
Machine Learning aims to answer problems that cannot be solved by a fixed rule. The idea is not only to imitate the way a human behaves, but also to imitate the way it learns. One of the first practical cases involving Machine Learning was the creation of spam filters. This was followed by the victory of Deep Blue, a supercomputer, over Garry Kasparov, the world chess champion, in 1997.
Among the categories of applications most used in Machine Learning are
This involves predicting a numerical value, based on one or more other numerical input values. Let's take an example in pig production: we know the output value Y (such as the weight of a pig) for a series of input data X (the size of the corresponding pig): (X1;Y1), (X2;Y2)...
Using this data, we want the system to find a mathematical function, Y=f(X), to predict the weight of a pig based on its size.
Here we are trying to find out what "class" a data can be associated with by comparing it to the classes of the data used in the learning phase, for example the classification of animal species.
Contrary to classification, we focus here on the study of similarities between data in order to classify them into groups with common characteristics such as families of species: birds, mammals...
Over time, many families of algorithms responding to these categories of applications have appeared: k-nearest neighbors (KNN), support vector machines (SVM), decision tree learning and neural networks.
Learning of neural networks
As you may have understood, neural networks are a family of algorithms belonging to Machine Learning. An artificial neural network is inspired by the functioning of the human brain. In it, information moves as an electric current through the neurons. Each neuron is connected to other neurons and is capable of receiving several electrical signals from some of its "neighbors" and sending an "interpreted" signal to others.
At the heart of an artificial neural network are computer objects called artificial neurons, which are in fact small mathematical functions connected in layers.
The neurons in the input layer have no action on the information, they simply pass it on to the next layer, a hidden layer.
The output layer retrieves the information from the last hidden layer of neurons and renders it in the desired format to answer the given problem.
Each hidden layer takes as input the outputs of the neurons of the previous layer and performs a weighted mathematical operation using weights that will be adjusted during the learning phase.
A trained neural network is the result of training an empty knowledge network. It contains the set of weights to be applied to the hidden layers in order to minimize the prediction error on the output layer for a targeted problem.
Neural network-based approaches are not recent. Until the 2000's, artificial neural networks had few neurons and few layers, because the power of computers was limited. Due to their poor performance, other approaches such as SVM, K-nearest neighbors and decision tree learning were favored. The 2010's have reversed this trend with a resurgence in the popularity of Deep Learning.
Deep Learning and computer vision, very high technologies particularly adapted to the agricultural sector.
Deep Learning consists in training and deploying neural networks that are increasingly deep and therefore more complex.
Its use has become much more democratic in recent years, thanks to better accessibility to data - the quantity of which makes it possible to improve the efficiency of network training - and the computing power of current machines. In 2015, Deep Learning was highly publicized by the victory of Alpha Go, the first computer program to beat a professional Go player.
Today, everyone agrees that the use of Deep Learning for object detection and classification far exceeds other previously used techniques (KNN, SVM, colorimetric approaches, signal processing techniques...) while having remarkable results.
Among the domains boosted by the use of Deep Learning, we find computer vision. From image editing to facial recognition, image analysis based on deep neural networks is now part of our daily life.
More than deep neural networks, in image analysis we often speak of convolutional neural networks or CNN. The image, represented by its pixels, is one of the input observations used to train the final data model.
Convolutional neural network
In addition to the layers found on neural networks used in classical Machine Learning, CNNs include several processing layers such as :
- The Convolution layer which processes the pixel data of an image.
- The Pooling layer which allows to compress the information from the convolution layers.
Among the most used application categories of these convolutional networks, we find image classification and object detection and segmentation.
To recap, Deep Learning today allows a multitude of practical applications of AI. In agriculture, the use of Artificial Intelligence and computer vision consists mainly in monitoring and detecting threats and opportunities that can be classified in 3 categories:
- In animal production, AI can allow, among other things, to detect behaviors related to reproduction, health, performance and welfare of animals.
- In crop production, AI will be used to detect weeds, diseases or to count yields.
- Finally, when coupled with robotics and agricultural machinery, AI is a very high precision technology, particularly for autonomous guidance applications.
Rest assured! No, strong AI, driving our farms and replacing our farmers, is not for tomorrow!