Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 1062|Jawab: 0

[Kiat] Percepat pustaka pembelajaran mesin scikit-learn dengan sklearnex

[Salin tautan]
Dipaparkan pada 2025-4-27 09:59:40 | | | |
Belajar Scikit

SKTet, nama lengkap scikit-learn, adalah pustaka pembelajaran mesin dalam Python, dibangun berdasarkan paket ilmu data seperti numpy, scipy, dan matplotlib, yang mencakup hampir semua aspek pembelajaran mesin seperti data sampel, prapemrosesan data, verifikasi model, pemilihan fitur, klasifikasi, regresi, pengelompokan, dan pengurangan dimensi. Tidak seperti stok pembelajaran mendalam yang tersedia di berbagai kerangka kerja seperti pytorch dan TensorFlow, sklearn adalah perpustakaan pilihan untuk pembelajaran mesin tradisional dalam python, dan tidak ada pesaing lain.

Situs resmi:Login hyperlink terlihat.
Sumber:Login hyperlink terlihat.

Ekstensi untuk Scikit-learn

Sebagai kerangka kerja pembelajaran mesin klasik, scikit-learn telah berkembang selama lebih dari sepuluh tahun sejak kelahirannya, tetapi kecepatan komputasinya telah banyak dikritik oleh pengguna. Ekstensi untuk Scikit-learn adalah akselerator perangkat lunak AI gratis yang dirancang untuk membantu AndaKode Scikit-learn yang ada memberikan kecepatan 10 hingga 100x lebih cepat。 Akselerasi perangkat lunak dicapai melalui instruksi vektor, pengoptimalan memori untuk perangkat keras AI, threading, dan pengoptimalan.

Dengan ekstensi Scikit-learn, Anda dapat:

  • Pelatihan dan inferensi 100 kali lebih cepat dengan presisi matematis yang sama
  • Manfaatkan peningkatan performa di berbagai konfigurasi perangkat keras CPU, termasuk konfigurasi GPU dan multi-GPU
  • Integrasikan ekstensi ke dalam aplikasi Scikit-learn Anda yang ada tanpa memodifikasi kode
  • Terus menggunakan API scikit-learn sumber terbuka
  • Gunakan beberapa baris kode atau aktifkan dan nonaktifkan ekstensi di baris perintah


Sumber:Login hyperlink terlihat.
Dokumentasi:Login hyperlink terlihat.



Ujian

Pertama, gunakan conda untuk menyiapkan lingkungan dan menginstal paket yang diperlukan dengan perintah berikut:

Kode pengujian Python baru adalah sebagai berikut:

Kode yang dipercepat adalah sebagai berikut:

Interpretasi kode sumber:

1.X, y = make_regression(n_samples=2000000, n_features=100, noise=1, random_state=42)
make_regression adalah fungsi dalam scikit-learn yang menghasilkan kumpulan data untuk masalah regresi linier.
n_samples=2000000: Menentukan jumlah sampel dalam himpunan data yang dihasilkan sebesar 2.000.000.
n_features=100: Menentukan bahwa setiap sampel memiliki 100 fitur (yaitu, variabel input).
noise=1: Standar deviasi penambahan noise pada nilai target y adalah 1. Ini berarti bahwa nilai target akan memiliki beberapa gangguan acak.
random_state=42: Atur seed acak ke 42, memastikan bahwa data yang dihasilkan sama setiap kali kode dijalankan (repeatability).
Hasil: X adalah susunan bentuk NumPy (2000000, 100) yang mewakili 2.000.000 sampel dengan masing-masing 100 fitur; y adalah array satu dimensi dengan panjang 2.000.000 yang mewakili nilai target.

2. X_train, _, y_train, _ = train_test_split(X, y, test_size=0,33, random_state=42)
train_test_split adalah fungsi dalam scikit-learn yang membagi himpunan data menjadi set pelatihan dan pengujian.
test_size=0,33: Menunjukkan bahwa 33% himpunan data dialokasikan ke set pengujian dan 67% sisanya dialokasikan ke set pelatihan.
random_state=42: Atur seed acak ke 42, pastikan bahwa hasil pemisahan data sama setiap kali Anda menjalankan kode.
: Gunakan garis bawah untuk mengabaikan nilai yang ditampilkan. Di sini kita hanya peduli dengan bagian set pelatihan (X_train dan y_train) dan mengabaikan bagian set uji.
Hasil:
X_train: Matriks fitur set pelatihan, berbentuk seperti (1340000, 100) (sekitar 67% data).
y_train: Nilai target set pelatihan dengan panjang 1.340.000.

3. model = LinearRegression()
LinearRegression adalah kelas dalam scikit-learn yang mengimplementasikan model regresi linier.
Baris kode ini membuat instans model regresi linier dan menetapkan nilai ke model variabel.
Secara default, LinearRegression tidak mengatur data (yaitu, tidak ada regularisasi L1 atau L2).

4. model.fit (X_train, y_train)
Fit adalah metode dalam model scikit-learn yang digunakan untuk melatih model.
Di sini metode fit dipanggil agar sesuai dengan model regresi linier menggunakan X_train data set pelatihan dan y_train nilai target.
Model ini menghitung sekumpulan bobot (koefisien) dan intersep yang optimal untuk meminimalkan kesalahan antara nilai yang diprediksi dan sebenarnya (biasanya kuadrat terkecil).
Setelah pelatihan selesai, parameter model disimpan dalam model.coef_ (bobot fitur) dan model.intercept_ (intersepsi).

Waktu eksekusi adalah sebagai berikut:



Anda dapat melihat bahwa efeknya sangat jelas baik tanpa akselerasi maupun setelah akselerasi,Dibutuhkan sekitar 16 detik tanpa akselerasi dan hanya 0,1 detik setelah akselerasi!!!!




Mantan:.NET/C# menggunakan Tesseract untuk OCR pengenalan teks untuk gambar
Depan:.NET/C# menggunakan HtmlAgilityPack untuk menghapus semua tag HTML
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com