0 / 0
Go back to the English version of the documentation
Import modelů do prostoru implementace
Last updated: 12. 10. 2023
Import modelů do prostoru implementace

Importujte modely strojového učení natrénované mimo produkt IBM Watson Machine Learning , abyste mohli nasadit a testovat modely. Přezkoumejte rámce modelu, které jsou k dispozici pro import modelů.

import natrénovaného modelu zde znamená:

  1. Uložte natrénovaný model do úložiště Watson Machine Learning .
  2. Volitelné: Nasaďte uložený model ve službě Watson Machine Learning .

a úložiště znamená sektor Cloud Object Storage . Další informace naleznete v tématu Vytvoření prostorů implementace.

Model můžete importovat těmito způsoby:

Další informace viz Import modelů podle rámce ML.

Další informace viz Věci, které je třeba zvážit při importu modelů.

Příklad, jak přidat model programově pomocí klienta Python , naleznete v tomto zápisníku:

Příklad, jak přidat model programově pomocí rozhraní REST API, viz tento zápisník:

Dostupné způsoby importu modelů podle typu rámce

V této tabulce jsou uvedeny dostupné způsoby importu modelů do produktu Watson Machine Learningpodle typu rámce.

Volby importu pro modely podle typu rámce
Volba importu Spark MLlib Scikit-učit se XGBoost (zvýšení) TensorFlow PyTorch
Import objektu modelu
Import modelu pomocí cesty k souboru
Import modelu pomocí cesty k adresáři

Přidání modelu pomocí uživatelského rozhraní

Poznámka: Chcete-li importovat model ve formátu PMML, můžete přímo importovat soubor modelu ` .xml `.

Chcete-li importovat model pomocí uživatelského rozhraní, postupujte takto:

  1. Na kartě Aktiva vašeho prostoru v produktu Watson Machine Learningklepněte na volbu Nové aktivum.
  2. Přejděte na volbu Nástroje pro přístup k datům a vyberte volbu Model.
  3. Vyberte soubor modelu, který chcete importovat, a klepněte na tlačítko Přidat.

Mechanismus importu automaticky vybere odpovídající typ modelu a specifikaci softwaru na základě řetězce verze v souboru .xml .

Import objektu modelu

