Kurz: Vytvoření modelu strojového učení v Power BITutorial: Build a Machine Learning model in Power BI

V tomto výukovém článku použijete automatizované strojové učení k vytvoření a použití modelu binární předpovědi v Power BI.In this tutorial article, you use Automated Machine Learning to create and apply a binary prediction model in Power BI. Kurz obsahuje pokyny k vytvoření toku dat v Power BI a použití entit definovaných v toku dat pro trénování a ověření modelu strojového učení přímo v 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. Potom použijeme model ke stanovení skóre nových dat a generování předpovědí.We then use that model for scoring new data to generate predictions.

Nejprve vytvoříte model strojového učení pro binární předpověď, abyste mohli předpovědět nákupní záměr online kupců na základě sady atributů jejich online relace.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. Pro účely tohoto cvičení použijeme testovací datovou sadu strojového učení.A benchmark machine learning dataset is used for this exercise. Po vytrénování modelu Power BI automaticky vygeneruje ověřovací sestavu, která vysvětluje výsledky modelu.Once a model is trained, Power BI will automatically generate a validation report explaining the model results. Ověřovací sestavu můžete potom zkontrolovat a model použít u svých dat pro stanovení skóre.You can then review the validation report and apply the model to your data for scoring.

Tento kurz sestává z následujících kroků:This tutorial consists of following steps:

  • Vytvoření toku dat se vstupními datyCreate a dataflow with the input data
  • Vytvoření a trénování modelu strojového učeníCreate and train a machine learning model
  • Kontrola ověřovací sestavy modeluReview the model validation report
  • Použití modelu u entity toku datApply the model to a dataflow entity
  • Použití výstupu se skóre z modelu v sestavě Power BIUsing the scored output from the model in a Power BI report

Vytvoření toku dat se vstupními datyCreate a dataflow with the input data

V první části tohoto kurzu vytvoříme tok dat se vstupními daty.The first part of this tutorial is to create a dataflow with input data. Tento proces zahrnuje několik kroků, jak je uvedeno v dalších částech počínaje získáním dat.That process takes a few steps, as shown in the following sections, beginning with getting data.

Získat dataGet data

Prvním krokem při vytváření toku dat je mít připraveny zdroje dat.The first step in creating a dataflow is to have your data sources ready. V našem případě použijeme datovou sadu strojového učení ze sady online relací, z nichž některé vyústily v prodej.In our case, we use a machine learning dataset from a set of online sessions, some of which culminated in a purchase. Datová sada obsahuje sadu atributů souvisejících s těmito relacemi, které použijeme pro trénování našeho modelu.The dataset contains a set of attributes about these sessions, which we'll use for training our model.

Datovou sadu si můžete stáhnout z webu UC Irvine.You can download the dataset from the UC Irvine website. Pro účely tohoto kurzu máme také k dispozici soubor, který můžete stáhnout zde: online_shoppers_intention.csv.We also have this available, for the purpose of this tutorial, from the following link: online_shoppers_intention.csv.

Vytvoření entitCreate the entities

Pokud chcete ve svém toku dat vytvořit entity, přihlaste se ke službě Power BI a přejděte do pracovního prostoru ve vyhrazené kapacitě, která má povolenou umělou inteligenci.To create the entities in your dataflow, sign into the Power BI service and navigate to a workspace on your dedicated capacity that has AI enabled.

Pokud ještě nemáte pracovní prostor, můžete si ho vytvořit výběrem možnosti Pracovní prostory v nabídce navigačního podokna služby Power BI a výběrem možnosti Vytvořit pracovní prostor dole na zobrazeném panelu.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. Tím se napravo otevře panel, do kterého můžete zadat podrobnosti o pracovním prostoru.This opens a panel on the right to enter the workspace details. Zadejte název pracovního prostoru a vyberte Upřesnit.Enter a workspace name and select Advanced. Pohledem na přepínač zkontrolujte, že pracovní prostor používá vyhrazenou kapacitu a že je přiřazen instanci vyhrazené kapacity, která má zapnutou verzi Preview umělé inteligence.Confirm that the workspace uses Dedicated Capacity using the radio button, and that it's assigned to a dedicated capacity instance that has the AI preview turned on. Pak vyberte Uložit.Then select Save.

Vytvoření pracovního prostoru

Po vytvoření pracovního prostoru můžete v pravém dolním rohu úvodní obrazovky vybrat možnost Přeskočit, jak je znázorněno na následujícím obrázku.Once the workspace is created, you can select Skip in the bottom right of the Welcome screen, as shown in the following image.

