Bagaimana Cara Menerapkan Regresi Linier untuk Pembelajaran Mesin?



Artikel ini membahas konsep regresi linier untuk pembelajaran mesin dengan berbagai terminologi dan kasus penggunaan untuk mengimplementasikan regresi linier.

Fokus dari berputar di sekitar variabel input dan output menggunakan algoritma untuk memprediksi hasilnya. Jika variabel input baru masuk ke dalam gambar. Algoritme regresi linier di adalah teknik pembelajaran yang diawasi untuk memperkirakan fungsi pemetaan untuk mendapatkan prediksi terbaik. Pada artikel ini, kita akan mempelajari tentang regresi linier untuk pembelajaran mesin. Topik-topik berikut dibahas di blog ini.

Apa itu Regresi?

Tujuan utama dari regresi adalah membangun model yang efisien untuk memprediksi atribut dependen dari sekumpulan variabel atribut. Masalah regresi adalah ketika variabel output berupa nilai riil atau kontinu yaitu gaji, berat, luas, dll.





Kami juga dapat mendefinisikan regresi sebagai sarana statistik yang digunakan dalam aplikasi seperti perumahan, investasi, dll. Ini digunakan untuk memprediksi hubungan antara variabel dependen dan sekelompok variabel independen. Mari kita lihat berbagai jenis teknik regresi.

contoh-regresi linier dalam pembelajaran mesin - edureka

Jenis-Jenis Regresi

Berikut ini adalah jenis-jenis regresi.



  1. Regresi Linier Sederhana
  2. Regresi Polinomial
  3. Mendukung Regresi Vektor
  4. Regresi Pohon Keputusan
  5. Regresi Hutan Acak

Regresi Linier Sederhana

Salah satu teknik regresi yang paling menarik dan umum adalah regresi linier sederhana. Dalam hal ini, kami memprediksi hasil variabel dependen berdasarkan variabel independen, hubungan antar variabel linier. Oleh karena itu, kata regresi linier.

Regresi Polinomial

Dalam teknik regresi ini, kami mengubah fitur asli menjadi fitur polinomial dengan derajat tertentu dan kemudian melakukan regresi padanya.

Mendukung Regresi Vektor

Untuk regresi atau SVR, kami mengidentifikasi hyperplane dengan margin maksimum sedemikian rupa sehingga jumlah titik data maksimum berada dalam margin tersebut. Ini sangat mirip dengan algoritma klasifikasi mesin vektor dukungan.



Regresi Pohon Keputusan

UNTUK dapat digunakan untuk regresi dan . Dalam kasus regresi, kami menggunakan algoritma ID3 (Iterative Dichotomiser 3) untuk mengidentifikasi node pemisah dengan mengurangi standar deviasi.

Regresi Hutan Acak

Dalam regresi hutan acak, kami menggabungkan prediksi beberapa regresi pohon keputusan. Sekarang setelah kita mengetahui tentang berbagai jenis regresi, mari kita lihat regresi linier sederhana secara mendetail.

Apa itu Regresi Linier?

Regresi linier sederhana merupakan teknik regresi dimana variabel bebas mempunyai hubungan linier dengan variabel terikat. Garis lurus pada diagram adalah garis yang paling pas. Tujuan utama dari regresi linier sederhana adalah untuk mempertimbangkan titik data yang diberikan dan memplot garis yang paling sesuai agar sesuai dengan model dengan cara sebaik mungkin.

Sebelum beralih ke cara kerja algoritma regresi linier, mari kita lihat beberapa terminologi penting dalam regresi linier sederhana.

java cast ganda ke int

Terminologi Regresi Linier

Terminologi berikut penting untuk dipahami sebelum beralih ke algoritme regresi linier.

Fungsi Biaya

Garis paling cocok dapat didasarkan pada persamaan linier yang diberikan di bawah ini.

  • Variabel terikat yang akan diprediksi dilambangkan dengan Y.
  • Garis yang menyentuh sumbu y dilambangkan dengan titik potong b0.
  • bsatuadalah kemiringan garis, x mewakili variabel independen yang menentukan prediksi Y.
  • Kesalahan dalam prediksi resultan dilambangkan dengan e.

Fungsi biaya memberikan nilai terbaik untuk b0dan Bsatuuntuk membuat garis yang paling pas untuk titik data. Kami melakukannya dengan mengubah masalah ini menjadi masalah minimisasi untuk mendapatkan nilai terbaik untuk b0dan Bsatu. Kesalahan diminimalkan dalam masalah ini antara nilai aktual dan nilai prediksi.

Kami memilih fungsi di atas untuk meminimalkan kesalahan. Kami mengkuadratkan perbedaan kesalahan dan menjumlahkan kesalahan di semua titik data, pembagian antara jumlah total titik data. Kemudian, nilai yang dihasilkan memberikan kesalahan kuadrat rata-rata pada semua titik data.

Ini juga dikenal sebagai MSE (Mean Squared Error), dan kami mengubah nilai b0dan Bsatusehingga nilai MSE ditetapkan minimal.

Penurunan Gradien

Istilah penting berikutnya untuk memahami regresi linier adalah penurunan gradien. Ini adalah metode pembaruan b0dan Bsatunilai untuk mengurangi MSE. Ide di balik ini adalah untuk terus mengulang b0dan Bsatunilai sampai kami mengurangi MSE seminimal mungkin.

Untuk memperbarui b0dan Bsatu, kami mengambil gradien dari fungsi biaya. Untuk menemukan gradien ini, kami mengambil turunan parsial sehubungan dengan b0dan Bsatu. Turunan parsial ini adalah gradien dan digunakan untuk memperbarui nilai b0dan Bsatu.

