자습서: Power BI에서 Machine Learning 모델 빌드Tutorial: Build a Machine Learning model in Power BI

이 자습서 문서에서는 자동화된 Machine Learning 을 사용하여 Power BI에서 이진 예측 모델을 만들고 적용합니다.In this tutorial article, you use Automated Machine Learning to create and apply a binary prediction model in Power BI. 자습서에는 Power BI 데이터 흐름을 만들기 위한 지침과 데이터 흐름에 정의된 엔터티를 사용하여 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. 그런 다음, 새 데이터 채점에 해당 모델을 사용하여 예측을 생성합니다.We then use that model for scoring new data to generate predictions.

먼저, 이진 예측 기계 학습 모델을 만들어 온라인 세션 특성 집합을 기반으로 하는 온라인 쇼핑객의 구매 의도를 예측합니다.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. 이 연습에 벤치 마크 기계 학습 데이터 세트가 사용됩니다.A benchmark machine learning dataset is used for this exercise. 모델을 학습한 후에는 Power BI에서 모델 결과를 설명하는 유효성 검사 보고서를 자동으로 생성합니다.Once a model is trained, Power BI will automatically generate a validation report explaining the model results. 그런 다음 유효성 검사 보고서를 검토하고 데이터에 모델을 적용하여 점수를 매길 수 있습니다.You can then review the validation report and apply the model to your data for scoring.

이 자습서는 다음 단계로 구성됩니다.This tutorial consists of following steps:

  • 입력 데이터를 사용하여 데이터 흐름 만들기Create a dataflow with the input data
  • 기계 학습 모델 만들기 및 학습Create and train a machine learning model
  • 모델 유효성 검사 보고서 검토Review the model validation report
  • 데이터 흐름 엔터티에 모델 적용Apply the model to a dataflow entity
  • Power BI 보고서에서 모델의 점수가 매겨진 출력 사용Using the scored output from the model in a Power BI report

입력 데이터를 사용하여 데이터 흐름 만들기Create a dataflow with the input data

이 자습서의 첫 번째 부분에서는 입력 데이터를 사용하여 데이터 흐름을 만듭니다.The first part of this tutorial is to create a dataflow with input data. 다음 섹션에 표시된 것 처럼 이 프로세스는 데이터 가져오기부터 시작하여 몇 가지 단계를 수행합니다.That process takes a few steps, as shown in the following sections, beginning with getting data.

데이터 가져오기Get data

데이터 흐름을 만드는 첫 번째 단계는 데이터 원본을 준비하는 것입니다.The first step in creating a dataflow is to have your data sources ready. 이 경우 온라인 세션 집합에서 기계 학습 데이터 세트를 사용하며, 이 중 일부는 구매로 이어집니다.In our case, we use a machine learning dataset from a set of online sessions, some of which culminated in a purchase. 데이터 세트에는 모델을 학습하는 데 사용할 해당 세션에 대한 특성 집합이 포함되어 있습니다.The dataset contains a set of attributes about these sessions, which we'll use for training our model.

데이터 세트는 UC Irvine 웹 사이트에서 다운로드할 수 있습니다.You can download the dataset from the UC Irvine website. 또한 이 자습서의 목적을 위해 다음 링크에서도 이를 사용할 수 있습니다. online_shoppers_intention.csv.We also have this available, for the purpose of this tutorial, from the following link: online_shoppers_intention.csv.

엔터티 만들기Create the entities

데이터 흐름에 엔터티를 만들려면 Power BI 서비스에 로그인한 다음, AI가 사용하도록 설정된 용량의 작업 영역으로 이동합니다.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.

작업 영역이 아직 없는 경우 Power BI 서비스의 탐색 창 메뉴에서 작업 영역 을 선택하여 작업 영역을 만든 다음, 표시되는 패널의 맨 아래에 있는 작업 영역 만들기 를 선택합니다.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. 오른쪽에 작업 영역 세부 정보를 입력하는 패널이 열립니다.This opens a panel on the right to enter the workspace details. 작업 영역 이름을 입력하고 고급 을 선택합니다.Enter a workspace name and select Advanced. 작업 영역에서 라디오 단추를 사용하여 용량을 사용하는지 확인하고 AI 미리 보기가 설정된 전용 용량 인스턴스에 할당되었는지 확인합니다.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. 그런 다음, 저장 을 선택합니다.Then select Save.

작업 영역 만들기

작업 영역을 만든 후에는 다음 그림에 표시된 것처럼 시작 화면의 오른쪽 아래에서 건너뛰기 를 선택할 수 있습니다.Once the workspace is created, you can select Skip in the bottom right of the Welcome screen, as shown in the following image.

작업 영역이 있는 경우 건너뛰기

