Adatok gyűjtése éles modellekből

A KÖVETKEZŐKRE VONATKOZIK:Python SDK azureml v1

Ez a cikk bemutatja, hogyan gyűjthet adatokat egy Azure Kubernetes Service-fürtön üzembe helyezett Azure Machine Learning-modellből. Az összegyűjtött adatok ezután az Azure Blob Storage-ban lesznek tárolva.

A gyűjtés engedélyezése után az összegyűjtött adatok a következőkben segítenek:

Korlátozások

  • A modell adatgyűjtési funkciója csak az Ubuntu 18.04-rendszerképekkel működik.

Fontos

2023. 03. 10-én az Ubuntu 18.04 rendszerkép elavult. Az Ubuntu 18.04-képek támogatása 2023. januártól megszűnik, amikor 2023. április 30-án eléri az EOL-t.

Az MDC funkció nem kompatibilis az Ubuntu 18.04-nél más rendszerképekkel, ami az Ubuntu 18.04-rendszerkép elavultságával nem érhető el.

mTovábbi információk, amelyre hivatkozhat:

Megjegyzés

Az adatgyűjtési funkció jelenleg előzetes verzióban érhető el, az éles számítási feladatokhoz nem ajánlott előzetes verziójú funkciók használata.

A begyűjtött adatok és azok helye

A következő adatok gyűjthetők:

  • Modellbemeneti adatok egy AKS-fürtön üzembe helyezett webszolgáltatásokból. A rendszer nem gyűjt hang-, kép- és videoképeket.

  • Modell-előrejelzések éles bemeneti adatokkal.

Megjegyzés

Ezen adatok előaggregációja és előszámításai jelenleg nem részei a gyűjtési szolgáltatásnak.

A kimenet a Blob Storage-ba lesz mentve. Mivel az adatok hozzá lesznek adva a Blob Storage-hoz, kiválaszthatja a kedvenc eszközét az elemzés futtatásához.

A blob kimeneti adatainak elérési útja a következő szintaxist követi:

/modeldata/<subscriptionid>/<resourcegroup>/<workspace>/<webservice>/<model>/<version>/<designation>/<year>/<month>/<day>/data.csv
# example: /modeldata/1a2b3c4d-5e6f-7g8h-9i10-j11k12l13m14/myresourcegrp/myWorkspace/aks-w-collv9/best_model/10/inputs/2018/12/31/data.csv

Megjegyzés

A Pythonhoz készült Azure Machine Learning SDK 0.1.0a16-osnál korábbi verzióiban az designation argumentum neve identifier. Ha a kódot egy korábbi verzióval fejlesztette ki, ennek megfelelően kell frissítenie.

Előfeltételek

Az adatgyűjtés engedélyezése

Az adatgyűjtést az Azure Machine Learning vagy más eszközök használatával üzembe helyező modelltől függetlenül engedélyezheti.

Az adatgyűjtés engedélyezéséhez a következőket kell tennie:

  1. Nyissa meg a pontozófájlt.

  2. Adja hozzá a következő kódot a fájl elejéhez:

    from azureml.monitoring import ModelDataCollector
    
  3. Deklarálja az adatgyűjtési változókat a init függvényben:

    global inputs_dc, prediction_dc
    inputs_dc = ModelDataCollector("best_model", designation="inputs", feature_names=["feat1", "feat2", "feat3", "feat4", "feat5", "feat6"])
    prediction_dc = ModelDataCollector("best_model", designation="predictions", feature_names=["prediction1", "prediction2"])
    

    A CorrelationId nem kötelező paraméter. Nem kell használnia, ha a modell nem igényli. A CorrelationId használatával könnyebben leképezhetők más adatok, például a LoanNumber vagy a CustomerId.

    Az Identifier paramétert később a blob mappaszerkezetének felépítéséhez használják. Segítségével megkülönböztetheti a nyers adatokat a feldolgozott adatoktól.

  4. Adja hozzá a következő kódsorokat a run(input_df) függvényhez:

    data = np.array(data)
    result = model.predict(data)
    inputs_dc.collect(data) #this call is saving our input data into Azure Blob
    prediction_dc.collect(result) #this call is saving our prediction data into Azure Blob
    
  5. Az adatgyűjtés nem lesz automatikusan igaz értékre állítva, amikor szolgáltatást helyez üzembe az AKS-ben. Frissítse a konfigurációs fájlt az alábbi példához hasonlóan:

    aks_config = AksWebservice.deploy_configuration(collect_model_data=True)
    

    A következő konfiguráció módosításával engedélyezheti az Application Insights szolgáltatást a szolgáltatásmonitorozáshoz:

    aks_config = AksWebservice.deploy_configuration(collect_model_data=True, enable_app_insights=True)
    
  6. Új rendszerkép létrehozásához és a gépi tanulási modell üzembe helyezéséhez lásd: Gépi tanulási modellek üzembe helyezése az Azure-ban.

  7. Adja hozzá az "Azure-Monitoring" pip csomagot a webszolgáltatás-környezet conda-függőségeihez:

  env = Environment('webserviceenv')
  env.python.conda_dependencies = CondaDependencies.create(conda_packages=['numpy'],pip_packages=['azureml-defaults','azureml-monitoring','inference-schema[numpy-support]'])

