Bagaimana Melaksanakan Regresi Linear untuk Pembelajaran Mesin?



Artikel ini merangkumi konsep regresi linear untuk pembelajaran mesin dengan pelbagai terminologi dan kes penggunaan untuk melaksanakan regresi linear.

Tumpuan dari berkisar pada pemboleh ubah input dan output menggunakan algoritma untuk meramalkan hasilnya. Sekiranya pemboleh ubah input baru masuk ke dalam gambar. Algoritma regresi linear di adalah teknik pembelajaran yang diawasi untuk menghampiri fungsi pemetaan untuk mendapatkan ramalan terbaik. Dalam artikel ini, kita akan belajar mengenai regresi linier untuk pembelajaran mesin. Topik berikut dibincangkan dalam blog ini.

Apa itu Regresi?

Matlamat utama regresi adalah pembinaan model yang cekap untuk meramalkan atribut bersandar dari sekumpulan pemboleh ubah atribut. Masalah regresi adalah apabila pemboleh ubah keluaran sama ada nyata atau nilai berterusan iaitu gaji, berat, kawasan, dll.





Kita juga dapat mendefinisikan regresi sebagai cara statistik yang digunakan dalam aplikasi seperti perumahan, pelaburan, dll. Ia digunakan untuk meramalkan hubungan antara pemboleh ubah bersandar dan sekumpulan pemboleh ubah tidak bersandar. Mari kita perhatikan pelbagai jenis teknik regresi.

contoh-regresi linear dalam pembelajaran mesin - edureka

Jenis-Jenis Regresi

Berikut adalah jenis regresi.



c ++ berjalan lancar
  1. Regresi Linear Sederhana
  2. Regresi Polinomial
  3. Menyokong Regresi Vektor
  4. Regresi Pokok Keputusan
  5. Regresi Hutan Rawak

Regresi Linear Sederhana

Salah satu teknik regresi yang paling menarik dan biasa adalah regresi linear sederhana. Dalam hal ini, kita meramalkan hasil pemboleh ubah bersandar berdasarkan pemboleh ubah bebas, hubungan antara pemboleh ubah adalah linear. Oleh itu, kata regresi linear.

Regresi Polinomial

Dalam teknik regresi ini, kita mengubah ciri-ciri asli menjadi ciri polinomial pada tahap tertentu dan kemudian melakukan regresi di atasnya.

Menyokong Regresi Vektor

Untuk regresi atau SVR, kami mengenal pasti hiperplan dengan margin maksimum sehingga jumlah titik data maksimum berada dalam margin tersebut. Ia agak serupa dengan algoritma klasifikasi mesin vektor sokongan.



Regresi Pokok Keputusan

KE boleh digunakan untuk regresi dan . Dalam kes regresi, kami menggunakan algoritma ID3 (Iterative Dichotomiser 3) untuk mengenal pasti simpul pemisahan dengan mengurangkan sisihan piawai.

Regresi Hutan Rawak

Dalam regresi hutan secara rawak, kami menyusun ramalan beberapa regresi pokok keputusan. Sekarang setelah kita mengetahui mengenai pelbagai jenis regresi, mari kita lihat regresi linear sederhana secara terperinci.

Apa itu Regresi Linear?

Regresi linear sederhana adalah teknik regresi di mana pemboleh ubah bebas mempunyai hubungan linear dengan pemboleh ubah bersandar. Garis lurus dalam rajah adalah garis paling sesuai. Matlamat utama regresi linier sederhana adalah untuk mempertimbangkan titik data yang diberikan dan merancang garis pas yang terbaik agar sesuai dengan model dengan cara yang terbaik.

Sebelum beralih kepada bagaimana algoritma regresi linear berfungsi, mari kita lihat beberapa terminologi penting dalam regresi linear sederhana.

Terminologi Regresi Linear

Terminologi berikut penting untuk diketahui sebelum beralih ke algoritma regresi linear.

Fungsi Kos

Garis paling sesuai boleh berdasarkan pada persamaan linear yang diberikan di bawah.

  • Pemboleh ubah bersandar yang akan diramalkan dilambangkan oleh Y.
  • Garis yang menyentuh paksi-y dilambangkan oleh pintasan b0.
  • bsatuialah cerun garis, x mewakili pemboleh ubah bebas yang menentukan ramalan Y.
  • Kesalahan dalam ramalan yang dihasilkan ditunjukkan oleh e.

Fungsi kos memberikan nilai terbaik untuk b0dan bsatuuntuk membuat garis yang sesuai untuk titik data. Kami melakukannya dengan menukar masalah ini menjadi masalah pengurangan untuk mendapatkan nilai terbaik untuk b0dan bsatu. Kesalahan dikurangkan dalam masalah ini antara nilai sebenar dan nilai yang diramalkan.

Kami memilih fungsi di atas untuk mengurangkan ralat. Kami membezakan perbezaan ralat dan menjumlahkan ralat pada semua titik data, pembahagian antara jumlah titik data. Kemudian, nilai yang dihasilkan memberikan ralat kuasa dua rata-rata pada semua titik data.

Ia juga dikenali sebagai MSE (Error Squared Error), dan kami mengubah nilai b0dan bsatusupaya nilai MSE diselesaikan pada tahap minimum.

Keturunan Gradien

Istilah penting seterusnya untuk memahami regresi linear adalah keturunan kecerunan. Ia adalah kaedah mengemas kini b0dan bsatunilai untuk mengurangkan MSE. Idea di sebalik ini adalah untuk terus mengulangi b0dan bsatunilai sehingga kita mengurangkan MSE ke tahap minimum.

