EDUCATION IN ARTIFICIAL INTELLIGENCE K NEAREST NEIGHBORS ALGORITHM
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/0b6b677355b6b0abdf2ba98c78606681.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/fbf7cd04ddf9d0e1cda67196bb4d0ab4.jpeg)
PREREQUISITES KNOWLEDGE PYTHON • • • • • • MATHEMATICS ��(��1,��1)������(��2,��2) �� =√(��2 ��1)2 +(��2 ��1)2 MATERISOFTWAREALS
INTRODUCTIONACTIVITYSTEPS
DISCOVERY OF THE K NEAREST NEIGHBORS IN THE SOFTWARE → → → → →
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/e18e800677593df9e510ce821ed521c2.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/325e13f6fa6be4ce4af4a23ac9a8d704.jpeg)
TRAINING PHASE • Connect the robot • • •
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/e18e800677593df9e510ce821ed521c2.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/d715973fc129e8bd811bc92be555aacc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/1ef67a78e66841de719fa6e55e9ceedc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/f4812103c28e789b61c772880d7c68c7.jpeg)
TEST PHASE • PROGRAM THE K NEAREST NEIGHBORS ALGORITHM → → → → →
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/88136b5f605412ef80c7eff63c60d2b5.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/39c904ddac869103b8b843f80b7b32b4.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/1ef67a78e66841de719fa6e55e9ceedc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/d715973fc129e8bd811bc92be555aacc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/31518ec6f4e0ec23fbd2c10e4e4e48d0.jpeg)
def�������� ����������������(��������������:��������)→������
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/bc6b70e24d2a6f77164fa8c5db035c21.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/a550595cd04687657a8a3a180d0fa14c.jpeg)
PROGRAMMING THE ALGORITHM DISTANCE CALCULATION def����������������(��:��������,��:��������) →���������� �� =[��1,��1]������ =[��2,��2] �� =√(��2 ��1)2 +(��2 ��1)2 import math y = math.sqrt(x) y = x**2 # compute distance a = [0, 0] b = [1, print("distance",2] distance(a, b)) COMPUTATION OF ALL DISTANCES def������ ������������������(��:��������[����������],���������� ��������������:��������[��������[����������]])→��������[����������] �� =[��0,��0] ���������� �������������� =[[��1,��1],[��2,��2], ,[����,����]]
# compute all distances a = [0.4, train_sensors0.6]= [[0, 0], [0, 1], [1, 0]] distance_list = all_distances(a, train_sensors) print('distances to data', distance_list) FIND THE SMALLEST ELEMENT OF AN ARRAY def�������� ��������������(����������:��������[����������])→������ # minimum in a list idx_min = print('indexfind_minimum(distance_list)ofminimum',idx_min) NEAREST NEIGHBOR def�������������� ��������ℎ������ ����������������(���������� ��������������:��������[��������[����������]],���������� ������������������:��������[������],��:��������[����������]) →������ �� =[��0,��0]������ ���������� �������������� =[[��1,��1],[��2,��2],…,[����,����]] ���������� ������������������ = [��1, ,����] ���� [����,����]
# KNN a = [0.4, train_sensors0.6]= [[0, 0], [0, 1], [1, 0]] train_decisions = [1, 2, 0] decision = nearest_neighbor_decision(train_sensors, train_decisions, a) print('KNN', decision) USE OF YOUR ALGORITHM WITH THE ROBOT train_sensors = train_decisions = None def learn(X_train, y_train): global train_sensors, train_decisions train_sensors, train_decisions = X_train, y_train loss = 0 return loss def returniftake_decision(sensors):train_sensorsisNone:return0nearest_neigbor_decision(train_sensors, train_decisions, sensors)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/a550595cd04687657a8a3a180d0fa14c.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/d715973fc129e8bd811bc92be555aacc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/1ef67a78e66841de719fa6e55e9ceedc.jpeg)
Supervised learning: By giving the robot a consistent dataset and an algorithm, it was able to generalise its decision making to situations it did not know before by approximating what was done Nearestbefore.Neighbour
Algorithm: By implementing classical algorithms such as calculating a distance or finding a minimum in a list, we discover that it is possible to program a machine learning program ourselves
TO GO FURTHER K NEAREST NEIGHBOURS �� > 1,�� ∈ℕ INTRODUCTION TO NEURAL NETWORKS CONCLUSION
Notions learned
:
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/1ef67a78e66841de719fa6e55e9ceedc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/d715973fc129e8bd811bc92be555aacc.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/e0e16809f020512fb04c9b56eda8762c.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/b477e8e31481bd3bfa98b7bf1a881aec.jpeg)
![](https://assets.isu.pub/document-structure/220905074454-636176f3ce297573d04a52884fe25340/v1/e2d6bb147407ffc14fa5a7bb789f3e75.jpeg)