Tutorial: Criar um modelo de Machine Learning no Power BITutorial: Build a Machine Learning model in Power BI

Neste artigo do tutorial, você usa o Machine Learning Automatizado para criar e aplicar um modelo de previsão binária no Power BI.In this tutorial article, you use Automated Machine Learning to create and apply a binary prediction model in Power BI. O tutorial inclui orientações para a criação de um fluxo de dados do Power BI e o uso das entidades definidas no fluxo de dados para treinar e validar um modelo de machine learning diretamente no Power BI.The tutorial includes guidance for creating a Power BI dataflow, and using the entities defined in the dataflow to train and validate a machine learning model directly in Power BI. Em seguida, usamos esse modelo na pontuação de novos dados para gerar previsões.We then use that model for scoring new data to generate predictions.

Primeiro, você criará um modelo de machine learning de Previsão Binária para prever a intenção de compra de compradores online com base em um conjunto de atributos da sessão online.First, you'll create a Binary Prediction machine learning model, to predict the purchase intent of online shoppers based on a set of their online session attributes. Usamos um conjunto de dados de machine learning de referência neste exercício.A benchmark machine learning dataset is used for this exercise. Depois de treinar um modelo, o Power BI gera automaticamente um relatório de validação explicando os resultados do modelo.Once a model is trained, Power BI will automatically generate a validation report explaining the model results. Em seguida, você pode examinar o relatório de validação e aplicar o modelo aos seus dados para pontuação.You can then review the validation report and apply the model to your data for scoring.

Este tutorial consiste nas seguintes etapas:This tutorial consists of following steps:

  • Criar um fluxo de dados de entradaCreate a dataflow with the input data
  • Criar e treinar um modelo de machine learningCreate and train a machine learning model
  • Examinar o relatório de validação do modeloReview the model validation report
  • Aplicar o modelo a uma entidade de fluxo de dadosApply the model to a dataflow entity
  • Usar a saída pontuada do modelo em um relatório do Power BIUsing the scored output from the model in a Power BI report

Criar um fluxo de dados de entradaCreate a dataflow with the input data

A primeira parte deste tutorial é criar um fluxo de dados com dados de entrada.The first part of this tutorial is to create a dataflow with input data. Esse processo consiste em algumas etapas, conforme mostrado nas seções a seguir, começando pela obtenção de dados.That process takes a few steps, as shown in the following sections, beginning with getting data.

Obter dadosGet data

A primeira etapa na criação de um fluxo de dados é ter suas fontes de dados prontas.The first step in creating a dataflow is to have your data sources ready. Em nosso caso, usamos um conjunto de dados de machine learning de um conjunto de sessões online, algumas das quais culminaram em uma compra.In our case, we use a machine learning dataset from a set of online sessions, some of which culminated in a purchase. O conjunto de dados contém um conjunto de atributos sobre essas sessões que usaremos para treinar nosso modelo.The dataset contains a set of attributes about these sessions, which we'll use for training our model.

Você pode baixar o conjunto de dados no site UC Irvine.You can download the dataset from the UC Irvine website. Para os fins deste tutorial, também temos isso disponível no link a seguir: online_shoppers_intention.csv.We also have this available, for the purpose of this tutorial, from the following link: online_shoppers_intention.csv.

Criar as entidadesCreate the entities

Para criar as entidades no fluxo de dados, entre no serviço do Power BI e navegue até um workspace na capacidade que tem a IA habilitada.To create the entities in your dataflow, sign into the Power BI service and navigate to a workspace on your capacity that has AI enabled.

Se ainda não tem um workspace, você pode criar um no serviço do Power BI escolhendo Workspaces no menu do painel de navegação à esquerda e selecionando Criar workspace na parte inferior do painel exibido.If you don't already have a workspace, you can create one by selecting Workspaces in the nav pane menu in the Power BI service, and select Create workspace at the bottom of the panel that appears. Um painel é exibido à direita para inserir os detalhes do workspace.This opens a panel on the right to enter the workspace details. Insira um nome para o espaço de trabalho e escolha Avançado.Enter a workspace name and select Advanced. Confirme se o workspace utiliza a Capacidade Dedicada usando o botão de opção e se está atribuído a uma instância de capacidade que tenha a visualização de IA habilitada.Confirm that the workspace uses Dedicated Capacity using the radio button, and that it's assigned to a capacity instance that has the AI preview turned on. Depois, selecione Salvar.Then select Save.