Kecepatan pembelajaran yang lebih kecil mendekati nilai minimum, tetapi membutuhkan lebih banyak waktu dan jika kecepatan pembelajaran lebih besar. Waktu yang dibutuhkan lebih cepat tetapi ada peluang untuk melampaui nilai minimum. Sekarang setelah kita selesai dengan terminologi dalam regresi linier, mari kita lihat beberapa keuntungan dan kerugian dari regresi linier untuk pembelajaran mesin.

Keuntungan dan kerugian

Keuntungan Kekurangan
Regresi linier bekerja sangat baik untuk data yang dapat dipisahkan secara linierAsumsi linieritas antara variabel dependen dan independen
Lebih mudah diimplementasikan, ditafsirkan, dan efisien untuk dilatihSeringkali sangat rentan terhadap kebisingan dan overfitting
Ini menangani overfitting dengan cukup baik menggunakan teknik reduksi dimensional, regularisasi, dan validasi silangRegresi linier cukup sensitif terhadap pencilan
Satu keuntungan lagi adalah ekstrapolasi di luar kumpulan data tertentuItu rentan terhadap multikolinearitas

Kasus Penggunaan Regresi Linier

  • Peramalan Penjualan

  • Analisis resiko

  • Aplikasi Perumahan Untuk Memprediksi harga dan faktor lainnya

    mencari angka terbesar dalam array java
  • Aplikasi Keuangan Untuk Memprediksi harga Saham, evaluasi investasi, dll.

Ide dasar di balik regresi linier adalah untuk menemukan hubungan antara variabel dependen dan independen. Ini digunakan untuk mendapatkan garis pas terbaik yang akan memprediksi hasil dengan kesalahan paling sedikit. Kita dapat menggunakan regresi linier dalam situasi kehidupan nyata yang sederhana, seperti memprediksi skor SAT terkait jumlah jam belajar dan faktor penentu lainnya.

Dengan mengingat hal ini, mari kita lihat kasus penggunaan.

Use Case - Menerapkan Regresi Linier

Prosesnya berlangsung dalam langkah-langkah berikut:

  1. Memuat Data
  2. Menjelajahi Data
  3. Mengiris Data
  4. Latih dan Pisahkan Data
  5. Hasilkan Model
  6. Evaluasi Akurasi

Mari kita bahas detail dari setiap langkah untuk menerapkan regresi linier.

1. Memuat Data

Kita bisa mulai dengan set data diabetes dasar yang sudah ada di modul set data sklearn (scikit-learn) untuk memulai perjalanan kita dengan regresi linier.

dari sklearn import dataset penyakit = dataset.load_diabetes () print (penyakit)

Keluaran:

2. Menggali Data

Setelah kita selesai memuat data, kita bisa mulai menjelajah hanya dengan memeriksa label dengan menggunakan kode berikut.

cetak (penyakit.keys ())

Keluaran:

Kode di atas memberikan semua label dari kumpulan data, setelah ini, kita dapat memotong data sehingga kita dapat memplot garis pada akhirnya. Kami juga akan menggunakan semua titik data, untuk saat ini, kami akan memotong kolom 2 dari data.

import numpy as np disease_X = disease.data [:, np.newaxis, 2] print (disease_X)

Keluaran:

Setelah langkah ini, kami akan membagi data menjadi train and test set.

3. Memisahkan Data

penyakit_X_train = penyakit_X [: - 30] penyakit_X_ tes = penyakit_X [-20:] penyakit_Y_train = penyakit.target [: - 30] penyakit_Y_target = penyakit.target [-20:]

Bagian selanjutnya melibatkan pembuatan model, yang akan mencakup mengimpor linear_model dari sklearn.

4. Menghasilkan model

dari sklearn import linear_model reg = linear_model.LinearRegression () reg.fit (disease_X_train, disease_Y_train) y_predict = reg.predict (disease_X_test)

Untuk mengevaluasi akurasi model, kita akan menggunakan mean squared error dari scikit-learn.

5. Evaluasi

akurasi = mean_squared_error (penyakit_Y_test, y_predict,) print (akurasi) bobot = reg.coef_ intercept = reg.intercept_ print (bobot, intersep)

Keluaran:

regresi logistik dalam kode python

Untuk lebih jelasnya bagaimana titik data terlihat pada grafik, mari kita buat grafiknya juga.

impor matplotlib.pyplot sebagai plt plt.scatter (disease_X_test, disease_Y_test) plt.plot (disease_X_test, y_predict) plt.show ()

Keluaran:

Untuk mendapatkan model yang lebih akurat dalam skenario ini, kita dapat menggunakan seluruh data, bukan hanya kolom 2. Itu akan memberikan akurasi seperti yang ditunjukkan di bawah ini:

# buat sedikit perubahan pada kode di atas, dan hapus kode plotting untuk menghindari kesalahan disease_X = disease.data

Keluaran:

Ini membawa kita ke akhir artikel ini di mana kita telah belajar tentang Regresi Linier untuk Pembelajaran Mesin. Saya harap Anda jelas dengan semua yang telah dibagikan dengan Anda dalam tutorial ini.

Jika Anda merasa artikel tentang 'Regresi Linier untuk Pembelajaran Mesin' ini relevan, lihat perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar puas yang tersebar di seluruh dunia.

Jika Anda menemukan pertanyaan, silakan ajukan semua pertanyaan Anda di bagian komentar 'Regresi Linier untuk Pembelajaran Mesin' dan tim kami akan dengan senang hati menjawabnya.