Rumah >pembangunan bahagian belakang >Tutorial Python >Regresi Linear : Dari Teori kepada Amalan

Regresi Linear : Dari Teori kepada Amalan

Patricia Arquette
Patricia Arquetteasal
2024-11-07 10:43:02804semak imbas

Dalam panduan ini, kami akan menerangkan regresi linear, cara ia berfungsi dan membimbing anda melalui proses langkah demi langkah. Kami juga akan merangkumi penskalaan ciri dan keturunan kecerunan, teknik utama untuk meningkatkan ketepatan model anda. Sama ada anda menganalisis arah aliran perniagaan atau menyelami sains data, panduan ini merupakan titik permulaan yang bagus.


Jadual Kandungan

  • Pengenalan
  • Memahami Pembelajaran Terselia
  • Apakah Regresi Linear?
  • Regresi Linear Mudah
  • Regresi Linear Berbilang
  • Fungsi Kos
  • Penskalaan Ciri
  • Keturunan kecerunan
  • Keturunan kecerunan untuk regresi linear mudah
  • Keturunan kecerunan untuk regresi linear berbilang

pengenalan

Regression linear ialah alat yang ringkas namun berkuasa yang digunakan untuk memahami hubungan antara faktor yang berbeza dan membuat ramalan. Sebagai contoh, anda mungkin ingin mengetahui cara waktu belajar anda memberi kesan kepada markah ujian anda, berapa banyak rumah boleh dijual berdasarkan saiz dan lokasinya, atau cara jualan mungkin meningkat dengan lebih banyak pengiklanan. Regresi linear membolehkan kami memeriksa titik data — seperti jam dikaji atau perbelanjaan pengiklanan — dan melukis garis lurus yang paling meramalkan hasil, seperti markah ujian atau angka jualan. Teknik ini berharga dalam banyak bidang, membantu kami membuat keputusan termaklum berdasarkan data.

Memahami Pembelajaran Terbimbing

Sebelum terjun ke regresi linear, adalah penting untuk memahami pembelajaran terselia, pendekatan pembelajaran mesin yang menggunakan data berlabel untuk melatih model. Dalam pembelajaran diselia, kami menyediakan model dengan contoh latihan yang merangkumi ciri (pembolehubah input) dan label sepadannya (output yang betul).

Terdapat dua jenis utama tugasan pembelajaran yang diselia:

  1. Regression: Ini meramalkan nilai berterusan daripada julat kemungkinan keluaran yang tidak terhingga. Contohnya, meramalkan harga rumah berdasarkan pelbagai ciri.
  2. Klasifikasi : Ini berbeza daripada regresi dengan meramalkan kelas atau kategori daripada set terhad kategori yang mungkin. Contohnya, menentukan sama ada e-mel adalah spam atau tidak.

Apakah Regresi Linear?

Regression linear ialah kaedah pembelajaran diselia yang digunakan dalam statistik dan pembelajaran mesin untuk memahami hubungan antara dua jenis pembolehubah: pembolehubah bebas (faktor yang kami fikir mempengaruhi hasil) dan pembolehubah bersandar (hasil yang kita mahu ramalkan).

Matlamatnya ialah untuk mencari garis paling sesuai yang mewakili perhubungan ini menggunakan persamaan linear. Dengan menganalisis data berlabel (data dengan hasil yang diketahui), regresi linear membantu kita memahami cara perubahan dalam pembolehubah bebas mempengaruhi pembolehubah bersandar.

Terminologi

Linear Regression : From Theory to Practice

Regresi Linear Mudah

Regression linear mudah mengkaji hubungan antara satu pembolehubah bersandar dan satu pembolehubah tidak bersandar. Ia bertujuan untuk memodelkan hubungan dengan memasang garis lurus ke titik data, yang boleh dinyatakan dengan persamaan:

Linear Regression : From Theory to Practice

