Jaa


Mallin luominen SynapseML:n avulla

Tässä artikkelissa kerrotaan, miten koneoppimismalli luodaan SynapseML:n avulla ja miten se yksinkertaistaa monimutkaisia koneoppimistehtäviä. SynapseML:n avulla voit rakentaa harjoitusputken, jossa on ominaisuusvaihe ja LightGBM-regressiovaihe. Putki ennustaa arvosanat kirja-arvostelutekstistä. Näin käytät valmiita malleja SynapseML:llä koneoppimisongelmien ratkaisemiseen.

Edellytykset

Valmistele resurssit

Määritä työkalut ja resurssit, joita tarvitset mallin ja putken rakentamiseen.

  1. Uuden muistikirjan luominen
  2. Liitä muistikirjasi Lakehouseen. Laajenna ResurssienhallinnassaLakehouses ja valitse sitten Lisää.
  3. Hanki Foundry Tools -avain seuraamalla ohjeita Quickstart: Luo monipalveluresurssi Foundry Toolsille.
  4. Luo Azure Key Vault -instanssi ja lisää Foundry Tools -avain avainholviin salaisuutena.
  5. Tallenna avainsäilön nimi ja salainen nimi. Tarvitset näitä tietoja, jotta voit suorittaa yksivaiheisen muunnoksen myöhemmin tässä artikkelissa.

Ympäristön määrittäminen

Tuo muistikirjassa SynapseML-kirjastot ja alusta Spark-istuntosi.

from pyspark.sql import SparkSession
from synapse.ml.core.platform import *

spark = SparkSession.builder.getOrCreate()

Tietojoukon lataaminen

Lataa tietojoukkosi ja jaa se juna- ja testijoukkoihin.

train, test = (
    spark.read.parquet(
        "wasbs://publicwasb@mmlspark.blob.core.windows.net/BookReviewsFromAmazon10K.parquet"
    )
    .limit(1000)
    .cache()
    .randomSplit([0.8, 0.2])
)

display(train)

Luo koulutusputki

Luo jakso, joka sisältää -kirjaston TextFeaturizer tiedot synapse.ml.featurize.text ja johtaa luokituksen -funktion LightGBMRegressor avulla.

from pyspark.ml import Pipeline
from synapse.ml.featurize.text import TextFeaturizer
from synapse.ml.lightgbm import LightGBMRegressor

model = Pipeline(
    stages=[
        TextFeaturizer(inputCol="text", outputCol="features"),
        LightGBMRegressor(featuresCol="features", labelCol="rating", dataTransferMode="bulk")
    ]
).fit(train)

Testitietojen tulosten ennustaminen

transform Kutsu mallin funktiota, joka ennustaa ja näyttää testitietojen tuloksen tietokehyksenä.

display(model.transform(test))

Käytä Foundry Toolsia datan muuntamiseen yhdessä vaiheessa

Vaihtoehtoisesti tällaisissa tehtävissä, joissa on valmiiksi rakennettu ratkaisu, voit käyttää SynapseML:n integraatiota Foundry Toolsin kanssa muuntaaksesi tietosi yhdellä askeleella. Suorita seuraava koodi näillä korvaamisilla:

  • Korvaa <secret-name> se Foundry Toolsin avaimen salaisuuden nimellä.
  • Korvaa <key-vault-name> Key Vaultin nimellä.
from synapse.ml.services import TextSentiment
from synapse.ml.core.platform import find_secret

model = TextSentiment(
    textCol="text",
    outputCol="sentiment",
    subscriptionKey=find_secret("<secret-name>", "<key-vault-name>")
).setLocation("eastus")

display(model.transform(test))