Ana içeriğe geç

Giriş7 dk

Vektör işlemleri ve norm

Önkoşul:Vektör nedir, veri neden vektördür

Kanca

3 adım doğuya, sonra 4 adım kuzeye yürüsen, BAŞLANGIÇ noktasına düz bir ÇİZGİYLE dönmen için KAÇ adım atman gerekir? Cevap tam sayı çıkar — ve bu, TESADÜF değil.

Sezgi

İki vektörü TOPLAMAK, iki hareketi ARKA ARKAYA yapmaktır. Bir vektörün NORMU ise, o vektörün “UZUNLUĞUNU” (büyüklüğünü) ölçer — ve bunu hesaplamanın yolu, İLKOKULDAN bildiğin Pisagor teoremidir. Aşağıda İKİ vektörü sürükleyip, toplamlarını ve UZUNLUKLARINI canlı izleyebilirsin:

-6-4-20246-6-4-20246

A = (3.0, 0.0), ||A|| = 3.00

B = (0.0, 4.0), ||B|| = 4.00

A+B = (3.0, 4.0), ||A+B|| = 5.00

Noktaları sürükle (ya da odaklayıp ok tuşlarını kullan).

Mekanizma

Doğuya ve kuzeye giden İKİ adımı vektör olarak TOPLAYALIM:

Vektör toplama: boyut boyut

# Vektör TOPLAMA: HER boyutu, KARŞILIĞIYLA topla. Fiziksel bir örnek: bir kişi
# 3 birim DOĞUYA, sonra 4 birim KUZEYE yürüsün. TOPLAM yer değiştirme nedir?
dogu = np.array([3, 0])
kuzey = np.array([0, 4])
toplam_yer_degistirme = dogu + kuzey

print(f"Doğuya adım: {dogu.tolist()}")
print(f"Kuzeye adım: {kuzey.tolist()}")
print(f"Toplam yer değiştirme (dogu + kuzey): {toplam_yer_degistirme.tolist()}")
print("\nVektör toplama, HER boyutu AYRI AYRI toplamaktır -- x'ler kendi aralarında,")
print("y'ler kendi aralarında. Sonuç, İKİ hareketin BİRLEŞİK etkisidir.")
Doğuya adım: [3, 0]
Kuzeye adım: [0, 4]
Toplam yer değiştirme (dogu + kuzey): [3, 4]

Vektör toplama, HER boyutu AYRI AYRI toplamaktır -- x'ler kendi aralarında,
y'ler kendi aralarında. Sonuç, İKİ hareketin BİRLEŞİK etkisidir.

Bir vektörü bir SAYIYLA (skaler) çarpmak, YÖNÜNÜ koruyup BÜYÜKLÜĞÜNÜ değiştirir:

Skalerle çarpma: ölçekleme

# SKALERLE çarpma: bir vektörü SABİT bir sayıyla ÖLÇEKLEMEK -- YÖNÜ korur, BÜYÜKLÜĞÜ değiştirir.
iki_kat_dogu = 2 * dogu
yarim_dogu = 0.5 * dogu
ters_dogu = -1 * dogu

print(f"\n2 x doğu = {iki_kat_dogu.tolist()} (AYNI yön, 2 KAT uzun)")
print(f"0.5 x doğu = {yarim_dogu.tolist()} (AYNI yön, YARI uzunluk)")
print(f"-1 x doğu = {ters_dogu.tolist()} (TERS yön, AYNI uzunluk)")

2 x doğu = [6, 0] (AYNI yön, 2 KAT uzun)
0.5 x doğu = [1.5, 0.0] (AYNI yön, YARI uzunluk)
-1 x doğu = [-3, 0] (TERS yön, AYNI uzunluk)

Matematik

Norm: Pisagor teoreminin genellemesi
v=v12+v22++vn2\|v\| = \sqrt{v_1^2 + v_2^2 + \dots + v_n^2}

n=2n=2 için bu formül, TAM OLARAK Pisagor teoremidir (a2+b2=c2a^2+b^2=c^2‘nin cc‘yi ÇÖZMÜŞ hâli). Norm, bu fikri HERHANGİ bir boyut sayısına (nn) GENELLEŞTİRİR — 2. dersteki “uzaklık” hesabı da, İKİ vektörün FARKININ normuydu.

Kod

Norm = Pisagor teoremi

# NORM (||v||), bir vektörün "UZUNLUĞUNU" (büyüklüğünü) ölçer -- Pisagor teoreminin
# GENELLEŞTİRİLMİŞ hâlidir.
norm_toplam = np.linalg.norm(toplam_yer_degistirme)
elle_norm = np.sqrt(toplam_yer_degistirme[0]**2 + toplam_yer_degistirme[1]**2)

print(f"\nToplam yer değiştirme: {toplam_yer_degistirme.tolist()}")
print(f"np.linalg.norm(toplam) = {norm_toplam}")
print(f"Elle: sqrt(3² + 4²) = sqrt({3**2} + {4**2}) = sqrt({3**2 + 4**2}) = {elle_norm}")
print(f"\nİki yöntem AYNI sonucu veriyor: {norm_toplam == elle_norm}")
print("Bu, ÜNLÜ 3-4-5 dik üçgeni! Norm, ÖZÜNDE, Pisagor teoreminin (a²+b²=c²) HER")
print("boyuta GENELLEŞTİRİLMİŞ hâlidir -- 2. dersteki 'uzaklık' hesabı da TAM OLARAK buydu.")