Poznámka: Tato metoda importu je podporována omezeným počtem rámců ML. Další informace viz [ Dostupné způsoby importu modelů podle typu rámce] (#supported-formáty).

Chcete-li importovat modelový objekt, postupujte takto:

  1. Je-li váš model umístěn ve vzdáleném umístění, postupujte podle pokynů v části Stažení modelu uloženého ve vzdáleném umístění.
  2. Uložte modelový objekt do úložiště Watson Machine Learning . Další informace viz Uložení modelu do úložiště Watson Machine Learning.

Import modelu pomocí cesty k souboru

Poznámka: Tato metoda importu je podporována omezeným počtem rámců ML. Další informace viz [ Dostupné způsoby importu modelů podle typu rámce] (#supported-formáty).

Chcete-li importovat model pomocí cesty k souboru, postupujte takto:

  1. Pokud je váš model umístěn ve vzdáleném umístění, postupujte podle pokynů Stažení modelu uloženého ve vzdáleném umístění a stáhněte jej.

  2. Pokud je váš model umístěn lokálně, umístěte jej do specifického adresáře:

      !cp <saved model> <target directory>
      !cd <target directory>
    
  3. Pro modely Scikit-learn, XGBoost, Tensorflowa PyTorch , pokud stažený soubor není archiv .tar.gz , vytvořte archiv:

      !tar -zcvf <saved model>.tar.gz <saved model>
    

    Soubor modelu musí být ve složce nejvyšší úrovně adresáře, například:

    assets/
    <saved model>
    variables/
    variables/variables.data-00000-of-00001
    variables/variables.index
    
  4. K uložení souboru modelu do úložiště Watson Machine Learning použijte cestu k uloženému souboru. Další informace viz Uložení modelu do úložiště Watson Machine Learning.

Import modelu pomocí cesty k adresáři

Poznámka: Tato metoda importu je podporována omezeným počtem rámců ML. Další informace viz [ Dostupné způsoby importu modelů podle typu rámce] (#supported-formáty).

Chcete-li importovat model pomocí cesty k adresáři, postupujte takto:

  1. Pokud je váš model umístěn ve vzdáleném umístění, prohlédněte si téma Stažení modelu uloženého ve vzdáleném umístění.

  2. Pokud je váš model umístěn lokálně, umístěte jej do specifického adresáře:

    !cp <saved model> <target directory>
    !cd <target directory>
    

    V případě modelů scikit-learn, XGBoost, Tensorflowa PyTorch musí být soubor modelu ve složce nejvyšší úrovně adresáře, například:

    assets/
    <saved model>
    variables/
    variables/variables.data-00000-of-00001
    variables/variables.index
    
  3. Cestu k adresáři použijte k uložení souboru modelu do úložiště Watson Machine Learning . Další informace viz Uložení modelu do úložiště Watson Machine Learning.

Stažení modelu uloženého ve vzdáleném umístění

Chcete-li stáhnout model ze vzdáleného umístění, postupujte podle tohoto ukázkového kódu:

import os
from wget import download

target_dir = '<target directory name>'
if not os.path.isdir(target_dir):
    os.mkdir(target_dir)
filename = os.path.join(target_dir, '<model name>')
if not os.path.isfile(filename):
    filename = download('<url to model>', out = target_dir)

Věci, které je třeba zvážit při importu modelů

Další informace o importu specifického typu modelu viz:

Další informace o rámcích, které můžete použít s produktem Watson Machine Learning, naleznete v tématu Podporované rámce.

Modely uložené ve formátu PMML

  • Jediným dostupným typem implementace pro modely, které jsou importovány z knihovny PMML, je implementace online.
  • Soubor PMML musí mít příponu .xml .
  • Modely PMML nelze použít v toku proudu SPSS .
  • Soubor PMML nesmí obsahovat prolog. V závislosti na knihovně, kterou používáte při ukládání modelu, může být standardně přidán prolog na začátek souboru. Pokud například váš soubor obsahuje řetězec prolog, jako např. spark-mllib-lr-model-pmml.xml, odeberte řetězec před importem souboru PMML do prostoru implementace.

V závislosti na knihovně, kterou používáte při ukládání modelu, může být prolog standardně přidán na začátek souboru, jako v tomto příkladu:

::::::::::::::
spark-mllib-lr-model-pmml.xml
::::::::::::::

Musíte odebrat tento prolog, než budete moci importovat soubor PMML do Watson Machine Learning.

Spark MLlib modely

  • K dispozici jsou pouze klasifikační a regresní modely.
  • Vlastní transformátory, uživatelské funkce a třídy nejsou k dispozici.

Scikit-výukové modely

  • .pkl a .pickle jsou dostupné formáty importu.
  • Chcete-li serializovat nebo nakládat s modelem, použijte balík joblib .
  • K dispozici jsou pouze klasifikační a regresní modely.
  • Vstupní typ datového rámce Pandas pro rozhraní API predict() není k dispozici.
  • Jediným dostupným typem implementace pro modely scikit-learn je implementace online.

XGBoost modely

  • .pkl a .pickle jsou dostupné formáty importu.
  • Chcete-li serializovat nebo nakládat s modelem, použijte balík joblib .
  • K dispozici jsou pouze klasifikační a regresní modely.
  • Vstupní typ datového rámce Pandas pro rozhraní API predict() není k dispozici.
  • Jediným dostupným typem implementace pro modely XGBoost je implementace online.

Modely TensorFlow

  • .pb, .h5a .hdf5 jsou dostupné formáty importu.
  • Chcete-li uložit nebo serializovat model TensorFlow , použijte metodu tf.saved_model.save() .
  • tf.estimator není k dispozici.
  • Jediné dostupné typy implementace pro modely TensorFlow jsou: implementace online a dávková implementace.

Modely PyTorch

  • Jediným dostupným typem implementace pro modely PyTorch je implementace online.

  • Aby byl model Pytorch importovatelný do Watson Machine Learning, musí být dříve exportován do formátu .onnx . Viz tento kód.

    torch.onnx.export(<model object>, <prediction/training input data>, "<serialized model>.onnx", verbose=True, input_names=<input tensor names>, output_names=<output tensor names>)
    

Uložení modelu do úložiště Watson Machine Learning

Tento kód použijte k uložení modelu do úložiště Watson Machine Learning :

from ibm_watson_machine_learning import APIClient

client = APIClient(<your credentials>)
sw_spec_uid = client.software_specifications.get_uid_by_name("<software specification name>")

meta_props = {
    client.repository.ModelMetaNames.NAME: "<your model name>",
    client.repository.ModelMetaNames.SOFTWARE_SPEC_UID: sw_spec_uid,
    client.repository.ModelMetaNames.TYPE: "<model type>"}

client.repository.store_model(model=<your model>, meta_props=meta_props)

Poznámky:

  • V závislosti na použitém rámci modelu může být <your model> skutečným objektem modelu, úplnou cestou k uloženému souboru modelu nebo cestou k adresáři, kde je umístěn soubor modelu. Další informace viz Dostupné způsoby importu modelů podle typu rámce.

  • Chcete-li zobrazit seznam dostupných specifikací softwaru, které se mají použít jako <software specification name>, použijte metodu client.software_specifications.list() .

  • Seznam dostupných typů modelů, které se mají použít jako model_type, naleznete v části Specifikace softwaru a specifikace hardwaru pro implementace.

  • Když exportujete model Pytorch do formátu .onnx , uveďte příznak keep_initializers_as_inputs=True a nastavte opset_version na 9 (nasazeníWatson Machine Learning používají běhové prostředí caffe2 ONNX, které nepodporuje verze opset vyšší než 9).

    torch.onnx.export(net, x, 'lin_reg1.onnx', verbose=True, keep_initializers_as_inputs=True, opset_version=9)
    
  • Chcete-li se dozvědět více o tom, jak vytvořit slovník <your credentials> , prohlédněte si téma Watson Machine Learning authentication.

Další informace

Nadřízené téma: Aktiva v implementačních prostorech

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more