


Cara menggunakan perpustakaan pembelajaran mesin belajar scikit dalam Python.
Kata Pengantar
scikit-learn ialah salah satu perpustakaan pembelajaran mesin paling popular dalam Python Ia menyediakan pelbagai algoritma dan alatan pembelajaran mesin, termasuk pengelasan, regresi, pengelompokan, pengurangan dimensi, dsb.
Kelebihan scikit-learn ialah:
Mudah digunakan: Antara muka scikit-learn adalah ringkas dan mudah difahami, membolehkan pengguna memulakan dengan mudah pembelajaran mesin. API Bersepadu: API scikit-learn sangat bersatu, dan kaedah menggunakan pelbagai algoritma pada asasnya adalah sama, menjadikan pembelajaran dan penggunaan lebih mudah.
Sebilangan besar algoritma pembelajaran mesin telah dilaksanakan: scikit-learn melaksanakan pelbagai algoritma pembelajaran mesin klasik dan menyediakan pelbagai alatan dan fungsi, menjadikan penyahpepijatan dan pengoptimuman algoritma lebih mudah .
Sumber terbuka dan percuma: scikit-learn adalah sumber terbuka sepenuhnya dan percuma, dan sesiapa sahaja boleh menggunakan dan mengubah suai kodnya.
Cekap dan stabil: scikit-learn melaksanakan pelbagai algoritma pembelajaran mesin yang cekap, boleh mengendalikan set data berskala besar dan berprestasi baik dari segi kestabilan dan kebolehpercayaan. scikit-learn sangat sesuai untuk pembelajaran mesin peringkat permulaan kerana API sangat bersatu dan modelnya agak mudah. Cadangan saya di sini adalah untuk mengkaji bersama dengan dokumentasi rasmi, yang bukan sahaja memperkenalkan skop penggunaan setiap model tetapi juga menyediakan sampel kod.
Model Regresi Linear-Regression Linear
Model Regresi Linear ialah model berdasarkan regresi linear dan sesuai untuk menyelesaikan masalah ramalan pembolehubah berterusan. Idea asas model ini adalah untuk mewujudkan persamaan linear, memodelkan hubungan antara pembolehubah bebas dan pembolehubah bersandar sebagai garis lurus, dan menggunakan data latihan untuk menyesuaikan garis lurus untuk mencari pekali persamaan linear, dan kemudian gunakan persamaan ini untuk menguji data untuk ramalan.
Model LinearRegression sesuai untuk masalah di mana terdapat hubungan linear antara pembolehubah bebas dan pembolehubah bersandar, seperti ramalan harga perumahan, ramalan jualan, ramalan tingkah laku pengguna, dll. Sudah tentu, apabila hubungan antara pembolehubah bebas dan pembolehubah bersandar adalah tidak linear, prestasi model LinearRegression akan menjadi lemah. Pada masa ini, regresi polinomial, regresi rabung, regresi Lasso dan kaedah lain boleh digunakan untuk menyelesaikan masalah.
Sediakan set data
Selepas mengetepikan pengaruh faktor lain, terdapat hubungan linear tertentu antara masa pembelajaran dan prestasi pembelajaran Sudah tentu, masa pembelajaran di sini merujuk kepada pembelajaran yang berkesan masa, prestasi Apabila masa belajar meningkat, gred juga akan meningkat. Jadi kami menyediakan set data masa belajar dan gred. Beberapa data dalam set data adalah seperti berikut:
Masa pembelajaran, markah
0.5,15
0.75,23
1.0,14
1.25,42
1.5,21
1.75,28
1.75,35
2.0,51
2.25,61
2.5,49
untuk menentukan jumlah ciri Matlamat
Antara masa belajar dan gred, masa belajar ialah ciri, iaitu pembolehubah bebas ialah label, iaitu pembolehubah bersandar, jadi kita perlu mengekstrak ciri dan label daripada set data masa belajar dan gred yang disediakan.
Bahagikan set latihan dan set ujianimport pandas as pd import numpy as np from sklearn.metrics import r2_score, mean_squared_error from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression # 读取学习时间和成绩CSV数据文件 data = pd.read_csv('data/study_time_score.csv') # 提取数据特征学习时间 X = data['学习时间'] # 提取数据目标(标签)分数 Y = data['分数']
Selepas data ciri dan label disediakan, gunakan LinearRegression scikit-learn untuk latihan dan bahagikan set data kepada set latihan dan set ujian.
Pilih model dan muatkan data""" 将特征数据和目标数据划分为测试集和训练集 通过test_size=0.25将百分之二十五的数据划分为测试集 """ X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.25, random_state=0) x_train = X_train.values.reshape(-1, 1) model.fit(x_train, Y_train)
Selepas menyediakan set ujian dan set latihan, kita boleh memilih model yang sesuai untuk muat set latihan supaya kita boleh meramal Cari matlamat sepadan dengan ciri lain
Dapatkan parameter model# 选择模型,选择模型为LinearRegression model = LinearRegression() # Scikit-learn中,机器学习模型的输入必须是一个二维数组。我们需要将一维数组转换为二维数组,才能在模型中使用。 x_train = X_train.values.reshape(-1, 1) # 进行拟合 model.fit(x_train, Y_train)
Memandangkan set data hanya mengandungi dua masa dan gred pembelajaran, ia adalah model linear yang sangat mudah, dan formula matematik di belakangnya ialah y=ax+b, di mana pembolehubah bersandar y ialah gred, dan pembolehubah tidak bersandar x ialah masa belajar.
Backtest""" 输出模型关键参数 Intercept: 截距 即b Coefficients: 变量权重 即a """ print('Intercept:', model.intercept_) print('Coefficients:', model.coef_)
Model pemasangan di atas hanya menggunakan data set ujian Seterusnya, kita perlu menggunakan data set ujian untuk menjalankan ujian belakang pada pemasangan model set latihan untuk mensimulasikan Selepas menggabungkan, kita boleh meramalkan set ujian ciri Dengan membandingkan hasil ramalan sasaran yang diperolehi dengan nilai sasaran sebenar, kita boleh memperoleh tahap kesesuaian model.
# 转换为n行1列的二维数组 x_test = X_test.values.reshape(-1, 1) # 在测试集上进行预测并计算评分 Y_pred = model.predict(x_test) # 打印测试特征数据 print(x_test) # 打印特征数据对应的预测结果 print(Y_pred) # 将预测结果与原特征数据对应的实际目标值进行比较,从而获得模型拟合度 # R2 (R-squared):模型拟合优度,取值范围在0~1之间,越接近1表示模型越好的拟合了数据。 print("R2:", r2_score(Y_test, Y_pred))
- Keputusan jalankan program
- Mengikut kod di atas, kita perlu menentukan tahap kesesuaian model LinearRegression, iaitu , sama ada data ini sesuai Adalah tidak sesuai untuk menggunakan model linear untuk pemasangan Hasil larian program adalah seperti berikut:
[. 47.43726068 33.05457106 49.83437561 63.41802692 41.84399249 37.84880 093 63.41802692 42.6430308 21.86803469 69.81033341 7 77.80071653 28.26034119 13.87765157 61.81995029 90.58532953 77.80071653 3 6.25072431 >R2: 0.8935675710322939
Atas ialah kandungan terperinci Cara menggunakan perpustakaan pembelajaran mesin belajar scikit dalam Python.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.

Docker menggunakan ciri -ciri kernel Linux untuk menyediakan persekitaran berjalan yang cekap dan terpencil. Prinsip kerjanya adalah seperti berikut: 1. Cermin digunakan sebagai templat baca sahaja, yang mengandungi semua yang anda perlukan untuk menjalankan aplikasi; 2. Sistem Fail Kesatuan (Unionfs) menyusun pelbagai sistem fail, hanya menyimpan perbezaan, menjimatkan ruang dan mempercepatkan; 3. Daemon menguruskan cermin dan bekas, dan pelanggan menggunakannya untuk interaksi; 4. Ruang nama dan cgroups melaksanakan pengasingan kontena dan batasan sumber; 5. Pelbagai mod rangkaian menyokong interkoneksi kontena. Hanya dengan memahami konsep -konsep teras ini, anda boleh menggunakan Docker dengan lebih baik.

Kod VS boleh digunakan untuk menulis Python dan menyediakan banyak ciri yang menjadikannya alat yang ideal untuk membangunkan aplikasi python. Ia membolehkan pengguna untuk: memasang sambungan python untuk mendapatkan fungsi seperti penyempurnaan kod, penonjolan sintaks, dan debugging. Gunakan debugger untuk mengesan kod langkah demi langkah, cari dan selesaikan kesilapan. Mengintegrasikan Git untuk Kawalan Versi. Gunakan alat pemformatan kod untuk mengekalkan konsistensi kod. Gunakan alat linting untuk melihat masalah yang berpotensi lebih awal.

Dalam kod VS, anda boleh menjalankan program di terminal melalui langkah -langkah berikut: Sediakan kod dan buka terminal bersepadu untuk memastikan bahawa direktori kod selaras dengan direktori kerja terminal. Pilih arahan Run mengikut bahasa pengaturcaraan (seperti python python your_file_name.py) untuk memeriksa sama ada ia berjalan dengan jayanya dan menyelesaikan kesilapan. Gunakan debugger untuk meningkatkan kecekapan debug.

Kod VS boleh dijalankan pada Windows 8, tetapi pengalaman mungkin tidak hebat. Mula -mula pastikan sistem telah dikemas kini ke patch terkini, kemudian muat turun pakej pemasangan kod VS yang sepadan dengan seni bina sistem dan pasangnya seperti yang diminta. Selepas pemasangan, sedar bahawa beberapa sambungan mungkin tidak sesuai dengan Windows 8 dan perlu mencari sambungan alternatif atau menggunakan sistem Windows yang lebih baru dalam mesin maya. Pasang sambungan yang diperlukan untuk memeriksa sama ada ia berfungsi dengan betul. Walaupun kod VS boleh dilaksanakan pada Windows 8, disyorkan untuk menaik taraf ke sistem Windows yang lebih baru untuk pengalaman dan keselamatan pembangunan yang lebih baik.

Sambungan kod VS menimbulkan risiko yang berniat jahat, seperti menyembunyikan kod jahat, mengeksploitasi kelemahan, dan melancap sebagai sambungan yang sah. Kaedah untuk mengenal pasti sambungan yang berniat jahat termasuk: memeriksa penerbit, membaca komen, memeriksa kod, dan memasang dengan berhati -hati. Langkah -langkah keselamatan juga termasuk: kesedaran keselamatan, tabiat yang baik, kemas kini tetap dan perisian antivirus.

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.