Untuk mengemas kini b0dan bsatu, kami mengambil kecerunan dari fungsi kos. Untuk mencari kecerunan ini, kami mengambil sebahagian terbitan berkenaan dengan b0dan bsatu. Derivatif separa ini adalah kecerunan dan digunakan untuk mengemas kini nilai b0dan bsatu.

Tahap pembelajaran yang lebih kecil mendekati minimum, tetapi memerlukan lebih banyak masa dan sekiranya kadar pembelajaran lebih besar. Masa yang diambil lebih cepat tetapi ada peluang untuk mengatasi nilai minimum. Sekarang setelah kita melalui terminologi regresi linear, mari kita lihat beberapa kelebihan dan kekurangan regresi linear untuk pembelajaran mesin.

Kelebihan dan kekurangan

Kelebihan Kekurangan
Regresi linear berfungsi dengan baik untuk data yang dapat dipisahkan secara linearAndaian linearitas antara pemboleh ubah bersandar dan bebas
Lebih mudah dilaksanakan, ditafsirkan dan cekap untuk melatihSelalunya terdedah kepada kebisingan dan keterlaluan
Ia menangani overfitting dengan baik menggunakan teknik pengurangan dimensi, regularisasi, dan validasi silangRegresi linier cukup sensitif terhadap outliers
Satu kelebihan lagi ialah pengekstrapolasi melebihi set data tertentuIa terdedah kepada multikolineariti

Kes Penggunaan Regresi Linear

  • Ramalan Jualan

  • Analisis Risiko

  • Permohonan Perumahan Untuk Meramalkan harga dan faktor lain

  • Aplikasi Kewangan Untuk Meramalkan Harga saham, penilaian pelaburan, dll.

Idea asas di sebalik regresi linear adalah mencari hubungan antara pemboleh ubah bersandar dan bebas. Ia digunakan untuk mendapatkan garis pas terbaik yang dapat meramalkan hasilnya dengan kesalahan paling sedikit. Kita boleh menggunakan regresi linier dalam situasi kehidupan nyata yang sederhana, seperti meramalkan skor SAT berkenaan dengan jumlah jam belajar dan faktor penentu yang lain.

Dengan ini, mari kita lihat kes penggunaan.

Kes Penggunaan - Melaksanakan Regresi Linear

Prosesnya berlaku dalam langkah-langkah berikut:

  1. Memuatkan Data
  2. Meneroka Data
  3. Memotong Data
  4. Latih Tubi dan Berpisah
  5. Hasilkan Model
  6. Menilai ketepatan

Mari kita perhatikan perincian setiap langkah untuk melaksanakan regresi linier.

1. Memuatkan Data

Kita boleh mulai dengan set data diabetes asas yang sudah ada dalam modul set data sklearn (scikit-learn) untuk memulakan perjalanan kita dengan regresi linear.

dari sklearn import datasets disease = datasets.load_diabetes () print (penyakit)

Pengeluaran:

2. Meneroka Data

Setelah selesai memuatkan data, kita dapat mulai menjelajah dengan hanya memeriksa label dengan menggunakan kod berikut.

cetak (penyakit.kunci ())

Pengeluaran:

Kod di atas memberikan semua label dari kumpulan data, setelah ini, kita dapat memotong data sehingga kita dapat merancang garis pada akhirnya. Kami juga akan menggunakan semua titik data, buat masa ini, kami akan memotong lajur 2 dari data.

import numpy sebagai np penyakit_X = penyakit.data [:, np.newaxis, 2] cetak (penyakit_X)

Pengeluaran:

Selepas langkah ini, kami akan membahagikan data ke dalam set ujian dan ujian.

3. Membahagi Data

penyakit_X_train = penyakit_X [: - 30] penyakit_X_test = penyakit_X [-20:] penyakit_Y_train = penyakit.target [: - 30] penyakit_Y_test = penyakit.target [-20:]

Bahagian seterusnya melibatkan menghasilkan model, yang akan merangkumi mengimport linear_model dari sklearn.

4. Menjana model

dari sklearn import linear_model reg = linear_model.LinearRegression () reg.fit (penyakit_X_train, penyakit_Y_train) y_predict = reg.predict (penyakit_X_test)

Untuk menilai ketepatan model, kita akan menggunakan ralat kuasa dua min dari scikit-learn.

5. Penilaian

ketepatan = mean_squared_error (penyakit_Y_test, y_predict,) cetak (ketepatan) berat = reg.coef_ intercept = reg.intercept_ print (berat, pintasan)

Pengeluaran:

Untuk lebih jelas bagaimana titik data kelihatan pada grafik, mari kita plotkan grafik juga.

import matplotlib.pyplot sebagai plt plt.scatter (penyakit_X_test, penyakit_Y_test) plt.plot (penyakit_X_test, y_predict) plt.show ()

Pengeluaran:

Untuk mendapatkan model yang lebih tepat dalam senario ini, kita dapat menggunakan keseluruhan data dan bukan hanya pada lajur 2. Itu akan memberikan ketepatan seperti yang ditunjukkan di bawah ini:

#lakukan sedikit perubahan pada kod di atas, dan hapus kod plot untuk mengelakkan kesalahan penyakit_X = penyakit.data

Pengeluaran:

Ini membawa kita ke akhir artikel ini di mana kita telah belajar mengenai Regresi Linear untuk Pembelajaran Mesin. Saya harap anda jelas dengan semua yang telah dikongsi dengan anda dalam tutorial ini.

Sekiranya anda mendapati artikel ini mengenai 'Regresi Linear untuk Pembelajaran Mesin' relevan, lihat syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia.

Sekiranya anda menjumpai sebarang pertanyaan, jangan ragu untuk mengajukan semua soalan anda di bahagian komen 'Regresi Linear untuk Pembelajaran Mesin' dan pasukan kami dengan senang hati akan menjawabnya.