Kursus Matematika untuk AI · Pelajaran 1 dari 180

Variabel, Nilai, dan Tiga Peran dalam Model AI

Pelajari cara membaca persamaan model dengan memisahkan nama variabel dari nilainya saat ini, lalu telusuri input, parameter, dan output melalui model penilaian kecil.

Bagikan artikel ini

Sebuah model AI dapat berisi jutaan atau miliaran angka yang tersimpan, menerima sekumpulan angka baru untuk setiap permintaan, dan menghasilkan sekumpulan angka lain sebagai jawabannya. Keterampilan pertama yang dibutuhkan untuk membaca matematikanya ternyata sederhana: belajar membedakan nama dari nilai yang saat ini melekat pada nama tersebut.

Di akhir pelajaran ini, Anda akan mampu membaca persamaan model singkat, mengenali input, parameter, dan outputnya, mengganti nama dengan nilainya, serta menjelaskan besaran mana yang dapat berubah karena alasan yang berbeda.

Buku Mathematics for Machine Learning memulai dengan memperlakukan matematika sebagai bahasa yang presisi untuk menyatakan gagasan machine learning. Variabel adalah bagian dari bahasa tersebut. Variabel memungkinkan kita mendeskripsikan satu aturan yang berlaku untuk banyak contoh, alih-alih menulis perhitungan terpisah untuk setiap contoh.

Sebuah nama dapat bertahan melampaui nilainya saat ini

Misalkan sebuah model kecil memberikan skor untuk suatu item:

s=wx+b.s = wx + b.

Keempat huruf itu adalah variabel. Masing-masing merupakan nama dengan peran tertentu:

  • xx adalah fitur input yang diberikan untuk item saat ini;
  • ww adalah bobot yang mengatur seberapa kuat fitur memengaruhi skor;
  • bb adalah bias yang menggeser setiap skor dengan jumlah yang sama; dan
  • ss adalah skor output model.

Untuk satu item, nilai saat ini mungkin

x=3,w=1.5,b=1.x = 3, \qquad w = 1.5, \qquad b = -1.

Substitusi mengganti nama dengan nilai-nilai tersebut untuk perhitungan ini:

s=wx+b=(1.5)(3)+(1)=4.51=3.5.\begin{aligned} s &= wx + b \\ &= (1.5)(3) + (-1) \\ &= 4.5 - 1 \\ &= 3.5. \end{aligned}

Nilai ss sekarang adalah 3.53.5. Simbol ss tidak secara permanen menjadi 3.53.5; input lain atau sekumpulan parameter model yang lain dapat menghasilkan nilai berbeda.

Ubah nilainya sementara nama variabel tetap mempertahankan perannya. Model kecil ini menghitung s = wx + b.
Inputx = 3.0berubah mengikuti contoh
Bobotw = 1.5parameter yang dipelajari
Biasb = -1.0parameter yang dipelajari
Skors = 3.503.0 × 1.5 + -1.0

Hasil perkaliannya adalah 4.50. Nama x, w, b, dan s tidak berubah ketika nilai saat ini berubah.

Model interaktif ini memperlihatkan pemisahan penting. Menggeser kontrol xx mengubah contoh yang disajikan kepada model. Menggeser ww atau bb mengubah model itu sendiri. Kedua tindakan mengubah ss, tetapi karena alasan yang berbeda.

Input, parameter, dan output memiliki tugas yang berbeda

Dalam machine learning, variabel sering dikelompokkan berdasarkan cara nilai-nilainya diperoleh.

PeranAsal nilainyaKapan biasanya berubahSimbol dalam model kecil
InputContoh data saat iniDi antara contoh atau permintaanxx
ParameterNilai yang dipelajari saat pelatihanKetika optimizer memperbarui modelww, bb
OutputPerhitungan modelSetiap kali input atau parameter berubahss

Pembedaan ini mencegah kesalahan umum saat membaca. Jika Anda melihat

si=wxi+b,s_i = wx_i + b,

subskrip ii menyatakan bahwa xix_i dan sis_i adalah milik contoh ke-ii. Parameter ww dan bb yang sama digunakan kembali. Untuk tiga input, satu model dapat menghasilkan tiga skor:

Contoh iiInput xix_iPerhitunganOutput sis_i
111(1.5)(1)1(1.5)(1)-10.50.5
233(1.5)(3)1(1.5)(3)-13.53.5
32-2(1.5)(2)1(1.5)(-2)-14-4

Barisnya berubah karena contohnya berubah. Aturannya tetap sama.

Pelatihan mengubah parameter, bukan makna simbolnya

Sebelum pelatihan, model mungkin memiliki w=0.2w=0.2 dan b=0b=0. Setelah melihat data, optimizer mungkin memperbaruinya menjadi w=1.5w=1.5 dan b=1b=-1. Simbolnya tetap menamai peran yang sama, tetapi nilai yang tersimpan di dalamnya telah berubah.

Inilah cara paling sederhana untuk memandang pelatihan:

  1. pilih nilai parameter saat ini;
  2. hitung output untuk beberapa input;
  3. ukur kesalahan model;
  4. perbarui nilai parameter; dan
  5. ulangi.

Pelajaran berikutnya akan membuat setiap langkah lebih presisi. Untuk saat ini, perhatikan mengapa variabel penting. Ekspresi s=wx+bs=wx+b menjelaskan perhitungan sebelum, selama, dan sesudah pelatihan. Hanya nilai yang diberikan kepada variabel yang mencatat keadaan model saat ini.

Dalam kode, pemisahan yang sama terlihat pada argumen fungsi dan nilai yang tersimpan:

def score(x, weight, bias):
    return weight * x + bias

weight = 1.5
bias = -1.0

first_score = score(x=1.0, weight=weight, bias=bias)
second_score = score(x=3.0, weight=weight, bias=bias)

x, weight, bias, dan skor yang dikembalikan adalah nama. Angka yang terikat padanya adalah nilai. Nama Python dan variabel matematika tidak identik dalam setiap detail teknis, tetapi perbandingan ini berguna: keduanya memungkinkan kita menyatakan operasi umum lalu mengevaluasinya dalam keadaan tertentu.

Batasan: sebuah huruf tidak mengungkapkan perannya dengan sendirinya

Tidak ada aturan universal yang menyatakan xx harus menjadi input atau ww harus menjadi bobot. Penulis memilih notasi dan harus mendefinisikannya. Dalam persamaan lain, xx mungkin merupakan parameter yang akan dioptimalkan, atau ww mungkin merupakan data yang diamati.

Batasan lainnya adalah tipe. Variabel tidak harus menyimpan satu bilangan real. Variabel dapat menamai daftar, matriks, gambar, urutan token, distribusi probabilitas, atau bahkan fungsi. Pembedaan nama dan nilai tetap berlaku. Pelajaran-pelajaran mendatang akan memberikan bahasa yang presisi untuk objek yang lebih kaya tersebut.

Uji pemahaman

Pertanyaan 1

Dalam s = wx + b, simbol mana yang merupakan parameter jika x diberikan oleh permintaan saat ini?

Tampilkan solusi langkah demi langkah

Permintaan memberikan xx, sehingga xx adalah input. Besaran yang dipelajari atau disimpan adalah ww dan bb, sehingga keduanya merupakan parameter. Persamaan menghitung ss, jadi ss adalah output.

Klasifikasinya adalah:

masukan: x,parameter: w,b,keluaran: s.\text{masukan: }x, \qquad \text{parameter: }w,b, \qquad \text{keluaran: }s.

Pertanyaan 2

Hitung skor ketika x = 4, w = -0.5, dan b = 3. Tunjukkan setiap langkah substitusi.

Tampilkan solusi langkah demi langkah

Mulai dari aturan model:

s=wx+b.s=wx+b.

Substitusikan ketiga nilai saat ini:

s=(0.5)(4)+3=2+3=1.\begin{aligned} s &= (-0.5)(4)+3 \\ &= -2+3 \\ &= 1. \end{aligned}

Jadi, variabel output ss memiliki nilai 11 untuk keadaan model dan input ini.

Pertanyaan 3

Input berubah dari x = 2 menjadi x = 5 sementara w dan b tetap. Apakah model berubah? Jelaskan.

Tampilkan solusi langkah demi langkah

Tidak. Parameter yang mendefinisikan aturan model tetap, sehingga model tidak berubah. Yang dievaluasi adalah contoh yang berbeda.

Output biasanya akan berubah karena xx muncul dalam s=wx+bs=wx+b, tetapi perubahan output saja tidak memberi tahu kita apakah model berubah. Kita harus menanyakan nilai dasar mana yang berubah: nilai input atau nilai parameter.

Pertanyaan 4

Satu langkah pelatihan mengubah w dari 1.5 menjadi 1.4. Apa yang tetap dan apa yang berubah?

Tampilkan solusi langkah demi langkah

Simbol ww dan perannya sebagai bobot model tetap sama. Nilai yang diberikan kepadanya berubah dari 1.51.5 menjadi 1.41.4.

Jika xx dan bb tetap, perubahan output adalah

Δs=(1.4x+b)(1.5x+b)=0.1x.\Delta s = (1.4x+b)-(1.5x+b) = -0.1x.

Ini juga menunjukkan bahwa dampak pembaruan parameter bergantung pada nilai input saat ini.

Pertanyaan 5

Mengapa tidak aman menganggap simbol bernama x selalu merupakan input?

Tampilkan solusi langkah demi langkah

Simbol matematika memperoleh maknanya dari definisinya, bukan dari hurufnya. Banyak penulis menggunakan xx untuk input, tetapi masalah lain dapat mendefinisikan xx sebagai parameter, solusi yang tidak diketahui, atau variabel acak.

Proses membaca yang aman adalah:

  1. temukan kalimat yang mendefinisikan simbol tersebut;
  2. catat tipe atau himpunan yang diizinkannya;
  3. tentukan apakah simbol itu diamati, dipilih, dipelajari, atau dihitung; dan
  4. gunakan kontrak itu secara konsisten dalam persamaan-persamaan berikutnya.

Sumber

  1. Mathematics for Machine Learning companion website
  2. Mathematics for Machine Learning book PDF