Wdrażanie usług sieci Web Machine Learning Studio (klasycznych) korzystających z modułów Importowanie danych i Eksportowanie danych
DOTYCZY: Machine Learning Studio (wersja klasyczna) Azure Machine Learning
Ważne
Obsługa programu Machine Learning Studio (wersja klasyczna) zakończy się 31 sierpnia 2024 r. Zalecamy przejście do usługi Azure Machine Learning przed tym terminem.
Od 1 grudnia 2021 r. nie będzie można tworzyć nowych zasobów programu Machine Learning Studio (wersja klasyczna). Do 31 sierpnia 2024 r. można będzie nadal korzystać z istniejących zasobów programu Machine Learning Studio (wersja klasyczna).
- Zobacz informacje na temat przenoszenia projektów uczenia maszynowego z usługi ML Studio (klasycznej) do usługi Azure Machine Learning.
- Dowiedz się więcej o usłudze Azure Machine Learning
Dokumentacja programu ML Studio (wersja klasyczna) jest wycofywana i może nie być aktualizowana w przyszłości.
Podczas tworzenia eksperymentu predykcyjnego zazwyczaj dodaje się dane wejściowe i wyjściowe usługi internetowej. Podczas wdrażania eksperymentu użytkownicy mogą wysyłać i odbierać dane z usługi internetowej za pośrednictwem danych wejściowych i wyjściowych. W przypadku niektórych aplikacji dane użytkownika mogą być dostępne ze źródła danych lub znajdują się już w zewnętrznym źródle danych, takim jak usługa Azure Blob Storage. W takich przypadkach nie potrzebują odczytu i zapisu danych przy użyciu danych wejściowych i wyjściowych usługi internetowej. Zamiast tego mogą użyć usługi Batch Execution Service (BES), aby odczytywać dane ze źródła danych przy użyciu modułu Importuj dane i zapisywać wyniki oceniania w innej lokalizacji danych przy użyciu modułu Eksportuj dane.
Moduły Importuj dane i Eksportuj dane, mogą odczytywać dane i zapisywać je w różnych lokalizacjach danych, takich jak internetowy adres URL za pośrednictwem protokołu HTTP, zapytania Hive, bazy danych w usłudze Azure SQL Database, azure Table Storage, azure Blob Storage, dostarczana źródło danych lub baza danych programu SQL Server.
W tym temacie użyto przykładu "Sample 5: Train, Test, Evaluate for Binary Classification: Adult Dataset" (Przykład 5: trenowanie, testowanie, ocena klasyfikacji binarnej: dorosły zestaw danych) i przyjęto założenie, że zestaw danych został już załadowany do tabeli azure SQL o nazwie censusdata.
Tworzenie eksperymentu szkoleniowego
Po otwarciu przykładu "Sample 5: Train, Test, Evaluate for Binary Classification: Adult Dataset" (Przykład 5: trenowanie, testowanie, ocena klasyfikacji binarnej klasyfikacji binarnej klasyfikacji binarnej dla dorosłych: klasyfikacja danych dla dorosłych) korzysta z przykładowego zestawu danych Klasyfikacja binarna o dochodach dla dorosłych. Eksperyment na kanwie będzie wyglądać podobnie do poniższego obrazu:
Aby odczytać dane z tabeli Azure SQL:
Usuń moduł zestawu danych.
W polu wyszukiwania składników wpisz import.
Z listy wyników dodaj moduł Importuj dane do kanwy eksperymentu.
Połącz dane wyjściowe modułu Import Data (Importuj dane) dane wejściowe modułu Clean Missing Data (Czyszczenie brakujących danych).
W okienku właściwości wybierz pozycję Azure SQL Database na liście rozwijanej Źródło danych.
W polach Nazwa serwera bazy danych, Nazwa bazy danych, Nazwa użytkownika i Hasło wprowadź odpowiednie informacje dla bazy danych.
W polu Zapytanie bazy danych wprowadź następujące zapytanie.
select [age], [workclass], [fnlwgt], [education], [education-num], [marital-status], [occupation], [relationship], [race], [sex], [capital-gain], [capital-loss], [hours-per-week], [native-country], [income] from dbo.censusdata;
W dolnej części kanwy eksperymentu kliknij pozycję Uruchom.
Tworzenie eksperymentu predykcyjnego
Następnie skonfiguruj eksperyment predykcyjny, z którego wdrażasz usługę internetową.
- W dolnej części kanwy eksperymentu kliknij pozycję Skonfiguruj usługę internetową i wybierz pozycję Predykcyjna usługa sieci Web [Zalecane].
- Usuń moduły Dane wejściowe usługi internetowej i Dane wyjściowe usługi internetowej z eksperymentu predykcyjnego.
- W polu wyszukiwania składników wpisz eksport.
- Z listy wyników dodaj moduł Eksportuj dane do kanwy eksperymentu.
- Połącz dane wyjściowe modułu Score Model (Generowanie wyników dla modelu) dane wejściowe modułu Export Data (Eksportowanie danych).
- W okienku właściwości wybierz pozycję Azure SQL Database na liście rozwijanej miejsce docelowe danych.
- W polach Nazwa serwera bazy danych, Nazwa bazy danych, Nazwa konta użytkownika serwera i Hasło konta użytkownika serwera wprowadź odpowiednie informacje dla bazy danych.
- Na rozdzielonej przecinkami liście kolumn do zapisania wpisz Scored Labels (Etykiety z wynikami).
- W polu Nazwa tabeli danych wpisz dbo. ScoredLabels. Jeśli tabela nie istnieje, jest tworzona podczas uruchamiania eksperymentu lub wywoływana jest usługa internetowa.
- W polu Rozdzielone przecinkami kolumn tabeli danych wpisz ScoredLabels.
Podczas pisania aplikacji, która wywołuje ostateczną usługę internetową, może być konieczne określenie innej tabeli wejściowej lub docelowej w czasie wykonywania. Aby skonfigurować te dane wejściowe i wyjściowe, użyj funkcji Parametry usługi sieci Web, aby ustawić właściwość Źródło danych importowanych danych i właściwość Docelowa eksportu danych trybu danych. Aby uzyskać więcej informacji na temat parametrów usługi internetowej, zobacz wpis Machine Learning Studio (klasyczne) Parametry usługi sieci Web w blogu Cortana Intelligence i Machine Learning.
Aby skonfigurować parametry usługi sieci Web dla zapytania importu i tabeli docelowej:
- W okienku właściwości modułu Importuj dane kliknij ikonę w prawym górnym rogu pola zapytania Baza danych i wybierz pozycję Ustaw jako parametr usługi internetowej.
- W okienku właściwości modułu Eksportuj dane kliknij ikonę w prawym górnym rogu pola Nazwa tabeli danych i wybierz pozycję Ustaw jako parametr usługi internetowej.
- W dolnej części okienka właściwości modułu Eksportuj dane w sekcji Parametry usługi internetowej kliknij pozycję Zapytanie bazy danych i zmień jego nazwę na Zapytanie.
- Kliknij pozycję Nazwa tabeli danych i zmień jej nazwę na Tabela.
Po zakończeniu eksperyment powinien wyglądać podobnie do poniższego obrazu:
Teraz możesz wdrożyć eksperyment jako usługę internetową.
Wdrażanie usługi internetowej
Wdrożenie można wdrożyć w klasycznej lub nowej usłudze internetowej.
Wdrażanie klasycznej usługi internetowej
Aby wdrożyć jako klasyczną usługę internetową i utworzyć aplikację do korzystania z niej:
W dolnej części kanwy eksperymentu kliknij pozycję Uruchom.
Po zakończeniu przebiegu kliknij pozycję Wdróż usługę internetową i wybierz pozycję Wdróż usługę internetową [klasyczną].
Na pulpicie nawigacyjnym usługi internetowej znajdź klucz interfejsu API. Skopiuj i zapisz go, aby użyć go później.
W tabeli Domyślny punkt końcowy kliknij link Wykonywanie wsadowe, aby otworzyć stronę pomocy interfejsu API.
W programie Visual Studio utwórz aplikację konsolową języka C#: Nowy>projekt>Visual C#>Klasyczna aplikacja konsolowa systemu Windows>(.NET Framework).
Na stronie Pomocy interfejsu API znajdź sekcję Przykładowy kod w dolnej części strony.
Skopiuj i wklej przykładowy kod w języku C# do pliku Program.cs i usuń wszystkie odwołania do magazynu obiektów blob.
Zaktualizuj wartość zmiennej apiKey przy użyciu zapisanego wcześniej klucza interfejsu API.
Znajdź deklarację żądania i zaktualizuj wartości parametrów usługi sieci Web, które są przekazywane do modułów Importuj dane i Eksportuj dane . W takim przypadku użyjesz oryginalnego zapytania, ale zdefiniuj nową nazwę tabeli.
var request = new BatchExecutionRequest() { GlobalParameters = new Dictionary<string, string>() { { "Query", @"select [age], [workclass], [fnlwgt], [education], [education-num], [marital-status], [occupation], [relationship], [race], [sex], [capital-gain], [capital-loss], [hours-per-week], [native-country], [income] from dbo.censusdata" }, { "Table", "dbo.ScoredTable2" }, } };
Uruchom aplikację.
Po zakończeniu przebiegu nowa tabela zostanie dodana do bazy danych zawierającej wyniki oceniania.
Wdrażanie nowej usługi sieci Web
Uwaga
Aby wdrożyć nową usługę internetową, musisz mieć wystarczające uprawnienia w subskrypcji, do której wdrażasz usługę internetową. Aby uzyskać więcej informacji, zobacz Zarządzanie usługą internetową przy użyciu portalu usług sieci Web Machine Learning.
Aby wdrożyć jako nową usługę internetową i utworzyć aplikację do jej korzystania:
W dolnej części kanwy eksperymentu kliknij pozycję Uruchom.
Po zakończeniu przebiegu kliknij pozycję Wdróż usługę internetową i wybierz pozycję Wdróż usługę internetową [Nowy].
Na stronie Wdrażanie eksperymentu wprowadź nazwę usługi internetowej i wybierz plan cenowy, a następnie kliknij pozycję Wdróż.
Na stronie Szybki start kliknij pozycję Zużyj.
W sekcji Przykładowy kod kliknij pozycję Batch.
W programie Visual Studio utwórz aplikację konsolową języka C#: Nowy>projekt>Visual C#>Klasyczna aplikacja konsolowa systemu Windows>(.NET Framework).
Skopiuj i wklej przykładowy kod w języku C# do pliku Program.cs.
Zaktualizuj wartość zmiennej apiKey przy użyciu klucza podstawowego znajdującego się w sekcji Informacje o użyciu podstawowego.
Znajdź deklarację scoreRequest i zaktualizuj wartości parametrów usługi sieci Web, które są przekazywane do modułów Importuj dane i Eksportuj dane . W takim przypadku użyjesz oryginalnego zapytania, ale zdefiniuj nową nazwę tabeli.
var scoreRequest = new { Inputs = new Dictionary<string, StringTable>() { }, GlobalParameters = new Dictionary<string, string>() { { "Query", @"select [age], [workclass], [fnlwgt], [education], [education-num], [marital-status], [occupation], [relationship], [race], [sex], [capital-gain], [capital-loss], [hours-per-week], [native-country], [income] from dbo.censusdata" }, { "Table", "dbo.ScoredTable3" }, } };
Uruchom aplikację.