Pokud už máte pracovní prostor, tuto část přeskočte.

V pracovním prostoru vpravo nahoře vyberte tlačítko Vytvořit a pak vyberte Tok dat.Select the Create button at the top right of the workspace, and then select Dataflow.

Vytvoření toku dat

Vyberte Přidat nové entity.Select Add new entities. Tím spustíte editor Power Query v prohlížeči.This launches a Power Query editor in the browser.

Přidání nové entity

Jako zdroj dat vyberte textový soubor nebo soubor CSV, jak je znázorněno na následujícím obrázku.Select Text/CSV File as a data source, shown in the following image.

Vybraný textový soubor nebo soubor CSV

Na stránce Připojení ke zdroji dat, která se zobrazí, vložte následující odkaz na soubor online_shoppers_intention.csv do pole Cesta k souboru nebo URL a potom vyberte Další.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

Cesta k souboru

Editor Power Query zobrazí náhled dat ze souboru CSV.The Power Query Editor shows a preview of the data from the CSV file. Dotaz můžete přejmenovat, aby byl popisnější, a to tak, že změníte hodnotu v poli Název, které se nachází v pravém podokně.You can rename the query to a friendlier name by changing the value in the Name box found in the right pane. Název Dotaz můžete například změnit na Online návštěvníci.For example, you could change the Query name to Online Visitors.

Změna na popisný název

Power Query automaticky odvodí typ sloupců.Power Query automatically infers the type of columns. Typ sloupce můžete změnit kliknutím na ikonu typ atributu v horní části záhlaví sloupce.You can change the column type by clicking on the attribute type icon at the top of the column header. V tomto příkladu změníme typ sloupce výnosů na True/False.In this example, we change the type of the Revenue column to True/False.

Změna datového typu

Zavřete editor Power Query výběrem tlačítka Uložit a zavřít.Select the Save & close button to close Power Query Editor. Zadejte název toku dat a potom v dialogovém okně vyberte Uložit, jak je znázorněno na následujícím obrázku.Provide a name for the dataflow, and then select Save on the dialog, as shown in the following image.

Uložení toku dat

Vytvoření a trénování modelu strojového učeníCreate and train a machine learning model

Pokud chcete přidat model strojového učení, vyberte tlačítko Použijte model ML v seznamu Akce u základní entity, který obsahuje trénovací data a informace popisku, a potom vyberte Přidat model strojového učení.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.

Přidat model strojového učení

Prvním krokem vytvoření modelu strojového učení je identifikace historických dat obsahujících pole výsledku, který chcete předpovědět.The first step for creating our machine learning model is to identify the historical data including the outcome field that you want to predict. Model se vytvoří učením z těchto dat.The model will be created by learning from this data.

V případě datové sady, kterou používáme, se jedná o pole Revenue.In the case of the dataset we're using, this is the Revenue field. Jako hodnotu pole výsledku vyberte Revenue a potom vyberte Další.Select Revenue as the 'Outcome field' value and then select Next.

Výběr historických dat

Dále musíme vybrat typ modelu strojového učení, který chceme vytvořit.Next, we must select the type of machine learning model to create. Power BI analyzuje hodnoty v poli výsledku, které jste identifikovali, a navrhne typy modelů strojového učení, které lze pro předpovídání tohoto pole vytvořit.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.

V tomto případě předpovídáme binární výsledek, zda uživatel provede nákup, nebo ne, a proto je vhodné vybrat Binární předpověď.In this case since we're predicting a binary outcome of whether a user will make a purchase or not, Binary Prediction is recommended. Vzhledem k tomu, že vás zajímá předpověď uživatelů, kteří provedou nákup, jako výsledek pro Revenue, který vás zajímá, vyberte True.Since we are interested in predicting users who will make a purchase, select True as the Revenue outcome that you're most interested in. Dále můžete zadat smysluplnější popisky výsledků pro použití v automaticky generované sestavě, která shrne výsledky ověření modelu.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. Pak vyberte Další.Then select Next.

Vybraná binární předpověď

V dalším kroku Power BI předběžně prohledá vzorek vašich dat a navrhne vstupy, které mohou vést k přesnějším předpovědím.Next, Power BI does a preliminary scan of a sample of your data and suggests the inputs that may produce more accurate predictions. Pokud Power BI nedoporučí pole, uvede vedle něj vysvětlení.If Power BI doesn't recommend a field, an explanation would be provided next to it. Máte možnost změnit výběr tak, aby obsahoval pouze pole, která má model prostudovat, nebo můžete vybrat všechna pole zaškrtnutím políčka vedle názvu entity.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. Výběrem možnosti Další přijměte tyto vstupy.Select Next to accept the inputs.

