Daftar Isi:
- Cara memuat data Anda
- Line 1 mengimpor perpustakaan yang memungkinkan Anda membagi dataset menjadi dua bagian.
- Bagaimana cara menjalankan data uji
- Jadi bagaimana model regresi logistik dengan parameter C = 150 dibandingkan dengan itu? Nah, Anda tidak bisa mengalahkan 100 persen. Berikut adalah kode untuk membuat dan mengevaluasi classifier logistik dengan C = 150: >>>> logClassifier_2 = linear_model. LogisticRegression (C = 150, random_state = 111) >>> logClassifier_2. fit (X_train, y_train) >>> diprediksi = logClassifier_2. prediksikan (X_test) >>> metrik. accuracy_score (y_test, diprediksi) 0. 93333333333333335 >>> metrik. confusion_matrix (y_test, predict) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])
Video: A Beginner's Guide to Machine Learning with ml5.js 2024
Setelah Anda membuat model prediktif klasifikasi pertama untuk analisis data, buat lebih banyak model seperti ini adalah tugas yang sangat mudah dilakukan di scikit. Satu-satunya perbedaan nyata dari satu model ke model berikutnya adalah Anda mungkin harus menyetel parameter dari algoritma ke algoritma.
Cara memuat data Anda
Daftar kode ini akan memuat dataset iris ke dalam sesi Anda: >>>> dari sklearn. dataset import load_iris >>> iris = load_iris ()
Cara membuat instance dari classifier
Perhatikan parameter (parameter regularisasi) pada konstruktor. Parameter regularisasi
digunakan untuk mencegah overfitting. Parameter tidak benar-benar diperlukan (konstruktor akan bekerja dengan baik tanpa itu karena akan default ke C = 1). Membuat classifier regresi logistik menggunakan C = 150 menciptakan plot permukaan keputusan yang lebih baik. Anda bisa melihat kedua plot di bawah ini.
Line 1 mengimpor perpustakaan yang memungkinkan Anda membagi dataset menjadi dua bagian.
Baris 2 memanggil fungsi dari perpustakaan yang membagi dataset menjadi dua bagian dan menetapkan dataset yang sekarang terbagi menjadi dua pasang variabel.
Baris 3 mengambil instance dari klasifikasi regresi logistik yang baru saja Anda buat dan memanggil metode yang sesuai untuk melatih model dengan dataset pelatihan.
Bagaimana memvisualisasikan classifier
Melihat area permukaan keputusan di plot, sepertinya ada beberapa tuning yang harus dilakukan. Jika Anda melihat ke dekat bagian tengah petak, Anda bisa melihat bahwa banyak titik data milik area tengah (Versicolor) tergeletak di area ke sisi kanan (Virginica).
Gambar ini menunjukkan permukaan keputusan dengan nilai C 150. Secara visual terlihat lebih baik, jadi memilih untuk menggunakan pengaturan ini untuk model regresi logistik Anda tampaknya tepat.
Bagaimana cara menjalankan data uji
Pada kode berikut, baris pertama memberi umpan pada dataset tes ke model dan baris ketiga menampilkan hasilnya: >>>> predict = logClassifier. prediksi (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 2])
Bagaimana cara mengevaluasi model < Anda bisa melakukan cross-reference output dari prediksi terhadap array y_test. Akibatnya, Anda bisa melihat bahwa semua titik uji data dipuji dengan benar. Inilah kodenya: >>>> dari metrik impor sklearn >>> predictedarray ([0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 2]) >>> metrik. accuracy_score (y_test, diprediksi) 1. 0 # 1. 0 adalah akurasi 100 persen >>> prediksi == y_testarray (True, True, True, True, True, True, True, True, True, True, True], dtype = bool)
Jadi bagaimana model regresi logistik dengan parameter C = 150 dibandingkan dengan itu? Nah, Anda tidak bisa mengalahkan 100 persen. Berikut adalah kode untuk membuat dan mengevaluasi classifier logistik dengan C = 150: >>>> logClassifier_2 = linear_model. LogisticRegression (C = 150, random_state = 111) >>> logClassifier_2. fit (X_train, y_train) >>> diprediksi = logClassifier_2. prediksikan (X_test) >>> metrik. accuracy_score (y_test, diprediksi) 0. 93333333333333335 >>> metrik. confusion_matrix (y_test, predict) array ([[5, 0, 0], [0, 2, 0], [0, 1, 7]])
Kita harapkan lebih baik, tapi sebenarnya lebih buruk. Ada satu kesalahan dalam prediksi. Hasilnya sama dengan model Support Vector Machine (SVM).
Berikut adalah daftar lengkap kode untuk membuat dan mengevaluasi model klasifikasi regresi logistik dengan parameter default: >>>> dari sklearn. dataset import load_iris >>> dari sklearn import linear_model >>> dari sklearn import cross_validation >>> dari metrik impor sklearn >>> iris = load_iris () >>> X_train, X_test, y_train, y_test = cross_validation. train_test_split (iris data, target iris, test_size = 0, 10, random_state = 111) >>> logClassifier = linear_model. LogisticRegression (, random_state = 111) >>> logClassifier. fit (X_train, y_train) >>> predict = logClassifier. prediksikan (X_test) >>> predictedarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 2]) >>> y_testarray ([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2]) >>> metrik. accuracy_score (y_test, diprediksi) 1. 0 # 1. 0 adalah akurasi 100 persen >>> prediksi == y_testarray (True, True, True, True, True, True, True, True, True, True, True], dtype = bool)