Beberapa Kelas
Termasuk bagian Pembelajaran Terawasi dalam perjalanan Machine Learning di Coddy. Pelajaran 19 dari 58.
Lemon, jeruk nipis, atau jeruk? Regresi logistik juga dapat menangani tiga class. Berikut buah baru yang berada di antara lemon dan jeruk:
model = LogisticRegression(max_iter=1000)
model.fit(X, kind) # X: diameter, berat; kind: lemon, jeruk nipis, atau jeruk
print(model.classes_)
print(np.round(model.predict_proba([[6.7, 144]]), 2))
print(model.predict([[6.7, 144]]))Ini mencetak:
['lemon' 'lime' 'orange']
[[0.61 0. 0.39]]
['lemon']Setiap baris menyimpan satu peluang untuk setiap class, sesuai urutan classes_, dan jumlahnya menjadi 1. predict memilih nilai terbesar.
Jadi, model menunjukkan seberapa yakin ia: 61% lemon adalah hasil yang tipis, jadi perlu diperiksa lagi.
Tantangan
SedangAplikasi podcast mengelompokkan episode baru ke dalam comedy, news, atau true crime. Kode awal melatih LogisticRegression menggunakan episodes.csv (durasi, jumlah pembicara, tawa per menit) dan membaca episode baru ke dalam episode, sebuah tabel dengan satu baris.
Lengkapi describe(episode):
- Cetak peluang setiap jenis acara, sesuai urutan
model.classes_, dalam persen bulat. - Kembalikan jenis yang paling mungkin.
Untuk episode dari aplikasi lain:
comedy: 12%
news: 70%
true crime: 18%
Best guess: newsCoba sendiri
import pandas as pd
from sklearn.linear_model import LogisticRegression
episodes = pd.read_csv("episodes.csv")
features = ["length_min", "speakers", "laughs_per_min"]
model = LogisticRegression(max_iter=1000)
model.fit(episodes[features], episodes["show_type"])
# Menampilkan peluang setiap jenis acara untuk satu episode (tabel dengan satu baris), lalu mengembalikan jenis yang paling mungkin
def describe(episode):
# Tulis kodemu di sini
return "unknown"
# Jangan ubah baris-baris di bawah ini: episode baru dari input
length = float(input())
speakers = int(input())
laughs = float(input())
episode = pd.DataFrame({"length_min": [length], "speakers": [speakers], "laughs_per_min": [laughs]})
best = describe(episode)
print(f"Best guess: {best}")
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pembelajaran Terawasi
1Model Pertamamu
Belajar dari ContohData Latih dan Data UjiMelatih dan MemprediksiMenilai ModelRangkuman: Penyortir Benih4Regresi Logistik
Prediksi Ya atau TidakAmbang KeputusanBobot sebagai BuktiBeberapa KelasRangkuman: Filter Spam2Tetangga Terdekat
Cara k-NN MenentukanMemilih kBatas KeputusanPenskalaan untuk TetanggaRingkasan: Tetangga Wine5Mengukur Model Klasifikasi
Matriks KonfusiPresisi dan RecallSkor F1Kelas Tidak SeimbangKurva ROCRangkuman: Tes SkriningLatihan sendiri: Compiler Python online