Kursus Matematika untuk AI · Pelajaran 37 dari 180
Ruang afin menjelaskan bias dan batas keputusan
Lihat bagaimana translasi menggeser garis tanpa mengubah arahnya, dan mengapa bias pada lapisan neural dapat memindahkan batas klasifikasi menjauhi titik asal.
Bobot pada sebuah pengklasifikasi menentukan arah yang memisahkan dua kelas. Bias memungkinkan garis pemisah itu berada di suatu tempat selain titik asal. Tambahan kecil ini merupakan translasi geometris: batas linear berubah menjadi batas afin, sementara arahnya tetap.
Setelah membaca, Anda akan dapat membedakan subruang yang ditranslasikan dari subruang yang melalui titik asal, menguji apakah suatu pemetaan linear atau afin, dan menghitung bagaimana bias mengubah batas pengklasifikasi sederhana.
Capaian pembelajaran: Membedakan himpunan linear dan afin serta transformasi linear dan afin.
Materi ini melanjutkan Pelajaran 034, yang menunjukkan bahwa pemetaan linear mempertahankan penjumlahan vektor dan perkalian skalar. Bagian 2.8 dari Mathematics for Machine Learning memperluas struktur tersebut dengan offset. Contoh, perhitungan pengklasifikasi, visual, dan asesmen di sini adalah karya orisinal.
Garis dapat mempertahankan arahnya sambil bergeser dari titik asal
Subruang vektor harus memuat vektor nol. Sebagai contoh, semua kelipatan membentuk garis yang melalui titik asal:
Pilih titik , lalu tambahkan ke setiap vektor di . Hasilnya adalah garis sejajar yang tidak lagi melalui titik asal:
Koordinat parametrik garis ini adalah . Dengan menghilangkan , kita memperoleh . Vektor arahnya sama dengan milik , tetapi setiap titik di telah bergeser sebesar . Secara khusus, : koordinat pertama bernilai nol hanya jika , dan saat itu koordinat kedua bernilai . Jika titik pilihan berada di , translasi sama dengan ; dalam kasus khusus ini, subruang afin sekaligus merupakan subruang vektor.
- Tanpa bias: 2x₁ − x₂ = 0
- Bias −1: 2x₁ − x₂ = 1
Kedua garis pada gambar memiliki vektor arah yang sama, , karena vektor itu tegak lurus terhadap vektor normal bersama . Garis putus-putus adalah translasi dari garis utuh. Posisi berubah, tetapi orientasinya tidak. Label dan persamaan menyampaikan informasi yang sama tanpa mengandalkan warna.
Kombinasi afin mempertahankan titik di dalam himpunan ber-offset
Salah satu cara mengenali geometri afin adalah menggabungkan titik dengan koefisien yang jumlahnya satu. Jika dan berada di , maka untuk setiap bilangan real ,
Offset tetap ada karena , dan bagian di dalam tanda kurung tetap berada di karena subruang tertutup terhadap kombinasi linear. Itulah sebabnya interpolasi titik-titik pada garis tetap berada di garis tersebut, termasuk ekstrapolasi saat berada di luar .
Penjumlahan biasa memiliki jumlah koefisien yang berbeda. Untuk , berlaku , yang belum tentu berada di . Pada garis contoh kita, ambil dan sehingga ; titik ini tidak memenuhi persamaan garis . Jadi, subruang afin mempertahankan kombinasi afin, sedangkan subruang vektor mempertahankan semua kombinasi linear dan memuat nol.
Titik jangkar yang dipilih tidak unik. Jika , maka karena menambahkan unsur dari hanya mengubah titik mana yang dijadikan jangkar. Ruang arah adalah bagian yang tetap; titik pendukung hanya satu wakil yang praktis.
Bias menggeser batas pengklasifikasi
Pemetaan afin menggabungkan pemetaan linear dengan translasi tetap:
Untuk dua masukan apa pun, translasi saling menghapus saat dikurangkan:
Untuk koefisien yang jumlahnya satu, keluaran juga mempertahankan kombinasi afinnya:
Ini berbeda dari aturan pemetaan linear untuk penjumlahan sembarang. Khususnya, , sehingga bias bukan nol memetakan masukan nol ke keluaran bukan nol.
Misalkan adalah masukan dengan dua fitur. Skornya adalah
Masukan masuk kelas positif jika dan kelas negatif jika . Batas keputusan adalah lokasi dengan skor nol:
Vektor bobot menentukan normal batas, sedangkan bias menetapkan tingkat skor pada . Dalam dua dimensi, batasnya berupa garis; dalam ruang fitur berdimensi lebih tinggi, himpunan datar terkait disebut hiperbidang. Titik berada di atasnya karena . Bergerak sepanjang arah tidak mengubah skor:
Tanpa bias, batasnya adalah dan melalui titik asal. Penambahan mengubah intersep, bukan vektor normalnya. Secara umum, skor pengklasifikasi menggunakan untuk menentukan orientasi hiperbidang dan untuk menentukan offset-nya. Dokumentasi PyTorch untuk torch.nn.Linear menuliskan bentuk afin ini sebagai dan mengaktifkan bias yang dapat dipelajari secara default (dokumentasi torch.nn.Linear). Dengan satu keluaran, lapisan tersebut dapat menghasilkan skor seperti ini; aturan lanjutan seperti ambang kemudian menetapkan kelas.
Bias menggeser batas secara sejajar hanya selama bobot tetap. Jika pelatihan mengubah , orientasi batas juga berubah. Bias juga tidak dapat membuat satu batas afin mewakili setiap pola klasifikasi yang mungkin; bias hanya menyesuaikan offset skor linear tertentu ini.
Verifikasi geometri dengan NumPy
Contoh ini dapat diperiksa langsung. Kode berikut menghitung skor pada titik pendukung dan dua titik yang diperoleh dengan bergerak sepanjang arah:
import numpy as np
w = np.array([2.0, -1.0])
b = -1.0
p = np.array([0.0, -1.0])
d = np.array([1.0, 2.0])
score = lambda x: w @ x + b
print(score(p)) # 0.0: p is on the boundary
print(score(p + d)) # 0.0: moving along d stays on it
print(score(p + 3 * d)) # 0.0: extrapolating along d also stays on it
print(score(np.zeros(2))) # -1.0: the origin is off the boundary
Perhitungannya menggunakan geometri vektor kolom, sedangkan batch tensor yang umum menyimpan contoh sebagai baris. PyTorch menuliskan lapisan linear batch sebagai ; transpose menyesuaikan konvensi berorientasi baris itu. Dengan bias default, operasi tersebut afin. Mengatur bias=False membuat pemetaan lapisan menjadi linear, meskipun aktivasi nonlinear setelahnya merupakan operasi terpisah.
Periksa pemahaman Anda
Question 1
Untuk U = span((1, 2)) dan p = (0, −1), tuliskan p + U dalam bentuk parametrik dan nyatakan apakah himpunan itu memuat titik asal.
Show the step-by-step solution
Setiap titik berbentuk untuk suatu dengan vektor arah . Jadi . Untuk mencapai titik asal, koordinat pertama mensyaratkan , tetapi koordinat kedua lalu bernilai . Jadi, himpunan itu tidak memuat titik asal dan bukan subruang vektor.
Question 2
Sebuah garis dinyatakan sebagai (x₁, x₂) = (3, 1) + t(2, −1). Berikan satu titik jangkar dan ruang arahnya. Apakah jangkar itu unik?
Show the step-by-step solution
Jangkar yang ditampilkan adalah dan ruang arahnya . Jika adalah vektor apa pun di , maka , sehingga titik lain pada garis dapat dijadikan jangkar. Ruang arahnya tidak berubah.
Question 3
Tunjukkan bahwa subruang afin tertutup terhadap kombinasi λx + (1 − λ)y, bahkan ketika λ berada di luar 0 sampai 1.
Show the step-by-step solution
Tuliskan dan dengan . Maka . Koefisien berjumlah satu, dan vektor sisanya berada di karena tertutup terhadap kombinasi linear. Ini berlaku untuk setiap bilangan real ; nilai di luar mengekstrapolasi melewati segmen tetapi tetap pada subruang afin yang sama.
Question 4
Untuk garis afin L = (0, −1) + span((1, 2)), uji apakah (0, −2), hasil penjumlahan jangkar dengan dirinya sendiri, berada di L.
Show the step-by-step solution
Sebuah titik termasuk garis ini tepat ketika . Substitusi menghasilkan , bukan . Jadi, hasil penjumlahan biasa itu berada di luar . Koefisien dua salinan tersebut berjumlah , sehingga offset jangkar dihitung dua kali, bukan dipertahankan sekali.
Question 5
Untuk F(x) = Ax + b, hitung F(0) dan jelaskan syarat agar pemetaan itu linear.
Show the step-by-step solution
Substitusikan vektor nol: . Setiap pemetaan linear harus memetakan nol ke nol, jadi jika , bukan linear. Saat , aturannya menjadi , yang mempertahankan penjumlahan dan perkalian skalar sehingga linear.
Question 6
Untuk s(x) = 2x₁ − x₂ − 1, verifikasi bahwa p = (0, −1) berada pada batas dan d = (1, 2) mengikuti arah batas.
Show the step-by-step solution
Pada , , jadi titik itu berada di batas skor nol. Perubahan skor setelah menambahkan adalah , karena bias konstan dan hasil kali titik bobot dengan arah bernilai nol. Jadi, tetap berada pada batas.
Question 7
Jika skor pengklasifikasi adalah wᵀx + b, apa dampak mengubah b saat w tetap? Apa yang berubah jika w juga berubah saat pelatihan?
Show the step-by-step solution
Batas memenuhi . Menahan tetap mempertahankan vektor normal dan orientasi; mengubah mengubah himpunan level sehingga batas bergeser. Jika berubah, normalnya juga berubah, sehingga batas dapat berputar sekaligus bergeser. Bias sendiri tidak mengendalikan orientasi.
Question 8
PyTorch membuat nn.Linear(4, 2) dengan opsi bias default. Pemetaan apa yang dihasilkan, dan perubahan apa yang membuat lapisan itu linear?
Show the step-by-step solution
Untuk masukan berorientasi baris dengan empat fitur, lapisan mengembalikan dengan dua fitur keluaran. bias=True secara default menambahkan vektor terpelajar , sehingga pemetaannya afin. Membuatnya dengan bias=False menghapus translasi itu dan menghasilkan pemetaan linear .