Criar um workspace

Após criar o espaço de trabalho, é possível escolher Ignorar na parte inferior direita da tela de Boas-vindas, conforme mostrado na imagem a seguir.Once the workspace is created, you can select Skip in the bottom right of the Welcome screen, as shown in the following image.

Ignorar se você tem um workspace

Escolha o botão Criar no canto superior direito do espaço de trabalho. Em seguida, escolha Fluxo de dados.Select the Create button at the top right of the workspace, and then select Dataflow.

Criar o fluxo de dados

Selecione Adicionar novas entidades.Select Add new entities. Isso inicia o editor do Power Query no navegador.This launches a Power Query editor in the browser.

Adicionar nova entidade

Escolha Arquivo de texto/CSV como uma fonte de dados, conforme mostrado na imagem a seguir.Select Text/CSV File as a data source, shown in the following image.

Arquivo de texto/CSV escolhido

Na página Conectar-se a uma fonte de dados que aparece a seguir, cole o link para o arquivo online_shoppers_intention. csv na caixa URL ou Caminho do arquivo e, em seguida, selecione Avançar.In the Connect to a data source page that appears next, paste the following link to the online_shoppers_intention.csv into the File path or URL box, and then select Next.

https://raw.githubusercontent.com/santoshc1/PowerBI-AI-samples/master/Tutorial_AutomatedML/online_shoppers_intention.csv

Caminho do arquivo

O Power Query Editor mostra uma versão prévia dos dados do arquivo CSV.The Power Query Editor shows a preview of the data from the CSV file. Você pode renomear a consulta para um nome mais amigável alterando o valor na caixa Nome localizada no painel direito.You can rename the query to a friendlier name by changing the value in the Name box found in the right pane. Por exemplo, altere o nome da consulta para Visitantes online.For example, you could change the Query name to Online Visitors.

Alterar para um nome amigável

O Power Query infere automaticamente os tipos de colunas.Power Query automatically infers the type of columns. Você pode alterar o tipo de coluna clicando no ícone de tipo de atributo na parte superior de cada cabeçalho de coluna.You can change the column type by clicking on the attribute type icon at the top of the column header. Neste exemplo, alteramos o tipo da coluna de Receita para Verdadeiro/Falso.In this example, we change the type of the Revenue column to True/False.

Alterar tipo de dados

Escolha o botão Salvar & fechar para fechar o Power Query Editor.Select the Save & close button to close Power Query Editor. Forneça um nome para o fluxo de dados e, em seguida, escolha Salvar na caixa de diálogo, conforme mostrado na imagem a seguir.Provide a name for the dataflow, and then select Save on the dialog, as shown in the following image.

Salvar o fluxo de dados

Criar e treinar um modelo de machine learningCreate and train a machine learning model

Para adicionar um modelo de machine learning, selecione o botão Aplicar modelo ML na lista Ações da entidade base que contém seus dados de treinamento e informações de rótulo e, em seguida, escolha Adicionar um modelo de machine learning.To add a machine learning model, Select the Apply ML model button in the Actions list for the base entity that contains your training data and label information, and then select Add a machine learning model.

Adicionar um modelo de machine learning

A primeira etapa para criar o modelo de machine learning é identificar os dados históricos, incluindo o campo de resultado que você deseja prever.The first step for creating our machine learning model is to identify the historical data including the outcome field that you want to predict. O modelo será criado de acordo com o que foi aprendido com esses dados.The model will be created by learning from this data.

No caso do conjunto de dados que estamos usando, este é o campo Receita.In the case of the dataset we're using, this is the Revenue field. Escolha Receita como o valor do “Campo de resultado” e, em seguida, escolha Avançar.Select Revenue as the 'Outcome field' value and then select Next.

Escolher dados históricos

Em seguida, devemos escolher o tipo de modelo de machine learning a ser criado.Next, we must select the type of machine learning model to create. O Power BI analisa os valores no campo de resultado que você identificou e sugere os tipos de modelos de machine learning que podem ser criados para prever esse campo.Power BI analyzes the values in the outcome field that you've identified and suggests the types of machine learning models that can be created to predict that field.

Nesse caso, como estamos prevendo um resultado binário de se um usuário fará ou não uma compra, é recomendável fazer uma Previsão Binária.In this case since we're predicting a binary outcome of whether a user will make a purchase or not, Binary Prediction is recommended. Como desejamos prever os usuários que farão uma compra, selecione Verdadeiro como o resultado da Receita em que você está mais interessado.Since we are interested in predicting users who will make a purchase, select True as the Revenue outcome that you're most interested in. Além disso, você pode fornecer rótulos amigáveis para os resultados que serão usados no relatório gerado automaticamente que resumirá os resultados da validação do modelo.Additionally, you can provide friendly labels for the outcomes to be used in the automatically generated report that will summarize the results of the model validation. Em seguida, selecione Avançar.Then select Next.

Previsão binária escolhida

Na etapa seguinte, o Power BI faz um exame preliminar de uma amostra dos dados e sugere as entradas que podem produzir previsões mais precisas.Next, Power BI does a preliminary scan of a sample of your data and suggests the inputs that may produce more accurate predictions. Se o Power BI não recomendar um campo, será fornecida uma explicação ao lado dele.If Power BI doesn't recommend a field, an explanation would be provided next to it. Você tem a opção de alterar as seleções para incluir apenas os campos que deseja que o modelo estude ou pode selecionar todos os campos marcando a caixa de seleção ao lado do nome da entidade.You have the option to change the selections to include only the fields you want the model to study, or you can select all the fields by selecting the checkbox next to the entity name. Escolha Avançar para aceitar as entradas.Select Next to accept the inputs.

Selecione Avançar

Na etapa final, devemos fornecer um nome para o modelo.In the final step, we must provide a name for our model. Nomeie o modelo de Previsão da Intenção de Compra.Name the model Purchase Intent Prediction. Você pode optar por reduzir o tempo de treinamento para ver resultados rápidos ou aumentar o tempo gasto no treinamento para obter o melhor modelo.You can choose to reduce the training time to see quick results or increase the amount of time spent in training to get the best model. Em seguida, escolha Salvar e treinar para começar o treinamento do modelo.Then select Save and train to start training the model.

Salvar o modelo

O processo de treinamento começará dando exemplos, normalizando seus dados históricos e dividindo seu conjunto de dados em duas novas entidades Dados de treinamento da previsão de intenção de compra e Dados de teste da previsão de intenção de compra.The training process will begin by sampling and normalizing your historical data and splitting your dataset into two new entities Purchase Intent Prediction Training Data and Purchase Intent Prediction Testing Data.

Dependendo do tamanho do conjunto de dados, o processo de treinamento pode levar de alguns minutos até o tempo previamente escolhido.Depending on the size of the dataset, the training process can take anywhere from a few minutes to the training time selected at the previous screen. Neste ponto, você pode ver o modelo na guia Modelos de machine learning do fluxo de dados.At this point, you can see the model in the Machine learning models tab of the dataflow. O status Pronto indica que o modelo foi colocado na fila para treinamento ou está em treinamento.The Ready status indicates that the model has been queued for training or is under training.

Pode, entretanto, confirmar que o modelo está sendo treinado e validado por meio do status do fluxo de dados.You can confirm that the model is being trained and validated through the status of the dataflow. Isso é exibido como uma atualização de dados em andamento na guia Fluxos de dados do espaço de trabalho.This appears as a data refresh in progress in the Dataflows tab of the workspace.

Pronto para treinamento

Após a conclusão do treinamento do modelo, o fluxo de dados exibe um tempo de atualização corrigido.Once the model training is completed, the dataflow displays an updated refresh time. Você pode confirmar se o modelo está treinado navegando até a guia Modelos de machine learning no fluxo de dados.You can confirm that the model is trained, by navigating to the Machine learning models tab in the dataflow. O modelo que você criou deve exibir o status Treinado e o horário do Último Treinamento já deve estar atualizado.The model you created should show status as Trained and the Last Trained time should now be updated.

Último treino em

Examinar o relatório de validação do modeloReview the model validation report

Para examinar o relatório de validação de modelo, na guia Modelos de Machine Learning, escolha o botão Exibir relatório de treinamento na coluna Ações do modelo.To review the model validation report, in the Machine learning models tab, select the View training report button in the Actions column for the model. Este relatório descreve qual a probabilidade do seu modelo de machine learning ser executado.This report describes how your machine learning model is likely to perform.

Na página Desempenho do Modelo do relatório, escolha Ver principais influenciadores para exibir os principais indicadores do modelo.In the Model Performance page of the report, select See top predictors to view the top predictors for your model. Você pode escolher um dos indicadores para ver como a distribuição de resultados está associada a esse indicador.You can select one of the predictors to see how the outcome distribution is associated with that predictor.

Desempenho do modelo

Usar a segmentação Limite de probabilidade na página Desempenho do modelo para examinar sua influência na Precisão e Recall do modelo.You can use the Probability Threshold slicer on the Model Performance page to examine its influence on the Precision and Recall for the model.

Limite de probabilidade

As outras páginas do relatório descrevem as métricas de desempenho estatístico para o modelo.The other pages of the report describe the statistical performance metrics for the model.

O relatório também contém uma página Detalhes do Treinamento, que descreve as diferentes iterações executadas, como os recursos foram extraídos das entradas e os hiperparâmetros do modelo final usado.The report also includes a Training Details page that describes the different iterations that were run, how features were extracted from the inputs, and the hyperparameters for the final model used.

Aplicar o modelo a uma entidade de fluxo de dadosApply the model to a dataflow entity

Selecione o botão Aplicar modelo na parte superior do relatório para chamar esse modelo.Select the Apply model button at the top of the report to invoke this model. Na caixa de diálogo Aplicar, especifique a entidade de destino que tem os dados de origem aos quais o modelo deve ser aplicado.In the Apply dialog, you can specify the target entity that has the source data to which the model should be applied.

Aplicar o modelo

Quando solicitado, você deve Atualizar o fluxo de dados para exibir os resultados do modelo.When prompted, you must Refresh the dataflow to preview the results of your model.

A aplicação do modelo criará duas novas entidades, uma com o sufixo enriquecido < nome_modelo> e outra com enriquecido <nome_modelo> explicações.Applying the model will create two new entities, with the suffix enriched <model_name> and enriched <model_name> explanations. Em nosso caso, aplicar o modelo à entidade Visitantes Online criará Previsão de Intenção de Compra enriquecida de Visitantes Online, que inclui a saída prevista do modelo, e Explicações da Previsão de Intenção de Compra aprimorada de Visitantes Online, que contém os principais influenciadores específicos do registro para a previsão.In our case, applying the model to the Online Visitors entity will create Online Visitors enriched Purchase Intent Prediction which includes the predicted output from the model, and Online Visitors enriched Purchase Intent Prediction explanations which contains top record-specific influencers for the prediction.

A aplicação de um Modelo de Previsão Binária adiciona quatro colunas com resultado previsto, pontuação de probabilidade, principais influenciadores específicos do registro para a previsão e o índice da explicação, sendo que cada um deles tem um prefixo com o nome da coluna especificado.Applying a Binary Prediction model adds four columns with predicted outcome, probability score, the top record-specific influencers for the prediction, and explanation index each prefixed with the column name specified.

Três colunas de resultados

Após finalizar a conclusão da atualização do fluxo de dados, você pode escolher a entidade Previsão de Intenção de Compra enriquecida de Visitantes Online para exibir os resultados.Once the dataflow refresh is completed, you can select the Online Visitors enriched Purchase Intent Prediction entity to view the results.

Exibir os resultados

