Använda Azure Machine Learning Notebook på Spark

Viktigt!

Den här funktionen finns i förhandsgranskning. De kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure innehåller fler juridiska villkor som gäller för Azure-funktioner som är i betaversion, förhandsversion eller på annat sätt ännu inte har släppts i allmän tillgänglighet. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. Om du vill ha frågor eller funktionsförslag skickar du en begäran på AskHDInsight med informationen och följer oss för fler uppdateringar i Azure HDInsight Community.

Maskininlärning är en växande teknik som gör det möjligt för datorer att lära sig automatiskt från tidigare data. Maskininlärning använder olika algoritmer för att skapa matematiska modeller och göra förutsägelser med historiska data eller information. Vi har en modell som har definierats upp till vissa parametrar, och inlärning är körningen av ett datorprogram för att optimera modellens parametrar med hjälp av träningsdata eller erfarenhet. Modellen kan vara förutsägande för att göra förutsägelser i framtiden eller beskrivande för att få kunskap från data.

Följande notebook-fil för självstudier visar ett exempel på hur du tränar maskininlärningsmodeller på tabelldata. Du kan importera den här notebook-filen och köra den själv.

Ladda upp CSV:en till lagringen

  1. Hitta ditt lagrings- och containernamn i JSON-portalvyn

    Skärmbild som visar JSON-vyn.

    Skärmbild som visar resurs-JSON-vyn.

  2. Navigera till din primära HDI-lagringscontainerbasmapp>>> och ladda upp CSV:en

    Skärmbild som visar hur du navigerar till lagring och container.

    Skärmbild som visar hur du laddar upp CSV-fil.

  3. Logga in på klustret och öppna Jupyter Notebook

    Skärmbild som visar Jupyter Notebook.

  4. Importera Spark MLlib-bibliotek för att skapa pipelinen

    import pyspark
    from pyspark.ml import Pipeline, PipelineModel
    from pyspark.ml.classification import LogisticRegression
    from pyspark.ml.feature import VectorAssembler, StringIndexer, IndexToString
    

    Skärmbild som visar hur du startar Spark-programmet.

  5. Läsa CSV:en i en Spark-dataram

    df = spark.read.("abfss:///iris_csv.csv",inferSchema=True,header=True)

  6. Dela upp data för träning och testning

    iris_train, iris_test = df.randomSplit([0.7, 0.3], seed=123)

  7. Skapa pipelinen och träna modellen

    assembler = VectorAssembler(inputCols=['sepallength', 'sepalwidth', 'petallength', 'petalwidth'],outputCol="features",handleInvalid="skip")
    indexer = StringIndexer(inputCol="class", outputCol="classIndex", handleInvalid="skip")
    classifier = LogisticRegression(featuresCol="features",
                                    labelCol="classIndex",
                                    maxIter=10,
                                    regParam=0.01)
    
    pipeline = Pipeline(stages=[assembler,indexer,classifier])
    model = pipeline.fit(iris_train)
    
    # Create a test `dataframe` with predictions from the trained model
    
    test_model = model.transform(iris_test)
    
    # Taking an output from the test dataframe with predictions
    
    test_model.take(1)
    

    Skärmbild som visar hur du kör testmodellen.

  8. Utvärdera modellens noggrannhet

    import pyspark.ml.evaluation as ev
    evaluator = ev.MulticlassClassificationEvaluator(labelCol='classIndex')
    
    print(evaluator.evaluate(test_model,{evaluator.metricName: 'accuracy'}))
    

    Skärmbild som visar hur du skriver ut utdata.