Como usar o Notebook do Azure Machine Learning no Spark

Importante

O Azure HDInsight no AKS se aposentou em 31 de janeiro de 2025. Saiba mais com este comunicado.

Você precisa migrar suas cargas de trabalho para microsoft fabric ou um produto equivalente do Azure para evitar o encerramento abrupto de suas cargas de trabalho.

Importante

Esse recurso está atualmente em versão prévia. Os termos de uso complementares para o Microsoft Azure Previews incluem mais termos legais que se aplicam aos recursos do Azure que estão em versão beta, em versão prévia ou ainda não lançados em disponibilidade geral. Para obter informações sobre essa versão prévia específica, consulte a prévia do Azure HDInsight no AKS . Para perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para obter mais atualizações na Comunidade Azure HDInsight .

O aprendizado de máquina é uma tecnologia em crescimento, que permite que os computadores aprendam automaticamente com dados anteriores. O machine learning usa vários algoritmos para criar modelos matemáticos e fazer previsões usando dados históricos ou informações. Temos um modelo definido para alguns parâmetros e o aprendizado é a execução de um programa de computador para otimizar os parâmetros do modelo usando os dados de treinamento ou a experiência. O modelo pode ser preditivo para fazer previsões no futuro ou descritivo para obter conhecimento dos dados.

O notebook do tutorial a seguir mostra um exemplo de treinamento de modelos de machine learning em dados tabulares. Você pode importar este notebook e executá-lo por conta própria.

Carregue o CSV no seu armazenamento

  1. Localize o nome do armazenamento e do contêiner na visualização JSON do portal

    Captura de tela mostrando o modo de exibição JSON.

  2. Navegue até o armazenamento principal de HDI>no contêiner>na pasta base> carregue o CSV

    Captura de tela mostrando como navegar até o armazenamento e o contêiner.

    Captura de tela mostrando como carregar o arquivo CSV.

  3. Faça logon no cluster e abra o Jupyter Notebook

    captura de tela mostrando o Jupyter Notebook.

  4. Importar bibliotecas do Spark MLlib para criar o pipeline

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

    Captura de tela mostrando como iniciar o aplicativo Spark.

  5. Ler o CSV em um dataframe do Spark

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

  6. Dividir os dados para treinamento e teste

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

  7. Criar o pipeline e treinar o modelo

    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)
    

    Captura de tela mostrando como executar o modelo de teste.

  8. Avaliar a precisão do modelo

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

    Captura de tela mostrando como imprimir a saída.