บทช่วยสอน: เรียกใช้แบบจำลอง Machine Learning Studio (คลาสสิก) ใน Power BI (ตัวอย่าง)Tutorial: Invoke a Machine Learning Studio (classic) model in Power BI (Preview)

ในบทช่วยสอนนี้ เราแนะนำผ่านประสบการณ์การรวมข้อมูลเชิงลึกจากแบบจำลอง Azure Machine Learning Studio(คลาสสิก) ลงใน Power BIIn this tutorial, we walk through the experience of incorporating insights from an Azure Machine Learning Studio (classic) model into Power BI. บทช่วยสอนนี้มีคำแนะนำสำหรับการให้สิทธิ์เข้าถึงแก่ผู้ใช้ Power BI ไปยังแบบจำลอง Azure ML การสร้างกระแสข้อมูล และการใช้ข้อมูลเชิงลึกจากแบบจำลอง Azure ML ไปยังกระแสข้อมูลของคุณThis tutorial includes guidance for granting a Power BI user access to an Azure ML model, creating a dataflow, and applying the insights from the Azure ML model to your dataflow. นอกจากนี้ยังอ้างอิงถึงคู่มือเริ่มต้นด่วนสำหรับการสร้างแบบจำลอง Azure ML กรณีที่คุณไม่มีแบบจำลองอีกด้วยIt also references the quickstart guide for creating an Azure ML model if you don't already have a model.

บทช่วยสอนจะแนะนำคุณผ่านขั้นตอนดังต่อไปนี้:The tutorial takes you through the following steps:

  • สร้างและเผยแพร่แบบจำลอง Azure Machine LearningCreate and publish an Azure Machine Learning model
  • ให้สิทธิ์เข้าถึงแก่ผู้ใช้ Power BI เพื่อใช้แบบจำลองGrant access to a Power BI user to use the model
  • สร้างกระแสข้อมูลCreate a dataflow
  • ใช้ข้อมูลเชิงลึกจากแบบจำลอง Azure ML ไปยังกระแสข้อมูลApply insights from the Azure ML model to the dataflow

สร้างและเผยแพร่แบบจำลอง Azure MLCreate and publish an Azure ML model

ทำตามคำแนะนำได้ที่ คำแนะนำขั้นตอนที่ 1: สร้างพื้นที่ทำงาน Machine Learning Studio (คลาสสิก) เพื่อสร้างพื้นที่ทำงาน Machine LearningFollow the instructions at Walkthrough Step 1: Create a Machine Learning Studio (classic) workspace to create a Machine Learning workspace.

คุณสามารถใช้ขั้นตอนเหล่านี้กับแบบจำลอง Azure ML หรือชุดข้อมูลใดๆ ที่คุณมีอยู่แล้วYou can use these steps with any Azure ML model or dataset you already have. หากคุณไม่มีแบบจำลองที่เผยแพร่ คุณสามารถสร้างแบบจำลองได้ในไม่กี่นาที โดยอ้างอิง สร้างการทดลองทางวิทยาศาสตร์ข้อมูลแรกของคุณใน Azure Machine Learning Studio (คลาสสิก) ซึ่งตั้งค่าแบบจำลอง Azure ML สำหรับการคาดคะเนราคายนต์If you don't have a published model, you can create a model in minutes by referring to Create your first data science experiment in Azure Machine Learning Studio (classic), which sets up an Azure ML model for Automobile Price Prediction.

ทำตามขั้นตอนได้ที่ ปรับใช้บริการบนเว็บ Azure Machine Learning Studio (คลาสสิก) เพื่อเผยแพร่แบบจำลอง Azure ML เป็นบริการบนเว็บFollow the steps at Deploy an Azure Machine Learning Studio (classic) web service to publish the Azure ML model as a web service.

ให้สิทธิ์การเข้าถึงแก่ผู้ใช้ Power BIGrant a Power BI user access

เมื่อต้องการเข้าถึงแบบจำลอง Azure ML จาก Power BI คุณต้องมีการสมัครใช้งาน Azure ที่มีการเข้าถึงแบบ อ่าน และกลุ่มทรัพยากร รวมถึงการเข้าถึงแบบ อ่าน ไปยังบริการบนเว็บ Azure Machine Learning Studio (คลาสสิก) สำหรับแบบจำลอง Machine Learning Studio (คลาสสิก)To access an Azure ML model from Power BI, you must have Read access to the Azure subscription and the resource group and Read access to the Azure Machine Learning Studio (classic) web service for Machine Learning Studio (classic) models. สำหรับแบบจำลอง Azure Machine Learning คุณจำเป็นต้องมีการเข้าถึงแบบ อ่าน สำหรับพื้นที่ทำงานบริการ Machine LearningFor Azure Machine Learning model, you need Read access to the Machine Learning workspace.

ขั้นตอนต่อไปนี้จะสมมุติว่าคุณเป็นผู้ดูแลร่วมของการสมัครใช้งาน Azure และกลุ่มทรัพยากรที่เผยแพร่แบบจำลองThe following steps assume you are the coadministrator for the Azure subscription and resource group to which the model was published.

ลงชื่อเข้าใช้ พอร์ทัล Azure และนำทางไปยังหน้า การสมัครใช้งาน ที่สามารถพบได้โดยใช้รายการ บริการทั้งหมด ในบานหน้าต่างเมนูนำทางSign in to the Azure portal, and navigate to the Subscriptions page, which you can find using the All Services list in the nav pane menu.

พอร์ทัล Microsoft Azure

เลือกการสมัครใช้งาน Azure ที่คุณใช้สำหรับการเผยแพร่แบบจำลอง และเลือก ควบคุมการเข้าถึง (IAM)Select the Azure subscription that you used for publishing the model, and select Access Control (IAM). จากนั้นเลือก เพิ่มการกำหนดบทบาท แล้วเลือบทบาทกการ อ่าน จากนั้นเลือกผู้ใช้ Power BINext select Add role assignment, then select the Reader role, and select the Power BI user. เลือก บันทึก เมื่อเสร็จสิ้นSelect Save when you're done. รูปภาพต่อไปนี้จะแสดงการเลือกThe following image shows these selections.

ควบคุมการเข้าถึงพอร์ทัล Azure

จากนั้นทำซ้ำขั้นตอนข้างต้นเพื่อให้สิทธิ์การใช้งานบทบาท ผู้สนับสนุน แก่ผู้ใช้ Power BI สำหรับบริการบนเว็บ Machine Learning เฉพาะที่ปรับใช้แบบจำลอง Azure MLThen repeat the steps above to grant Contributor role access to the Power BI user for the specific Machine Learning web service to which the Azure ML model has been deployed.

สร้างกระแสข้อมูลCreate a dataflow

รับข้อมูลสำหรับการสร้างกระแสข้อมูลGet data for creating the dataflow

ลงชื่อเข้าใช้บริการของ Power BI ด้วยข้อมูลประจำตัวผู้ใช้ที่คุณให้สิทธิ์การเข้าถึงแบบจำลอง Azure ML ในขั้นตอนก่อนหน้านี้Sign in to the Power BI service with the user credentials for whom you granted access to the Azure ML model in the previous step.

ขั้นตอนนี้จะสมมุติว่าคุณมีข้อมูลที่ต้องการให้คะแนนด้วยแบบจำลอง Azure ML ของคุณในรูปแบบ CSVThis step assumes you have the data you want to score with your Azure ML model in CSV format. หากคุณใช้ การทดลองการกำหนดราคารถยนต์ เพื่อสร้างแบบจำลองใน Machine Learning Studio (คลาสสิค) ชุดข้อมูลจะได้รับการแชร์ในลิงก์ดังต่อไปนี้:If you used the Automobile Pricing Experiment to create the model in the Machine Learning Studio (classic), the dataset for is shared in the following link:

สร้างกระแสข้อมูลCreate a dataflow