Dalam persamaan ini:

  • y_hat(atau f_wb(x)) :Pembolehubah bersandar, yang mewakili hasil yang diramalkan. Ini ialah nilai yang kami sasarkan untuk menganggarkan berdasarkan input daripada pembolehubah bebas.
  • b : Ini ialah pintasan garis regresi. Ia menandakan nilai jangkaan pembolehubah bersandar y apabila pembolehubah tidak bersandar x ialah sifar. Permintaan membolehkan garis regresi melaraskan secara menegak agar lebih sesuai dengan data.
  • w : Pekali pembolehubah tidak bersandar x. Pekali ini menunjukkan berapa banyak pembolehubah bersandar y_hat berubah untuk perubahan satu unit dalam x. w positif menunjukkan bahawa apabila x meningkat, y_hat​ juga meningkat, manakala w negatif menunjukkan hubungan songsang.
  • x : Pembolehubah bebas, yang berfungsi sebagai peramal dalam model. Pembolehubah ini ialah input yang digunakan untuk menganggarkan hasil yang diwakili oleh y_hat.

Regresi Linear Berbilang

Regression linear berganda memanjangkan konsep regresi linear mudah dengan mengkaji hubungan antara satu pembolehubah bersandar dan dua atau lebih pembolehubah tidak bersandar. Pendekatan ini membolehkan kami memodelkan perhubungan yang lebih kompleks dan memahami cara pelbagai faktor mempengaruhi hasil.

Linear Regression : From Theory to Practice

Di mana :

  • n : Jumlah bilangan ciri (pembolehubah bebas)

Fungsi Kos

Fungsi kos, juga dikenali sebagai fungsi kerugian, mengukur perbezaan antara nilai dijangka (sebenar) dan nilai ramalan yang dijana oleh model. Ia mengukur prestasi model pada set data tertentu. Dalam regresi linear mudah, fungsi kos yang paling biasa digunakan ialah Ralat Kuasa Dua Min.

Linear Regression : From Theory to Practice

Di mana :

  • m ialah bilangan contoh latihan
  • y_hat ialah nilai ramalan
  • y ialah nilai sebenar atau jangkaan

Penskalaan Ciri

Penskalaan ciri ialah langkah penting dalam prapemprosesan data, terutamanya apabila bekerja dengan algoritma yang bergantung pada pengiraan jarak atau pengoptimuman penurunan kecerunan, seperti regresi linear, regresi logistik dan mesin vektor sokongan. Tujuan penskalaan ciri adalah untuk menyeragamkan julat pembolehubah tidak bersandar atau ciri dalam data untuk memastikan ia menyumbang secara sama rata kepada proses pembelajaran model.

Teknik Biasa untuk Penskalaan Ciri

Min Normalisasi

Penormalan min melibatkan pelarasan nilai ciri untuk mempunyai min sifar.

Linear Regression : From Theory to Practice

Ciri-ciri

  • Data berjulat daripada lebih kurang [−1,1] atau hampir dengannya.
  • Sensitif kepada outlier, yang boleh memesongkan min dan menjejaskan normalisasi.

Kes Penggunaan

  • Regression Linear : Membantu dalam meningkatkan penumpuan semasa latihan.
  • Algoritma Berasaskan Kecerunan : Rangkaian saraf dan algoritma berasaskan kecerunan lain selalunya bertumpu lebih cepat apabila data berpusat di sekitar sifar.
  • Set Data tanpa Outlier Ketara : Sangat berkesan untuk set data dengan julat yang serupa dan tiada outlier yang melampau.

Penskalaan Min-Maks

Penskalaan Min-Max ialah teknik yang digunakan untuk menskala semula ciri kepada julat tetap, biasanya [0,1] atau [−1,1].

Linear Regression : From Theory to Practice

Ciri-ciri

  • Julat Tetap : Menskalakan data kepada julat tertentu, biasanya [0,1].
  • Sensitiviti kepada Outliers : Ia boleh dipengaruhi dengan ketara oleh outlier, yang mungkin memesongkan penskalaan nilai lain.