Výběr zaškrtávacího políčka Další

V posledním kroku je nutné zadat název modelu.In the final step, we must provide a name for our model. Použijte název Purchase Intent Prediction (Předpověď nákupního záměru).Name the model Purchase Intent Prediction. Můžete si vybrat, že se má zkrátit doba trénování, aby se zobrazily rychlé výsledky, nebo prodloužit délku doby strávené trénováním, abyste získali nejlepší model.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. Pak vyberte Uložit a natrénovat a začněte s trénováním modelu.Then select Save and train to start training the model.

Uložení modelu

Proces trénování se zahájí vzorkováním a normalizací historických dat a rozdělením datové sady do dvou nových entit: Purchase Intent Prediction Training Data (Trénovací data předpovědi nákupního záměru) a Purchase Intent Prediction Testing Data (Testovací data předpovědi nákupního záměru).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.

V závislosti na velikost datové sady může trénování trvat několik minut až celou dobu trénování zvolenou na předchozí obrazovce.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. V tuto chvíli se na model můžete podívat na kartě Modely strojového učení.At this point, you can see the model in the Machine learning models tab of the dataflow. Stav Připraveno označuje, že model byl zařazen do fronty pro trénování nebo už u něj trénování probíhá.The Ready status indicates that the model has been queued for training or is under training.

Trénování a ověřování modelu můžete zkontrolovat prostřednictvím stavu toku dat.You can confirm that the model is being trained and validated through the status of the dataflow. Na kartě Toky dat v pracovním prostoru se zobrazí tato animace, která označuje probíhající aktualizaci dat.This appears as a data refresh in progress in the Dataflows tab of the workspace.

Připraveno na trénování

Po dokončení trénování modelu tok dat zobrazí aktualizovaný čas aktualizace.Once the model training is completed, the dataflow displays an updated refresh time. Vytrénování modelu můžete zkontrolovat tak, že přejdete na kartu Modely strojového učení v toku dat.You can confirm that the model is trained, by navigating to the Machine learning models tab in the dataflow. Model, který jste vytvořili, by nyní měl mít stav Trénovaný a aktualizovaný čas v poli Poslední trénování.The model you created should show status as Trained and the Last Trained time should now be updated.

Poslední trénování

Kontrola ověřovací sestavy modeluReview the model validation report

Pokud chcete zkontrolovat ověřovací sestavu modelu, vyberte na kartě Modely strojového učení tlačítko Zobrazit sestavu o trénování ve sloupci Akce u modelu.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. Tato sestava popisuje, jak si váš model strojového učení pravděpodobně povede.This report describes how your machine learning model is likely to perform.

Na stránce Výkon modelu sestavy vyberte Zobrazit nejlepší předpovědi a podívejte se na nejlepší předpovědi modelu.In the Model Performance page of the report, select See top predictors to view the top predictors for your model. Můžete vybrat jednu z předpovědí a podívat se, jak je s danou předpovědí spojena výsledná distribuce.You can select one of the predictors to see how the outcome distribution is associated with that predictor.

Výkon modelu

Na stránce Výkon modelu můžete použít průřez Probability Threshold (Prahová hodnota pravděpodobnosti) a prozkoumat jeho vliv přesnost a úplnost.You can use the Probability Threshold slicer on the Model Performance page to examine its influence on the Precision and Recall for the model.

Probability threshold

Ostatní stránky sestavy popisují statistické metriky výkonu modelu.The other pages of the report describe the statistical performance metrics for the model.

Sestava také obsahuje stránku s podrobnostmi trénování, která popisuje různé spuštěné iterace, počet funkcí extrahovaných z výstupů a hyperparametry finálního použitého modelu.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.

Použití modelu u entity toku datApply the model to a dataflow entity

Výběrem tlačítka Použít model v horní části sestavy zavolejte tento model.Select the Apply model button at the top of the report to invoke this model. V dialogu Použít můžete zadat cílovou entitu obsahující zdrojová data, u kterých se má model použít.In the Apply dialog, you can specify the target entity that has the source data to which the model should be applied.

Zavedení modelu

Po zobrazení výzvy musíte aktualizovat tok dat, abyste mohli zobrazit náhled výsledků modelu.When prompted, you must Refresh the dataflow to preview the results of your model.