작업 영역의 오른쪽 위에 있는 만들기 단추를 선택하고 데이터 흐름 을 선택합니다.Select the Create button at the top right of the workspace, and then select Dataflow.

데이터 흐름 만들기

새 엔터티 추가 를 선택합니다.Select Add new entities. 그러면 브라우저에서 파워 쿼리 편집기가 시작됩니다.This launches a Power Query editor in the browser.

새 엔터티 추가

다음 그림에 표시된 것처럼 텍스트/CSV 파일 을 데이터 원본으로 선택합니다.Select Text/CSV File as a data source, shown in the following image.

텍스트/CSF 파일이 선택됨

다음에 표시되는 데이터 원본에 연결 페이지에서 online_shoppers_intention.csv 에 대한 다음 링크를 파일 경로 또는 URL 상자에 붙여넣고 다음 을 선택합니다.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

파일 경로

파워 쿼리 편집기는 CSV 파일의 데이터에 대한 미리 보기를 보여 줍니다.The Power Query Editor shows a preview of the data from the CSV file. 오른쪽 창에 있는 이름 상자의 값을 변경하여 쿼리 이름을 보다 친숙한 이름으로 바꿀 수 있습니다.You can rename the query to a friendlier name by changing the value in the Name box found in the right pane. 예를 들어 쿼리 이름을 Online Visitor 로 변경할 수 있습니다.For example, you could change the Query name to Online Visitors.

친숙한 이름으로 변경

파워 쿼리는 열 유형을 자동으로 유추합니다.Power Query automatically infers the type of columns. 열 머리글의 맨 위에 있는 특성 유형 아이콘을 클릭하면 열 유형을 변경할 수 있습니다.You can change the column type by clicking on the attribute type icon at the top of the column header. 이 예제에서는 수익 열의 유형을 True/False로 변경합니다.In this example, we change the type of the Revenue column to True/False.

데이터 형식 변경

저장 후 닫기 단추를 선택하여 파워 쿼리 편집기를 닫습니다.Select the Save & close button to close Power Query Editor. 다음 이미지와 같이 대화 상자에서 데이터 흐름의 이름을 입력하고 저장 을 선택합니다.Provide a name for the dataflow, and then select Save on the dialog, as shown in the following image.

데이터 흐름 저장

기계 학습 모델 만들기 및 학습Create and train a machine learning model

기계 학습 모델을 추가하려면 학습 데이터와 레이블 정보를 포함하는 기본 엔터티에 대한 작업 목록에서 ML 모델 적용 단추를 선택하고 기계 학습 모델 추가 를 선택합니다.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.

기계 학습 모델 추가

기계 학습 모델을 만드는 첫 번째 단계는 예측하려는 결과 필드가 포함된 기록 데이터를 확인하는 것입니다.The first step for creating our machine learning model is to identify the historical data including the outcome field that you want to predict. 이 데이터를 학습하여 모델을 만듭니다.The model will be created by learning from this data.

우리가 사용하는 데이터 세트의 경우 수익 필드입니다.In the case of the dataset we're using, this is the Revenue field. ‘결과 필드’ 값으로 수익 을 선택하고 다음 을 선택합니다.Select Revenue as the 'Outcome field' value and then select Next.

기록 데이터 선택

다음으로 만들 기계 학습 모델의 유형을 선택해야 합니다.Next, we must select the type of machine learning model to create. Power BI는 사용자가 확인한 결과 필드의 값을 분석하고 해당 필드를 예측하기 위해 만들 수 있는 기계 학습 모델 유형을 제안합니다.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.

이 예제에서는 사용자가 구매할지 여부의 이진 결과를 예측하기 때문에 이진 예측이 제안됩니다.In this case since we're predicting a binary outcome of whether a user will make a purchase or not, Binary Prediction is recommended. 구매할 사용자를 예측하는 데 관심이 있으므로 가장 관심 있는 수익 결과로 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. 모델 유효성 검사 결과를 요약하는 자동 생성된 보고서에 사용할 친숙한 레이블을 결과에 제공할 수도 있습니다.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. 다음을 선택합니다.Then select Next.

이진 예측이 선택됨

Power BI에서 데이터 샘플의 예비 검색을 수행하고 더 정확한 예측을 생성할 수 있는 입력을 제안합니다.Next, Power BI does a preliminary scan of a sample of your data and suggests the inputs that may produce more accurate predictions. Power BI에서 필드를 제안하지 않는 경우 그 옆에 설명이 제공됩니다.If Power BI doesn't recommend a field, an explanation would be provided next to it. 모델에서 학습할 필드만 포함되도록 선택 항목을 변경하거나, 엔터티 이름 옆에 있는 확인란을 선택하여 모든 필드를 선택할 수 있습니다.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. 입력을 수락하려면 다음 을 선택합니다.Select Next to accept the inputs.

다음 확인란 선택

최종 단계에서는 모델의 이름을 입력해야 합니다.In the final step, we must provide a name for our model. 모델 이름을 ‘구매 의도 예측’으로 지정합니다. Name the model Purchase Intent Prediction. 빠른 결과를 확인하기 위해 학습 시간을 줄이거나, 최상의 모델을 얻기 위해 학습 시간을 늘릴 수 있습니다.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. 저장 후 학습 을 선택하여 모델 학습을 시작합니다.Then select Save and train to start training the model.

모델 저장

학습 프로세스는 기록 데이터를 샘플링 및 정규화하고 데이터 세트를 다음과 같은 두 개의 새 엔터티로 분할하는 것으로 시작됩니다. Purchase Intent Prediction Training DataPurchase Intent Prediction Testing Data.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.

데이터 세트의 크기에 따라 학습 프로세스는 몇 분에서 이전 화면을 통해 선택된 학습 시간까지 걸릴 수 있습니다.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. 이 시점에서 데이터 흐름의 기계 학습 모델 탭에서 모델을 볼 수 있습니다.At this point, you can see the model in the Machine learning models tab of the dataflow. 준비 상태는 모델이 학습을 위해 큐에 대기 중이거나 학습 중임을 나타냅니다.The Ready status indicates that the model has been queued for training or is under training.

데이터 흐름의 상태를 통해 모델이 학습되고 유효성이 검사되는지 확인할 수 있습니다.You can confirm that the model is being trained and validated through the status of the dataflow. 이는 작업 영역의 데이터 흐름 탭에서 데이터 새로 고침 처리 중으로 표시됩니다.This appears as a data refresh in progress in the Dataflows tab of the workspace.

학습 준비

모델 학습이 완료되면 데이터 흐름은 업데이트된 새로 고침 시간을 표시합니다.Once the model training is completed, the dataflow displays an updated refresh time. 데이터 흐름의 기계 학습 모델 탭으로 이동하여 모델이 학습되었는지 확인할 수 있습니다.You can confirm that the model is trained, by navigating to the Machine learning models tab in the dataflow. 이제 만든 모델이 학습됨 상태로 표시되고 마지막 학습 시간 이 업데이트되어야 합니다.The model you created should show status as Trained and the Last Trained time should now be updated.

마지막 학습 날짜

모델 유효성 검사 보고서 검토Review the model validation report

모델 유효성 검사 보고서를 검토하려면 기계 학습 모델 탭에서 모델의 작업 열에 있는 학습 보고서 보기 단추를 선택합니다.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. 이 보고서는 기계 학습 모델의 잠재적 성능을 설명합니다.This report describes how your machine learning model is likely to perform.

보고서의 모델 성능 페이지에서 상위 예측 변수 를 선택하여 모델의 상위 예측 변수를 확인합니다.In the Model Performance page of the report, select See top predictors to view the top predictors for your model. 예측 변수 중 하나를 선택하여 결과 분포를 해당 예측 변수에 연결하는 방법을 확인할 수 있습니다.You can select one of the predictors to see how the outcome distribution is associated with that predictor.

모델 성능

모델 성능 페이지에서 확률 임계값 슬라이서를 사용하여 모델의 정밀도 및 재현율에 대한 영향을 검사할 수 있습니다.You can use the Probability Threshold slicer on the Model Performance page to examine its influence on the Precision and Recall for the model.

확률 임계값

보고서의 다른 페이지는 모델의 통계 성능 메트릭을 설명합니다.The other pages of the report describe the statistical performance metrics for the model.

이 보고서에는 실행된 여러 반복, 입력에서 기능을 추출하는 방법, 사용된 최종 모델 하이퍼 매개 변수를 설명하는 학습 세부 정보 페이지도 포함됩니다.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.

데이터 흐름 엔터티에 모델 적용Apply the model to a dataflow entity

보고서 맨 위에 있는 모델 적용 단추를 선택하여 이 모델을 호출합니다.Select the Apply model button at the top of the report to invoke this model. 적용 대화 상자에서 모델을 적용할 원본 데이터가 포함된 대상 엔터티를 지정할 수 있습니다.In the Apply dialog, you can specify the target entity that has the source data to which the model should be applied.

모델 적용

메시지가 표시되면 데이터 흐름을 새로 고침 하여 모델 결과를 미리 보아야 합니다.When prompted, you must Refresh the dataflow to preview the results of your model.

모델을 적용하면 enriched <model_name>enriched <model_name> explanations 접미사를 사용하여 새 엔터티 2개가 생성됩니다.Applying the model will create two new entities, with the suffix enriched <model_name> and enriched <model_name> explanations. 예제에서 Online Visitors 엔터티에 모델을 적용하면 모델의 예측된 출력을 포함하는 Online Visitors enriched Purchase Intent Prediction 과 예측에 대한 상위 레코드 특정 인플루언서를 포함하는 Online Visitors enriched Purchase Intent Prediction explanations 가 생성됩니다.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.

이진 예측 모델을 적용하면 예측 결과, 확률 점수, 예측에 대한 상위 레코드 특정 인플루언서 및 각각 지정된 열 이름을 접두사로 사용하는 설명 인덱스가 포함된 4개의 열이 추가됩니다.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.

세 개의 결과 열

데이터 흐름 새로 고침이 완료되면 Online Visitors enriched Purchase Intent Prediction 엔터티를 선택하여 결과를 볼 수 있습니다.Once the dataflow refresh is completed, you can select the Online Visitors enriched Purchase Intent Prediction entity to view the results.

결과 보기

데이터 흐름의 Power Query 편집기에서 직접 작업 영역의 모든 AutoML 모델을 호출할 수도 있습니다.You can also invoke any AutoML model in the workspace, directly from the Power Query Editor in your dataflow. AutoML 모델에 액세스하려면 다음 이미지에 표시된 것처럼 AutoML 모델의 인사이트로 보강하려는 엔터티의 편집 단추를 선택합니다.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.

엔터티 편집

편집 단추를 선택하면 데이터 흐름의 엔터티에 대한 파워 쿼리 편집기가 열립니다.Selecting the Edit button opens the Power Query Editor for the entities in your dataflow. 리본에서 AI 인사이트 단추를 선택합니다.Select the AI Insights button in the ribbon.

AI 인사이트

탐색 창 메뉴에서 Power BI Machine Learning 모델 폴더를 선택합니다.Select the Power BI Machine Learning Models folder from the nav pane menu. 액세스 권한이 있는 모든 AutoML 모델이 여기에 파워 쿼리 함수로 나열됩니다.All the AutoML models to which you have access are listed here as Power Query functions. AutoML 모델에 대한 입력 매개 변수도 자동으로 해당 파워 쿼리 함수의 매개 변수로 매핑됩니다.Also, the input parameters for the AutoML model are automatically mapped as parameters of the corresponding Power Query function. 매개 변수의 자동 매핑은 매개 변수의 이름과 데이터 형식이 동일한 경우에만 발생합니다.Note that automatic mapping of parameters happens only if the name and data type of the parameter is the same.

AutoML 모델을 호출하려면 선택한 엔터티의 열을 드롭다운에서 입력으로 지정합니다.To invoke an AutoML model, you can specify any of the selected entity's columns as an input from the drop-down. 입력 대화 상자 왼쪽으로 열 아이콘을 전환하여 입력으로 사용할 상수 값을 지정할 수도 있습니다.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.

PQO 함수 브라우저

AutoML 모델 출력 미리 보기를 엔터티 테이블에 새 열로 표시하려면 적용을 선택합니다.Select Apply to view the preview of the AutoML model's output as a new columns in the entity table. 모델 호출을 쿼리의 적용 단계로 표시할 수도 있습니다.You will also see the model invocation as an applied step for the query.

결과 보기

데이터 흐름을 저장하면 엔터티 테이블의 모든 새 행 또는 업데이트된 행에 대해 데이터 흐름을 새로 고치는 경우 자동으로 모델이 호출됩니다.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.

Power BI 보고서에서 모델의 점수가 매겨진 출력 사용Using the scored output from the model in a Power BI report

기계 학습 모델의 채점된 출력을 사용하기 위해 데이터 흐름 커넥터를 사용하여 Power BI Desktop에서 데이터 흐름에 연결할 수 있습니다.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. 이제 Online Visitors enriched Purchase Intent Prediction 엔터티를 사용하여 모델의 예측을 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.

다음 단계Next steps

이 자습서에서는 다음 단계를 사용하여 Power BI에서 이진 예측 모델을 만들고 적용했습니다.In this tutorial, you created and applied a binary prediction model in Power BI using these steps:

  • 입력 데이터를 사용하여 데이터 흐름 만들기Create a dataflow with the input data
  • 기계 학습 모델 만들기 및 학습Create and train a machine learning model
  • 모델 유효성 검사 보고서 검토Review the model validation report
  • 데이터 흐름 엔터티에 모델 적용Apply the model to a dataflow entity
  • Power BI 보고서에서 모델의 점수가 매겨진 출력 사용Using the scored output from the model in a Power BI report

Power BI의 기계 학습 자동화에 대한 자세한 내용은 Power BI의 자동화된 Machine Learning을 참조하세요.For more information about Machine Learning automation in Power BI, see Automated Machine Learning in Power BI.