Kes Penggunaan

  • Pemprosesan Imej : Biasa digunakan dalam model pembelajaran mendalam seperti Convolutional Neural Networks (CNN’s), dengan nilai piksel diskalakan kepada [0,1].
  • Algoritma Berasaskan Jarak : Penting untuk algoritma yang bergantung pada pengiraan jarak, seperti jiran terdekat k (KNN), pengelompokan k-means dan mesin vektor sokongan (SVM), untuk memastikan sumbangan yang sama daripada semua ciri .
  • Model Berasaskan Pokok : Walaupun kurang kritikal untuk model berasaskan pokok (seperti pepohon keputusan dan hutan rawak) berbanding dengan algoritma lain, ia masih boleh membantu dalam senario di mana ciri mempunyai skala yang jauh berbeza.

Piawaian Skor Z

Penyawaian skor Z, juga dikenali sebagai penskalaan piawai, mengubah ciri untuk mempunyai min sifar dan sisihan piawai satu. Teknik ini amat berguna untuk algoritma yang menganggap data taburan normal.

Linear Regression : From Theory to Practice

Di mana :

  • sigma ialah sisihan piawai bagi ciri tersebut.

Ciri-ciri

  • Min Berpusat : Memusatkan data pada sifar.
  • Unit Varian : Memastikan sisihan piawai satu.
  • Kekukuhan kepada Outlier : Lebih teguh berbanding penskalaan Min-Max tetapi masih sensitif kepada outlier melampau.

Kes Penggunaan

  • Rangkaian Neural : Meningkatkan prestasi dan mempercepatkan penumpuan semasa latihan.
  • Analisis Komponen Utama (PCA) dan Analisis Diskriminasi Linear (LDA) : Diperlukan untuk teknik ini untuk memastikan semua ciri menyumbang secara sama rata.
  • Gaussian Naive Bayes: Meningkatkan prestasi pengelasan dengan menormalkan ciri input.

Penskalaan Teguh

Skala teguh ialah teknik yang digunakan untuk menskalakan ciri berdasarkan julat median dan antara kuartil (IQR). Kaedah ini amat berguna untuk set data dengan outlier yang ketara, kerana ia mengurangkan pengaruh outlier ini pada nilai berskala.

Linear Regression : From Theory to Practice

Di mana :

  • IQR(x) ialah julat antara kuartil ciri, ditakrifkan sebagai perbezaan antara persentil ke-75 dan ke-25 set latihan

Ciri-ciri

  • Median Centered : Memusatkan data di sekitar median dan bukannya min, menjadikannya lebih tahan terhadap outlier.
  • Julat Antara Kuartil (IQR) : Menskala data menggunakan IQR, iaitu perbezaan antara persentil ke-75 (Q3) dan persentil ke-25 (Q1) data latihan. Ini membantu mengekalkan keteguhan pengedaran.

Kes Penggunaan

  • Data dengan Outlier : Berkesan dalam senario di mana outlier hadir.
  • Kewangan: Berguna dalam set data kewangan yang mungkin mengandungi nilai melampau.
  • Data Alam Sekitar : Digunakan dengan baik pada set data alam sekitar yang ukurannya boleh berbeza-beza secara meluas.

Keturunan Kecerunan

Keturunan kecerunan ialah algoritma pengoptimuman berkuasa yang digunakan untuk melatih model pembelajaran mesin, termasuk regresi linear. Matlamat utamanya ialah untuk meminimumkan ralat antara nilai yang dijangka dan yang diramalkan.

Pada mulanya, cerun fungsi kos mungkin curam pada titik permulaan (sewenang-wenangnya). Apabila algoritma melelar dan mengemas kini parameter, cerun beransur-ansur berkurangan, membimbing model ke arah titik terendah fungsi kos, yang dikenali sebagai titik penumpuan atau minima setempat. Pada titik penumpuan ini, fungsi kos mencapai nilai minimumnya, menunjukkan bahawa ramalan model adalah sehampir mungkin dengan nilai sebenar. Sebaik sahaja parameter mencapai tahap ini, kemas kini selanjutnya menghasilkan perubahan minimum pada ramalan, menunjukkan bahawa proses pengoptimuman telah mengenal pasti parameter yang paling sesuai untuk data dengan berkesan.

