Aracılığıyla paylaş


SynapseML ile model oluşturma

Bu makalede SynapseML ile makine öğrenmesi modeli oluşturma ve karmaşık makine öğrenmesi görevlerini kolaylaştırma işlemleri gösterilmektedir. Özellik geliştirme aşaması ve LightGBM regresyon aşaması ile eğitim işlem hattı oluşturmak için SynapseML kullanın. İşlem hattı, kitap inceleme metninden derecelendirmeleri tahmin eder. Makine öğrenmesi sorunlarını çözmek için SynapseML ile önceden oluşturulmuş modelleri kullanma burada anlatılabilir.

Önkoşullar

Kaynakları hazırlama

Modeli ve işlem hattını oluşturmak için ihtiyacınız olan araçları ve kaynakları ayarlayın.

  1. Yeni not defteri oluşturma
  2. Not defterinizi bir göle ekleyin. Explorer'daLakehouses'ı genişletin ve Ekle'yi seçin.
  3. Hızlı Başlangıç: Azure AI hizmetleri için çok hizmetli bir kaynak oluşturma başlığı altındaki yönergeleri izleyerek azure yapay zeka hizmetleri anahtarını alın.
  4. Bir Azure Key Vault örneği oluşturun ve Azure AI hizmetleri anahtarınızı anahtar kasasına gizli dizi olarak ekleyin.
  5. Anahtar kasası adınızı ve gizli dizi adınızı kaydedin. Bu makalenin devamında tek adımlı dönüşümü çalıştırmak için bu bilgilere ihtiyacınız vardır.

Ortamı ayarlama

Not defterinizde SynapseML kitaplıklarını içeri aktarın ve Spark oturumunuzu başlatın.

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

spark = SparkSession.builder.getOrCreate()

Veri kümesi yükleme

Veri kümenizi yükleyip eğitim ve test kümelerine bölün.

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

display(train)

Eğitim işlem hattını oluşturma

kitaplıktan TextFeaturizer kullanarak verileri synapse.ml.featurize.text öne çıkartan ve işlevini kullanarak LightGBMRegressor bir derecelendirme türeten bir işlem hattı oluşturun.

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)

Test verilerinin çıkışını tahmin edin

Test verilerinin çıkışını transform tahmin etmek ve veri çerçevesi olarak görüntülemek için modeldeki işlevi çağırın.

display(model.transform(test))

Verileri tek adımda dönüştürmek için Azure AI hizmetlerini kullanma

Alternatif olarak, önceden oluşturulmuş bir çözümü olan bu tür görevler için SynapseML'nin Azure AI hizmetleriyle tümleştirmesini kullanarak verilerinizi tek adımda dönüştürebilirsiniz. Bu değiştirmelerle aşağıdaki kodu çalıştırın:

  • değerini Azure AI Services anahtar gizli dizinizin adıyla değiştirin <secret-name> .
  • değerini anahtar kasanızın adıyla değiştirin <key-vault-name> .
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))