PyTorch
Ultralytics YOLO26'ya güç veren temel kütüphane PyTorch'u keşfet. Dinamik grafiklerini, GPU hızlandırmasını ve verimli derin öğrenme modelleri oluşturmayı öğren.
PyTorch, temel olarak Meta AI tarafından geliştirilen ve derin öğrenme alanındaki araştırmacılar ile geliştiriciler için bir mihenk taşı hâline gelen açık kaynaklı bir makine öğrenimi kütüphanesidir. Esnekliği ve kullanım kolaylığıyla bilinen bu kütüphane, kullanıcıların dinamik bir hesaplama grafiği kullanarak karmaşık sinir ağları oluşturmasına ve eğitmesine olanak tanır. Genellikle "isteğe bağlı yürütme" olarak adlandırılan bu özellik, kodun hemen değerlendirilmesini sağlar ve hata ayıklamayı ve prototip oluşturmayı, statik grafik tanımlarına dayanan çerçevelere kıyasla çok daha sezgisel hâle getirir. Python programlama diliyle sorunsuz bir şekilde bütünleşerek standart bilimsel hesaplama araçlarının doğal bir uzantısı gibi çalışır.
Temel Mekanizmalar ve Önemi#
Bu çerçevenin merkezinde, NumPy belgelerinde bulunanlara benzer çok boyutlu diziler olan tensörler yer alır. Ancak standart dizilerin aksine PyTorch tensörleri, NVIDIA CUDA tarafından sağlanan GPU hızlandırmasından yararlanacak şekilde tasarlanmıştır. Bu donanım hızlandırması, modern yapay zekâ (AI) modellerini verimli bir şekilde eğitmek için gereken yoğun paralel işlem açısından kritik öneme sahiptir.
Kütüphane, bilgisayarlı görü (CV) ve doğal dil işleme için geniş bir araç ekosistemini destekler. Önceden oluşturulmuş zengin katman, optimize edici ve kayıp işlevi seçenekleri sunarak görüntü sınıflandırma ve dizi modelleme gibi görevler için algoritma oluşturma sürecini basitleştirir.
Gerçek Dünya Uygulamaları#
Bu çerçevenin çok yönlülüğü, yüksek etkili yapay zekâ çözümleri için farklı sektörlerde benimsenmesini sağlamıştır:
-
Otonom Araçlar: Sektör liderleri, araç kameralarından gelen video akışlarını işleyen derin öğrenme modelleri oluşturmak için PyTorch'tan yararlanır. Bu modeller, şeritleri, işaretleri ve yayaları belirlemek üzere gerçek zamanlı nesne algılama gerçekleştirerek daha güvenli navigasyon sağlar.
-
Tıbbi Tanı: Araştırmacılar, gelişmiş sağlık uygulamaları geliştirmek için bu çerçeveyi kullanır. Örneğin çerçeve, doktorların hassas görüntü segmentasyonu yoluyla tümörleri tespit etmesine yardımcı olmak üzere MRI taramalarını veya X-ray görüntülerini analiz eden sistemlere güç sağlar.
İlgili Araçlarla Karşılaştırma#
Rolünü daha iyi anlamak için PyTorch'u yapay zekâ yığınındaki diğer yaygın araçlardan ayırmak faydalıdır:
- TensorFlow ile karşılaştırma: Google tarafından geliştirilen TensorFlow, geçmişte statik hesaplama grafiklerine dayanıyordu; bu durum hata ayıklamayı zorlaştırırken dağıtımı optimize ediyordu. Her iki çerçevenin özellikleri zamanla birbirine yaklaşmış olsa da PyTorch, sezgisel arayüzü sayesinde hızlı prototip oluşturma ve araştırma için sıklıkla tercih edilir.
- OpenCV ile karşılaştırma: OpenCV, sinir ağlarını eğitmekten ziyade yeniden boyutlandırma, filtreleme ve renk dönüşümü gibi geleneksel görüntü işleme işlevlerine odaklanan bir kütüphanedir. Tipik bir iş akışında geliştiriciler, görüntüleri analiz için bir PyTorch modeline aktarmadan önce veri ön işleme için OpenCV kullanır.
Ultralytics ile Entegrasyon#
En yeni YOLO26 ve yaygın olarak kullanılan YOLO11 dâhil olmak üzere tüm Ultralytics model ailesi, yerel olarak PyTorch üzerine kurulmuştur. Bu temel, kullanıcıların çerçevenin hızından, kararlılığından ve kapsamlı topluluk desteğinden yararlanmasını sağlar. İster özel eğitim verileri üzerinde transfer öğrenimi gerçekleştirsin ister modelleri uç cihazlar için dışa aktarsın, temel mimari PyTorch tensörlerine ve gradyanlarına dayanır.
Yaklaşan Ultralytics Platform, kapsamlı şablon kodu yazmaya gerek kalmadan veri kümesi kaynaklarını, eğitimi ve dağıtımı yönetmek için birleşik bir arayüz sunarak bu deneyimi daha da basitleştirir.
Aşağıdaki örnek, bir YOLO modeli kullanarak GPU kullanılabilirliğinin nasıl doğrulanacağını ve çıkarımın nasıl çalıştırılacağını gösterir; ayrıca çerçevenin donanım hızlandırmasını arka planda nasıl yönettiğini ortaya koyar:
import torch
from ultralytics import YOLO
# Check if CUDA (GPU) is available for PyTorch acceleration
device = "cuda" if torch.cuda.is_available() else "cpu"
print(f"PyTorch is using device: {device}")
# Load a YOLO26n model (built on PyTorch)
model = YOLO("yolo26n.pt")
# Perform object detection on an image
# PyTorch handles tensor operations and moves data to the GPU automatically
results = model("https://ultralytics.com/images/bus.jpg", device=device)








