Model Osztály
A gépi tanulási betanítás eredményét jelöli.
A modell egy Azure Machine Learning-betanítás Run vagy az Azure-on kívüli más modellbetanítási folyamat eredménye. Függetlenül attól, hogy a modell hogyan készül, regisztrálható egy munkaterületen, ahol egy név és egy verzió képviseli. A Modell osztálysal a Dockerrel való használatra csomagolhatja a modelleket, és valós idejű végpontként helyezheti üzembe őket, amelyek következtetési kérelmekhez használhatók.
A modellek létrehozását, kezelését és használatát bemutató, végpontok közötti oktatóanyagért lásd: Képbesorolási modell betanítása MNIST-adatokkal és scikit-learn az Azure Machine Learning használatával.
Modellkonstruktor.
A Modellkonstruktor a megadott munkaterülethez társított Modell objektum felhőbeli ábrázolásának lekérésére szolgál. Meg kell adnia a nevet vagy az azonosítót.
- Öröklődés
-
builtins.objectModel
Konstruktor
Model(workspace, name=None, id=None, tags=None, properties=None, version=None, run_id=None, model_framework=None, expand=True, **kwargs)
Paraméterek
- name
- str
A lekérni kívánt modell neve. A rendszer a megadott nevű legújabb modellt adja vissza, ha létezik.
- id
- str
A lekérni kívánt modell azonosítója. A megadott azonosítóval rendelkező modell lesz visszaadva, ha létezik.
- tags
- list
A visszaadott eredmények szűréséhez használt címkék választható listája. Az eredmények a megadott lista alapján vannak szűrve, és a "key" vagy a "[key, value] alapján keresnek. Pl. .key', ['key2', 'key2 value]]
- properties
- list
A visszaadott eredmények szűréséhez használt tulajdonságok nem kötelező listája. Az eredmények a megadott lista alapján vannak szűrve, és a "key" vagy a "[key, value] alapján keresnek. Pl. .key', ['key2', 'key2 value]]
- version
- int
A visszatérni kívánt modellverzió. Ha a paraméter mellett meg name
van adva, a rendszer a megadott nevesített modell adott verzióját adja vissza, ha létezik. Ha version
nincs megadva, a rendszer a modell utolsó verzióját adja vissza.
- model_framework
- str
Nem kötelező, a visszaadott eredmények szűréséhez használt keretrendszernév. Ha meg van adva, a rendszer a megadott keretrendszernek megfelelő modellek eredményeit adja vissza. Tekintse meg Framework az engedélyezett értékeket.
- name
- str
A lekérni kívánt modell neve. A rendszer a megadott nevű legújabb modellt adja vissza, ha létezik.
- id
- str
A lekérni kívánt modell azonosítója. A megadott azonosítóval rendelkező modell lesz visszaadva, ha létezik.
- tags
- list
A visszaadott eredmények szűréséhez használt címkék választható listája. Az eredmények a megadott lista alapján vannak szűrve, és a "key" vagy a "[key, value] alapján keresnek. Pl. .key', ['key2', 'key2 value]]
- properties
- list
A visszaadott eredmények szűréséhez használt tulajdonságok nem kötelező listája. Az eredmények a megadott lista alapján vannak szűrve, és a "key" vagy a "[key, value] alapján keresnek. Pl. .key', ['key2', 'key2 value]]
- version
- int
A visszatérni kívánt modellverzió. Ha a paraméter mellett meg name
van adva, a rendszer a megadott nevesített modell adott verzióját adja vissza, ha létezik. Ha version
nincs megadva, a rendszer a modell utolsó verzióját adja vissza.
- model_framework
- str
Nem kötelező, a visszaadott eredmények szűréséhez használt keretrendszernév. Ha meg van adva, a rendszer a megadott keretrendszernek megfelelő modellek eredményeit adja vissza. Tekintse meg Framework az engedélyezett értékeket.
- expand
- bool
Ha igaz, a visszaadja az összes olyan altulajdonságú modelleket, mint a futtatás, az adatkészlet és a kísérlet.
Megjegyzések
A Modellkonstruktor a megadott munkaterülethez társított Modell objektum felhőbeli ábrázolásának lekérésére szolgál. A modellek lekéréséhez legalább a nevet vagy az azonosítót kell megadni, de más szűrési lehetőségek is rendelkezésre állnak, például címkék, tulajdonságok, verzió, futtatási azonosító és keretrendszer alapján.
from azureml.core.model import Model
model = Model(ws, 'my_model_name')
Az alábbi minta bemutatja, hogyan lehet lekérni egy modell adott verzióját.
from azureml.core.model import Model
model = Model(ws, 'my_model_name', version=1)
A modell regisztrálása létrehoz egy logikai tárolót a modellt alkotó egy vagy több fájlhoz. A modellfájl tartalma mellett a regisztrált modell a modell metaadatait is tárolja, beleértve a modell leírását, a címkéket és a keretrendszer adatait is, amelyek hasznosak a modell munkaterületen való kezelésekor és üzembe helyezésekor. Címkékkel például kategorizálhatja a modelleket, és szűrőket alkalmazhat a modellek munkaterületen való listázásakor. A regisztráció után letöltheti vagy üzembe helyezheti a regisztrált modellt, és megkaphatja a regisztrált összes fájlt és metaadatot.
Az alábbi minta bemutatja, hogyan regisztrálhat egy címkéket és leírást megjelölő modellt.
from azureml.core.model import Model
model = Model.register(model_path="sklearn_regression_model.pkl",
model_name="sklearn_regression_model",
tags={'area': "diabetes", 'type': "regression"},
description="Ridge regression model to predict diabetes",
workspace=ws)
A teljes minta a következő forrásból érhető el: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-local/register-model-deploy-local-advanced.ipynb
Az alábbi minta bemutatja, hogyan regisztrálhat modellmegadási keretrendszert, bemeneti és kimeneti adatkészleteket, valamint erőforrás-konfigurációt.
import sklearn
from azureml.core import Model
from azureml.core.resource_configuration import ResourceConfiguration
model = Model.register(workspace=ws,
model_name='my-sklearn-model', # Name of the registered model in your workspace.
model_path='./sklearn_regression_model.pkl', # Local file to upload and register as a model.
model_framework=Model.Framework.SCIKITLEARN, # Framework used to create the model.
model_framework_version=sklearn.__version__, # Version of scikit-learn used to create the model.
sample_input_dataset=input_dataset,
sample_output_dataset=output_dataset,
resource_configuration=ResourceConfiguration(cpu=1, memory_in_gb=0.5),
description='Ridge regression model to predict diabetes progression.',
tags={'area': 'diabetes', 'type': 'regression'})
print('Name:', model.name)
print('Version:', model.version)
A Változók szakasz a felhőmodell objektum helyi reprezentációjának attribútumait sorolja fel. Ezeket a változókat írásvédettnek kell tekinteni. Az értékek módosítása nem jelenik meg a megfelelő felhőobjektumban.
Változók
- created_by
- dict
A modellt létrehozó felhasználó.
- created_time
- datetime
A modell létrehozásakor.
- azureml.core.Model.description
A Modell objektum leírása.
- azureml.core.Model.id
A modell azonosítója. Ez a modell neve>:<modellverzió> formájában <jelenik meg.
- mime_type
- str
A Modell mime típusa.
- azureml.core.Model.name
A modell neve.
- model_framework
- str
A modell keretrendszere.
- model_framework_version
- str
A modell keretrendszerverziója.
- azureml.core.Model.tags
A Modell objektum címkéinek szótára.
- azureml.core.Model.properties
A modell kulcsérték-tulajdonságainak szótára. Ezek a tulajdonságok a regisztráció után nem módosíthatók, de új kulcsértékpárok is hozzáadhatók.
- unpack
- bool
Azt jelzi, hogy a modellt ki kell-e csomagolni (ki kell-e csomagolni) egy helyi környezetbe való lekéréskor.
- url
- str
A modell URL-címe.
- azureml.core.Model.version
A modell verziója.
- azureml.core.Model.workspace
A modellt tartalmazó munkaterület.
- azureml.core.Model.experiment_name
A modellt létrehozó kísérlet neve.
- azureml.core.Model.run_id
A modellt létrehozó futtatás azonosítója.
- parent_id
- str
A modell szülőmodelljének azonosítója.
- resource_configuration
- ResourceConfiguration
A modell ResourceConfiguration tulajdonsága. Profilkészítéshez használatos.
Metódusok
add_dataset_references |
Társítsa a megadott adathalmazokat ezzel a modellel. |
add_properties |
Adjon hozzá kulcsértékpárokat a modell tulajdonságszótárához. |
add_tags |
Adjon hozzá kulcsértékpárokat a modell címkeszótárához. |
delete |
Törölje ezt a modellt a társított munkaterületről. |
deploy |
Webszolgáltatás üzembe helyezése nulla vagy több Model objektumból. Az eredményként kapott webszolgáltatás egy valós idejű végpont, amely következtetési kérelmekhez használható. A Modell |
deserialize |
JSON-objektum átalakítása modellobjektummá. Az átalakítás sikertelen, ha a megadott munkaterület nem az a munkaterület, amelyen a modell regisztrálva van. |
download |
Töltse le a modellt a helyi fájlrendszer célkönyvtárába. |
get_model_path |
Adja vissza a modell elérési útját. A függvény az alábbi helyeken keresi meg a modellt. Ha
Ha
|
get_sas_urls |
Adja vissza a fájlneveket és a megfelelő SAS URL-címeket tartalmazó kulcs-érték párok szótárát. |
list |
Kérje le a megadott munkaterülethez társított összes modell listáját opcionális szűrőkkel. |
package |
Hozzon létre egy modellcsomagot Docker-rendszerkép vagy Dockerfile buildkörnyezet formájában. |
print_configuration |
A felhasználói konfiguráció nyomtatása. |
profile |
Profilok a modellhez az erőforrás-követelményekre vonatkozó javaslatok lekéréséhez. Ez egy hosszú ideig futó művelet, amely az adathalmaz méretétől függően akár 25 percet is igénybe vehet. |
register |
Modell regisztrálása a megadott munkaterületen. |
remove_tags |
Távolítsa el a megadott kulcsokat a modell címkeszótárából. |
serialize |
Alakítsa át ezt a modellt json szerializált szótárlá. |
update |
Végezze el a modell helyben történő frissítését. A rendszer lecseréli a megadott paraméterek meglévő értékeit. |
update_tags_properties |
Végezze el a modell címkéinek és tulajdonságainak frissítését. |
add_dataset_references
Társítsa a megadott adathalmazokat ezzel a modellel.
add_dataset_references(datasets)
Paraméterek
- datasets
- list[tuple(<xref:str :> (Dataset vagy DatasetSnapshot))]
Az adathalmaz-cél adathalmaz-objektumhoz való párosítását jelképező rekordok listája.
Kivételek
add_properties
Adjon hozzá kulcsértékpárokat a modell tulajdonságszótárához.
add_properties(properties)
Paraméterek
Kivételek
add_tags
Adjon hozzá kulcsértékpárokat a modell címkeszótárához.
add_tags(tags)
Paraméterek
Kivételek
delete
deploy
Webszolgáltatás üzembe helyezése nulla vagy több Model objektumból.
Az eredményként kapott webszolgáltatás egy valós idejű végpont, amely következtetési kérelmekhez használható. A Modell deploy
függvény hasonló az deploy
osztály függvényéhez Webservice , de nem regisztrálja a modelleket. Ha már regisztrált modellobjektumokkal rendelkezik, használja a Model deploy
függvényt.
static deploy(workspace, name, models, inference_config=None, deployment_config=None, deployment_target=None, overwrite=False, show_output=False)
Paraméterek
- workspace
- Workspace
Egy munkaterület-objektum, amellyel társítani szeretné a webszolgáltatást.
- name
- str
Az üzembe helyezett szolgáltatás nevét adja meg. A munkaterületnek egyedinek kell lennie, csak kisbetűkből, számokból vagy kötőjelekből kell állnia, betűvel kell kezdődnie, és 3–32 karakter hosszúságúnak kell lennie.
- inference_config
- InferenceConfig
Egy InferenceConfig objektum, amely a szükséges modelltulajdonságok meghatározására szolgál.
- deployment_config
- WebserviceDeploymentConfiguration
A webszolgáltatás konfigurálásához használt WebserviceDeploymentConfiguration. Ha nincs megadva, a rendszer egy üres konfigurációs objektumot használ a kívánt cél alapján.
- deployment_target
- ComputeTarget
A ComputeTarget a webszolgáltatás üzembe helyezéséhez. Mivel Azure Container Instances nincs társítvaComputeTarget, hagyja ezt a paramétert Nincs értéken a Azure Container Instances üzembe helyezéséhez.
- overwrite
- bool
Azt jelzi, hogy felülírja-e a meglévő szolgáltatást, ha már létezik egy megadott nevű szolgáltatás.
- show_output
- bool
Azt jelzi, hogy meg szeretné-e jeleníteni a szolgáltatás üzembe helyezésének állapotát.
Válaszok
Az üzembe helyezett webszolgáltatásnak megfelelő webszolgáltatási objektum.
Visszatérési típus
Kivételek
deserialize
JSON-objektum átalakítása modellobjektummá.
Az átalakítás sikertelen, ha a megadott munkaterület nem az a munkaterület, amelyen a modell regisztrálva van.
static deserialize(workspace, model_payload)
Paraméterek
Válaszok
A megadott JSON-objektum modellképe.
Visszatérési típus
Kivételek
download
Töltse le a modellt a helyi fájlrendszer célkönyvtárába.
download(target_dir='.', exist_ok=False, exists_ok=None)
Paraméterek
- target_dir
- str
Annak a könyvtárnak az elérési útja, amelyben le szeretné tölteni a modellt. Alapértelmezés szerint "."
- exist_ok
- bool
Azt jelzi, hogy a letöltött dir/fájlok lecserélhetők-e, ha léteznek. Alapértelmezés szerint Hamis.
Válaszok
A modell fájljának vagy mappájának elérési útja.
Visszatérési típus
Kivételek
get_model_path
Adja vissza a modell elérési útját.
A függvény az alábbi helyeken keresi meg a modellt.
Ha version
nincs:
- Letöltés távoliról gyorsítótárba (ha a munkaterület meg van adva)
- Betöltés a gyorsítótárból azureml-models/$MODEL_NAME/$LATEST_VERSION/
- ./$MODEL_NAME
Ha version
nincs:
- Betöltés a gyorsítótárból azureml-models/$MODEL_NAME/$SPECIFIED_VERSION/
- Letöltés távoliról gyorsítótárba (ha a munkaterület meg van adva)
static get_model_path(model_name, version=None, _workspace=None)
Paraméterek
- version
- int
A lekérendő modell verziója. Alapértelmezés szerint a legújabb verzió.
- _workspace
- Workspace
A munkaterület, amelyből lekérhet egy modellt. Távolról nem használható. Ha nincs megadva, a rendszer csak a helyi gyorsítótárban keres.
Válaszok
A modell lemezen lévő elérési útja.
Visszatérési típus
Kivételek
get_sas_urls
Adja vissza a fájlneveket és a megfelelő SAS URL-címeket tartalmazó kulcs-érték párok szótárát.
get_sas_urls()
Válaszok
A fájlneveket és a megfelelő SAS URL-címeket tartalmazó kulcs-érték párok szótára
Visszatérési típus
Kivételek
list
Kérje le a megadott munkaterülethez társított összes modell listáját opcionális szűrőkkel.
static list(workspace, name=None, tags=None, properties=None, run_id=None, latest=False, dataset_id=None, expand=True, page_count=255, model_framework=None)
Paraméterek
- name
- str
Ha meg van adva, akkor csak a megadott névvel rendelkező modelleket adja vissza, ha vannak ilyenek.
- tags
- list
A megadott lista alapján a "key" vagy a "[key, value] alapján szűr. Pl. "key", "key2", "key2 value"]
- properties
- list
A megadott lista alapján a "key" vagy a "[key, value] alapján szűr. Pl. "key", "key2", "key2 value"]
- expand
- bool
Ha igaz, az összes altulajdonságú modellt visszaadja, például futtatás, adathalmaz és kísérlet. Ha ezt hamis értékre állítja, az felgyorsítja a lista() metódus befejezését sok modell esetén.
- page_count
- int
A lapon lekérendő elemek száma. Jelenleg legfeljebb 255 értéket támogat. Alapértelmezés szerint 255.
- model_framework
- str
Ha meg van adva, akkor csak a megadott keretrendszerrel rendelkező modelleket adja vissza, ha vannak ilyenek.
Válaszok
A modellek listája, opcionálisan szűrve.
Visszatérési típus
Kivételek
package
Hozzon létre egy modellcsomagot Docker-rendszerkép vagy Dockerfile buildkörnyezet formájában.
static package(workspace, models, inference_config=None, generate_dockerfile=False, image_name=None, image_label=None)
Paraméterek
- inference_config
- InferenceConfig
Egy InferenceConfig objektum a modellek működésének konfigurálásához. Ennek tartalmaznia kell egy környezeti objektumot.
- generate_dockerfile
- bool
Létrehozhat-e olyan Docker-fájlt, amely helyileg futtatható a rendszerkép létrehozása helyett.
Válaszok
Egy ModelPackage objektum.
Visszatérési típus
Kivételek
print_configuration
A felhasználói konfiguráció nyomtatása.
static print_configuration(models, inference_config, deployment_config, deployment_target)
Paraméterek
- inference_config
- InferenceConfig
Egy InferenceConfig objektum, amely a szükséges modelltulajdonságok meghatározására szolgál.
- deployment_config
- WebserviceDeploymentConfiguration
A webszolgáltatás konfigurálásához használt WebserviceDeploymentConfiguration.
Kivételek
profile
Profilok a modellhez az erőforrás-követelményekre vonatkozó javaslatok lekéréséhez.
Ez egy hosszú ideig futó művelet, amely az adathalmaz méretétől függően akár 25 percet is igénybe vehet.
static profile(workspace, profile_name, models, inference_config, input_dataset, cpu=None, memory_in_gb=None, description=None)
Paraméterek
- workspace
- Workspace
Egy munkaterület-objektum, amelyben profilt szeretne létrehozni a modellről.
- inference_config
- InferenceConfig
Egy InferenceConfig objektum, amely a szükséges modelltulajdonságok meghatározására szolgál.
- input_dataset
- Dataset
A profilkészítés bemeneti adatkészlete. A bemeneti adatkészletnek egyetlen oszlopmal kell rendelkeznie, és a mintabemeneteknek sztringformátumban kell lenniük.
- cpu
- float
A legnagyobb tesztpéldányon használandó processzormagok száma. Jelenleg legfeljebb 3,5-ös értékeket támogat.
- memory_in_gb
- float
A legnagyobb tesztpéldányon használandó memória mennyisége (GB-ban). Lehet decimális. Jelenleg legfeljebb 15,0-s értékeket támogat.
Visszatérési típus
Kivételek
register
Modell regisztrálása a megadott munkaterületen.
static register(workspace, model_path, model_name, tags=None, properties=None, description=None, datasets=None, model_framework=None, model_framework_version=None, child_paths=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None)
Paraméterek
- model_path
- str
Annak a helyi fájlrendszernek az elérési útja, ahol a modellegységek találhatók. Ez egy adott fájlra vagy mappára mutató közvetlen mutató lehet. Ha egy mappára mutat, a child_paths
paraméterrel megadhatja az egyes fájlokat, amelyeket modellobjektumként szeretne összecsomagolva használni, nem pedig a mappa teljes tartalmát.
- tags
- dict(<xref:{str : str}>)
A modellhez hozzárendelhető kulcsértékcímkék opcionális szótára.
- properties
- dict(<xref:{str : str}>)
A modellhez hozzárendelendő kulcsérték-tulajdonságok opcionális szótára. Ezek a tulajdonságok nem módosíthatók a modell létrehozása után, azonban új kulcsértékpárok is hozzáadhatók.
- datasets
- list[(str, AbstractDataset)]
Azon rekordok listája, ahol az első elem az adathalmaz-modell kapcsolatot írja le, a második elem pedig az adathalmaz.
- model_framework
- str
A regisztrált modell keretrendszere. A osztály rendszer Framework által támogatott állandóinak használata lehetővé teszi néhány népszerű keretrendszer egyszerűsített üzembe helyezését.
Ha egy model_path
mappához kapcsolódóan van megadva, csak a megadott fájlok lesznek becsomagolva a Modell objektumba.
- sample_input_dataset
- AbstractDataset
Minta bemeneti adatkészlet a regisztrált modellhez.
- sample_output_dataset
- AbstractDataset
Minta kimeneti adatkészlet a regisztrált modellhez.
- resource_configuration
- ResourceConfiguration
Erőforrás-konfiguráció a regisztrált modell futtatásához.
Válaszok
A regisztrált modellobjektum.
Visszatérési típus
Kivételek
Megjegyzések
A modellfájl tartalma mellett a regisztrált modell a modell metaadatait is tárolja, beleértve a modell leírását, a címkéket és a keretrendszer adatait is, amelyek hasznosak a modell munkaterületen való kezelésekor és üzembe helyezésekor. Címkékkel például kategorizálhatja a modelleket, és szűrőket alkalmazhat a modellek munkaterületen való listázásakor.
Az alábbi minta bemutatja, hogyan regisztrálhat egy címkéket és leírást megjelölő modellt.
from azureml.core.model import Model
model = Model.register(model_path="sklearn_regression_model.pkl",
model_name="sklearn_regression_model",
tags={'area': "diabetes", 'type': "regression"},
description="Ridge regression model to predict diabetes",
workspace=ws)
A teljes minta a következő forrásból érhető el: https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-local/register-model-deploy-local-advanced.ipynb
Ha egy kísérletfuttatás eredményeként létrehozott modellel rendelkezik, regisztrálhatja közvetlenül egy futtatási objektumból anélkül, hogy először letöltenél egy helyi fájlba. Ehhez használja a metódust az register_model osztályban Run dokumentált módon.
remove_tags
Távolítsa el a megadott kulcsokat a modell címkeszótárából.
remove_tags(tags)
Paraméterek
Kivételek
serialize
Alakítsa át ezt a modellt json szerializált szótárlá.
serialize()
Válaszok
A modell json-ábrázolása
Visszatérési típus
Kivételek
update
Végezze el a modell helyben történő frissítését.
A rendszer lecseréli a megadott paraméterek meglévő értékeit.
update(tags=None, description=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None)
Paraméterek
- tags
- dict(<xref:{str : str}>)
A modell frissítéséhez használandó címkék szótára. Ezek a címkék lecserélik a modell meglévő címkéire.
- description
- str
A modellhez használandó új leírás. Ez a név lecseréli a meglévő nevet.
- sample_input_dataset
- AbstractDataset
A regisztrált modellhez használandó minta bemeneti adatkészlet. Ez a minta bemeneti adatkészlet lecseréli a meglévő adatkészletet.
- sample_output_dataset
- AbstractDataset
A regisztrált modellhez használandó kimeneti mintaadatkészlet. Ez a minta kimeneti adatkészlet lecseréli a meglévő adatkészletet.
- resource_configuration
- ResourceConfiguration
A regisztrált modell futtatásához használandó erőforrás-konfiguráció.
Kivételek
update_tags_properties
Végezze el a modell címkéinek és tulajdonságainak frissítését.
update_tags_properties(add_tags=None, remove_tags=None, add_properties=None)
Paraméterek
- add_properties
- dict(<xref:{str : str}>)
A hozzáadni kívánt tulajdonságok szótára.
Kivételek
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: