Sigmoid
Sigmoid işlevi, herhangi bir gerçek sayıyı 0 ile 1 arasında bir değere dönüştürerek model çıktılarını olasılıklara çevirir. Sigmoid'i diğer aktivasyonlarla karşılaştırır.
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 anılır; girdi olarak herhangi bir gerçek sayı alır ve bunu 0 ile 1 arasında bir değere eşler. Karakteristik “S” biçimli eğrisi, ham model çıktılarını yorumlanabilir olasılıklara dönüştürmek için son derece kullanışlıdır. Bir sinir ağında (NN) Sigmoid işlevi, aktivasyon işlevi görevi görerek doğrusal olmayanlık ekler ve modellerin basit doğrusal ilişkilerin ötesinde karmaşık örüntüleri öğrenmesini sağlar. Derin gizli katmanlarda yerini büyük ölçüde başka işlevlere bırakmış olsa da ikili sınıflandırma görevlerinde çıktı katmanları için standart bir seçim olmaya devam eder.
AI'da Sigmoid'in İşleyişi#
Sigmoid işlevi, temelinde genellikle logit olarak adlandırılan girdi verilerini normalleştirilmiş bir aralığa dönüştürür. Bu dönüşüm, bir olayın gerçekleşme olasılığını tahmin etmeyi amaçlayan görevler için kritik önem taşır. Çıktıyı 0 ile 1 arasında sınırlayarak net bir olasılık puanı sunar.
- Lojistik Regresyon: Geleneksel istatistiksel modellemede Sigmoid, lojistik regresyonun temelini oluşturur. Veri bilimcilerin bir müşterinin aboneliğini iptal edip etmeyeceği veya devam edip etmeyeceği 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 katmanda genellikle Sigmoid aktivasyonu kullanılır. Çıktı bir eşiği (genellikle 0.5) aşarsa 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 çıktı düğümüne bağımsız olarak uygulanır ve modelin aynı sahnede bir “araba” ile bir “kişiyi” çelişki olmadan tespit etmesini sağlar.
Diğer Aktivasyon İşlevlerinden Temel Farkları#
Sigmoid bir zamanlar tüm katmanlar için varsayılan seçenek olsa da araştırmacılar, derin ağlarda ağırlıkların etkili biçimde güncellenemeyecek kadar küçülmesine neden olan kaybolan gradyan sorunu gibi sınırlamaları keşfetti. Bu nedenle gizli katmanlar için alternatifler benimsendi.
- Sigmoid ve ReLU (Doğrultulmuş Doğrusal Birim): ReLU, hesaplama açısından daha hızlıdır ve pozitifse girdiyi doğrudan, değilse sıfırı çıktı olarak vererek gradyanların kaybolmasını önler. ReLU ve YOLO26 tarafından kullanılan SiLU gibi düzgün varyantları, modern mimarilerde gizli katmanlar için tercih edilen seçeneklerdir; Sigmoid ise belirli görevlerde son çıkış katmanına ayrılır.
- Sigmoid ile 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 değerlendirerek ikili veya çok etiketli görevler için ideal hâle gelir. Softmax ise tüm çıktıların toplamını 1'e zorlayarak yalnızca bir sınıfın doğru olduğu çok sınıflı sınıflandırmada kullanılan bir olasılık dağılımı oluşturur.
Gerçek Dünya Uygulamaları#
Sigmoid işlevi, olasılık tahmini gereken çeşitli sektörlerde kullanılır.
-
Tıbbi Tanı: Tıbbi görüntü analizinde kullanılan AI modelleri, X-ışını veya MRI taramasında bir hastalığın bulunma olasılığını tahmin etmek için çoğunlukla Sigmoid çıktılarından yararlanır. Örneğin bir model, %85 tümör olasılığı anlamına gelen 0.85 çıktısını üreterek doktorların hastalığı erken tespit etmesine yardımcı olabilir.
-
Spam Tespiti: E-posta filtreleme sistemleri, gelen bir mesajın “spam” olup olmadığını belirlemek için doğal dil işleme (NLP) modelleriyle birlikte Sigmoid sınıflandırıcılar kullanır. Model, anahtar sözcükleri ve üst verileri analiz ederek e-postanın gelen kutusuna mı yoksa gereksiz posta klasörüne mi gideceğini belirleyen bir puan üretir.
Uygulamalı Uygulama#
Popüler bir derin öğrenme modeli oluşturma kütüphanesi 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 inputsBu kavramları düşük seviyeli kod yazmadan kullanan modeller 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 yöneterek kullanıcıların kendi bilgisayarlı görü uygulamalarına yönelik yüksek kaliteli eğitim verileri toplamaya odaklanmasını sağlar.










