Artificial Intelligence For Learning The Basics

Plot by Kirill Eremenko & Hadelin de Ponteves on Udemy
Apa itu K-Nearest Neighbors?
K-Nearest Neighbors (K-NN) merupakan salah satu teknik dalam Machine Learning yang digunakan untuk memprediksi data kategorikal atau mengklasifikasi data baru berdasarkan kedekatannya dengan data di sekelilingnya atau tetangganya (K Neighbor) yang telah dibagi kedalam beberapa kelompok atau klasifikasi.
Cara Kerja Model K-Nearest Neighbors
- Tentukan berapa banyak K Neighbor atau data tetangga yang akan digunakan, misalnya kita mau tentukan K Neighbor nya adalah 5,
- Tentukan 5 data terdekat dari data observasi baru berdasarkan jarak Euclidean,
- Dari 5 data terdekat ini, hitung berapa banyak data yang termasuk ke dalam masing – masing kelompok atau klasifikasi,
- Hitung berapa banyak data yang termasuk kedalam masing – masing kelompok atau klasifikasi tersebut
- Data baru akan dimasukkan ke dalam kelompok yang mempunyai K Neigbor paling banyak dalam suatu kelompok atau klasifikasi.
Rumus Jarak Euclidean Dalam K-Nearest Neigbors

Plot by Kirill Eremenko & Hadelin de Ponteves on Udemy
Jarak Euclidean = sqrt((X2 – X1)^2 + (y2 – y1)^2)
Keterangan:
X2 = variabel independen dari K Neighbor
X1 = variabel independen dari data observasional baru
y2 = variabel dependen dari K Neighbor
y1 = variabel dependen dari data observasional baru
Rumus jarak Euclidean ini berguna untuk menghitung jarak antara data observasi baru dengan K Neighbor atau data observasi aslinya. Nilai jarak Euclidean yang kecil menandakan data observasi yang baru berdekatan dengan data aslinya dan ini lah yang disebut dengan K-Nearest Neighbors.
Kode Python Untuk Membuat Model K-Nearest Neighbors
- Impor librari
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
- Impor dataset
dataset = pd.read_csv(‘Social_Network_Ads.csv’)
X = dataset.iloc[:, :-1].values
y = dataset.iloc[:, -1].values
- Membagi dataset menjadi training set dan test set
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
- Feature Scaling
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform(X_test)
- Melatih model K-Nearest Neighbors kedalam training set
from sklearn.neighbors import KNeighborsClassifier
classifier = KNeighborsClassifier(n_neighbors = 5, metric = ‘minkowski’, p = 2)
classifier.fit(X_train, y_train)
- Memprediksi hasil test set
y_pred = classifier.predict(X_test)
print(np.concatenate((y_pred.reshape(len(y_pred),1), y_test.reshape(len(y_test),1)),1))
- Memprediksi data observasi baru
print(classifier.predict(sc.transform([[30,87000]])))
- Membuat Confusion Matrix
from sklearn.metrics import confusion_matrix, accuracy_score
cm = confusion_matrix(y_test, y_pred)
print(cm)
accuracy_score(y_test, y_pred)
- Visualisasi training set
from matplotlib.colors import ListedColormap
X_set, y_set = sc.inverse_transform(X_train), y_train
X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() – 10, stop = X_set[:, 0].max() + 10, step = 1),
np.arange(start = X_set[:, 1].min() – 1000, stop = X_set[:, 1].max() + 1000, step = 1))
plt.contourf(X1, X2, classifier.predict(sc.transform(np.array([X1.ravel(), X2.ravel()]).T)).reshape(X1.shape),
alpha = 0.75, cmap = ListedColormap((‘red’, ‘green’)))
plt.xlim(X1.min(), X1.max())
plt.ylim(X2.min(), X2.max())
for i, j in enumerate(np.unique(y_set)):
plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1], c = ListedColormap((‘red’, ‘green’))(i), label = j)
plt.title(‘K-NN (Training set)’)
plt.xlabel(‘Age’)
plt.ylabel(‘Estimated Salary’)
plt.legend()
plt.show()

