Testen Sie online bereitgestellte Python-Modelle und -Funktionen mit Cloud Pack for Data mit formularformatierten Eingabedaten

Sie können das Verhalten auf dem Bildschirm mit den Bereitstellungsdetails testen, indem Sie das Modell online im Bereitstellungsbereich von Cloud pak for Data (CP4D) bereitstellen. Geben Sie als Methode zum Angeben der Beispieleingabedaten, die für die Testausführung verwendet werden sollen, das folgende Formularformat und an image.png

Es kann im JSON-Format angegeben werden. image.png

Um das Formularformat verwenden zu können, müssen Sie das Modell mit einem Eingabeschema erstellen. Modelle, die mit Modeler Flow (SPSS) erstellt wurden, scheinen automatisch ein Eingabeschema zu haben, aber mit Python erstellte Modelle müssen das Eingabeschema beim Speichern mit dem WML-Client als Metainformationen angeben.

Speichern eines in Python erstellten Modells mit einem Eingabe- / Ausgabeschema

Der folgende Code speichert das mit dem WML-Client erstellte Scikit-Learn-Modell im Bereitstellungsbereich. Informationen zur Verwendung des WML-Clients finden Sie in diesem Artikel.

Das Formularformat erfordert nur ein Eingabeschema, aber es hat auch ein Ausgabeschema.

Für Modelle


meta_props={
    client.repository.ModelMetaNames.NAME: "sample_iris_model",
    client.repository.ModelMetaNames.RUNTIME_UID: "scikit-learn_0.22-py3.6",
    client.repository.ModelMetaNames.TYPE: "scikit-learn_0.22",
    client.repository.ModelMetaNames.INPUT_DATA_SCHEMA: [{
        "id":"input",
        "type":"list",
        "fields":[
            {'name': 'sepal length (cm)', 'type': 'double'},
            {'name': 'sepal width (cm)', 'type': 'double'},
            {'name': 'petal length (cm)', 'type': 'double'},
            {'name': 'petal width (cm)', 'type': 'double'}
        ]
    }],
    client.repository.ModelMetaNames.OUTPUT_DATA_SCHEMA: {
        "id":"output",
        "fields": [
            {'name': 'iris_type', 'type': 'string','metadata': {'modeling_role': 'prediction'}}
        ]
    }
}

model_artifact = client.repository.store_model(model, meta_props=meta_props, training_data=X, training_target=y)
model_id = model_artifact['metadata']['guid']

(function)Im Falle von


meta_props = {
    client.repository.FunctionMetaNames.NAME: 'sample_iris_scoring_func',
    client.repository.FunctionMetaNames.RUNTIME_UID: "ai-function_0.1-py3.6",
    client.repository.FunctionMetaNames.SPACE_UID: space_id,
    client.repository.FunctionMetaNames.INPUT_DATA_SCHEMAS: [{
        "id":"input",
        "fields": [
            {"metadata": {}, "type": "double", "name": "sepal length (cm)", "nullable": False},
            {"metadata": {}, "type": "double", "name": "sepal width (cm)", "nullable": False},
            {"metadata": {}, "type": "double", "name": "petal length (cm)", "nullable": False},
            {"metadata": {}, "type": "double", "name": "petal width (cm)", "nullable": False}
        ]
    }],
    client.repository.FunctionMetaNames.OUTPUT_DATA_SCHEMAS: [{
        "id":"output",
        "fields": [
            {"metadata": {'modeling_role': 'prediction'}, "type": "string", "name": "iris_type", "nullable": False}
        ]
    }]
}

function_details = client.repository.store_function(meta_props=meta_props, function=iris_scoring)
function_id = function_details['metadata']['guid']

Hinweis: Änderungen gegenüber CP4D v3.0.1.

Genau genommen handelt es sich um eine Änderung gegenüber der WML-Client-Version v1.0.95 und nicht gegenüber der CP4D-Version. CP4D v3.0.1 enthält standardmäßig den WML-Client v1.0.95.

Die Änderung besteht darin, dass das Modelleingabeschema jetzt als Listentyp anstelle eines Diktattyps angegeben wird. Der obige Beispielcode gibt INPUT_DATA_SCHEMA als Listentyp an. Diese Änderung scheint mehreren Eingabedatentabellen zu entsprechen, wurde jedoch vor Version 1.0.95 als Diktattyp angegeben, auch wenn Sie aus Gründen der Abwärtskompatibilität den Diktattyp in Version 1.0.99 oder höher angeben Es wurde behoben, damit kein Fehler auftritt.

Außerdem ist beim Versuch ein Fehler aufgetreten, selbst wenn ich ihn in v1.0.95 als Listentyp angegeben habe. (Dies ist eine Anfrage damit) Es funktioniert gut mit v1.0.103, daher empfehlen wir, vor der Verwendung ein Upgrade mit `` `pip install -U watson-maschinell-lernen-client-V4``` durchzuführen.

Recommended Posts

Testen Sie online bereitgestellte Python-Modelle und -Funktionen mit Cloud Pack for Data mit formularformatierten Eingabedaten
Stellen Sie Funktionen mit Cloud Pak for Data bereit
Erfassung und Visualisierung von Sensordaten für das Pflanzenwachstum mit Intel Edison und Python
[GCP] Verfahren zum Erstellen einer Webanwendung mit Cloud-Funktionen (Python + Flask)
Datenpipeline-Aufbau mit Python und Luigi
Generieren Sie japanische Testdaten mit Python faker
Versuchen Sie, Python mit Google Cloud-Funktionen zu verwenden
Verwenden Sie Python und MeCab mit Azure-Funktionen
Erstellen Sie solche Testdaten mit Python (Teil 1)
Kausales Denken und kausale Suche von Python (für Anfänger)
cv2-Funktionen und Datentypen (OpenCV-Python-Bindung)
[Python of Hikari-] Kapitel 06-04 Funktionen (Argumente und Rückgabewerte 3)
Datenanalyse zur Verbesserung von POG 1 ~ Web Scraping mit Python ~
Liste der Python-Bibliotheken für Datenwissenschaftler und Dateningenieure
C-Sprache, Java, Python-Benchmarks mit Primfaktorisierung
[PyTorch Tutorial ⑦] Visualisieren von Modellen, Daten und Training mit Tensorboard
[Hikari-Python] Kapitel 06-01 Funktionen (integrierte Funktionen und Funktionsdefinitionen)
Untersuchen Sie den Java- und Python-Datenaustausch mit Apache Arrow
[Python of Hikari-] Kapitel 06-03 Funktionen (Argumente und Rückgabewerte 2)
Lassen Sie von Google Text-to-Speech Audiodaten (Kommentare) für Videomaterial erstellen (mit C # - und Python-Beispielen).
[Python / Ruby] Mit Code verstehen Wie man Daten aus dem Internet abruft und in CSV schreibt