Você também pode invocar qualquer modelo de AutoML no workspace diretamente do Editor do Power Query em seu fluxo de dados.You can also invoke any AutoML model in the workspace, directly from the Power Query Editor in your dataflow. Para acessar os modelos de AutoML, selecione o botão Editar da entidade que você deseja aprimorar com insights provenientes do modelo de AutoML, como mostrado na imagem a seguir.To access the AutoML models, select the Edit button for the entity that you want to enrich with insights from your AutoML model, as shown in the following image.

Editar a entidade

Selecione o botão Editar para abrir o Power Query Editor para as entidades em seu fluxo de dados.Selecting the Edit button opens the Power Query Editor for the entities in your dataflow. Selecione o botão Insights da IA na faixa de opções.Select the AI Insights button in the ribbon.

Insights da IA

Selecione a pasta Modelos de Machine Learning do Power BI no menu do painel de navegação.Select the Power BI Machine Learning Models folder from the nav pane menu. Todos os modelos de AutoML aos quais você tem acesso são listados aqui como funções do Power Query.All the AutoML models to which you have access are listed here as Power Query functions. Além disso, os parâmetros de entrada do modelo de AutoML são mapeados automaticamente como parâmetros da função correspondente do Power Query.Also, the input parameters for the AutoML model are automatically mapped as parameters of the corresponding Power Query function. Observe que o mapeamento automático de parâmetros ocorrerá somente se o nome e o tipo de dados do parâmetro forem os mesmos.Note that automatic mapping of parameters happens only if the name and data type of the parameter is the same.

Para invocar um modelo de AutoML, especifique qualquer uma das colunas da entidade escolhida como uma entrada na lista suspensa.To invoke an AutoML model, you can specify any of the selected entity's columns as an input from the drop-down. Você também pode especificar um valor constante para ser usado como uma entrada, alternando o ícone da coluna à esquerda da caixa de diálogo de entrada.You can also specify a constant value to be used as an input by toggling the column icon to the left of the input dialog.

Navegador de funções PQO

Selecione Aplicar para exibir a visualização da saída do modelo de AutoML como uma nova coluna na tabela de entidades.Select Apply to view the preview of the AutoML model's output as a new columns in the entity table. Você também verá a invocação do modelo como uma etapa aplicada à consulta.You will also see the model invocation as an applied step for the query.

Exibir os resultados

Depois de salvar o fluxo de dados, o modelo será automaticamente invocado quando o fluxo de dados for atualizado com qualquer linha nova ou atualizada na tabela de entidades.Once you save your dataflow, the model is automatically invoked when the dataflow is refreshed, for any new or updated rows in the entity table.

Usar a saída pontuada do modelo em um relatório do Power BIUsing the scored output from the model in a Power BI report

Para usar a saída pontuada do seu modelo de machine learning, conecte-se ao fluxo de dados no Power BI Desktop usando o conector de Fluxo de dados.To use the scored output from your machine learning model you can connect to your dataflow from the Power BI desktop, using the Dataflows connector. A entidade Previsão de Intenção de Compra enriquecida de Visitantes online já pode ser usada para incorporar as previsões do seu modelo nos relatórios do Power BI.The Online Visitors enriched Purchase Intent Prediction entity can now be used to incorporate the predictions from your model in Power BI reports.

Próximas etapasNext steps

Neste tutorial, você criou e aplicou um modelo de previsão binária no Power BI usando estas etapas:In this tutorial, you created and applied a binary prediction model in Power BI using these steps:

  • Criar um fluxo de dados de entradaCreate a dataflow with the input data
  • Criar e treinar um modelo de machine learningCreate and train a machine learning model
  • Examinar o relatório de validação do modeloReview the model validation report
  • Aplicar o modelo a uma entidade de fluxo de dadosApply the model to a dataflow entity
  • Usar a saída pontuada do modelo em um relatório do Power BIUsing the scored output from the model in a Power BI report

Para saber mais sobre a automação do Machine Learning no Power BI, confira Machine Learning Automatizado no Power BI.For more information about Machine Learning automation in Power BI, see Automated Machine Learning in Power BI.