หากต้องสร้างเอนทิตีในกระแสข้อมูลของคุณ ให้ลงชื่อเข้าใช้บริการของ Power BI และนำทางไปยังพื้นที่ทำงานบนความจุเฉพาะของคุณที่มีตัวอย่าง AI เปิดการใช้งานอยู่To create the entities in your dataflow, sign in to the Power BI service and navigate to a workspace on your dedicated capacity that has the AI preview enabled.

หากคุณยังไม่มีพื้นที่ทำงาน คุณสามารถสร้างได้โดยเลือก พื้นที่ทำงาน ในเมนูด้านซ้าย แล้วเลือก สร้างพื้นที่ทำงาน ในบานหน้าต่างด้านล่างIf you don't already have a workspace, you can create one by selecting Workspaces in the left menu, and then select Create workspace in the panel at the bottom. ซึ่งจะเปิดแผงเพื่อป้อนรายละเอียดพื้นที่ทำงานThis opens a panel to enter the workspace details. ป้อนชื่อพื้นที่ทำงาน และเลือก บันทึกEnter a workspace name, and then select Save.

สร้างพื้นที่ทำงาน

หลังจากสร้างพื้นที่ทำงานแล้ว คุณสามารถเลือก ข้าม ที่ด้านขวาล่างของหน้าจอต้อนรับได้After the workspace has been created, you can select Skip in the bottom right of the Welcome screen.

ข้าม

เลือกแท็บ กระแสข้อมูล (ตัวอย่าง) จากนั้นเลือกปุ่ม สร้าง ที่ด้านขวาบนของพื้นที่ทำงาน และเลือกกระแสข้อมูลSelect the Dataflows (preview) tab, and then select the Create button at the top right of the workspace, and then select Dataflow.

กระแสข้อมูล (ตัวอย่าง)

เลือก เพิ่มเอนทิตีใหม่ ซึ่งจะเปิดใช้ ตัวแก้ไข Power Query ในเบราว์เซอร์Select Add new entities, which launches Power Query Editor in the browser.

เพิ่มเอนทิตีใหม่

เลือก ไฟล์ข้อความ/CSV เป็นแหล่งข้อมูลSelect Text/CSV File as a data source.

เลือกแหล่งข้อมูล

ในหน้าจอถัดไป คุณจะได้รับพร้อมท์ให้เชื่อมต่อกับแหล่งข้อมูลIn the next screen, you're prompted to connect to a data source. วางลิงก์ลงในข้อมูลที่คุณใช้เพื่อสร้างแบบจำลอง Azure ML ของคุณPaste the link to the data you used to create your Azure ML model. หากคุณใช้ข้อมูล การกำหนดราคารถยนต์ คุณสามารถวางลิงก์ต่อไปนี้ลงในกล่อง เส้นทางของไฟล์หรือ URL จากนั้นเลือก ถัดไปIf you used the Automotive Pricing data, you can paste the following link into the File path or URL box and then Next.

https://raw.githubusercontent.com/MicrosoftLearning/Principles-of-Machine-Learning-Python/master/Module7/Automobile%20price%20data%20_Raw_.csv

เชื่อมต่อกับแหล่งข้อมูล

ตัวแก้ไข Power Query จะแสดงตัวอย่างของข้อมูลจากไฟล์ CSVPower Query Editor shows a preview of the data from the CSV file. เลือก แปลงข้อมูลตาราง จาก Ribbon คำสั่ง จากนั้นเลือก ใช้แถวแรกเป็นส่วนหัวSelect Transform Table from the command ribbon and then select Use first row as headers. ซึ่งจะเพิ่มขั้นตอนคิวรี ส่วนหัวที่เลื่อนระดับ ลงในบานหน้าต่าง ใช้ขั้นตอน ทางด้านขวาThis adds the Promoted headers query step into the Applied steps pane on the right. นอกจากนี้คุณยังสามารถเปลี่ยนชื่อคิวรีให้เป็นชื่อที่เข้าใจง่าย เช่น การกำหนดราคารถยนต์ โดยใช้บานหน้าต่างทางด้านขวาได้You can also rename the query to a friendlier name, such as Automobile Pricing using the pane on the right.

พอร์ทัล Microsoft Azure

ชุดข้อมูลแหล่งของเราตั้งค่าที่ไม่รู้จักเป็น '?'Our source dataset has unknown values set to '?'. หากต้องการแก้ไข เราสามารถแทนที่ '?' ด้วย '0' เพื่อหลีกเลี่ยงข้อผิดพลาดภายหลังเพื่อความสะดวกได้To clean this, we can replace '?' with '0' to avoid errors later for simplicity. คุณสามารถทำได้โดยเลือกคอลัมน์ ค่าสินไหมทดแทนมาตรฐาน กระบอกสูบ ระยะชัก อัตราส่วนการอัด แรงม้า รอบต่อนาทีสูงสุด และ ราคา โดยคลิกที่ชื่อในส่วนหัวของคอลัมน์ จากนั้นคลิกที่ 'แปลงข้อมูลคอลัมน์' แล้วเลือก 'แทนค่า'To do this, select the columns normalized-losses, bore, stroke, compression-ratio, horsepower, peak-rpm and price by clicking on their name in the column headers, then click on 'Transform columns' and select 'Replace values'. แทนที่ '?' ด้วย '0'Replace '?' with '0'.

แทนที่ค่า

คอลัมน์ทั้งหมดในตารางจากแหล่งข้อความ/CSV จะได้รับการดำเนินการเป็นคอลัมน์ข้อความAll the columns in the table from a Text/CSV source are treated as text columns. จากนั้น เราต้องเปลี่ยนคอลัมน์ชนิดตัวเลขเป็นชนิดที่ถูกต้องของแต่ละข้อมูลNext, we need to change the numeric columns to their correct data types. คุณสามารถทำได้ใน Power Query โดยคลิกที่สัญลักษณ์ชนิดข้อมูลในส่วนหัวของคอลัมน์You can do this in Power Query by clicking on the data type symbol in the column header. เปลี่ยนคอลัมน์เป็นชนิดด้านล่าง:Change the columns to the below types:

  • จำนวนเต็ม: การให้สัญลักษณ์ค่าความเสี่ยง ค่าสินไหมทดแทนมาตรฐาน น้ำหนักรถเปล่า ขนาดเครื่องยนต์ แรงม้า รอบต่อนาทีสูงสุด ไมล์ต่อแกลลอนในเมือง ไมล์ต่อแกลลอนทางไกล ราคาWhole number: symboling, normalized-losses, curb-weight, engine-size, horsepower, peak-rpm, city-mpg, highway-mpg, price
  • เลขทศนิยม: ช่วงล้อ ความยาว ความกว้าง ความสูง กระบอกสูบ ระยะชัก อัตราส่วนการอัดDecimal number: wheel-base, length, width, height, bore, stroke, compression-ratio

เปลี่ยนคอลัมน์

เลือก เสร็จสิ้น เพื่อปิดตัวแก้ไข Power QuerySelect Done to close Power Query Editor. ซึ่งจะแสดงรายการของเอนทิตีที่มีข้อมูล_การกำหนดราคายนต์_ ที่ได้เพิ่มไว้This will show the entities list with the Automobile Pricing data we added. เลือก บันทึก ที่มุมขวาบน ตั้งชื่อกระแสข้อมูล จากนั้นเลือก บันทึกSelect Save in the top right corner, provide a name for the dataflow, and then select Save.

บันทึกกระแสข้อมูล

รีเฟรชกระแสข้อมูลRefresh the dataflow

การบันทึกกระแสข้อมูลจะแสดงการแจ้งเตือนเมื่อกระแสข้อมูลของคุณได้รับการบันทึกแล้วSaving the dataflow displays a notification that your dataflow was saved. เลือก รีเฟรชตอนนี้ เพื่อเก็บข้อมูลจากแหล่งข้อมูลลงในกระแสข้อมูลSelect Refresh now to ingest data from the source into the dataflow.

รีเฟรชกระแสข้อมูล

เลือก ปิด ที่มุมขวาบน และรอการรีเฟรชกระแสข้อมูลเพื่อเสร็จสิ้นSelect Close in the upper right corner and wait for the dataflow refresh to complete.

นอกจากนี้คุณยังสามารถรีเฟรชกระแสข้อมูลของคุณโดยใช้คำสั่ง การดำเนินการ ได้You can also refresh your dataflow using the Actions commands. กระแสข้อมูลจะแสดงประทับเวลาเมื่อรีเฟรชเสร็จสิ้นThe dataflow displays the timestamp when the refresh is completed.

รีเฟรชด้วยตนเอง

ใช้ข้อมูลเชิงลึกจากแบบจำลอง Azure ML ของคุณApply insights from your Azure ML model

หากต้องการเข้าถึงแบบจำลอง Azure ML สำหรับ การคาดการณ์ราคายนต์ คุณสามารถแก้ไขเอนทิตี ราคารถยนต์ ที่ต้องการเพิ่มราคาที่คาดการณ์ไว้ได้To access the Azure ML model for Automobile Price Prediction, you can edit the Automobile Pricing entity for which we want to add the predicted price.

แก้ไขเอนทิตี

การเลือกไอคอน แก้ไข จะเปิดตัวแก้ไข Power Query สำหรับเอนทิตีในกระแสข้อมูลของคุณSelecting the Edit icon opens Power Query Editor for the entities in your dataflow.

แก้ไข

เลือกปุ่ม ข้อมูลเชิงลึกของ AI ในริบบอน จากนั้นเลือกโฟลเดอร์ แบบจำลอง Azure Machine Learning จากเมนูบานหน้าต่างนำทางSelect the AI Insights button in the ribbon, and then select the Azure Machine Learning Models folder from the nav pane menu.

ระบบจะแสดงรายการแบบจำลอง Azure ML ที่คุณได้รับสิทธิ์เข้าถึงอยู่เป็นฟังก์ชัน Power Query ด้วยคำนำหน้า AzureMLThe Azure ML models to which you've been granted access are listed as Power Query functions with a prefix AzureML. เมื่อคุณคลิกที่ฟังก์ชันที่สัมพันธ์กับแบบจำลอง AutomobilePricePrediction พารามิเตอร์สำหรับบริการบนเว็บของแบบจำลองจะแสดงเป็นพารามิเตอร์ฟังก์ชันWhen you click on the function corresponding to the AutomobilePricePrediction model, the parameters for the model's web service are listed as function parameters.

หากต้องการเรียกแบบจำลอง Azure ML คุณสามารถระบุคอลัมน์ของเอนทิตีที่เลือกใดๆ ก็ได้ เป็นข้อมูลป้อนเข้าจากดรอปดาวน์To invoke an Azure ML 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. เมื่อมีชื่อคอลัมน์ที่ตรงกับหนึ่งในชื่อพารามิเตอร์ฟังก์ชัน ระบบจะแนะนำคอลัมน์ดังกล่าวให้เป็นค่าป้อนเข้าWhen a column name that matches one of the function parameter names, then the column is automatically suggested as an input. หากชื่อคอลัมน์ไม่ตรงกัน คุณสามารถเลือกได้จากดรอปดาวน์If the column name doesn't match, you can select it from the drop-down.

ในกรณีของแบบจำลอง การคาดการณ์ราคายนต์ พารามิเตอร์ที่ป้อนเข้าคือ:In the case of the Automobile Pricing Prediction model, the input parameters are:

  • ผลิตmake
  • รูปแบบตัวถังbody-style
  • ช่วงล้อwheel-base
  • ขนาดเครื่องยนต์engine-size
  • แรงม้าhorsepower
  • รอบต่อนาทีสูงสุดpeak-rpm
  • ไมล์ต่อแกลลอนทางไกลhighway-mpg

สำหรับกรณีของเรา เนื่องจากตารางของเราตรงกับชุดข้อมูลต้นฉบับที่ใช้ฝึกแบบจำลอง พารามิเตอร์ทั้งหมดจึงเลือกคอลัมน์ที่ถูกต้องเอาไว้แล้วIn our case, since our table matches the original dataset used to train the model, all the parameters have the correct columns already selected.

ฝึกแบบจำลอง

เลือก การเรียก เพื่อดูตัวอย่างผลลัพธ์ของแบบจำลอง Azure ML เป็นคอลัมน์ใหม่ในตารางเอนทิตีSelect Invoke to view the preview of the Azure ML model's output as a new column in the entity table. นอกจากนี้คุณจะเห็นการเรียกแบบจำลองเป็นขั้นตอนที่นำไปใช้สำหรับคิวรีYou'll also see the model invocation as an applied step for the query.

ผลลัพธ์ของแบบจำลองจะแสดงเป็นระเบียนในคอลัมน์ผลลัพธ์The output of the model is shown as a record in the output column. คุณสามารถขยายคอลัมน์เพื่อสร้างแต่ละพารามิเตอร์ผลลัพธ์ในคอลัมน์แยกต่างหากได้You can expand the column to produce individual output parameters in separate columns. ในกรณีของเรา เราสนใจเฉพาะ ป้ายชื่อให้คะแนน ซึ่งประกอบด้วยราคายนต์ที่คาดการณ์ไว้In our case, we're only interested in the Scored Labels which contains the predicted price of the automobile. ดังนั้นเราจึงยกเลิกเลือกส่วนที่เหลือ และเลือก ตกลงSo we deselect the rest, and select OK.

ผลลัพธ์แบบจำลอง

ผลของคอลัมน์ ป้ายชื่อให้คะแนน มีการคาดการณ์ราคาจากแบบจำลอง Azure MLThe resulting Scored Labels column has the price prediction from the Azure ML model.

ป้ายชื่อให้คะแนน

เมื่อบันทึกกระแสข้อมูลของคุณแล้ว ระบบจะเรียกแบบจำลอง Azure ML โดยอัตโนมัติเมื่อรีเฟรชกระแสข้อมูลสำหรับแถวใหม่หรือแถวที่ได้รับการอัปเดตใดๆ ในตารางเอนทิตีเสร็จสิ้นOnce you save your dataflow, the Azure ML model will be automatically invoked when the dataflow is refreshed for any new or updated rows in the entity table.

ล้างแหล่งข้อมูลClean up resources

หากคุณไม่ต้องการทรัพยากร Azure ที่สร้างขึ้นโดยใช้บทความนี้อีกต่อไป ให้ลบออกเพื่อหลีกเลี่ยงการเกิดค่าธรรมเนียมIf you no longer need the Azure resources you created using this article, delete them to avoid incurring any charges. นอกจากนี้คุณยังสามารถลบกระแสข้อมูลที่สร้างไว้หากไม่ต้องการใช้แล้วได้ด้วยเช่นกันYou can also delete the dataflows you created, if you no longer require them.

ขั้นตอนถัดไปNext steps

ในบทช่วยสอนนี้ คุณจะสร้างการทดลองอย่างง่ายโดยใช้ Azure Machine Learning Studio (คลาสสิค) ที่ใช้ชุดข้อมูลอย่างง่ายโดยทำตามขั้นตอนเหล่านี้:In this tutorial, you created a simple experiment using Azure Machine Learning Studio (classic) using a simple dataset using these steps:

  • สร้างและเผยแพร่แบบจำลอง Azure Machine LearningCreate and publish an Azure Machine Learning model
  • ให้สิทธิ์เข้าถึงแก่ผู้ใช้ Power BI เพื่อใช้แบบจำลองGrant access to a Power BI user to use the model
  • สร้างกระแสข้อมูลCreate a dataflow
  • ใช้ข้อมูลเชิงลึกจากแบบจำลอง Azure ML ไปยังกระแสข้อมูลApply insights from the Azure ML model to the dataflow

โปรดดู การรวม Azure Machine Learning ใน Power BI (ตัวอย่าง) สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการรวม Azure Machine Learning ใน Power BIFor more information about Azure Machine Learning integration in Power BI, see Azure Machine Learning integration in Power BI (Preview).