One-Hot Kodlama (One-Hot Encoding)
Veri & eğitimOne-Hot Kodlama nedir?
Makine öğrenmesi modelleri sayılarla çalışır, kelimelerle değil. "kırmızı", "mavi", "yeşil" gibi bir renk sütununu modele olduğu gibi veremezsin. One-hot kodlama tam burada devreye girer: her kategoriyi, yalnızca bir konumu 1, geri kalanı 0 olan bir vektöre çevirir. Üç renk varsa kırmızı [1,0,0], mavi [0,1,0], yeşil [0,0,1] olur. Her kategori kendi sütununu alır ve o satırda ait olduğu sütun "sıcak" (1) olur — ismi buradan gelir.
Nasıl çalışır?
Elinde N farklı kategori varsa, one-hot kodlama N uzunluğunda bir vektör üretir. Her örnek için sadece ilgili kategorinin indeksi 1, diğerleri 0 kalır. Bu sayede model kategoriler arasında yapay bir sıralama kurmaz. Kategorileri 1, 2, 3 diye numaralandırsaydın model "yeşil, kırmızıdan üç kat büyüktür" gibi anlamsız bir varsayıma kayabilirdi. One-hot bunu engeller; tüm kategoriler birbirine eşit uzaklıktadır.
Neden önemli?
Yapılandırılmış veriyle çalışan hemen her modelin başlangıç noktası budur. Yanlış kodlama, modele veride olmayan ilişkiler öğretir ve tahminleri bozar. One-hot, kategorik değişkenleri güvenli ve yorumlanabilir şekilde sayıya çevirdiği için karar ağaçlarından sinir ağlarına kadar geniş bir yelpazede standart hâline geldi. Dezavantajı: kategori sayısı çok yüksekse (binlerce şehir gibi) vektör devasa ve seyrek olur — bu durumda embedding daha verimlidir.
Kullanım alanları
Tablo verisiyle sınıflandırma ve regresyon, öneri sistemlerinde kullanıcı/ürün kategorileri, NLP'de küçük kelime dağarcıklarının temsili ve özellik mühendisliği adımları. Modern LLM'ler ham metin için embedding kullanır ama one-hot, tokenization sonrası kelime indekslerini vektöre çevirmenin kavramsal temelidir.
Ilgili terimler
