Share via


Gépi tanulás az Apache Sparkkal

Az Azure Synapse Analyticsben futó Apache Spark lehetővé teszi a big data-alapú gépi tanulást, így értékes megállapításokat kaphat nagy mennyiségű strukturált, strukturálatlan és gyorsan mozgó adatból.

Ez a szakasz áttekintést és oktatóanyagokat tartalmaz a gépi tanulási munkafolyamatokhoz, beleértve a feltáró adatelemzést, a funkciófejlesztést, a modell betanítását, a modell pontozását és az üzembe helyezést.

Synapse-futtatókörnyezet

A Synapse Runtime egy adatelemzésre és gépi tanulásra optimalizált válogatott környezet. A Synapse Runtime számos népszerű nyílt forráskódú kódtárat és buildet kínál alapértelmezés szerint az Azure Machine Tanulás SDK-ban. A Synapse Runtime számos külső kódtárat is tartalmaz, beleértve a PyTorchot, a Scikit-Learnt, az XGBoostot és még sok mást.

Az elérhető kódtárakról és a kapcsolódó verziókról a közzétett Azure Synapse Analytics-futtatókörnyezet megtekintésével tudhat meg többet.

Feltáró adatelemzés

Ha apache Sparkot használ az Azure Synapse Analyticsben, különböző beépített lehetőségek állnak rendelkezésre az adatok vizualizációjához, beleértve a Synapse-jegyzetfüzetdiagramok beállításait, a népszerű nyílt forráskódú kódtárakhoz, például a Seabornhoz és a Matplotlibhoz való hozzáférést, valamint a Synapse SQL és a Power BI integrációját.

Az adatvizualizációs és adatelemzési lehetőségekről az adatok Azure Synapse-jegyzetfüzetek használatával történő vizualizációjáról szóló cikkből tudhat meg többet.

Jellemzőkiemelés

Alapértelmezés szerint a Synapse Runtime olyan kódtárakat tartalmaz, amelyeket gyakran használnak funkciófejlesztéshez. Nagy adathalmazok esetén a Spark SQL, az MLlib és a Koalas funkciófejlesztéshez használható. Kisebb adathalmazok esetén a külső kódtárak, például a Numpy, a Pandas és a Scikit-learn is hasznos módszereket nyújtanak ezekhez a forgatókönyvekhez.

Modellek betanítása

Az Azure Synapse Analyticsben az Azure Sparkot használó gépi tanulási modellek betanítására több lehetőség is van: Apache Spark MLlib, Azure Machine Tanulás és más nyílt forráskódú kódtárak.

A gépi tanulási képességekről az Azure Synapse Analytics modelljeinek betanítása című cikkből tudhat meg többet.

SparkML és MLlib

A Spark memóriabeli elosztott számítási képességei jó választássá teszik a gépi tanulásban és a gráfszámításban használt iteratív algoritmusok számára. spark.ml Magas szintű API-k egységes készletét biztosítja, amelyek segítenek a felhasználóknak gépi tanulási folyamatok létrehozásában és finomhangolásában. További információkért spark.mllátogasson el az Apache Spark ML programozási útmutatójához.

Azure Machine Tanulás automatizált gépi tanulás (elavult)

Az Azure Machine Tanulás automatizált gépi tanulás (automatizált gépi tanulás) segít automatizálni a gépi tanulási modellek fejlesztésének folyamatát. Lehetővé teszi az adattudósok, elemzők és fejlesztők számára, hogy nagy léptékű, hatékonyságú és termelékenységű ML-modelleket építsenek, miközben fenntartják a modell minőségét. Az Azure Machine Tanulás automatizált ML SDK futtatásához szükséges összetevők közvetlenül a Synapse Runtime-ba épülnek.

Figyelmeztetés

  • 2023. szeptember 29-én az Azure Synapse megszünteti a Spark 2.4-futtatókörnyezetek hivatalos támogatását. 2023. szeptember 29-én nem foglalkozunk a Spark 2.4-hez kapcsolódó támogatási jegyekkel. A Spark 2.4 hiba- vagy biztonsági javításaihoz nem lesz kiadási folyamat. A Spark 2.4-et a támogatási leépítési dátum után saját felelősségre hajtjuk végre. A potenciális biztonsági és működési problémák miatt határozottan elriasztjuk a folyamatos használattól.
  • Az Apache Spark 2.4 elavulásának részeként értesíteni szeretnénk, hogy az Azure Synapse Analytics autoML-jének elavultsága is megszűnik. Ez magában foglalja az alacsony kódfelületet és az AutoML-próbaverziók kódon keresztüli létrehozásához használt API-kat is.
  • Vegye figyelembe, hogy az AutoML funkció kizárólag a Spark 2.4-es futtatókörnyezeten keresztül volt elérhető.
  • AzOknak az ügyfeleknek, akik továbbra is szeretnék kihasználni az AutoML képességeit, javasoljuk, hogy mentse az adatokat az Azure Data Lake Storage Gen2 (ADLSg2) fiókjába. Innen zökkenőmentesen elérheti az AutoML-felületet az Azure Machine Tanulás (AzureML) használatával. A kerülő megoldással kapcsolatos további információk itt érhetők el.

Nyílt forráskódú kódtárak

Az Azure Synapse Analytics minden Apache Spark-készlete előre betöltött és népszerű gépi tanulási kódtárakkal rendelkezik. A gépi tanulási kódtárak közül néhány alapértelmezés szerint a következőket tartalmazza:

  • A Scikit-learn a klasszikus ML-algoritmusok egyik legnépszerűbb egycsomópontos gépi tanulási kódtára. A Scikit-learn a felügyelt és felügyelet nélküli tanulási algoritmusok többségét támogatja, és adatbányászathoz és adatelemzéshez is használható.

  • Az XGBoost egy népszerű gépi tanulási kódtár, amely optimalizált algoritmusokat tartalmaz döntési fák és véletlenszerű erdők betanításához.

  • A PyTorch & TensorFlow hatékony Python-mélytanulási kódtárak. Az Azure Synapse AnalyticsBen található Apache Spark-készletben ezek a kódtárak segítségével egygépes modelleket hozhat létre a készlet végrehajtóinak számának nullára állításával. Bár az Apache Spark ebben a konfigurációban nem működik, egyszerű és költséghatékony módszer az egygépes modellek létrehozására.

Modellfejlesztés nyomon követése

Az MLFlow egy nyílt forráskódú kódtár a gépi tanulási kísérletek életciklusának kezeléséhez. Az MLFlow Tracking az MLflow egyik összetevője, amely naplózza és nyomon követi a betanítási futtatási metrikákat és a modellösszetevőket. Ha többet szeretne megtudni arról, hogyan használhatja az MLFlow-nyomkövetést az Azure Synapse Analytics és az Azure Machine Tanulás, tekintse meg ezt az oktatóanyagot az MLFlow használatáról.

Modell pontozása

A modell pontozása vagy következtetése az a fázis, amelyben a modell előrejelzések készítésére szolgál. A SparkML-sel vagy MLLib-vel végzett modellpontozáshoz a natív Spark-metódusokkal közvetlenül a Spark DataFrame-en végezhet következtetést. Más nyílt forráskódú kódtárakhoz és modelltípusokhoz létrehozhat egy Spark UDF-et is, amely nagy adathalmazokra vonatkozó következtetést skáláz. Kisebb adathalmazok esetén használhatja a kódtár által biztosított natív modellkövetkeztetési módszereket is.

Modellek regisztrálása és kiszolgálása

A modell regisztrálása lehetővé teszi a munkaterületen lévő modellek metaadatainak tárolását, verzióját és nyomon követését. Miután végzett a modell betanításával, regisztrálhatja a modellt az Azure Machine Tanulás modellregisztrációs adatbázisában. A regisztrációt követően az ONNX-modellek a dedikált SQL-készletekben tárolt adatok bővítésére is használhatók.

Következő lépések

Az Azure Synapse Analytics gépi tanulásának megkezdéséhez tekintse meg az alábbi oktatóanyagokat: