Bilişim dünyasına kaliteli, özgün ve Türkçe içerikler kazandırmayı hedefleyen bir platform..

friends friends friends

k-En Yakın Komşu Algoritması (KNN)✨

k-En Yakın Komşu Algoritması (k-Nearest Neighbor Algorithm) uzaklık hesaplamasına dayalı geliştirilen bir sınıflandırma yöntemidir, benzerliğe dayalı bir algoritmadır. Sınıfı bilinmeyen verinin diğer verilere olan uzaklıklarının hesaplanarak, en yakın sınıfa dahil edilmesi mantığına dayanır. O yüzden öncelikle veriler arasındaki uzaklıkların hesaplanmasında kullanılan yaygın yöntemler üzerinde durulmalıdır.

Hangi uzaklık ölçüsünü kullanacağınızı bilmenizde fayda var: Öklid Mesafesi, Minkowski uzaklık, Manhattan uzaklık, Jaccard katsayısı

The 'metric' parameter of KNeighborsClassifier must be a str among {'l2', 'sokalmichener', 'p', 'infinity', 'matching', 'chebyshev', 'l1', 'euclidean', 'canberra', 'mahalanobis', 'nan_euclidean', 'minkowski', 'rogerstanimoto', 'precomputed', 'hamming', 'jaccard', 'yule', 'dice', 'wminkowski', 'cityblock', 'kulsinski', 'sqeuclidean', 'correlation', 'pyfunc', 'russellrao', 'sokalsneath', 'cosine', 'manhattan', 'haversine', 'seuclidean', 'braycurtis'}

Python İle KNN Sınıflandırma

Backward Elimination-Geri Eleme
Veri Kümesi: veriler.csv (indirmek için tıklayınız)
#1. kutuphaneler
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

veriler=pd.read_csv("veriler.csv")
#ulke,boy,kilo,yas,cinsiyet
x=veriler.iloc[:,1:4].values
y=veriler.iloc[:,4:].values

#Şimdi Train ve Test olarak ayırma işlemi yapalım
from sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.33,random_state=0)

#STANDARTLAŞTIRMA
from sklearn.preprocessing import StandardScaler
sc=StandardScaler()
X_train=sc.fit_transform(x_train)#fit_transform
X_test=sc.transform(x_test)#transform

#KNN
from sklearn.neighbors import KNeighborsClassifier
knn_r=KNeighborsClassifier(n_neighbors=1,metric='minkowski')
knn_r.fit(X_train,y_train)#X den Y öğren

#şimdi öğrendiğin bilgi ile predict-tahmin yap
y_pred=knn_r.predict(X_test)
print(y_pred)
print(y_test)
#CONFUSION MATRİX-HATA MATRİSİ
from sklearn.metrics import confusion_matrix
cm=confusion_matrix(y_test,y_pred)
print(cm)
KNN-algoritması

Kaynaklar

  1. https://www.youtube.com/watch?v=NEAxrOP_OT0
  2. https://ichi.pro/tr/k-en-yakin-komsular-ile-k-ortalama-kumeleme-arasindaki-fark-nedir-36508279026525
  3. https://twitter.com/levikul09/status/1672896169763303424
  4. https://machinelearningmastery.com/types-of-classification-in-machine-learning/
  5. https://www.digitalocean.com/community/tutorials/k-nearest-neighbors-knn-in-python
k en yakın komşu algoritması Makine Öğrenmesi Yapay Zeka Machine Learning KNN Veri bilimi
0 Beğeni
Makine Öğrenmesi
Önceki Yazı

Naive Bayes sınıflandırıcı

12 Nis. 2020 tarihinde yayınlandı.
Sonraki Yazı

Adaboost Algoritması

12 Nis. 2020 tarihinde yayınlandı.
arrow