Konfigurowanie laboratorium do nauki o danych za pomocą języka Python i notesów Jupyter Notebook
Ważne
Usługa Azure Lab Services zostanie wycofana 28 czerwca 2027 r. Aby uzyskać więcej informacji, zobacz przewodnik po wycofaniu.
W tym artykule opisano sposób konfigurowania maszyny wirtualnej szablonu w usłudze Azure Lab Services, która zawiera narzędzia do nauczania uczniów do korzystania z notesów Jupyter Notebook. Dowiesz się również, jak użytkownicy laboratorium mogą łączyć się z notesami na swoich maszynach wirtualnych.
Jupyter Notebooks to projekt typu open source, który umożliwia łatwe łączenie tekstu sformatowanego i wykonywalnego kodu źródłowego języka Python na jednej kanwie znanej jako notes. Uruchom notes, aby utworzyć liniowy rekord danych wejściowych i wyjściowych. Te dane wyjściowe mogą zawierać tekst, tabele informacji, wykresy punktowe i nie tylko.
Uwaga
Ten artykuł odwołuje się do funkcji dostępnych w planach laboratorium, które zastąpiły konta laboratorium.
Wymagania wstępne
- Aby skonfigurować to laboratorium, musisz mieć dostęp do subskrypcji platformy Azure. Porozmawiaj z administratorem organizacji, aby sprawdzić, czy możesz uzyskać dostęp do istniejącej subskrypcji platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
Konfigurowanie ustawień planu laboratorium
Po utworzeniu subskrypcji platformy Azure możesz utworzyć plan laboratorium w usłudze Azure Lab Services. Aby uzyskać więcej informacji na temat tworzenia nowego planu laboratorium, zobacz Szybki start: konfigurowanie zasobów w celu tworzenia laboratoriów. Możesz również użyć istniejącego planu laboratorium.
To laboratorium używa jednego z obrazów maszyny wirtualnej Nauka o danych jako podstawowego obrazu maszyny wirtualnej. Te obrazy są dostępne w witrynie Azure Marketplace. Ta opcja umożliwia twórcom laboratorium wybranie obrazu jako obrazu podstawowego dla laboratorium. Należy włączyć te obrazy w planie laboratorium.
Wykonaj następujące kroki, aby włączyć te obrazy witryny Azure Marketplace dostępne dla twórców laboratorium.
Wybierz jeden z następujących obrazów witryny Azure Marketplace w zależności od wymagań systemu operacyjnego:
- Nauka o danych Virtual Machine — Windows Server 2019/Windows Server 2022
- maszyna wirtualna Nauka o danych — Ubuntu 20.04
Alternatywnie utwórz niestandardowy obraz maszyny wirtualnej:
Obrazy maszyn wirtualnych Nauka o danych w witrynie Azure Marketplace są już skonfigurowane przy użyciu notesów Jupyter Notebook. Te obrazy obejmują również inne narzędzia do tworzenia i modelowania na potrzeby nauki o danych. Jeśli nie potrzebujesz tych dodatkowych narzędzi i chcesz mieć uproszczoną konfigurację tylko z notesami Jupyter, utwórz niestandardowy obraz maszyny wirtualnej. Aby zapoznać się z przykładem, zobacz Instalowanie aplikacji JupyterHub na platformie Azure.
Po utworzeniu obrazu niestandardowego przekaż obraz do galerii obliczeniowej, aby używać go z usługami Azure Lab Services. Dowiedz się więcej o korzystaniu z galerii obliczeniowej w usłudze Azure Lab Services.
Tworzenie laboratorium
Utwórz laboratorium dla planu laboratorium:
Aby uzyskać instrukcje dotyczące tworzenia laboratorium, zobacz Samouczek: konfigurowanie laboratorium. Określ następujące ustawienia laboratorium:
Ustawienia laboratorium Wartość Rozmiar maszyny wirtualnej Wybierz pozycję Mały lub Średni, aby uzyskać dostęp do notesów Jupyter Notebook w warstwie Podstawowa. Wybierz pozycję Alternatywne małe procesory GPU (obliczenia) dla aplikacji intensywnie korzystających z obliczeń i sieci używanych w klasach sztucznej inteligencji i uczenia głębokiego. Obraz maszyny wirtualnej Wybierz pozycję Nauka o danych Virtual Machine — Windows Server 2019, Nauka o danych Virtual Machine — Windows Server 2022 lub Nauka o danych Virtual Machine — Ubuntu. Ustawienia maszyny wirtualnej szablonu Wybierz pozycję Użyj maszyny wirtualnej bez dostosowywania. Podczas tworzenia laboratorium o rozmiarze alternatywnego małego procesora GPU (obliczenia) zainstaluj sterowniki procesora GPU.
Ten proces instaluje najnowsze sterowniki NVIDIA i zestaw narzędzi Compute Unified Device Architecture (CUDA), które należy włączyć obliczenia o wysokiej wydajności za pomocą procesora GPU. Aby uzyskać więcej informacji, zobacz Konfigurowanie laboratorium z maszynami wirtualnymi procesora GPU.
Konfiguracja maszyny szablonu
Po utworzeniu laboratorium utwórz maszynę wirtualną szablonu opartą na wybranym rozmiarze i obrazie maszyny wirtualnej. Skonfiguruj maszynę wirtualną szablonu ze wszystkimi elementami, które mają być udostępniane uczniom tej klasy. Aby uzyskać więcej informacji, zobacz Tworzenie szablonu i zarządzanie nim w usłudze Azure Lab Services.
Obrazy maszyn wirtualnych Nauka o danych są wyposażone w wiele struktur nauki o danych i narzędzi wymaganych dla tego typu klasy. Na przykład obrazy obejmują:
- Notesy Jupyter Notebook: aplikacja internetowa, która umożliwia analitykom danych wykonywanie nieprzetworzonych danych, uruchamianie obliczeń i wyświetlanie wyników w tym samym środowisku. Działa lokalnie na maszynie wirtualnej szablonu.
- Visual Studio Code: zintegrowane środowisko projektowe (IDE), które zapewnia zaawansowane interaktywne środowisko podczas pisania i testowania notesu. Aby uzyskać więcej informacji, zobacz Praca z notesami Jupyter Notebook w programie Visual Studio Code.
Obraz maszyny wirtualnej Nauka o danych — Ubuntu jest aprowizowany za pomocą serwera X2Go, aby umożliwić użytkownikom laboratorium korzystanie z graficznego środowiska pulpitu.
Włączanie narzędzi do korzystania z procesorów GPU
Jeśli używasz alternatywnego rozmiaru procesora GPU (obliczenia), zalecamy sprawdzenie, czy struktury i biblioteki Nauka o danych są prawidłowo skonfigurowane do używania procesorów GPU. Może być konieczne zainstalowanie innej wersji sterowników NVIDIA i zestawu narzędzi CUDA. Aby skonfigurować procesory GPU, należy zapoznać się z dokumentacją platformy lub biblioteki.
Aby na przykład sprawdzić, czy tensorFlow używa procesora GPU, połącz się z maszyną wirtualną szablonu i uruchom następujący kod Python-TensorFlow w notesach Jupyter Notebooks:
import tensorflow as tf
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
Jeśli dane wyjściowe z tego kodu wyglądają następująco, tensorFlow nie korzysta z procesora GPU:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 15833696144144374634
]
Kontynuując ten przykład, zobacz Obsługa procesora GPU TensorFlow, aby uzyskać wskazówki. Wskazówki dotyczące biblioteki TensorFlow obejmują:
- Wymagana wersja sterowników NVIDIA
- Wymagana wersja zestawu narzędzi CUDA
- Instrukcje dotyczące instalowania biblioteki nvidia CUDA Deep Neural Network (cudDNN)
Po wykonaniu kroków platformy TensorFlow w celu skonfigurowania procesora GPU podczas ponownego uruchamiania kodu testowego powinny zostać wyświetlone wyniki podobne do poniższych danych wyjściowych.
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 15833696144144374634
, name: "/device:GPU:0"
device_type: "GPU"
memory_limit: 11154792128
locality {
bus_id: 1
links {
}
}
incarnation: 2659412736190423786
physical_device_desc: "device: 0, name: NVIDIA Tesla K80, pci bus id: 0001:00:00.0, compute capability: 3.7"
]
Udostępnianie notesów dla klasy
Następnym zadaniem jest udostępnienie użytkownikom laboratorium notesów, których mają używać. Notesy można zapisywać lokalnie na maszynie wirtualnej szablonu, aby każdy użytkownik laboratorium miał własną kopię.
Jeśli chcesz użyć przykładowych notesów z usługi Azure Machine Learning, zobacz konfigurowanie środowiska za pomocą notesów Jupyter Notebook.
Publikowanie maszyny szablonu
Aby udostępnić maszynę wirtualną laboratorium użytkownikom laboratorium, opublikuj szablon. Maszyna wirtualna laboratorium ma wszystkie skonfigurowane wcześniej narzędzia lokalne i notesy.
Nawiązywanie połączenia z notesami Jupyter Notebook
W poniższych sekcjach przedstawiono różne sposoby łączenia użytkowników laboratorium z notesami Jupyter Notebook na maszynie wirtualnej laboratorium.
Korzystanie z notesów Jupyter Na maszynie wirtualnej laboratorium
Użytkownicy laboratorium mogą łączyć się ze swojej maszyny lokalnej z maszyną wirtualną laboratorium, a następnie korzystać z notesów Jupyter Notebook wewnątrz maszyny wirtualnej laboratorium.
Jeśli używasz maszyny wirtualnej laboratorium opartej na systemie Windows, użytkownicy laboratorium mogą łączyć się ze swoimi maszynami wirtualnymi laboratorium za pośrednictwem pulpitu zdalnego (RDP). Aby uzyskać więcej informacji, zobacz jak nawiązać połączenie z maszyną wirtualną laboratorium z systemem Windows.
Jeśli używasz maszyny wirtualnej laboratorium opartej na systemie Linux, użytkownicy laboratorium mogą łączyć się ze swoimi maszynami wirtualnymi laboratorium za pośrednictwem protokołu SSH lub przy użyciu rozwiązania X2Go. Aby uzyskać więcej informacji, zobacz jak nawiązać połączenie z maszyną wirtualną laboratorium z systemem Linux.
Tunel SSH do serwera Jupyter na maszynie wirtualnej
W przypadku laboratoriów opartych na systemie Linux można również połączyć się bezpośrednio z komputera lokalnego z serwerem Jupyter na maszynie wirtualnej laboratorium. Protokół SSH umożliwia przekazywanie portów między komputerem lokalnym a serwerem zdalnym. Jest to maszyna wirtualna laboratorium użytkownika. Aplikacja działająca na określonym porcie na serwerze jest tunelowana do portu mapowania na komputerze lokalnym.
Wykonaj następujące kroki, aby skonfigurować tunel SSH między maszyną lokalną użytkownika a serwerem Jupyter na maszynie wirtualnej laboratorium:
Przejdź do witryny internetowej usługi Azure Lab Services.
Sprawdź, czy maszyna wirtualna laboratorium z systemem Linux jest uruchomiona.
Wybierz ikonę >Połącz Połącz za pośrednictwem protokołu SSH, aby uzyskać polecenie połączenia SSH.
Polecenie połączenia SSH wygląda podobnie do następującego przykładu:
ssh -p 12345 student@ml-lab-00000000-0000-0000-0000-000000000000.eastus2.cloudapp.azure.com
Dowiedz się więcej na temat nawiązywania połączenia z maszyną wirtualną z systemem Linux.
Na komputerze lokalnym uruchom terminal lub wiersz polecenia i skopiuj do niego parametry połączenia SSH. Następnie dodaj
-L 8888:localhost:8888
do ciągu polecenia, który tworzy tunel między portami.Ostatnie polecenie powinno wyglądać podobnie do poniższego przykładu.
ssh –L 8888:localhost:8888 -p 12345 student@ml-lab-00000000-0000-0000-0000-000000000000.eastus.cloudapp.azure.com
Naciśnij Enter, aby uruchomić polecenie .
Po wyświetleniu monitu podaj hasło maszyny wirtualnej laboratorium, aby nawiązać połączenie z maszyną wirtualną laboratorium.
Po nawiązaniu połączenia z maszyną wirtualną uruchom serwer Jupyter przy użyciu następującego polecenia:
jupyter notebook
Polecenie zwraca adres URL serwera Jupyter w terminalu. Adres URL powinien wyglądać następująco:
http://localhost:8888/?token=8c09ecfc93e6a8cbedf9c66dffdae19670a64acc1d37
Aby nawiązać połączenie z notesem Jupyter Notebook i pracować nad nim, wklej ten adres URL w przeglądarce na komputerze lokalnym.
Uwaga
Program Visual Studio Code umożliwia również doskonałe środowisko edycji notesu Jupyter Notebook. Możesz postępować zgodnie z instrukcjami dotyczącymi nawiązywania połączenia z zdalnym serwerem Jupyter i użyć tego samego adresu URL z poprzedniego kroku, aby nawiązać połączenie z programu VS Code zamiast z przeglądarki.
Powiązana zawartość
W tym artykule pokazano, jak utworzyć laboratorium dla klasy Jupyter Notebooks i jak użytkownik może nawiązać połączenie z notesami na maszynie wirtualnej laboratorium. Możesz użyć podobnej konfiguracji dla innych klas uczenia maszynowego.
Obraz szablonu można teraz opublikować w laboratorium. Aby uzyskać więcej informacji, zobacz Publikowanie maszyny wirtualnej szablonu.
Podczas konfigurowania laboratorium zapoznaj się z następującymi artykułami: