Peta Prasyarat

Keterkaitan machine learning dengan Python, pandas, statistika, dan aljabar linear beserta kedalaman yang benar-benar diperlukan.

Daftar isi

Topik ini memetakan empat prasyarat untuk mengikuti jalur machine learning ini, yaitu Python, pandas, statistika, dan aljabar linear. Setiap prasyarat dibatasi pada kedalaman yang benar-benar diperlukan. Peta ini menjaga persiapan tetap realistis, karena persyaratan yang dilebihkan menunda pemodelan pertama, sedangkan persyaratan yang diringkas membuat contoh sulit dibaca. Setelah topik ini tuntas, konsep yang perlu disegarkan beserta kedalamannya dapat ditentukan melalui tabel pemetaan dan satu contoh terukur.

Empat prasyarat dan kedalamannya#

Prasyarat pertama adalah Python pada tingkat fungsi, list, dict, dan import modul. Seluruh contoh pada jalur ini berupa skrip pendek yang memanggil fungsi dari pustaka, membungkus logika kecil dalam fungsi sendiri, dan mengimpor data dari berkas. Pemahaman tentang class, decorator, dan pemrograman asinkron tidak diperlukan untuk mengikuti contoh apa pun. Kemampuan membaca pesan error Python justru lebih bernilai, karena sebagian besar pekerjaan awal berupa perbaikan argumen yang keliru.

Prasyarat kedua adalah pandas untuk memuat dan menginspeksi dataset. Kedalaman yang diperlukan mencakup DataFrame sebagai struktur tabel, pembacaan berkas CSV dengan read_csv, seleksi kolom, dan ringkasan statistik seperti describe. Operasi lanjutan seperti pivot, penggabungan bertingkat, dan penanganan deret waktu baru diperlukan pada topik yang memang memakainya. Hampir setiap topik pada jalur ini memulai pekerjaan dengan memuat data ke dalam DataFrame, sehingga kefasihan pada tiga operasi dasar itu terpakai berulang-ulang.

Prasyarat ketiga adalah statistika dasar, yaitu rata-rata, varians, standar deviasi, korelasi, dan distribusi. Varians sampel mengukur penyebaran data di sekitar rata-ratanya:

s2=1n−1∑i=1n(xi−xˉ)2 s^2 = \frac{1}{n-1} \sum_{i=1}^{n} (x_i - \bar{x})^2

Konsep ini diperlukan secara langsung, karena metrik evaluasi pada jalur ini dibangun di atasnya. RMSE (root mean squared error), yaitu akar dari rata-rata kuadrat error prediksi, dibangun dari konsep rata-rata dan kuadrat. Korelasi antara dua variabel juga dihitung dengan melibatkan standar deviasi keduanya. Tanpa pemahaman itu, angka evaluasi hanya dibaca sebagai skor tinggi atau rendah tanpa makna.

Prasyarat keempat adalah aljabar linear pada tingkat vektor, matriks, dan perkalian titik. Pada dataset, satu baris adalah vektor fitur, sedangkan dataset utuh adalah matriks. Prediksi model linear adalah perkalian titik antara vektor bobot, yaitu parameter model, dan vektor fitur:

a⋅b=∑iaibi \mathbf{a} \cdot \mathbf{b} = \sum_{i} a_i b_i

Ketiga bentuk dasar itu sudah cukup untuk skrip contoh pada bagian berikutnya. Konsep yang lebih lanjut, seperti dekomposisi nilai eigen (eigen decomposition), baru muncul pada topik reduksi dimensi dan cukup dipahami intuisinya di tempat itu. Tabel berikut memetakan setiap prasyarat ke penggunaannya pada jalur, sehingga persiapan dapat diprioritaskan sesuai kebutuhan.

PrasyaratKedalaman minimalDipakai di jalur ini untuk
Pythonfungsi, list, dict, import modulseluruh skrip contoh dan pemanggilan pipeline
pandasDataFrame, read_csv, seleksi kolommemuat dataset, inspeksi data, tabulasi metrik
Statistikarata-rata, varians, standar deviasi, korelasi, distribusimetrik regresi, confusion matrix, cross-validation
Aljabar linearvektor, matriks, perkalian titikregresi linear, penskalaan fitur, PCA

Contoh penakaran dengan kode#

Skrip berikut menggunakan numpy dan pandas dalam bentuk yang benar-benar muncul pada jalur ini, dengan data nilai ujian enam peserta pada dua mata kuliah. Bagian numpy menghitung prediksi berbobot melalui perkalian titik dan menampilkan ukuran matriks. Bagian pandas menunjukkan seleksi kolom serta ringkasan describe yang menjadi cara standar menginspeksi dataset baru.

python contoh-prasyarat.py
"""Contoh kecil numpy dan pandas untuk menakar prasyarat jalur."""
import numpy as np
import pandas as pd

pd.set_option("display.width", 80)

# aljabar linear: jumlah berbobot fitur, prediksi paling sederhana
bobot = np.array([0.6, 0.4])
fitur = np.array([80.0, 70.0])
print(f"perkalian titik bobot dan fitur: {np.dot(bobot, fitur):.2f}")

matriks = np.array([[80.0, 70.0], [90.0, 85.0]])
print(f"ukuran matriks (baris, kolom): {matriks.shape}")

# pandas: ringkasan statistik nilai ujian enam peserta
nilai = pd.DataFrame({
    "matematika": [80, 90, 70, 85, 60, 75],
    "statistika": [75, 88, 65, 80, 62, 72],
})
print(f"rata-rata kolom statistika: {nilai['statistika'].mean():.2f}")
print(nilai.describe())
text Keluaran
perkalian titik bobot dan fitur: 76.00
ukuran matriks (baris, kolom): (2, 2)
rata-rata kolom statistika: 73.67
       matematika  statistika
count    6.000000    6.000000
mean    76.666667   73.666667
std     10.801234    9.605554
min     60.000000   62.000000
25%     71.250000   66.750000
50%     77.500000   73.500000
75%     83.750000   78.750000
max     90.000000   88.000000

Keluaran mengikuti urutan skrip. Angka 76.00 adalah perkalian titik bobot [0.6, 0.4] terhadap fitur [80.0, 70.0], yaitu jumlah berbobot dari dua komponen penilaian. Ukuran matriks (2, 2) menyatakan dua baris contoh dengan dua kolom fitur, sesuai konvensi baris-contoh dan kolom-fitur yang umum digunakan pustaka numerik Python. Rata-rata kolom statistika sebesar 73.67 diperoleh melalui seleksi kolom nilai['statistika'], operasi pandas dasar yang digunakan berulang pada jalur ini. Tabel describe melengkapi inspeksi dengan count, mean, std, minimum, kuartil pada baris 25% dan 75%, median pada baris 50%, serta maksimum. Baris std memuat standar deviasi sampel.

Tidak ada satu pun operasi pada skrip itu yang menuntut pengetahuan di luar peta di atas. Perkalian titik dihitung dengan satu fungsi, matriks dibuat dari list dua tingkat, dan ringkasan statistik dihasilkan oleh satu pemanggilan. Inilah ukuran kedalaman yang diminta, yaitu kefasihan membaca dan memanggil, bukan kemampuan membuktikan teorema.

Kedalaman yang cukup, bukan sempurna#

Peta di atas sengaja menahan diri. Persiapan yang menunggu penguasaan seluruh teori sebelum memodelkan data pertama hampir selalu berakhir tanpa pemodelan sama sekali. Daftar prasyarat terasa tidak ada habisnya, sedangkan hasil yang tidak pernah terlihat mengurangi ketekunan belajar. Konsep yang benar-benar diperlukan justru cepat dikuasai ketika langsung diuji pada data. Kedalaman ekstra tetap diperlukan pada beberapa topik tertentu, misalnya turunan pada gradient descent dan dekomposisi matriks pada PCA (principal component analysis). Kedalaman itu dicari pada saat konsep yang memerlukannya muncul.

Cara menyegarkan yang efektif adalah membaca dokumentasi resmi langsung pada halaman yang relevan, bukan menuntaskan buku teks dari awal. Panduan singkat pandas dan halaman quickstart NumPy mencakup hampir semua sintaks yang dipakai pada jalur ini. Dokumentasi resmi menjelaskan perilaku versi yang benar-benar terpasang, sedangkan buku teks menyusun materinya menurut urutan kurikulum yang tidak selalu sama dengan urutan topik pada jalur ini. Konsep statistika dan aljabar linear paling cepat disegarkan dengan menghitung ulang contoh kecil seperti skrip di atas, karena setiap angkanya dapat diverifikasi dengan kalkulator.

Ringkasan#

  • Empat prasyarat jalur ini adalah Python, pandas, statistika, dan aljabar linear, masing-masing hanya pada kedalaman konsep inti.
  • Prediksi model linear ditulis sebagai perkalian titik vektor bobot dan vektor fitur, sehingga aljabar linear dipakai sejak contoh pertama.
  • Statistika dasar menjadi bahan baku metrik evaluasi, sedangkan pandas menyediakan pemuatan dan inspeksi dataset.
  • Kedalaman tambahan dicari pada saat konsep yang memerlukannya muncul, bukan dituntaskan sebelum pemodelan pertama.

Referensi#