Rumah > pembangunan bahagian belakang > Tutorial Python > Metrik untuk algoritma regresi

Metrik untuk algoritma regresi

DDD
Lepaskan: 2024-11-03 20:25:03
asal
339 orang telah melayarinya

Metrik Ralat untuk Algoritma Regresi

Apabila kami mencipta algoritma regresi dan ingin mengetahui sejauh mana keberkesanan model ini, kami menggunakan metrik ralat untuk mendapatkan nilai yang mewakili ralat model pembelajaran mesin kami. Metrik dalam artikel ini penting apabila kita ingin mengukur ralat model ramalan untuk nilai berangka (nyata, integer).

Dalam artikel ini kami akan merangkumi metrik ralat utama untuk algoritma regresi, melakukan pengiraan secara manual dalam Python dan mengukur ralat model pembelajaran mesin pada set data sebut harga dolar.

Metrik Diatasi

  • SE — Jumlah ralat
  • SAYA — Min ralat
  • MAE — Min Ralat Mutlak
  • MPE — Ralat Peratusan Min
  • MAPAE — Ralat Peratusan Mutlak Min

Kedua-dua metrik adalah sedikit serupa, di mana kami mempunyai metrik untuk purata dan peratusan ralat dan metrik untuk purata dan peratusan ralat mutlak, dibezakan supaya hanya satu kumpulan memperoleh nilai sebenar perbezaan dan satu lagi memperoleh nilai mutlak daripada perbezaan. Adalah penting untuk diingat bahawa dalam kedua-dua metrik, lebih rendah nilai, lebih baik ramalan kami.

SE — Jumlah ralat

Metrik SE adalah yang paling mudah antara semua dalam artikel ini, dengan formulanya ialah:

SE = εR — P
Salin selepas log masuk

Oleh itu, ia adalah jumlah perbezaan antara nilai sebenar (pembolehubah sasaran model) dan nilai ramalan. Metrik ini mempunyai beberapa mata negatif, seperti tidak menganggap nilai sebagai mutlak, yang seterusnya akan menghasilkan nilai palsu.

SAYA — Makna kesilapan

Metrik ME ialah "pelengkap" SE, di mana kita pada asasnya mempunyai perbezaan bahawa kita akan memperoleh purata SE memandangkan bilangan elemen:

ME = ε(R-P)/N
Salin selepas log masuk

Tidak seperti SE, kami hanya membahagikan hasil SE dengan bilangan elemen. Metrik ini, seperti SE, bergantung pada skala, iaitu, kita mesti menggunakan set data yang sama dan boleh membandingkan dengan model ramalan yang berbeza.

MAE — Min ralat mutlak

Métricas para algorítimos de regressão

Metrik MAE ialah ME tetapi hanya mengambil kira nilai mutlak (bukan negatif). Apabila kita mengira perbezaan antara sebenar dan ramalan, kita mungkin mempunyai keputusan negatif dan perbezaan negatif ini digunakan pada metrik sebelumnya. Dalam metrik ini, kita perlu mengubah perbezaan menjadi nilai positif dan kemudian mengambil purata berdasarkan bilangan elemen.

MPE — Ralat Peratusan Min

Metrik MPE ialah ralat purata sebagai peratusan daripada jumlah setiap perbezaan. Di sini kita perlu mengambil peratusan perbezaan, menambahnya dan kemudian membahagikannya dengan bilangan elemen untuk mendapatkan purata. Oleh itu, perbezaan antara nilai sebenar dan nilai ramalan dibuat, dibahagikan dengan nilai sebenar, didarab dengan 100, kami menjumlahkan semua peratusan ini dan membahagikan dengan bilangan elemen. Metrik ini bebas daripada skala (%).

Métricas para algorítimos de regressão

MAPAE — Ralat Peratusan Mutlak Min

