Part 1 - Machine Learning
Part 1 - Machine Learning
Wajdi SAADAOUI 1
Outline
1. Artificial Intelligence (AI): from perception to reasoning
2. How to design and use a Machine Learning (ML)?
3. Machine Learning Techniques: A brief Review & Comparison
4. Neural Network: Theory and Application
5. Naïve Bayes: Theory and Application
6. Support Vector Machines (SVM): Theory and Application
7. How to select the appropriate Machine Learning
8. How to evaluate a Machine Learning Performance?
Wajdi SAADAOUI 4
1. Artificial Intelligence (AI): from perception to reasoning
Intelligence Artificial Intelligence
Image
Perception Processing
Living beings
Optimization Bio-Inspired
Living beings Optimization
Learning Machine
Learning
Baby, Animal, etc.
Wajdi SAADAOUI 5
2. How to design and use a Machine Learning (ML)?
Training phase
Dataset
Model F
Class 1 Class 2
Class 1 Class 2
F(X|X=”I”)=P1
Features F(X/X=”II”)=P2
Unkonwn Image Preprocessing
Representation max(P1,P2)
Unkonwn Vector
X
Wajdi SAADAOUI 6
3. Machine Learning Techniques: A brief Review &
Comparison
Euclidian Distance
Similarity based
Cosine Distance
RNN
Wajdi SAADAOUI 7
4. Neural Network: Theory and Application
Wajdi SAADAOUI 8
4. Neural Network: Theory and Application
3x5x5x2
F F
x F F
C1
y F F
C2
z F F
W1 F F W3
W2
Wajdi SAADAOUI 9
4. Neural Network: Theory and Application
F F
x F F
C1
y F F
C2
z F F
W1 F F W3
W2
Wajdi SAADAOUI 10
4. Neural Network: Theory and Application
F= Nonlinear Activation Function to insert a Non Linear Representation into Neural Network
Wajdi SAADAOUI 11
4. Neural Network: Theory and Application
Train Vector = [2 , -1] ; Train Label = 1
𝟏
Logistic function =
𝟏 𝒆 𝒙
-1
Wajdi SAADAOUI 12
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 1
-1 -1
1,5 3
-1 -3
-2 -4
Wajdi SAADAOUI 13
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 ? 1
-1 -1
1,5 3
-1 -3
-2 -4
Wajdi SAADAOUI 14
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 1
-1 -1
1,5 3
-1 -3
-2 -4
Wajdi SAADAOUI 15
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 1
-1 -1
1,5 3
-1 ? -3
-2 -4
Wajdi SAADAOUI 16
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 ? 1
-1 -1
1,5 3
-1 0,5 -3
-2 -4
Wajdi SAADAOUI 17
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 0,876 1
-1 -1
1,5 3
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 18
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 0,876 1
-1 -1
0,648
1,5 3
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 19
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
0,5 1
2 0,378 0,876 1
Δ = 1 – 0,648 = 0,352
-1 -1
0,648
1,5 3
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 20
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,041
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
0,648
1,5 3
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 21
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,041
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
0,648
1,5 3 Δ = −0,082
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 22
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,041
Δ
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
0,648
1,5 3 Δ = −0,082
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 23
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
0,648
1,5 Δ Δ = −0,082
3
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 24
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
0,648
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 25
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
Step 4: Weights’ Update
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
-1 0,5 0,085 -3
-2 -4
0,5 -> weight old value + α * neuron value * Delta of the next neuron
Wajdi SAADAOUI 26
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506
Step 4: Weights’ Update
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
-1 0,5 0,085 -3
-2 -4
0,5 -> weight old value + α * neuron value * Delta of the next neuron
Wajdi SAADAOUI 27
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506
Step 4: Weights’ Update
0,5 1
2 0,378 0,876 1
Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
-1 0,5 0,085 -3
-2 -4
Wajdi SAADAOUI 28
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506
Step 4: Weights’ Update
0,5 1
2 0,378 0,876 1
−𝟎, 𝟗𝟕𝟕 Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
Wajdi SAADAOUI 29
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506 𝟏, 𝟎𝟎𝟐
Step 4: Weights’ Update
0,5 1
2 0,378 0,876 1
−𝟎, 𝟗𝟕𝟕 -𝟏, 𝟎𝟎𝟑 Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
Wajdi SAADAOUI 30
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506 𝟏, 𝟎𝟎𝟐
Step 4: Weights’ Update 1,031
0,5 1
2 0,378 0,876 1
−𝟎, 𝟗𝟕𝟕 -𝟏, 𝟎𝟎𝟑 Δ = 0,352
-1 -1
Learning Rate α=0,1 0,648
Train Database
Wajdi SAADAOUI 31
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506 𝟏, 𝟎𝟎𝟐
Step 4: Weights’ Update 1,031
0,5 1
2 0,378 0,876 1
−𝟎, 𝟗𝟕𝟕 -𝟏, 𝟎𝟎𝟑 Δ = 0,352
-1 -1
0,648
Train Database
1,5 Δ = 0,113 3 Δ = −0,082
𝟏, 𝟒𝟗𝟕 3,002 -2,997
-1 0,5 0,085 -3
-2 -4
−𝟐, 𝟎𝟏𝟏 -4,004
Wajdi SAADAOUI 32
4. Neural Network: Theory and Application
𝟏
Train Vector = [2 , -1] ; Train Label = 1 Logistic function =
𝟏 𝒆 𝒙
Δ = 0,029 Δ = 0,041
0,506 𝟏, 𝟎𝟎𝟐
Step 4: Weights’ Update 1,031
0,5 1
2 0,378 0,876 1
−𝟎, 𝟗𝟕𝟕 -𝟏, 𝟎𝟎𝟑 Δ = 0,352
-1 -1
Epoch Train 0,648
Database
Wajdi SAADAOUI 33
5. Naïve Bayes: Theory and Application
Learning
Activity
Wajdi SAADAOUI 34
5. Naïve Bayes: Theory and Application
Testing
𝟓 𝟓
𝑷 𝑵𝒐 = 𝑷 𝒀𝒆𝒔 =
𝟏𝟎 𝟏𝟎
Sample X= <Red, Classic, Domicile>
Color
𝟑 𝟐
𝑷 𝑿, 𝒀𝒆𝒔 = 𝑷 𝑹𝒆𝒅/𝒀𝒆𝒔 x 𝑷 𝑪𝒍𝒂𝒔𝒔𝒊𝒄/𝒀𝒆𝒔 x 𝑷 𝑫𝒐𝒎𝒊𝒄𝒊𝒍𝒆/𝒀𝒆𝒔 x 𝑷 𝒀𝒆𝒔 𝑷 𝑹𝒆𝒅/𝒀𝒆𝒔 = 𝑷 𝒀𝒆𝒍𝒍𝒐𝒘/𝒀𝒆𝒔 =
𝟓 𝟓
𝟑 𝟏 𝟐 𝟓 𝟐 𝟑
= ∗ ∗ ∗ 𝑷 𝑹𝒆𝒅/𝑵𝒐 = 𝑷 𝒀𝒆𝒍𝒍𝒐𝒘/𝑵𝒐 =
𝟓 𝟓 𝟓 𝟏𝟎
𝟓 𝟓
Wajdi SAADAOUI 35
6. Support Vector Machines: Theory and Application
Basic Idea: Find the appropriate Support Vector which maximize Margin Distance
M1
M2
M1 + M2 = Margin Distance
Wajdi SAADAOUI 36
6. Support Vector Machines: Theory and Application
Basic Idea: Find the appropriate Support Vector which maximize Margin Distance
Class A
Class B
M1
M2
Class B
Support Vector SV: A.X + B Support Vector SV: F(X)
F is a non linear Function
Wajdi SAADAOUI 37
6. Support Vector Machines: Theory and Application
Basic Idea: Find the appropriate Support Vector which maximize Margin Distance
Class A
Class B
M1
M2
Class B
Support Vector SV: A.X + B Support Vector SV: F(X)
F is a non linear Function
Wajdi SAADAOUI 38
6. Support Vector Machines: Theory and Application
New Features Space
Features Space
Class A
Kernel Class B
Class C
Class D
Wajdi SAADAOUI 39
6. Support Vector Machines: Theory and Application
Kernel
Wajdi SAADAOUI 40
6. Support Vector Machines: Theory and Application
Case 1: Linear Separation
Wajdi SAADAOUI 41
6. Support Vector Machines: Theory and Application
Case 2: Non Linear Separation
Wajdi SAADAOUI 42
7. How to select the appropriate Machine Learning
Support Vector
Euclidean (Kmeans) Naive Bayes Neural Network Decision Tree
Machines
Huge Data Huge Data
Categorical Numerical
Cosine Feed Forward Reccurent Random Forest
CNN LSTM
AE
Wajdi SAADAOUI 43
8. How to evaluate the Machine Learning Performance
65
35
𝑅𝑒𝑐𝑎𝑙𝑙 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛
𝐹1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗
𝑅𝑒𝑐𝑎𝑙𝑙 + 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛
𝑔 = (𝑅𝑒𝑐𝑎𝑙𝑙 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛)
Wajdi SAADAOUI 44
8. How to evaluate the Machine Learning Performance
𝑅𝑒𝑐𝑎𝑙𝑙 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛
𝐹1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗
𝑅𝑒𝑐𝑎𝑙𝑙 + 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛
𝑔 = (𝑅𝑒𝑐𝑎𝑙𝑙 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛)
Accuracy = (100+140)/300 %
Activity Class 1 Class 2
After training your model, you have 300 samples for test & validation to
evaluate your model portioned as follow: Class 1 (150) 100 50
• 150 Class 1 Precision = 100/150
• 150 Class 2
Class 2 (150) 10 140
After testing your model well Classify 100 from Class 1 and 140 from Class 2
Recall = 100/100+10
Wajdi SAADAOUI 45
7. How to select the appropriate Machine Learning
Summary
Wajdi SAADAOUI 46