Prosesnya melibatkan langkah utama berikut:

  1. Permulaan : Mulakan dengan nilai rawak untuk parameter model (cth., pintasan b dan pekali w).
  2. Kira Kecerunan : Kira kecerunan fungsi kos berkenaan dengan parameter model. Kecerunan ini mewakili arah dan kadar perubahan fungsi kos.
  3. Kemas Kini Parameter : Laraskan parameter model dalam arah bertentangan dengan kecerunan untuk mengurangkan ralat. Peraturan kemas kini diberikan oleh:
  4. Lelaran : Ulangi proses sehingga perubahan dalam fungsi kos adalah minimum atau bilangan lelaran tertentu dicapai.

PETUA : Lelaran plot (paksi-x) berbanding kos (paksi-y). Jika plot menunjukkan aliran menurun yang lancar, pelaksanaan anda mungkin betul.

Linear Regression : From Theory to Practice

Jenis Turun Kecerunan

Keturunan Kecerunan Kelompok

  • Kelebihan : Menyediakan anggaran kecerunan yang stabil dan tepat kerana ia menggunakan keseluruhan set data. Ia boleh menumpu terus kepada minimum global untuk fungsi cembung.
  • Kelemahan : Boleh menjadi sangat perlahan untuk set data yang besar kerana ia memproses semua sampel dalam setiap lelaran.
  • Kes Penggunaan : Selalunya digunakan dalam senario di mana set data cukup kecil untuk dimuatkan dalam ingatan, seperti regresi linear atau regresi logistik pada data jadual.

Keturunan Kecerunan Stokastik (SGD)

  • Kelebihan : Kemas kini yang lebih pantas kerana ia memproses satu sampel pada satu masa, yang boleh membawa kepada penumpuan yang lebih cepat. Ia boleh membantu melarikan diri dari minima tempatan kerana bunyi yang wujud.
  • Kelemahan : Penumpuan lebih tidak menentu dan mungkin berayun di sekitar minimum, menjadikannya kurang stabil.
  • Kes Penggunaan : Biasa digunakan dalam senario pembelajaran dalam talian, ramalan masa nyata atau apabila berurusan dengan set data besar yang tidak boleh diproses secara keseluruhannya, seperti melatih rangkaian saraf pada data imej.

Mini-batch Gradient Descent(MBD)

  • Kelebihan : Menggabungkan kelebihan kedua-dua turunan kecerunan kelompok dan stokastik. Ia membawa kepada penumpuan yang lebih cepat daripada keturunan kecerunan kelompok dan penumpuan yang lebih stabil daripada SGD. Ia juga boleh memanfaatkan kevektoran untuk pengiraan yang cekap.
  • Kelemahan : Memilih saiz kumpulan mini boleh menjadi mencabar dan boleh menjejaskan kelajuan dan kestabilan penumpuan.
  • Kes Penggunaan : Kerap digunakan dalam aplikasi pembelajaran mendalam, terutamanya apabila melatih set data yang besar, seperti tugas pengelasan imej dalam rangkaian neural konvolusi (CNN) atau model pemprosesan bahasa semula jadi.

Turun Kecerunan untuk Regresi Linear Mudah

Langkah Turun Kecerunan untuk Regresi Linear Mudah

  1. Permulaan Mulakan dengan nilai awal untuk parameter model. Nilai ini boleh dipilih secara rawak atau ditetapkan kepada sifar.

Linear Regression : From Theory to Practice

  1. Kira Kecerunan Kira kecerunan fungsi kos berkenaan dengan parameter model. Kecerunan ini mewakili arah dan kadar perubahan fungsi kos.

Linear Regression : From Theory to Practice

Linear Regression : From Theory to Practice

  1. Kemas Kini Parameter Laraskan parameter model dalam arah yang bertentangan dengan kecerunan untuk mengurangkan ralat. Peraturan kemas kini diberikan oleh:

Linear Regression : From Theory to Practice

Linear Regression : From Theory to Practice

di mana :

  • J(w, b) ialah fungsi kos, iaitu ralat kuasa dua min (MSE) yang digunakan di atas.
  • Alpha ialah kadar pembelajaran, nombor positif kecil antara 0 dan 1. Ia mengawal saiz langkah yang menuruni kecerunan menurun untuk mencapai titik penumpuan atau minimum setempat.