Když použijete model, vytvoří se dvě nové entity s příponou enriched <název_modelu> a enriched <název_modelu> explanations.Applying the model will create two new entities, with the suffix enriched <model_name> and enriched <model_name> explanations. V našem případě platí, že při použití modelu na entitu Online Visitors se vytvoří entita Online Visitors enriched Purchase Intent Prediction, která zahrnuje předpokládaný výsledek z modelu, a entita Online Visitors enriched Purchase Intent Prediction explanations, která obsahuje nejúčinnějšími vlivové faktory předpovědi specifické pro záznam.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.

Použití modelu binární předpovědi přidá do předpovědi čtyři sloupce s předpovězeným výsledkem, skóre pravděpodobnosti, nejúčinnějšími vlivovými faktory specifickými pro záznam a index vysvětlivek. Všechny sloupce mají jako příponu uveden zadaný název sloupce.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.

Tři sloupce výsledku

Po dokončení aktualizace toku dat můžete vybrat entitu Online Visitors enriched Purchase Intent Prediction a podívat se na výsledky.Once the dataflow refresh is completed, you can select the Online Visitors enriched Purchase Intent Prediction entity to view the results.

Zobrazení výsledků

Libovolný model AutoML v pracovním prostoru můžete také vyvolat přímo z editoru Power Query v toku dat.You can also invoke any AutoML model in the workspace, directly from the Power Query Editor in your dataflow. Abyste se dostali k modelům Azure ML, vyberte tlačítko Upravit pro entitu, kterou chcete rozšířit o přehledy z modelu AutoML, jak je znázorněno na následujícím obrázku.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.

Úprava entity

Výběrem tlačítka Upravit se otevře editor Power Query pro entity ve vašem toku dat.Selecting the Edit button opens the Power Query Editor for the entities in your dataflow. Na pásu karet vyberte tlačítko Přehledy AI.Select the AI Insights button in the ribbon.

Přehledy AI

Pomocí nabídky navigačního podokna vyberte složku s modely strojového učení Power BI.Select the Power BI Machine Learning Models folder from the nav pane menu. Všechny modely AutoML, ke kterým máte přístup, jsou zde uvedeny jako funkce Power Query.All the AutoML models to which you have access are listed here as Power Query functions. Vstupní parametry pro model AutoML se také automaticky mapují jako parametry odpovídající funkce Power Query.Also, the input parameters for the AutoML model are automatically mapped as parameters of the corresponding Power Query function. Všimněte si, že automatické mapování parametrů nastane pouze v případě, že parametr má stejný název a datový typ.Note that automatic mapping of parameters happens only if the name and data type of the parameter is the same.

Pro vyvolání modelu AutoML můžete z rozevíracím seznamu určit jako vstup libovolný ze sloupců vybrané entity.To invoke an AutoML model, you can specify any of the selected entity's columns as an input from the drop-down. Dále můžete určit konstantní hodnotu, která se má použít jako vstup, přepnutím ikony sloupce vlevo od vstupního dialogového okna.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.

Prohlížeč funkcí PQO

Když vyberete tlačítko Použít, zobrazí se náhled výstupu modelu AutoML jako nové sloupce v tabulce entity.Select Apply to view the preview of the AutoML model's output as a new columns in the entity table. Volání modelu se také zobrazí jako použitý krok dotazu.You will also see the model invocation as an applied step for the query.

Zobrazení výsledků

Jakmile tok dat uložíte, model se automaticky vyvolá při aktualizaci toku dat pro jakékoli nové nebo aktualizované řádky v tabulce entity.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.

Použití výstupu se skóre z modelu v sestavě Power BIUsing the scored output from the model in a Power BI report

Pokud chcete použít výstup se skóre z modelu strojového učení, můžete se pomocí konektoru Toky dat připojit k toku dat z Power BI Desktopu.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. Entitu Online Visitors enriched Purchase Intent Prediction můžete nyní využít k začlenění předpovědí z modelu do sestav 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.

Další krokyNext steps

V tomto kurzu jste vytvořili a použili model binární předpovědi v Power BI pomocí tohoto postupu:In this tutorial, you created and applied a binary prediction model in Power BI using these steps:

  • Vytvoření toku dat se vstupními datyCreate a dataflow with the input data
  • Vytvoření a trénování modelu strojového učeníCreate and train a machine learning model
  • Kontrola ověřovací sestavy modeluReview the model validation report
  • Použití modelu u entity toku datApply the model to a dataflow entity
  • Použití výstupu se skóre z modelu v sestavě Power BIUsing the scored output from the model in a Power BI report

Další informace o automatizaci strojového učení v Power BI najdete v článku Automatizované strojové učení s využitím Power BI.For more information about Machine Learning automation in Power BI, see Automated Machine Learning in Power BI.