Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 1062|Válasz: 0

[Tippek] Gyorsítsa fel a scikit-learn gépi tanulási könyvtárat a sklearnex-szel

[Linket másol]
Közzétéve: 2025-4-27 09:59:40 | | | |
Scikit-learn

Az SKTet, teljes neve scikit-learn, egy gépi tanulási könyvtár Python nyelven, amely adat-tudományi csomagok, mint a numpy, scip és matplotlib alapján épül, és szinte minden gépi tanulási területet lefed, mint például mintaadatok, adatfeldolgozás, modellellenőrzés, jellemzők kiválasztása, osztályozás, regresszió, klaszterezés és dimenziócsökkentés. Ellentétben a különböző keretrendszerekben, mint a pytorch és a TensorFlow mélytanulási készleteivel, a sklearn a hagyományos gépi tanulás számára a Python által preferált könyvtár, és nincsenek más versenytársak.

Hivatalos weboldal:A hiperlink bejelentkezés látható.
Forrás:A hiperlink bejelentkezés látható.

Kiterjesztés a Scikit-learn számára

A scikit-learn klasszikus gépi tanulási keretrendszerként több mint tíz éve fejlődik születése óta, de számítási sebességét széles körben bírálták a felhasználók. A Scikit-learn kiterjesztése egy ingyenes AI szoftvergyorsító, amely segít nekedA meglévő Scikit-learn kód 10-100-szor gyorsabb gyorsítást biztosít。 A szoftvergyorsítást vektorutasítások, memóriaoptimalizálás AI hardverhez, szálakozás és optimalizálás révén érjük el.

A Scikit-learn kiterjesztéssel a következőket teheted:

  • A képzés és következtetés százszor gyorsabb ugyanilyen matematikai pontossággal
  • Profitáljon a teljesítmény javulásából különböző CPU hardverkonfigurációkban, beleértve a GPU és a többGPU konfigurációkat is
  • Integrálj bővítményeket a meglévő Scikit-learn alkalmazásaidba kód módosítása nélkül
  • Folytasd a nyílt forráskódú scikit-learn API használatát
  • Használj néhány kódsort, vagy engedélyezd és tilts ki a kiterjesztéseket a parancssorban


Forrás:A hiperlink bejelentkezés látható.
Dokumentáció:A hiperlink bejelentkezés látható.



Teszt

Először a conda segítségével készítse elő a környezetet, és telepítse a szükséges csomagokat a következő parancsmal:

Az új Python tesztkód a következő:

A gyorsított kód a következő:

Forráskód értelmezése:

1.X, y = make_regression(n_samples=2000000, n_features=100, zaj=1, random_state=42)
make_regression egy függvény a scikit-learnben, amely lineáris regressziós problémákhoz generál adathalmazt.
n_samples=2000000: Megadja a 2 000 000 generált adathalmazban lévő mintaszámot.
n_features=100: Megadja, hogy minden mintavétel 100 jellemzőt tartalmaz (azaz bemeneti változókat).
zaj=1: A célérték y hang hozzáadásának szabványos szórája 1. Ez azt jelenti, hogy a célértéknek lehetnek véletlenszerű zavarásai.
random_state=42: Állítsuk be a véletlenszerű magot 42-re, biztosítva, hogy a generált adatok minden alkalommal ugyanazok legyenek, amikor a kódot futtatják (ismételhetőség).
Eredmények: X egy NumPy forma tömbje (2000000, 100), amely 2 000 000 mintát képvisel, mindegyik 100 jellemzővel; y egy egydimenziós, 2 000 000 hosszú tömb, amely a célértéket képviseli.

2. X_train, _, y_train, _ = train_test_split(X, y, test_size=0,33, random_state=42)
train_test_split egy függvény a scikit-learnben, amely az adathalmazt betanítási és teszthalmazokra osztja.
test_size=0,33: Azt jelzi, hogy az adathalmaz 33%-a a teszthalmazhoz van rendelve, a fennmaradó 67%-ot pedig a képzési halmazhoz.
random_state=42: Állítsd be a véletlenszerű magot 42-re, hogy az adatfelosztás eredménye minden alkalommal ugyanaz legyen, amikor futtatod a kódot.
: Használj aláhúzót a visszatérési érték figyelmen kívül hagyására. Itt csak a képzési készlet (X_train és y_train) érdekel, és figyelmen kívül hagyjuk a tesztkészletet.
Eredmény:
X_train: A képzési készlet jellemzőmátrixa (1340000, 100) alakú, (az adatok kb. 67%-a).
y_train: A kiképzés célértéke 1 340 000 hosszúságú.

3. model = LinearRegression()
A LinearRegression egy scikit-learn osztály, amely lineáris regressziós modelleket valósít meg.
Ez a kódsor lineáris regressziós modell példányát hozza létre, és értékeket rendel a változó modellhez.
Alapértelmezés szerint a LinearRegression nem regularizál adatokat (azaz nincs L1 vagy L2 regularizáció).

4. model.fit(X_train, y_train)
Az illeszkedés egy módszer a scikit-learn modellben, amelyet a modell betanítására használnak.
Itt a fit módszert hívják a lineáris regressziós modellhez a X_train tanítóhalmaz adatai és a y_train célérték alapján.
A modell optimális súlyhalmazt (együtthatókat) és metszeteket számol ki, hogy minimalizálja a hibát a jósolt és az igaz értékek (általában legkisebb négyzetek) között.
A képzés befejezése után a modell paraméterei model.coef_ (a jellemző súlya) és model.intercept_ (elfogás) kategóriákban tárolódnak.

A végrehajtási idő a következő:



Látható, hogy a hatás nagyon nyilvánvaló gyorsulás nélkül és gyorsulás után is,Körülbelül 16 másodperc gyorsítás nélkül, és csak 0,1 másodperc gyorsítás után!!!!




Előző:.NET/C# Tesseract-ot használ OCR-re szövegfelismerés képekhez
Következő:A .NET/C# a HtmlAgilityPack-et használja az összes HTML címkén eltávolítására
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com