Compartilhar via


Como usar o Notebook do Azure Machine Learning no Spark

Observação

Desativaremos o Microsoft Azure HDInsight no AKS em 31 de janeiro de 2025. Para evitar o encerramento abrupto das suas cargas de trabalho, você precisará migrá-las para o Microsoft Fabric ou para um produto equivalente do Azure antes de 31 de janeiro de 2025. Os clusters restantes em sua assinatura serão interrompidos e removidos do host.

Somente o suporte básico estará disponível até a data de desativação.

Importante

Esse recurso está atualmente na visualização. Os Termos de uso complementares para versões prévias do Microsoft Azure 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, confira Informações sobre a versão prévia do Azure HDInsight no AKS. No caso de perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para ver mais atualizações sobre a Comunidade do Azure HDInsight.

O aprendizado de máquina é uma tecnologia em crescimento, que permite que os computadores aprendam automaticamente com dados anteriores. O aprendizado de máquina usa vários algoritmos para criar modelos matemáticos e fazer previsões usando informações ou dados históricos. 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 de tutorial a seguir mostra um exemplo de treinamento de modelos de machine learning em dados tabulares. Você pode importar esse notebook e executá-lo por conta própria.

Carregar o CSV em seu armazenamento

  1. Localizar o nome do armazenamento e do contêiner na exibição JSON do portal

    Captura de tela mostrando a exibição JSON.

  2. Navegue até o seu armazenamento HDI principal>contêiner>pasta base> carregar o CSV

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

    Captura de tela mostrando como carregar um arquivo CSV.

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

    Captura de tela mostrando o Jupyter notebook.

  4. Importe bibliotecas do MLlib do Spark 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. Leia o CSV em um dataframe do Spark

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

  6. Divida os dados para treinamento e teste

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

  7. Crie o pipeline e treine 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. Avalie 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.