Metrik MAPAE sangat serupa dengan metrik sebelumnya, tetapi perbezaan antara ramalan x sebenar dibuat secara mutlak, iaitu, anda mengiranya dengan nilai positif. Oleh itu, metrik ini ialah perbezaan mutlak dalam peratusan ralat. Metrik ini juga bebas skala.

Métricas para algorítimos de regressão

Menggunakan metrik dalam amalan

Memandangkan penjelasan setiap metrik, kami akan mengira kedua-duanya secara manual dalam Python berdasarkan ramalan daripada model pembelajaran mesin kadar pertukaran dolar. Pada masa ini, kebanyakan metrik regresi wujud dalam fungsi sedia dalam pakej Sklearn, namun di sini kami akan mengiranya secara manual untuk tujuan pengajaran sahaja.

Métricas para algorítimos de regressão

Kami akan menggunakan algoritma RandomForest dan Decision Tree sahaja untuk membandingkan hasil antara kedua-dua model.

Métricas para algorítimos de regressão

Analisis Data

Dalam set data kami, kami mempunyai lajur SaldoMercado dan saldoMercado_2 yang merupakan maklumat yang mempengaruhi lajur Nilai (sebut harga dolar kami). Seperti yang dapat kita lihat, baki MercadoMercado mempunyai hubungan yang lebih rapat dengan sebut harga berbanding baki Merado_2. Anda juga boleh melihat bahawa kami tidak mempunyai nilai yang hilang (nilai tak terhingga atau Nan) dan lajur balanceMercado_2 mempunyai banyak nilai bukan mutlak.

Métricas para algorítimos de regressão

Métricas para algorítimos de regressão

Penyediaan Model

Kami menyediakan nilai kami untuk model pembelajaran mesin dengan mentakrifkan pembolehubah peramal dan pembolehubah yang ingin kami ramalkan. Kami menggunakan train_test_split untuk membahagikan data secara rawak kepada 30% untuk ujian dan 70% untuk latihan.

Métricas para algorítimos de regressão

Métricas para algorítimos de regressão

Akhir sekali, kami memulakan kedua-dua algoritma (RandomForest dan DecisionTree), menyesuaikan data dan mengukur skor kedua-duanya dengan data ujian. Kami memperoleh skor 83% untuk TreeRegressor dan 90% untuk ForestRegressor, yang secara teori menunjukkan bahawa ForestRegressor berprestasi lebih baik.

Métricas para algorítimos de regressão

Métricas para algorítimos de regressão

Métricas para algorítimos de regressão

Keputusan dan Analisis

Memandangkan prestasi ForestRegressor yang diperhatikan separa, kami mencipta set data dengan data yang diperlukan untuk menggunakan metrik. Kami melakukan ramalan pada data ujian dan mencipta DataFrame dengan nilai sebenar dan ramalan, termasuk lajur untuk perbezaan dan peratusan.

Métricas para algorítimos de regressão

Kami dapat melihat bahawa berhubung dengan jumlah sebenar kadar dolar berbanding kadar yang diramalkan oleh model kami:

  • Kami mempunyai jumlah perbezaan R$578.00
  • Ini mewakili 0.36% perbezaan antara ramalan x Sebenar (tidak dianggap nilai mutlak)
  • Dari segi purata ralat (ME) kami mempunyai nilai yang rendah, purata R$0.009058
  • Untuk purata mutlak, nilai ini meningkat sedikit kerana kami mempunyai nilai negatif dalam set data kami

Saya menegaskan bahawa di sini kami melakukan pengiraan secara manual untuk tujuan pengajaran. Walau bagaimanapun, adalah disyorkan untuk menggunakan fungsi metrik daripada pakej Sklearn kerana prestasi yang lebih baik dan kemungkinan ralat yang rendah dalam pengiraan.

Kod lengkap tersedia di GitHub saya: github.com/AirtonLira/artigo_metricasregressao


Pengarang: Airton Lira Junior

LinkedIn: linkedin.com/in/airton-lira-junior-6b81a661/

Atas ialah kandungan terperinci Metrik untuk algoritma regresi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan