Sigmoid
Sigmoid işlevinin makine öğrenmesindeki rolünü keşfet. Bu aktivasyon işlevinin Ultralytics YOLO26 gibi modellerde ikili sınıflandırmayı nasıl mümkün kıldığını öğren.
Sigmoid işlevi, makine öğrenimi (ML) ve derin öğrenme (DL) alanlarında yaygın olarak kullanılan temel bir matematiksel bileşendir. Genellikle "sıkıştırma işlevi" olarak adlandırılan bu işlev, gerçek değerli herhangi bir sayıyı girdi olarak alır ve 0 ile 1 arasında bir değere dönüştürür. Bu karakteristik "S" biçimli eğri, ham model çıktılarını yorumlanabilir olasılıklara dönüştürmek için son derece kullanışlıdır. Bir sinir ağı (NN) bağlamında Sigmoid işlevi, aktivasyon işlevi olarak görev yapar ve modellere basit doğrusal ilişkilerin ötesindeki karmaşık örüntüleri öğrenme olanağı sağlayan doğrusal olmayanlık sunar. Derin gizli katmanlarda büyük ölçüde diğer işlevlerle değiştirilmiş olsa da ikili sınıflandırma görevlerinde çıkış katmanları için standart bir seçenek olmaya devam eder.
Yapay Zekâda Sigmoid Mekanizması#
Sigmoid işlevi özünde, genellikle logit olarak adlandırılan girdi verilerini normalleştirilmiş bir aralığa dönüştürür. Bu dönüşüm, amacın bir olayın gerçekleşme olasılığını tahmin etmek olduğu görevler için kritik öneme sahiptir. Çıktıyı 0 ile 1 arasında sınırlandıran işlev, net bir olasılık skoru sağlar.
- Lojistik Regresyon: Geleneksel istatistiksel modellemede Sigmoid, lojistik regresyonun temelini oluşturur. Veri bilimcilerin, bir müşterinin ayrılıp ayrılmayacağı veya kalıp kalmayacağı gibi ikili bir sonucun olasılığını tahmin etmesini sağlar.
- İkili Sınıflandırma: İki sınıfı (ör. "kedi" ve "köpek") birbirinden ayırmak üzere tasarlanmış sinir ağlarında son katman genellikle Sigmoid aktivasyonu kullanır. Çıktı bir eşik değerinden (genellikle 0,5) büyükse model pozitif sınıfı tahmin eder.
- Çok Etiketli Sınıflandırma: Sınıfların birbirini dışladığı çok sınıflı problemlerin aksine, çok etiketli görevlerde bir görüntü veya metin aynı anda birden fazla kategoriye ait olabilir. Burada Sigmoid her çıkış düğümüne bağımsız olarak uygulanır ve bir modelin aynı sahnede bir "araba" ile bir "kişiyi" çakışma olmadan algılamasını sağlar.
Diğer Aktivasyon İşlevlerinden Temel Farklar#
Sigmoid bir zamanlar tüm katmanlar için varsayılan seçenekken araştırmacılar, derin ağlarda gradyanların ağırlıkları etkili bir şekilde güncellemek için fazla küçülmesine neden olan kaybolan gradyan problemi gibi sınırlamaları keşfetti. Bu durum, gizli katmanlar için alternatiflerin benimsenmesine yol açtı.
- Sigmoid ve ReLU (Düzeltilmiş Doğrusal Birim) karşılaştırması: ReLU hesaplama açısından daha hızlıdır ve pozitifse girdiyi doğrudan, aksi hâlde sıfırı çıktı olarak vererek kaybolan gradyanlardan kaçınır. Sigmoid ise belirli görevlerde son çıkış katmanı için ayrılırken ReLU, YOLO26 gibi modern mimarilerde gizli katmanlar için tercih edilen seçenektir.
- Sigmoid ve Softmax karşılaştırması: Her ikisi de çıktıları 0-1 aralığına eşler, ancak farklı amaçlara hizmet eder. Sigmoid her çıktıyı bağımsız olarak ele alır; bu da onu ikili veya çok etiketli görevler için ideal kılar. Softmax tüm çıktıların toplamını 1 olmaya zorlayarak yalnızca bir sınıfın doğru olduğu çok sınıflı sınıflandırma için kullanılan bir olasılık dağılımı oluşturur.
Gerçek Dünya Uygulamaları#
Sigmoid işlevinin faydası, olasılık tahmininin gerekli olduğu çeşitli sektörlere uzanır.
-
Tıbbi Tanı: Tıbbi görüntü analizi için kullanılan yapay zekâ modelleri, bir röntgen veya MRI taramasında bir hastalığın mevcut olma olasılığını tahmin etmek için genellikle Sigmoid çıktılarını kullanır. Örneğin bir model 0,85 çıktısı vererek tümör olasılığının %85 olduğunu gösterebilir ve doktorların hastalığı erken tespit etmesine yardımcı olabilir.
-
Spam Algılama: E-posta filtreleme sistemleri, gelen bir mesajın "spam" olup olmadığını belirlemek için doğal dil işleme (NLP) modellerini Sigmoid sınıflandırıcılarıyla kullanır. Model anahtar kelimeleri ve meta verileri analiz ederek e-postanın gelen kutusuna mı yoksa gereksiz posta klasörüne mi gideceğini belirleyen bir skor üretir.
Pratik Uygulama#
Derin öğrenme modelleri oluşturmak için kullanılan popüler bir kütüphane olan PyTorch ile Sigmoid'in verileri nasıl dönüştürdüğünü gözlemleyebilirsin. Bu basit örnek, çeşitli girdi değerleri üzerindeki "sıkıştırma" etkisini gösterir.
import torch
import torch.nn as nn
# Create a Sigmoid layer
sigmoid = nn.Sigmoid()
# Define input data (logits) ranging from negative to positive
input_data = torch.tensor([-5.0, -1.0, 0.0, 1.0, 5.0])
# Apply Sigmoid to squash values between 0 and 1
output = sigmoid(input_data)
print(f"Input: {input_data}")
print(f"Output: {output}")
# Output values near 0 for negative inputs, 0.5 for 0, and near 1 for positive inputsDüşük seviyeli kod yazmadan bu kavramlardan yararlanan modelleri eğitmek isteyenler için Ultralytics Platform, veri kümelerini yönetmek ve YOLO26 gibi son teknoloji modelleri eğitmek için sezgisel bir arayüz sunar. Mimari karmaşıklıkları otomatik olarak ele alarak kullanıcıların kendi bilgisayarlı görü uygulamaları için yüksek kaliteli eğitim verileri toplamaya odaklanmasını sağlar.









