Adatok megosztása munkaterületek között regisztrációs adatbázisokkal (előzetes verzió)
Az Azure Machine Learning beállításjegyzéke lehetővé teszi a szervezeten belüli munkaterületek közötti együttműködést. A regisztrációs adatbázisok használatával modelleket, összetevőket, környezeteket és adatokat oszthat meg. Az adatok adatbázisokkal való megosztása jelenleg előzetes verziójú funkció. Ebben a cikkben az alábbiakkal ismerkedhet meg:
- Hozzon létre egy adategységet a beállításjegyzékben.
- Meglévő adategység megosztása a munkaterületről a beállításjegyzékbe
- Használja a beállításjegyzékből származó adategységet egy modell betanítási feladatának bemeneteként egy munkaterületen.
Fontos
Ez a funkció jelenleg nyilvános előzetes verzióban érhető el. Ez az előzetes verzió szolgáltatásszint-szerződés nélkül érhető el, éles számítási feladatokhoz nem ajánljuk. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik.
További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Az Azure Machine Learning-beállításjegyzékkel végzett adatmegosztás által kezelt fő forgatókönyv
Előfordulhat, hogy egy központi helyen több csapat, projekt vagy munkaterület között is meg szeretné osztani az adatokat. Ezek az adatok nem rendelkeznek bizalmas hozzáférés-vezérléssel, és széles körben használhatók a szervezetben.
Példák:
- A csapat meg szeretne osztani egy olyan nyilvános adathalmazt, amely előre feldolgozva van, és készen áll a kísérletekben való használatra.
- A szervezet egy projekthez egy adott adathalmazt szerzett be egy külső gyártótól, és elérhetővé szeretné tenni azokat a projekten dolgozó összes csapat számára.
- Egy csapat meg szeretné osztani az adategységeket a különböző régiókban található munkaterületeken.
Ezekben a forgatókönyvekben létrehozhat egy adategységet egy beállításjegyzékben, vagy megoszthatja egy meglévő adategységet egy munkaterületről egy beállításjegyzékbe. Ez az adategység ezután több munkaterületen is használható.
Az adatmegosztás által az Azure Machine Learning regisztrációs adatbázisával nem kezelt forgatókönyvek
Bizalmas adatok megosztása, amelyek részletes hozzáférés-vezérlést igényelnek. A beállításjegyzékben nem hozható létre adategység, amelyet megoszthat a felhasználók/munkaterületek egy kis részhalmazával, miközben a beállításjegyzéket a szervezet számos más felhasználója is elérheti.
A meglévő tárolóban elérhető olyan adatok megosztása, amelyeket nem szabad másolni, vagy amelyek túl nagyok vagy túl költségesek a másoláshoz. Amikor adategységek jönnek létre egy beállításjegyzékben, a rendszer betölti az adatok egy példányát a beállításjegyzék-tárolóba, hogy replikálható legyen.
Az Azure Machine Learning beállításjegyzéke által támogatott adategység-típusok
Tipp
Tekintse meg a következő canonical forgatókönyveket , amikor eldönti, hogy használni uri_file
szeretné-e a , uri_folder
vagy mltable
a forgatókönyvet.
Három adategység-típust hozhat létre:
Típus | V2 API | Canonical forgatókönyv |
---|---|---|
Fájl: Hivatkozás egyetlen fájlra | uri_file |
Egyetlen fájl olvasása/írása – a fájl bármilyen formátumú lehet. |
Mappa: Egyetlen mappa hivatkozása | uri_folder |
Parquet-/CSV-fájlokat kell olvasnia/írnia a Pandasba/Sparkba. Mély tanulás egy könyvtárban található képekkel, szöveggel, hanggal és videofájlokkal. |
Táblázat: Adattábla hivatkozása | mltable |
Összetett sémája gyakori változásoknak van kitéve, vagy nagy táblázatos adatok egy részhalmazára van szüksége. |
Az Azure Machine Learning beállításjegyzéke által támogatott útvonalak
Adategység létrehozásakor meg kell adnia egy elérésiút-paramétert , amely az adathelyre mutat. Jelenleg az egyetlen támogatott elérési út a helyi számítógépen található helyekre vonatkozik.
Tipp
A "Helyi" a használt számítógép helyi tárolója. Ha például laptopot használ, a helyi meghajtót. Azure Machine Learning számítási példány esetén a számítási példány "helyi" meghajtója.
Előfeltételek
A cikkben ismertetett lépések végrehajtása előtt győződjön meg arról, hogy rendelkezik az alábbi előfeltételekkel:
Az Azure Machine Learning-nyilvántartások és -adatfogalmak ismerete az Azure Machine Learningben.
Egy Azure Machine Learning-beállításjegyzék az adatok megosztásához. Beállításjegyzék létrehozásához lásd: Beállításjegyzék létrehozása.
Egy Azure Machine Learning-munkaterület. Ha nincs ilyenje, a munkaterület erőforrásainak létrehozása című rövid útmutató lépéseit követve hozzon létre egyet.
Fontos
A munkaterületet létrehozó Azure-régiónak (helynek) szerepelnie kell az Azure Machine Learning beállításjegyzékében támogatott régiók listájában.
A Modellek, összetevők és környezetek megosztása című cikkből létrehozott környezet és összetevő.
Az Azure CLI és a
ml
bővítmény vagy az Azure Machine Learning Python SDK v2:Az Azure CLI és a bővítmény telepítéséhez lásd a parancssori felület (v2) telepítését, beállítását és használatát ismertető cikket.
Fontos
A jelen cikkben szereplő CLI-példák feltételezik, hogy a Bash (vagy kompatibilis) rendszerhéjat használja. Például linuxos rendszerből vagy Linuxhoz készült Windows-alrendszerből.
A példák azt is feltételezik, hogy az Azure CLI alapértelmezett értékeit konfigurálta, így nem kell megadnia az előfizetés, a munkaterület, az erőforráscsoport vagy a hely paramétereit. Az alapértelmezett beállítások megadásához használja az alábbi parancsokat. Cserélje le a következő paramétereket a konfiguráció értékeire:
- Cserélje le a
<subscription>
értékét a saját Azure-előfizetése azonosítójára. - Cserélje le
<workspace>
a elemet az Azure Machine Learning-munkaterület nevére. - Cserélje le a elemet
<resource-group>
a munkaterületet tartalmazó Azure-erőforráscsoportra. - Cserélje le a elemet
<location>
a munkaterületet tartalmazó Azure-régióra.
az account set --subscription <subscription> az configure --defaults workspace=<workspace> group=<resource-group> location=<location>
A parancs használatával
az configure -l
megtekintheti az aktuális alapértelmezett beállításokat.- Cserélje le a
Példák adattárának klónozása
A cikkben szereplő kódpéldák a nyc_taxi_data_regression
példák adattárában található mintán alapulnak. Ha ezeket a fájlokat a fejlesztési környezetben szeretné használni, az alábbi parancsokkal klónozza az adattárat, és módosítsa a könyvtárakat a példára:
git clone https://github.com/Azure/azureml-examples
cd azureml-examples
A CLI-példában módosítsa a könyvtárakat cli/jobs/pipelines-with-components/nyc_taxi_data_regression
a példaadattár helyi klónjára.
cd cli/jobs/pipelines-with-components/nyc_taxi_data_regression
SDK-kapcsolat létrehozása
Tipp
Erre a lépésre csak a Python SDK használatakor van szükség.
Hozzon létre egy ügyfélkapcsolatot az Azure Machine Learning-munkaterülethez és a beállításjegyzékhez. Az alábbi példában cserélje le a <...>
helyőrző értékeket a konfigurációnak megfelelő értékekre. Például az Azure-előfizetés azonosítóját, a munkaterület nevét, a beállításjegyzék nevét stb.:
ml_client_workspace = MLClient( credential=credential,
subscription_id = "<workspace-subscription>",
resource_group_name = "<workspace-resource-group",
workspace_name = "<workspace-name>")
print(ml_client_workspace)
ml_client_registry = MLClient(credential=credential,
registry_name="<REGISTRY_NAME>",
registry_location="<REGISTRY_REGION>")
print(ml_client_registry)
Adatok létrehozása a beállításjegyzékben
Az ebben a lépésben létrehozott adategységet a cikk későbbi részében használjuk betanítási feladat elküldésekor.
Tipp
Ugyanez a CLI-parancs az ml data create
használható adatok munkaterületen vagy beállításjegyzékben való létrehozásához. A parancs paranccsal való --workspace-name
futtatása létrehozza az adatokat egy munkaterületen, míg a parancs futtatásával --registry-name
létrehozza az adatokat a beállításjegyzékben.
Az adatforrás a korábban klónozott példák adattárában található. A helyi klón alatt lépjen a következő könyvtár elérési útjára: cli/jobs/pipelines-with-components/nyc_taxi_data_regression
. Ebben a könyvtárban hozzon létre egy nevű data-registry.yml
YAML-fájlt, és használja a következő YAML-fájlt a fájl tartalmaként:
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: transformed-nyc-taxt-data
description: Transformed NYC Taxi data created from local folder.
version: 1
type: uri_folder
path: data_transformed/
Az path
érték az data_transformed
alkönyvtárra mutat, amely a beállításjegyzék használatával megosztott adatokat tartalmazza.
Az adatok a beállításjegyzékben való létrehozásához használja a következőt az ml data create
: . Az alábbi példákban cserélje le <registry-name>
a elemet a beállításjegyzék nevére.
az ml data create --file data-registry.yml --registry-name <registry-name>
Ha hibaüzenetet kap arról, hogy az ilyen nevű és verziójú adatok már léteznek a beállításjegyzékben, szerkesztheti a mezőt a version
fájlban data-registry.yml
, vagy megadhat egy másik verziót a parancssori felületen, amely felülbírálja a verzió értékét a fájlban data-registry.yml
.
# use shell epoch time as the version
version=$(date +%s)
az ml data create --file data-registry.yml --registry-name <registry-name> --set version=$version
Tipp
Ha a version=$(date +%s)
parancs nem állítja be a változót $version
a környezetben, cserélje le a elemet $version
egy véletlenszerű számra.
Mentse az name
és version
az adatokat a az ml data create
parancs kimenetéből, és használja őket a paranccsal az ml data show
az objektum részleteinek megtekintéséhez.
az ml data show --name transformed-nyc-taxt-data --version 1 --registry-name <registry-name>
Tipp
Ha más adatnevet vagy verziót használt, cserélje le a és --version
a --name
paramétert ennek megfelelően.
A beállításjegyzékben található összes adategység listázására is használható az ml data list --registry-name <registry-name>
.
Környezet és összetevő létrehozása a beállításjegyzékben
Ha környezetet és összetevőt szeretne létrehozni a beállításjegyzékben, kövesse a Modellek, összetevők és környezetek megosztása című cikk lépéseit . A környezet és az összetevő a következő szakaszban található betanítási feladatban lesz felhasználva.
Tipp
A munkaterületről is használhat környezeteket és összetevőket a beállításjegyzékből származók helyett.
Folyamatfeladat futtatása egy munkaterületen a beállításjegyzékből származó összetevő használatával
Ha olyan folyamatfeladatot futtat, amely egy összetevőt és egy beállításjegyzékből származó adatokat használ, a számítási erőforrások helyiek a munkaterületen. A következő példában a feladat a Scikit Learn betanítási összetevőt és az előző szakaszokban létrehozott adategységet használja a modell betanításához.
Megjegyzés
A fő szempont az, hogy ez a folyamat egy munkaterületen fog futni olyan betanítási adatokkal, amelyek nem az adott munkaterületen találhatóak. Az adatok egy beállításjegyzékben vannak, amely a szervezet bármely munkaterületével használható. Ezt a betanítási feladatot bármely olyan munkaterületen futtathatja, amelyhez hozzáférése van, anélkül, hogy aggódnia kellene a betanítási adatok elérhetővé tétele miatt az adott munkaterületen.
Ellenőrizze, hogy a cli/jobs/pipelines-with-components/nyc_taxi_data_regression
könyvtárban van-e. Szerkessze a component
fájl szakaszában található train_job
szakaszt, single-job-pipeline.yml
hogy a betanítási összetevőre és path
training_data
a szakaszban az előző szakaszokban létrehozott adategységre hivatkozzon. Az alábbi példa bemutatja, hogyan néz ki a single-job-pipeline.yml
szerkesztés után. Cserélje le a <registry_name>
elemet a beállításjegyzék nevére:
$schema: https://azuremlschemas.azureedge.net/latest/pipelineJob.schema.json
type: pipeline
display_name: nyc_taxi_data_regression_single_job
description: Single job pipeline to train regression model based on nyc taxi dataset
jobs:
train_job:
type: command
component: azureml://registries/<registry-name>/component/train_linear_regression_model/versions/1
compute: azureml:cpu-cluster
inputs:
training_data:
type: uri_folder
path: azureml://registries/<registry-name>/data/transformed-nyc-taxt-data/versions/1
outputs:
model_output:
type: mlflow_model
test_data:
Figyelmeztetés
- A folyamatfeladat futtatása előtt ellenőrizze, hogy a munkaterület, amelyen futtatni fogja a feladatot, olyan Azure-régióban van-e, amelyet támogat az a beállításjegyzék, amelyben létrehozta az adatokat.
- Ellenőrizze, hogy a munkaterület rendelkezik-e számítási fürttel a névvel
cpu-cluster
, vagy szerkessze acompute
mezőjobs.train_job.compute
értékét a számítás nevével.
Futtassa a folyamatfeladatot a az ml job create
paranccsal.
az ml job create --file single-job-pipeline.yml
Tipp
Ha nem konfigurálta az alapértelmezett munkaterületet és erőforráscsoportot az előfeltételek szakaszban leírtak szerint, meg kell adnia a és --resource-group
a --workspace-name
paramétert a az ml job create
működéshez.
A feladatok futtatásával kapcsolatos további információkért tekintse meg a következő cikkeket:
Adatok megosztása a munkaterületről a beállításjegyzékbe
Az alábbi lépések bemutatják, hogyan oszthat meg egy meglévő adategységet egy munkaterületről egy beállításjegyzékbe.
Először hozzon létre egy adategységet a munkaterületen. Győződjön meg arról, hogy a cli/assets/data
könyvtárban van. Az local-folder.yml
ebben a könyvtárban található adategységet a munkaterületen hozhatja létre. A fájlban megadott adatok a könyvtárban cli/assets/data/sample-data
érhetők el. A fájl tartalma local-folder.yml
a következő YAML:
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: local-folder-example-titanic
description: Dataset created from local folder.
type: uri_folder
path: sample-data/
Az adategység munkaterületen való létrehozásához használja a következő parancsot:
az ml data create -f local-folder.yml
További információ az adategységek munkaterületen való létrehozásáról: Adategységek létrehozása.
A munkaterületen létrehozott adategység megosztható egy beállításjegyzékben. A beállításjegyzékben több munkaterületen is használható. Vegye figyelembe, hogy a megosztási --share_with_name
függvényben továbbítjuk a és --share_with_version
paramétert. Ezek a paraméterek nem kötelezőek, és ha nem adja át ezeket az adatokat, ugyanazzal a névvel és verzióval lesznek megosztva, mint a munkaterületen.
Az alábbi példa bemutatja, hogy a share paranccsal oszthat meg egy adategységet. A helyére <registry-name>
írja be annak a beállításjegyzéknek a nevét, amellyel az adatok meg lesznek osztva.
az ml data share --name local-folder-example-titanic --version <version-in-workspace> --share-with-name <name-in-registry> --share-with-version <version-in-registry> --registry-name <registry-name>
Következő lépések
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: