Yapay Zeka
Bir KNN Algoritmasını Anlamak İçin Hızlı Bir Kılavuz

İş dünyasının agresif bir şekilde benimsemesiyle Veri Bilim, en çok aranan alanlardan biri haline geldi. K-en yakın komşu algoritmasının ne olduğunu ve nasıl çalıştığını açıklıyoruz.
KNN Algoritması nedir?
K-En Yakın Komşular algoritması (veya KNN), basitliği nedeniyle en çok kullanılan öğrenme algoritmalarından biridir. KNN veya K-en yakın komşu Algoritması, birbirine yaklaşan her veri noktasının aynı sınıfa girmesi prensibiyle çalışan denetimli bir öğrenme algoritmasıdır. Buradaki temel varsayım, birbirine yakın olan şeylerin birbirine benzediğidir. Çoğunlukla KNN Algoritması, yorumlama kolaylığı ve düşük hesaplama süresi nedeniyle kullanılmaktadır.
KNN, makine öğrenmesinde sınıflandırma ve regresyon problemlerinde yaygın olarak kullanılmaktadır. KNN'ye birkaç örnek, e-ticaret portallarının benzer ürünleri tavsiye etmek için kullandığı algoritmalardır.
Bir Örneği İnceleyelim:
Verilen görüntüde, iki veri sınıfımız var. Kareleri temsil eden A Sınıfı ve üçgenleri temsil eden B Sınıfı.
Problem, KNN algoritması kullanılarak iki sınıftan birine yeni bir girdi veri noktası atamaktır.
İlk adım, En Yakın Komşuların sayısını temsil eden 'K' değerini tanımlamaktır.

“k” değeri 6 ise o veri noktasına en yakın 6 Komşuyu, “k” değeri 5 ise o veri noktasına en yakın 5 Komşuyu arar.
'K' = 4 olduğunu varsayalım; bu, algoritmanın veri noktasına en yakın olan dört komşuyu dikkate alacağı anlamına gelir.
Şimdi 'K' = 4'te bir üçgen ve iki kare en yakın komşular olarak görülebilir. Böylece, 'K' = 4'e dayalı yeni veri noktası A Sınıfına atanacaktır.

KNN nerede kullanılır?
KNN, hem sınıflandırma hem de regresyon tahmin problemlerinde kullanılır. Ancak endüstriyel amaçlarla uygulandığında, bir tekniğin kullanılabilirliği belirlenirken değerlendirilen tüm parametreleri karşıladığı için çoğunlukla sınıflandırmada kullanılır.
- Tahmin Gücü
- Hesaplama Süresi
- Çıktıyı Yorumlama Kolaylığı
Günlük problemlerde nasıl kullanılır?
Basitliğine rağmen KNN, diğer güçlü sınıflandırıcılardan çok daha iyi çalışır ve ekonomik tahmin ve veri sıkıştırma, Video Tanıma, Görüntü Tanıma, El Yazısı Algılama ve Konuşma Tanıma gibi yerlerde kullanılır.
KNN Algoritmasının bazı önemli kullanımları
KNN Algoritması, bankacılık sisteminde, bir kişinin temerrüde düşen bir kişiyle benzer özelliklere sahip olup olmadığını tahmin ederek, bir kişinin kredi onayına uygun olup olmadığını tahmin etmek için kullanılır. KNN, benzer özelliklere sahip kişilerle karşılaştırarak kişilerin kredi notlarının hesaplanmasına da yardımcı olur.
KNN Kullanan Şirketler
Amazon veya Netflix gibi E-ticaret ve eğlence şirketlerinin çoğu, satın alınacak ürünleri veya izlenecek filmleri/şovları önerirken KNN'yi kullanır.
Peki bu önerileri nasıl yapıyorlar? Bu şirketler, daha önce satın aldığınız ürünler veya web sitelerinde izlediğiniz filmler gibi kullanıcı davranışlarına ilişkin verileri topluyor ve KNN uyguluyor.
Şirketler, mevcut müşteri verilerinizi girecek ve bunları benzer ürünleri satın almış veya benzer filmler izlemiş olan diğer müşterilerle karşılaştıracaktır.
Algoritmanın bu veri noktasını nasıl sınıflandırdığına bağlı olarak ürünler ve filmler size önerilecektir.
KNN'nin Avantajları ve Dezavantajları
KNN'nin Avantajları
- Hızlı hesaplama
- Basit algoritma – yorumlamak için
- Çok yönlü – sınıflandırma ve regresyon için kullanışlıdır
- Yüksek doğruluk
- Veriler hakkında varsayım yok - ek varsayımlar yapmaya veya bir model oluşturmaya gerek yok.
KNN'nin Dezavantajları
- Doğruluk, verilerin kalitesine bağlıdır
- Tahmin, büyük verilerle yavaşlar
- Büyük veri kümeleri için uygun değil
- Tüm eğitim verilerini saklama ihtiyacı, bu nedenle yüksek bellek gerektirir
- Tüm eğitimi sakladığı için hesaplama açısından pahalı olabilir.
Bu blog yazımızda sınıflandırma için yaygın olarak kullanılan K-NN algoritmasını açıklamaya çalıştık. KNN'nin arkasındaki temel yaklaşımı, nasıl çalıştığını, avantajlarını ve dezavantajlarını tartıştık.
KNN algoritması en basit algoritmalardan biridir ve oldukça agresif sonuçlar verebilir. KNN algoritmaları hem sınıflandırma hem de regresyon problemleri için kullanılabilir.