Toplam yer değiştirme: [3, 4]
np.linalg.norm(toplam) = 5.0
Elle: sqrt(3² + 4²) = sqrt(9 + 16) = sqrt(25) = 5.0

İki yöntem AYNI sonucu veriyor: True
Bu, ÜNLÜ 3-4-5 dik üçgeni! Norm, ÖZÜNDE, Pisagor teoreminin (a²+b²=c²) HER
boyuta GENELLEŞTİRİLMİŞ hâlidir -- 2. dersteki 'uzaklık' hesabı da TAM OLARAK buydu.
Doğu vektörü, kuzey vektörü ve bunların toplamını gösteren ok diyagramı; toplam vektörün normu 5.
Doğu (turuncu) ve kuzey (yeşil) vektörleri UCTAN UCA eklenince, toplam (mavi) elde edilir -- normu tam 5, klasik 3-4-5 üçgeni.

Nerede işe yarar

Bu üç işlem (toplama, skalerle çarpma, norm), sonraki kategorilerde SÜREKLİ karşına çıkacak:

  • Makine Öğrenmesi’nde, bir modelin AĞIRLIK güncellemesi TAM OLARAK bir vektör toplamadır: yeni_agirlik = eski_agirlik + degisim.
  • Gradyan inişinde (12. ders), “adım büyüklüğü” (öğrenme oranı), bir vektörü SKALERLE çarpmaktır.
  • Norm, bir vektörün “BÜYÜK mü küçük mü” olduğunu ölçmenin STANDART yoludur — düzenlileştirme (regularization, ML kategorisi) DOĞRUDAN normu KULLANIR.

Bu 2 hatayı yaparsın:

  1. Vektör toplamayı SAYI toplamayla KARIŞTIRIP, boyutları YANLIŞ eşleştirmek — x’ler x’lerle, y’ler y’lerle toplanır.
  2. Normu “sadece pozitif sayılar için” bir kavram sanmak — norm HER ZAMAN pozitiftir (ya da sıfır), çünkü KARELER alınır; vektörün İÇİNDEKİ sayılar negatif olsa BİLE.

Kendini test et

1. Notebook'ta doğu=[3,0] ve kuzey=[0,4] vektörlerinin toplamının normu TAM OLARAK 5 çıkıyor. Bu NEDEN şaşırtıcı değil?
  1. Bir tesadüf
  2. Norm formülü (√(x²+y²)) TAM OLARAK Pisagor teoremidir -- 3² + 4² = 9 + 16 = 25, ve √25 = 5; bu, KLASİK 3-4-5 dik üçgenidir (doğru cevap)
  3. Sadece bu iki sayı için geçerli bir kural
  4. NumPy'nin özel bir yuvarlama yaptığını

Neden: norm-uzunluk bloğunda hem np.linalg.norm hem elle hesaplanan sqrt(3²+4²) AYNI 5.0 sonucunu veriyor -- MathBox'ta bu, Pisagor teoreminin DOĞRUDAN bir uygulaması olarak açıklanıyor.

2. Bir vektörü -1 ile ÇARPMAK (skalerle çarpma) NE yapar?
  1. Vektörü yok eder
  2. YÖNÜNÜ TERSİNE çevirir, ama UZUNLUĞUNU (normunu) DEĞİŞTİRMEZ -- notebook'ta -1 x doğu, AYNI uzunlukta ama TERS yönde bir vektör veriyor (doğru cevap)
  3. Vektörün boyutunu azaltır
  4. Sadece pozitif vektörlerde çalışır

Neden: skalerle-carpma bloğunda -1 x doğu = [-3, 0] -- orijinal [3,0] ile AYNI uzunlukta (norm=3) ama TAM TERS yönde.

3. Bir vektörün normunun HER ZAMAN pozitif (ya da sıfır) olmasının NEDENİ nedir?
  1. Norm formülünde negatif sayı kullanılamaz
  2. Norm formülü, HER bileşenin KARESİNİ alır (v₁², v₂², ...) -- bir sayının karesi HER ZAMAN pozitiftir (ya da sıfırdır), bu yüzden bu karelerin toplamının kare kökü de HER ZAMAN pozitiftir (doğru cevap)
  3. Norm sadece tam sayılarla çalışır
  4. Bu bir NumPy kısıtlamasıdır, matematiksel bir gerekçesi yoktur

Neden: MathBox'taki formülde HER v_i teriminin KARESİ alınıyor -- kullanım bölümünde bu, negatif bileşenli vektörlerin bile pozitif norm vermesinin nedeni olarak açıklanıyor.

Özet

Özet

  • Vektör toplama, HER boyutu ayrı ayrı toplamaktır -- iki hareketi arka arkaya yapmakla AYNI.
  • Skalerle çarpma, bir vektörün YÖNÜNÜ korur, BÜYÜKLÜĞÜNÜ (ve gerekirse yönünü, negatifse) değiştirir.
  • Norm (||v||), bir vektörün UZUNLUĞUNU ölçer -- Pisagor teoreminin HER boyuta genelleşmiş hâlidir.
  • Bu dersteki [3,0] + [0,4] = [3,4] örneği, normu TAM 5 olan klasik bir 3-4-5 üçgenidir.
  • Bu üç işlem, Makine Öğrenmesi'ndeki ağırlık güncellemelerinin ve düzenlileştirmenin TEMELİDİR.
Sonraki adım: Nokta çarpım: benzerliğin matematiği →