使用 Azure Machine Learning 工作室連線至資料
本文會說明如何使用 Azure Machine Learning 工作室存取您的資料。 使用 Azure Machine Learning 資料存放區連線到 Azure 儲存體服務中的資料。 然後,使用 Azure Machine Learning 資料集封裝該資料以供 ML 工作流程工作使用。
下表會定義並摘要說明資料存放區和資料集的優點。
Object | 描述 | 福利 |
---|---|---|
資料存放區 | 若要安全地連線到 Azure 上的儲存體服務,請將連線資訊 (訂用帳戶識別碼、權杖授權等) 儲存在與工作區相關聯的 Key Vault 中 | 您的資訊會安全地儲存,因此您不會讓驗證認證或原始資料來源處於風險之中,而且不再需要在指令碼中硬式編碼這些值 |
資料集 | 建立資料集也會建立資料來源位置的參考,以及其中繼資料的複本。 使用資料集,您可以在模型定型期間存取資料、與其他使用者共用資料並共同作業,以及使用開放原始碼程式庫 (例如 pandas) 來探索資料。 | 因為資料集會延遲評估,且資料會留在其現有位置,因此您會在儲存體中保留單一資料複本。 此外,您不會產生額外的儲存體成本、可以避免意外變更原始資料來源,並改善 ML 工作流程的效能速度。 |
若要了解如何將資料存放區和資料集納入 Azure Machine Learning 的整體資料存取工作流程中,請瀏覽安全地存取資料。
如需 Azure Machine Learning Python SDK 和程式碼優先體驗的詳細資訊,請參閱:
必要條件
Azure 訂用帳戶。 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。 試用免費或付費版本的 Azure Machine Learning
Azure Machine Learning 工作區。 建立工作區資源
- 當您建立工作區時,系統會自動向該工作區註冊 Azure Blob 容器和 Azure 檔案共用以作為資料存放區。 這兩者分別會命名為
workspaceblobstore
和workspacefilestore
。 為了有足夠的 Blob 儲存體資源,workspaceblobstore
會設定為預設資料存放區,並已設定為可供使用。 如果您需要更多 Blob 儲存體資源,則需要具有支援的儲存體類型的 Azure 儲存體帳戶。
- 當您建立工作區時,系統會自動向該工作區註冊 Azure Blob 容器和 Azure 檔案共用以作為資料存放區。 這兩者分別會命名為
建立資料存放區
您可以從這些 Azure 儲存體解決方案建立資料存放區。 針對不受支援的儲存體解決方案,以及要在機器學習實驗期間儲存資料輸出成本,您必須將資料移至支援的 Azure 儲存體解決方案。 如需資料存放區的詳細資訊,請瀏覽此資源。
您可以使用認證型存取或身分識別型存取來建立資料存放區。
使用 Azure Machine Learning 工作室建立新的資料存放區。
重要
如果您的資料儲存體帳戶位於虛擬網路中,則需要額外的設定步驟,以確保工作室可以存取您的資料。 請瀏覽網路隔離和隱私權,以取得適當設定步驟的詳細資訊。
- 登入 Azure Machine Learning Studio。
- 選取 [資產] 下方左窗格上的 [資料]。
- 在頂端,選取 [資料存放區]。
- 選取 [+建立]。
- 完成表單以建立並註冊新的資料存放區。 此表單會根據您選取的 Azure 儲存體類型和驗證類型,以智慧方式自行更新。 如需可在何處找到要填入此表單所需的驗證認證的詳細資訊,請瀏覽儲存體存取和權限一節。
此螢幕擷取畫面會顯示 Azure Blob 資料存放區的建立面板:
建立資料資產
建立資料存放區之後,請建立資料集以與您的資料互動。 資料集會將您的資料封裝為延遲評估的可取用物件,以進行機器學習工作 (例如定型)。 如需資料集的詳細資訊,請瀏覽建立 Azure Machine Learning 資料集。
資料集有兩種類型:FileDataset 和 TabularDataset。 FileDataset 會建立單一或多個檔案或公用 URL 的參考。 TabularDatasets 則會以表格格式呈現資料。 您可以從下列項目建立 TabularDatasets
- .csv
- .tsv
- .parquet
- .json 檔案以及 SQL 查詢結果。
下列步驟描述如何在 Azure Machine Learning 工作室中建立資料集。
注意
透過 Azure Machine Learning 工作室建立的資料集會自動註冊到工作區。
[資料來源] 窗格便會在一旁開啟,如螢幕擷取畫面所示:
對於資料來源,您有不同的選項。 對於已儲存在 Azure 中的資料,請選擇 [從 Azure 儲存體]。若要從本地磁碟機上傳資料,請選擇 [從本機檔案]。如果資料儲存在公用 Web 位置,請選擇 [從 Web 檔案]。您也可以從 SQL 資料庫或從 Azure 開放資料集建立資料資產。
在檔案選取步驟中,選取 Azure 應該儲存資料的位置,以及您想要使用的資料檔案。
- 如果您的資料位於虛擬網路中,請啟用略過驗證。 深入了解虛擬網路隔離和隱私權。
請遵循步驟,設定資料資產的資料剖析設定和結構描述。 系統會根據檔案類型預先填入設定,您可以在建立資料資產之前進一步進行設定。
執行至 [檢閱] 步驟後,請選取最後一頁上的 [建立]
資料預覽和設定檔
在建立資料集後,請確認您可以在工作室中檢視預覽和設定檔:
- 登入 Azure Machine Learning 工作室。
- 在左側導覽的 [資產] 下,選取 [資料]。
- 選取您要檢視的資料集名稱。
- 選取 [瀏覽] 索引標籤。
- 選取 [預覽] 索引標籤。
- 選取 [設定檔] 索引標籤。
您可在資料集內使用摘要統計資料,以驗證資料集是否已針對 ML 準備就緒。 針對非數值資料行,這些統計資料只會包含基本統計資料,例如最小值、最大值和錯誤計數。 數值資料行會提供統計時間和估計分位數。
Azure Machine Learning 資料集的資料設定檔包括:
注意
針對無關類型特徵顯示的空白項目。
統計資料 | 描述 |
---|---|
功能 | 摘要的資料行名稱 |
設定檔 | 以推斷類型為基礎的內嵌視覺效果。 字串、布林值和日期具有值計數。 小數 (數值) 具有近似長條圖。 這些視覺效果可讓您快速了解資料分佈 |
類型分佈 | 資料行中類型的內嵌值計數。 Null 為其自身的類型,因此這個視覺效果可以偵測奇數或遺漏值 |
類型 | 推斷的資料行類型。 可能的值包括:字串、布林值、日期和小數 |
Min | 資料行的最小值。 如果特徵的類型沒有固有排序 (例如布林值),則會顯示空白項目 |
最大值 | 資料行的最小值。 |
計數 | 資料行中遺漏和未遺漏項目的總數 |
未遺漏計數 | 資料行中未遺漏的項目數。 空字串和錯誤都會視為值,因此不會計入「未遺漏計數」中。 |
分位數 | 每個分位數的近似值,可供了解資料分佈 |
平均數 | 資料行的算術平均數或平均 |
標準差 | 此資料行資料的離散或變異量量值 |
變異數 | 此資料行資料與其平均值之分散程度的量值 |
偏度 | 此資料行資料與常態分佈之差異的量值 |
峰度 | 與常態分佈相比,此資料行資料的「尾度」量值 |
儲存體存取權和權限
為了協助確保您安全地連線至 Azure 儲存體服務,Azure Machine Learning 要求您必須具有對應資料儲存體的存取權限。 此存取權取決於用來註冊資料存放區的驗證認證。
虛擬網路
如果您的資料儲存體帳戶位於虛擬網路中,則需要額外的設定步驟,藉以確保 Azure Machine Learning 具有資料的存取權。 請參閱在虛擬網路中使用 Azure Machine Learning 工作室,以確保在您建立和註冊資料存放區時套用適當的設定步驟。
存取驗證
警告
不支援跨租用戶存取儲存體帳戶。 如果您的案例需要跨租用戶存取權,請連絡 Azure Machine Learning 資料支援小組別名:amldatasupport@microsoft.com,取得自訂程式碼解決方案的協助。
在執行初始資料存放區建立和註冊的過程中,Azure Machine Learning 會自動驗證基礎儲存體服務是否確實存在,且使用者提供的主體 (使用者名稱、服務主體或 SAS 權杖) 具有指定儲存體的存取權。
建立資料存放區後,系統將只會對需要存取基礎儲存體容器的方法執行這項驗證。 系統不會在每次擷取資料存放區物件時執行此驗證。 例如,當您從資料存放區下載檔案時,系統會進行驗證。 不過,如果您想要變更預設資料存放區,則不會進行驗證。
如要驗證您對基礎儲存體服務的存取權,請根據想要建立的資料存放區類型提供帳戶金鑰、共用存取簽章 (SAS) 權杖或服務主體。 儲存體類型矩陣會列出每個資料儲存區類型對應的驗證類型。
您可以在 Azure 入口網站上找到帳戶金鑰、SAS 權杖和服務主體資訊。
若要取得帳戶金鑰以進行驗證,請在左窗格中選取 [儲存體帳戶],然後選擇您要註冊的儲存體帳戶
- [概觀] 頁面會提供帳戶名稱、容器和檔案共用名稱等資訊。
- 展開左側導覽中的 [安全性 + 網路] 節點
- 選取 [存取金鑰]
- 可用的索引鍵值會作為 [帳戶金鑰] 值
若要取得 SAS 權杖以進行驗證,請在左窗格中選取 [儲存體帳戶],然後選擇您想要的儲存體帳戶
- 若要取得 [存取金鑰] 值,請展開左側導覽中的 [安全性 + 網路] 節點
- 選取 [共用存取簽章]
- 完成程序以產生 SAS 值
若要使用服務主體進行驗證,請移至 [應用程式註冊],並選取想要使用的應用程式。
- 其對應的 [概觀] 頁面會包含租用戶識別碼和用戶端識別碼之類的必要資訊。
重要
- 若要變更 Azure 儲存體帳戶的存取金鑰 (帳戶金鑰或 SAS 權杖),請務必將新的認證與您的工作區和連線的資料存放區同步。 如需詳細資訊,請瀏覽同步您的更新認證。
- 若您先取消註冊某個資料存放區,再重新註冊同名的資料存放區,但重新註冊時發生錯誤,則工作區的 Azure Key Vault 可能未啟用虛刪除。 根據預設,工作區所建立的金鑰保存庫執行個體會啟用虛刪除,但如果您使用現有的金鑰保存庫或在 2020 年 10 月之前建立的工作區,則虛刪除可能並未啟用。 如需如何啟用虛刪除的詳細資訊,請瀏覽針對現有的金鑰保存庫啟用虛刪除。
權限
針對 Azure blob 容器和 Azure Data Lake Gen 2 儲存體,請確定您的驗證認證具有儲存體 blob 資料讀取器存取權。 深入了解儲存體 blob 資料讀取器。 根據預設,帳戶 SAS 權杖沒有任何權限。
針對資料讀取權限,您的驗證認證必須至少具有容器和物件的列出和讀取權限。
針對資料寫入權限,也需要寫入和新增權限。
使用資料集定型
在機器學習實驗中使用資料集來定型 ML 模型。 深入了解如何使用資料集進行定型。
下一步
如需更多資料集定型範例,請參閱範例筆記本