Plot by Kirill Eremenko & Hadelin de Ponteves on Udemy
- Visualisasi test set
from matplotlib.colors import ListedColormap
X_set, y_set = sc.inverse_transform(X_test), y_test
X1, X2 = np.meshgrid(np.arange(start = X_set[:, 0].min() – 10, stop = X_set[:, 0].max() + 10, step = 1),
np.arange(start = X_set[:, 1].min() – 1000, stop = X_set[:, 1].max() + 1000, step = 1))
plt.contourf(X1, X2, classifier.predict(sc.transform(np.array([X1.ravel(), X2.ravel()]).T)).reshape(X1.shape),
alpha = 0.75, cmap = ListedColormap((‘red’, ‘green’)))
plt.xlim(X1.min(), X1.max())
plt.ylim(X2.min(), X2.max())
for i, j in enumerate(np.unique(y_set)):
plt.scatter(X_set[y_set == j, 0], X_set[y_set == j, 1], c = ListedColormap((‘red’, ‘green’))(i), label = j)
plt.title(‘K-NN (Test set)’)
plt.xlabel(‘Age’)
plt.ylabel(‘Estimated Salary’)
plt.legend()
plt.show()

Plot by Kirill Eremenko & Hadelin de Ponteves on Udemy
Dari pemaparan yang diatas, kita dapat mengetahui apa itu K-Nearest Neighbor, bagaimana cara kerjanya dan bagaimana cara membuat modelnya. Aplikasi dari K-Nearest Neighbors ini bisa digunakan untuk memprediksi pembelian suatu customer, memprediksi apakah nasabah bank bertahan atau tidak dan lain – lain.
Bagi anda yang ingin memberikan komentar pada website ini, silahkan tulis komentar Anda dengan mengisi nama dan alamat email Anda. Anda dapat membaca blog kami sebelumnya mengenai Logistic Regression dan blog kami selanjutnya mengenai Support Vector Machine.
[…] Bagi anda yang ingin memberikan komentar pada website ini, silahkan tulis komentar Anda dengan mengisi nama dan alamat email Anda. Anda dapat membaca blog kami sebelumnya mengenai 6 tips & tricks mengurangi COGS dan blog kami selanjutnya mengenai K-Nearest Neighbors. […]
[…] Anda dengan mengisi nama dan alamat email Anda. Anda dapat membaca blog kami sebelumnya mengenai K-Nearest Neighbor. Nantikan konten blog kami selanjutnya yang ga kalah […]
GetResponse is a game-changer for email marketing! It offers powerful automation, user-friendly tools, and excellent deliverability—making campaigns seamless and effective. Plus, their analytics help optimize performance effortlessly. Great news! Now you can get 30% off until April 5th. Perfect time to upgrade or try it out! 🚀 Follow the link.
Great insight! Managing cloud servers often seems complex, but Cloudways takes the stress out of the equation. Their platform delivers powerful performance without the usual technical headaches. It’s an ideal solution for those who want scalable hosting without getting lost in server configurations. Definitely worth checking out for a smoother hosting journey. Keep up the excellent work! Explore more through the link.
Thanks I have just been looking for information about this subject for a long time and yours is the best Ive discovered till now However what in regards to the bottom line Are you certain in regards to the supply
Your blog is a treasure trove of valuable insights and thought-provoking commentary. Your dedication to your craft is evident in every word you write. Keep up the fantastic work!
I loved as much as youll receive carried out right here The sketch is attractive your authored material stylish nonetheless you command get bought an nervousness over that you wish be delivering the following unwell unquestionably come more formerly again as exactly the same nearly a lot often inside case you shield this hike
That’s a great point about balancing fun & responsible gaming! It’s cool to see platforms like phwin777 club making access so easy with quick registration & local payment options like GCash. Definitely adds to the excitement! 🎉
OkayWing, I’ve heard mixed reviews. Good payouts? Anyone had any trouble cashing out? Let me know! Check it out for yourself. okaywing
Another easy 188bet login – dangnhap188bet makes life so much simpler. No more searching for the right link! Try it!. Directly accesses dangnhap188bet
VG99 hả? Thấy quảng cáo rầm rộ lắm đó. Để vào xem có đúng là ‘ngon’ như lời đồn không đã. Biết đâu lại tìm được bến đỗ mới. Let’s explore vg99.
Win78vn8 has a pretty clean interface. Easy to navigate which is a big plus for me. Their customer service seems responsive too. win78vn8
wow i really enjoy reading this, do you post often ? i will check back for more update, you can also check me out at https://webdesignagentur.de.com/ one of the top Marketing Directory site in Germany
kinggamebio – Kinggamebio: Top Philippines Slot Online & Casino Games. Experience easy Kinggamebio login, register today, and enjoy our official app download for the best gaming experience.Experience the premier Philippines slot online and casino games at Kinggamebio. Enjoy easy Kinggamebio login, fast register, and our official app download for the ultimate gaming experience. Join today! visit: kinggamebio