Yolo Vision Shenzhen
Shenzhen
Şimdi katılın
Sözlük

Normalleştirme

Normalleştirmenin model eğitimi ve doğruluğunu nasıl iyileştirdiğini keşfedin. Min-Max ölçeklendirme, Z-skor standardizasyonu ve bunların Ultralytics projelerindeki rolü hakkında bilgi edinin.

Normalleştirme, veri ön işlemede sayısal özellikleri standart bir aralığa yeniden ölçeklendirmeyi içeren temel bir tekniktir. Makine öğrenimi (ML) bağlamında, veri kümeleri genellikle yaş aralıkları (0–100) ile gelir düzeyleri (0–100.000) gibi farklı ölçeklere sahip özellikler içerir. Bu eşitsizlikler düzeltilmezse, optimizasyon algoritması daha büyük değerlere yönelik önyargılı hale gelebilir ve bu da daha yavaş yakınsama ve optimal olmayan performansa yol açabilir. Verileri normalleştirerek mühendisler, her özelliğin nihai sonuca orantılı olarak katkıda bulunmasını sağlar ve sinir ağlarının daha verimli bir şekilde öğrenmesini mümkün kılar.

Yaygın Normalleştirme Teknikleri

Verileri dönüştürmek için, her biri farklı dağılımlar ve algoritma gereksinimlerine uygun birkaç standart yöntem vardır .

  • Min-Max Ölçeklendirme: Bu, normalleştirmenin en sezgisel şeklidir. Verileri sabit bir aralığa, genellikle [0, 1] aralığına yeniden ölçeklendirir. Bu dönüşüm, minimum değeri çıkararak ve aralığa bölerek (maksimum eksi minimum) gerçekleştirilir. Piksel yoğunluklarının 0 ile 255 arasında sınırlı olduğu bilinen görüntü işlemede yaygın olarak kullanılır.
  • Z-Puanı Standartlaştırma: Genellikle normalleştirme ile eşanlamlı olarak kullanılır, ancak standartlaştırma özellikle verileri ortalama 0 ve standart sapma 1 olacak şekilde dönüştürür. Bu, veriler Gauss dağılımını izlediğinde özellikle yararlıdır ve normal dağılımlı verileri varsayan Destek Vektör Makineleri (SVM) gibi algoritmalar için gereklidir.
  • Logaritmik Ölçeklendirme: Aşırı uç değerler içeren veya güç yasasına uyan veriler için logaritmik dönüşüm uygulamak, değer aralığını sıkıştırabilir. Bu, dağılımı daha yönetilebilir hale getirir ve çıkarım motorunun, büyük değer artışlarından etkilenmeden etkili bir şekilde yorumlamasını sağlar.

Gerçek Dünya Uygulamaları

Normalleştirme, çeşitli endüstrilerdeki yüksek performanslı yapay zeka sistemlerinin iş akışlarında standart bir adımdır.

  1. Bilgisayar Görme (CV): Nesne algılama ve görüntü sınıflandırma gibi görevlerde, dijital görüntüler 0 ile 255 arasında değişen piksel değerlerinden oluşur. Bu büyük tamsayıları doğrudan bir ağa beslemek, gradyan inişini yavaşlatabilir. Standart bir ön işleme adımı piksel değerlerini 255,0'a bölerek [0, 1] aralığına normalize etmektir. Bu uygulama, YOLO26 gibi gelişmiş modeller için tutarlı girdiler sağlayarak Ultralytics eğitim istikrarını artırır.
  2. Tıbbi Görüntü Analizi: Sağlık hizmetlerinde yapay zeka kullanımında olduğu gibi, tıbbi taramalar genellikle farklı yoğunluk ölçeklerine sahip farklı makinelerden elde edilir. Normalleştirme, MRI veya CT taramasından elde edilen piksel yoğunluklarının farklı hastalar ve ekipmanlar arasında karşılaştırılabilir olmasını sağlar. Bu tutarlılık, doğru tümör tespiti için çok önemlidir ve modelin parlaklık değişikliklerinden ziyade yapısal anomalilere odaklanmasını sağlar.

İlgili Kavramları Ayırt Etme

Normalleştirmeyi, derin öğrenmede bulunan benzer ön işleme ve mimari terimlerden ayırmak önemlidir. öğrenme.

  • vs. Toplu Normalleştirme: Veri normalleştirme, ham girdi veri kümesine ağa girmeden önce uygulanan bir ön işleme adımıdır. Buna karşılık, Toplu Normalleştirme, model eğitimi sırasında ağdaki katmanlar arasında dahili olarak çalışır. Öğrenme sürecini stabilize etmek için önceki aktivasyon katmanının çıktısını normalleştirir.
  • vs. Görüntü Büyütme: Normalleştirme piksel değerlerinin ölçeğini değiştirirken, büyütme veri setinin çeşitliliğini artırmak için görüntünün içeriğini veya geometrisini değiştirir (örneğin, çevirme, döndürme veya renk değiştirme). Albumentations gibi araçlar büyütme için kullanılır, normalleştirme ise matematiksel bir ölçeklendirme işlemidir.

Uygulama Örneği

Bilgisayar görüşünde, normalizasyon genellikle iş akışının ilk adımıdır. Aşağıdaki Python örneği, NumPy kullanarak görüntü verilerini manuel olarak normalleştirmeyi gösterir. Bu işlem, eğitim sırasında Ultralytics veri yükleyicisi içinde otomatik olarak gerçekleşir.

import numpy as np

# Simulate a 2x2 pixel image with values ranging from 0 to 255
raw_image = np.array([[0, 255], [127, 64]], dtype=np.float32)

# Apply Min-Max normalization to scale values to [0, 1]
# This standardizes the input for the neural network
normalized_image = raw_image / 255.0

print(f"Original Range: {raw_image.min()} - {raw_image.max()}")
print(f"Normalized Range: {normalized_image.min()} - {normalized_image.max()}")

Ultralytics topluluğuna katılın

Yapay zekanın geleceğine katılın. Küresel yenilikçilerle bağlantı kurun, işbirliği yapın ve birlikte büyüyün

Şimdi katılın