PETUA : Mulakan dengan kadar pembelajaran yang kecil (cth., 0.01) dan tingkatkannya secara beransur-ansur. Jika kos menurun dengan lancar, ia adalah kadar yang baik. Jika ia turun naik atau menyimpang, kurangkan kadar pembelajaran. Kadar pembelajaran yang terlalu besar boleh menyebabkan penurunan kecerunan melampaui batas, tidak pernah mencapai tahap minimum dan gagal menumpu.

  1. Lelaran : Ulangi proses sehingga perubahan dalam fungsi kos adalah minimum atau bilangan lelaran tertentu dicapai.

Pelaksanaan Python Keturunan Kecerunan untuk Regresi Linear Mudah

Pelaksanaan Python Penurunan Kecerunan untuk Regresi Linear Mudah

Penurunan Kecerunan untuk Regresi Linear Berganda

Langkah Turun Kecerunan untuk Regresi Linear Berbilang

  1. Permulaan Mulakan dengan nilai rawak untuk setiap parameter, termasuk pintasan b dan pemberat w untuk setiap ciri.

Linear Regression : From Theory to Practice

  1. Kira Kecerunan Kira kecerunan fungsi kos berkenaan dengan parameter model.

Linear Regression : From Theory to Practice

Linear Regression : From Theory to Practice

Borang Vektor

Linear Regression : From Theory to Practice

Linear Regression : From Theory to Practice

Di mana :

  • x_subscript_j_superscript_i ialah ciri ke-j bagi contoh latihan ke-i
  • x_superscript_T ialah transpose bagi vektor x
  1. Kemas Kini Parameter Laraskan parameter model dalam arah yang bertentangan dengan kecerunan untuk mengurangkan ralat. Peraturan kemas kini diberikan oleh:

Linear Regression : From Theory to Practice

  1. Lelaran Ulangi proses sehingga perubahan dalam fungsi kos adalah minimum atau bilangan lelaran tertentu dicapai.

Pelaksanaan Python Keturunan Kecerunan untuk Regresi Linear Mudah

Pelaksanaan Python Penurunan Kecerunan untuk Regresi Linear Mudah


Kesimpulan

Tahniah!! ? Dalam siaran ini, kami telah meneroka asas regresi linear dan regresi linear berganda, melalui proses melaksanakan keturunan kecerunan dan membincangkan teknik utama seperti penskalaan ciri untuk mengoptimumkan prestasi model. Dengan memahami cara untuk memulakan parameter model, mengira kecerunan dan mengemas kini pemberat secara berulang, anda kini dilengkapi dengan baik untuk melaksanakan algoritma regresi linear dan meningkatkan prestasinya pada set data dunia sebenar.

Sama ada anda bekerja dengan regresi linear mudah atau menavigasi kerumitan berbilang ciri, menguasai turunan kecerunan dan memahami prinsip terasnya akan meningkatkan keupayaan anda dengan ketara untuk membangunkan model pembelajaran mesin yang tepat dan cekap. Teruskan mencuba, memperhalusi kemahiran anda dan menerima proses pembelajaran — ia sama pentingnya dengan keputusan itu sendiri!

Nantikan lebih banyak cerapan tentang teknik pembelajaran mesin dan topik pembangunan web. Selamat belajar sambil anda terus meneroka dan membina model yang lebih bijak! ??

Jom berhubung di LinkedIn ?

"Artikel ini pada asalnya disiarkan di Medium, tempat saya berkongsi lebih banyak cerapan tentang analisis data, pembelajaran mesin dan pengaturcaraan. Jangan ragu untuk menyemaknya dan ikuti saya di sana untuk mendapatkan lebih banyak kandungan!"

Sila Like, Kongsi dan Ikuti ?.

Sila ajukan sebarang soalan di bahagian komen—saya akan menjawab pertanyaan anda dengan segera dan teliti. Keraguan anda dialu-alukan dan akan menerima balasan yang pantas dan menyeluruh. ❤️

Atas ialah kandungan terperinci Regresi Linear : Dari Teori kepada Amalan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn