Theoretical introduction¶
What is Machine Learning?¶
Machine learning (ML) is the study of computer algorithms that improve automatically through experience.
It is seen as a subset of artificial intelligence.
Machine learning algorithms build a mathematical model based on sample data, known as “training data”, in order to make predictions or decisions without being explicitly programmed to do so.
Machine learning algorithms are used in a wide variety of applications, such as email filtering and computer vision, where it is difficult or infeasible to develop conventional algorithms to perform the needed tasks.
Source: Wikipedia
What is Machine Learning not?¶
Magic
How is it applied in Remote Sensing?¶
Machine learning is widely used in remote sensing applications. Some examples are…
Basic concept¶
Within the scikit-learn library, a vast number of different ML approaches can be used, if the data that we want to work with can be reduced to or translated into the following structure:
x_1 |
x_2 |
x_3 |
… |
x_n |
y |
|
---|---|---|---|---|---|---|
s_1 |
- |
- |
- |
- |
- |
- |
s_2 |
- |
- |
- |
- |
- |
- |
s_3 |
- |
- |
- |
- |
- |
- |
… |
- |
- |
- |
- |
- |
- |
s_m |
- |
- |
- |
- |
- |
- |
where
x_i are the n independent features,
y is the dependent feature or target,
and s_i are the m samples of our data set.
To give an example: Let’s assume we want to derive peoples favorite colours from different personal characteristics:
We could represent this in the structure via:
Body size (cm) |
Piercing count (#) |
Gender |
Hair colour |
Nose size (cm) |
Favorite colour |
|
---|---|---|---|---|---|---|
Melanie |
192 |
1 |
w |
brown |
7.4 |
blue |
Robert |
163 |
0 |
m |
blond |
4.1 |
red |
Pete |
176 |
2 |
m |
blond |
6.4 |
blue |
Harry |
166 |
0 |
m |
brown |
4.9 |
green |
Sally |
191 |
0 |
w |
blond |
5.8 |
orange |
… |
… |
… |
… |
… |
… |
… |
A machine learning model is built on this data by providing it with a subset of the samples (training data). It then “automatically” learns the connection between the independent features and the target feature. As indicated in the example above, certain (or all) features may make more or less sense when predicting the target. Therefore, a feature selection is often made in the training process and the model hyper parameters are tuned.
After the training process, the model can be used to predict target feature values for yet unseen samples (test data). In the validation process, these predictions can be compared to the original (“measured”) target feature values to estimate the models performance.
In remotely sensed optical imagery, often pixels are treated as samples and the values of the bands are interpreted as features. A typical remote sensing example could be:
Red band |
Green band |
Blue band |
Near infrared band |
Far infrared band |
Crop yield (kg/m²) |
|
---|---|---|---|---|---|---|
Pixel 1 |
192 |
134 |
78 |
45 |
50 |
1.5 |
Pixel 2 |
123 |
22 |
213 |
87 |
210 |
2.3 |
Pixel 3 |
89 |
75 |
12 |
155 |
232 |
1.1 |
Pixel 4 |
35 |
158 |
86 |
44 |
83 |
1.0 |
Pixel 5 |
112 |
234 |
11 |
14 |
15 |
0.9 |
… |
… |
… |
… |
… |
… |
… |
where each pixel in a satellite image is treated as one sample with 5 features (= bands with different wavelengths in the electromagnetic spectrum). The target feature is the crop yield of a specific crop type that was measured at the pixels location.
These approaches are called “pixel based” as the model can only learn the connection between independent and target features on the characteristics of a single pixel one at a time. Contrary, more sophisticated ML approaches can also make use of the relationship between different pixels (eg. convolutional neural networks). We will come back to this later…
Aim of the course¶
At the end of this course you will be able to…
create an ML concept suitable to a given remote sensing problem
select an appropriate ML model for a given problem
conduct a feature selection and tune model hyper parameters
train a model
use a model to predict target feature values for whole areas (eg. a satellite image)
validate the model performance (with focus on the particularities of geographic data)
know about the limitations of ML applications