Materi
Machine learning adalah cara membuat program yang menemukan pola dari contoh data, bukan dari aturan yang ditulis tangan. Program yang menebak harga sewa rumah tidak diberi rumus harga; ia diberi ratusan rumah beserta harganya, lalu mencari hubungan antara ciri rumah dan harganya sendiri.
User Guide scikit-learn membagi bahan ajarnya menjadi dua bab besar. Pembelajaran terawasi (supervised) memakai data yang sudah punya jawaban, disebut label atau target. Kalau labelnya angka yang bisa bernilai berapa saja, seperti harga atau jumlah terjual, tugasnya regresi. Kalau labelnya kelompok, seperti lulus/tidak atau spam/bukan spam, tugasnya klasifikasi. Pembelajaran tak terawasi (unsupervised) memakai data tanpa label dan mencari strukturnya sendiri, misalnya mengelompokkan pelanggan yang mirip (clustering).
Di scikit-learn setiap model adalah estimator dengan pola pakai yang sama: buat objeknya, panggil fit(X, y) untuk belajar dari data, lalu predict(X_baru) untuk menebak data baru. Contoh di bawah memakai data buah; latihan memakai data lain.
from sklearn.tree import DecisionTreeClassifier
# berat (gram), diameter (cm) -> 0 = jeruk, 1 = apel
X = [[140, 7], [130, 6], [150, 8], [170, 7], [180, 8]]
y = [0, 0, 0, 1, 1]
model = DecisionTreeClassifier(random_state=0)
model.fit(X, y)
print(model.predict([[175, 7]])) # [1]