Adatgyűjtés letiltása

Az adatgyűjtést bármikor leállíthatja. Az adatgyűjtés letiltásához használja a Python-kódot.

## replace <service_name> with the name of the web service
<service_name>.update(collect_model_data=False)

Az adatok ellenőrzése és elemzése

Kiválaszthatja a kívánt eszközt a Blob Storage-ban gyűjtött adatok elemzéséhez.

A blobadatok gyors elérése

  1. Jelentkezzen be az Azure portálra.

  2. Nyissa meg a munkaterületet.

  3. Válassza a Tárolás lehetőséget.

    Válassza a Tárolás lehetőséget

  4. Kövesse a blob kimeneti adatainak elérési útját az alábbi szintaxissal:

    /modeldata/<subscriptionid>/<resourcegroup>/<workspace>/<webservice>/<model>/<version>/<designation>/<year>/<month>/<day>/data.csv
    # example: /modeldata/1a2b3c4d-5e6f-7g8h-9i10-j11k12l13m14/myresourcegrp/myWorkspace/aks-w-collv9/best_model/10/inputs/2018/12/31/data.csv
    

Modelladatok elemzése a Power BI használatával

  1. Töltse le és nyissa meg Power BI Desktop.

  2. Válassza az Adatok lekérése, majd a Azure Blob Storage lehetőséget.

    Power BI-blob beállítása

  3. Adja meg a tárfiók nevét, és adja meg a tárkulcsot. Ezeket az információkat a blob Beállítások>Hozzáférési kulcsok elemének kiválasztásával találja meg.

  4. Válassza ki a modelladat-tárolót , és válassza a Szerkesztés lehetőséget.

    Power BI Navigátor

  5. A lekérdezésszerkesztőben kattintson a Név oszlop alá, és adja hozzá a tárfiókot.

  6. Adja meg a modell elérési útját a szűrőbe. Ha csak egy adott év vagy hónap fájljait szeretné megvizsgálni, csak bontsa ki a szűrő elérési útját. Ha például csak a márciusi adatokat szeretné megvizsgálni, használja ezt a szűrőútvonalat:

    /modeldata/<subscriptionid>/<resourcegroupname>/<workspacename>/<webservicename>/<modelname>/<modelversion>/<designation>/<year>/3

  7. Szűrje az Ön számára releváns adatokat a Név értékek alapján. Ha előrejelzéseket és bemeneteket tárolt, mindegyikhez létre kell hoznia egy lekérdezést.

  8. A fájlok kombinálásához válassza a Tartalom oszlopfejléc melletti lefelé mutató dupla nyilakat.

    Power BI-tartalom

  9. Válassza az OK lehetőséget. Az adatok előre betöltődnek.

    Power BI – Fájlok egyesítése

  10. Válassza a Bezárás és alkalmazás lehetőséget.

  11. Ha bemeneteket és előrejelzéseket adott hozzá, a táblákat a RequestId értékek automatikusan rendezik.

  12. Kezdje el az egyéni jelentések készítését a modelladatok alapján.

Modelladatok elemzése az Azure Databricks használatával

  1. Hozzon létre egy Azure Databricks-munkaterületet.

  2. Nyissa meg a Databricks-munkaterületet.

  3. A Databricks-munkaterületen válassza az Adatok feltöltése lehetőséget.

    A Databricks Adatok feltöltése lehetőség kiválasztása

  4. Válassza az Új tábla létrehozása, majd az Egyéb adatforrások>Azure Blob Storage>Tábla létrehozása jegyzetfüzetben lehetőséget.

    Databricks-tábla létrehozása

  5. Frissítse az adatok helyét. Például:

    file_location = "wasbs://mycontainer@storageaccountname.blob.core.windows.net/modeldata/1a2b3c4d-5e6f-7g8h-9i10-j11k12l13m14/myresourcegrp/myWorkspace/aks-w-collv9/best_model/10/inputs/2018/*/*/data.csv" 
    file_type = "csv"
    

    Databricks beállítása

  6. Az adatok megtekintéséhez és elemzéséhez kövesse a sablon lépéseit.

Következő lépések

Észleli az adateltolódást az összegyűjtött adatokon.