Jupyter Samouczek dotyczący notebooka: Jak zainstalować i używać Jupyter?

⚡ Inteligentne podsumowanie

Jupyter Notebook to aplikacja internetowa typu open source, która łączy w sobie kod na żywo, równania, wizualizacje i tekst narracyjny w jednym dokumencie, którym można się dzielić. Działa ona równie dobrze na laptopie, jak i na serwerze AWS.

  • 🔘 Główna idea: Code komórki, komórki Markdown i ich wyniki znajdują się w jednym pliku .ipynb.
  • Model jądra: Każdy notatnik jest powiązany z jądrem, procesem, który wykonuje każdą komórkę.
  • Start lokalny: Polecenie jupyter notebook otwiera pulpit nawigacyjny, w którym znajdują się opcje Nowy i Python 3. Utwórz notatnik.
  • 🧪 Uruchom i edytuj: Zielony oznacza tryb edycji, niebieski tryb poleceń, Alt+Enter uruchamia komórkę i dodaje jedynkę.
  • 🛠️. Ścieżka chmur: Para kluczy EC2, grupa zabezpieczeń na porcie 8888 i obraz Docker przenoszą wszystko do AWS.
  • 🔒 Bądź bezpieczny: Zamknij i zatrzymaj uwalnia jądro; zatrzymajping instancja kończy rozliczanie AWS.

Jupyter Instalacja i użytkowanie notebooka

Czym jest Jupyter Zeszyt?

Jupyter Notatnik jest aplikacją internetową typu open source do pisania i udostępniania kodów na żywo, równań, wizualizacji z elementami tekstu sformatowanego. Zapewnia wygodny sposób pisania akapitów, równań, tytułów, linków i rysunków w celu przeprowadzenia analizy danych. Jest również przydatna do udostępniania interaktywnych algorytmów odbiorcom w celach dydaktycznych lub demonstracyjnych.

Wprowadzenie do Jupyter Aplikacja do notebooków

Jupyter Aplikacja Notebook to interfejs, w którym możesz pisać skrypty i kody za pośrednictwem przeglądarki internetowej. Z aplikacji można korzystać lokalnie, co oznacza, że ​​nie jest potrzebny dostęp do Internetu ani zdalny serwer.

Jupyter Interfejs aplikacji Notebook działający w przeglądarce internetowej

Każde obliczenie odbywa się za pośrednictwem jądra. Nowe jądro jest tworzone przy każdym uruchomieniu pliku Jupyter Notatnik.

Obecne instalacje są dostarczane Notebook 7, zbudowany na JupyterLaboratorium. jupyter notebook nadal działa i oba czytają to samo .ipynb plik.

Jak używać Jupyter Notatnik

W poniższej sesji dowiesz się, jak z niego korzystać Jupyter Zeszyt. Napiszesz prostą linię kodu, aby zapoznać się ze środowiskiem Jupyter.

Krok 1) Dodajesz folder w katalogu roboczym, w którym będą przechowywane wszystkie notatniki, które utworzysz podczas zajęć dotyczących TensorFlow.

If Jupyter brakuje, biegnij pip install notebook po pierwsze, jako Instrukcja instalacji TensorFlow tak. Następnie otwórz terminal i wpisz

mkdir jupyter_tf
jupyter notebook

Code Wyjaśnienie

  • mkdir jupyter_tf: Utwórz folder o nazwie jupyter_tf
  • notatnik jupyter: Otwórz Jupyter web-app

Dane wyjściowe terminala po uruchomieniu mkdir jupyter_tf i jupyter notebook

Krok 2) Możesz zobaczyć nowy folder wewnątrz środowiska. Kliknij na folder jupyter_tf.

Jupyter pulpit nawigacyjny pokazujący nowy folder jupyter_tf

Krok 3) Wewnątrz tego folderu utworzysz swój pierwszy notatnik. Kliknij przycisk Nowości oraz Python 3.

Jupyter Nowe menu z Python 3 opcje jądra

Krok 4) Jesteś wewnątrz Jupyter środowisko. Na razie Twój notatnik nazywa się Untitled.ipynb. Jest to domyślna nazwa nadana przez Jupyter. Zmieńmy jego nazwę, klikając filet oraz przemianować

Jupyter Menu Plik z zaznaczonym poleceniem Zmień nazwę

Możesz zmienić nazwę na Introduction_jupyter

Zmień nazwę okna dialogowego Notatnik na Introduction_jupyter

Wewnątrz Jupyter Interfejs notatnika umożliwia pisanie kodu, adnotacji lub tekstu w komórkach.

pusty Jupyter komórka notebooka gotowa na kod lub tekst

Wewnątrz komórki możesz napisać pojedynczą linię kodu.

Jupyter komórka zawierająca pojedynczą linię kodu

lub wiele linii. Jupyter czyta kod jedna linia po drugiej.

Jupyter komórka zawierająca wiele wierszy kodu

Na przykład, jeżeli napiszesz poniższy kod w komórce.

Przykładowy kod wpisany wewnątrz Jupyter komórka kodowa

Wygeneruje ten wynik.

Wyjście wydrukowane pod wykonanym Jupyter komórka

Krok 5) Jesteś gotowy, aby napisać pierwszą linijkę kodu. Zauważ, że komórka ma dwa kolory. Zielony kolor oznacza, że ​​jesteś w tryb edycji.

Zielona granica komórki wskazująca Jupyter tryb edycji

Niebieski kolor oznacza jednak, że jesteś w środku tryb wykonywania.

Niebieska obwódka komórki wskazująca Jupyter tryb poleceń

Twój pierwszy wiersz kodu zostanie wydrukowany Guru99! Wewnątrz komórki możesz pisać

print("Guru99!")

Istnieją dwa sposoby uruchomienia kodu Jupyter:

  • Kliknij i uruchom
  • Skróty klawiaturowe

Aby uruchomić kod, możesz kliknąć Komórka , a następnie Uruchom komórki i wybierz poniżej

Jupyter Menu Komórka z opcjami Uruchom komórki i Wybierz poniżej

Możesz zobaczyć, że kod jest drukowany pod komórką, a zaraz po wyjściu pojawiła się nowa komórka.

GuruPoniżej komórki wydrukowano wynik 99 z dodaną nową pustą komórką

Szybszym sposobem uruchomienia kodu jest użycie metody Skróty klawiaturowe. Aby uzyskać dostęp do skrótów klawiaturowych, przejdź do Pomoc oraz Skróty klawiaturowe

Jupyter Menu pomocy z pozycją Skróty klawiaturowe

Poniżej lista skrótów dla klawiatury MacOS. Możesz edytować skróty w edytorze.

Jupyter lista skrótów klawiaturowych dla macOS

Poniżej znajdują się skróty dla Windows

Jupyter lista skrótów klawiaturowych dla Windows

Napisz tę linijkę

print("Hello world!")

i wypróbuj skrót klawiaturowy. Alt+Enter uruchamia komórkę i wstawia nową, pustą komórkę poniżej.

Wynik „Hello world” wygenerowany za pomocą skrótu Alt+Enter

Krok 6) Czas zamknąć Notatnik. Iść do filet i kliknij Zamknij i zatrzymaj

Jupyter Menu Plik z poleceniem Zamknij i Zatrzymaj

Note: Jupyter automatycznie zapisuje notatnik z punktem kontrolnym. Jeśli masz następujący komunikat:

Jupyter ostrzeżenie, że w notatniku znajdują się niezapisane zmiany

To znaczy Jupyter nie zapisał pliku od ostatniego punktu kontrolnego. Możesz ręcznie zapisać notatnik

Ręczne zapisywanie Jupyter punkt kontrolny notatnika

Zostaniesz przekierowany do panelu głównego. Możesz zobaczyć, że Twój notatnik został zapisany minutę temu. Możesz bezpiecznie się wylogować.

Jupyter główny panel wyświetlający zapisany notatnik

Zainstalować Jupyter Notatnik z AWS

Gdy zbiór danych przekroczy pojemność pamięci lokalnej, przenieś notebook na serwer w chmurze. Poniżej znajduje się instrukcja krok po kroku dotycząca instalacji i uruchomienia. Jupyter Notatnik włączony AWS:

Jeśli nie masz konta w AWS, załóż darmowe konto w tym miejscu.

Będziemy postępować w następujący sposób

Część 1: Skonfiguruj parę kluczy

Krok 1) Iść do Usługi i znajdź EC2

Menu usług AWS z wybranym wpisem EC2

Krok 2) W panelu i kliknij Kluczowe pary

Lewy panel nawigacyjny EC2 z wybraną opcją Pary kluczy

Krok 3) Kliknij opcję Utwórz parę kluczy

Przycisk EC2 Utwórz parę kluczy

  1. Można to nazwać kluczem Dockera
  2. Kliknij Utwórz

Okno dialogowe Utwórz parę kluczy o nazwie Docker key

Zostanie pobrany plik o nazwie Docker_key.pem.

Pobieranie pliku klucza prywatnego Docker_key.pem z przeglądarki

Krok 4) Skopiuj i wklej go do klucza folderu. Będziemy go potrzebować wkrótce.

Tylko dla użytkowników systemu Mac OS

Ten krok dotyczy tylko użytkowników systemu Mac OS. Windows Użytkownicy Linuksa mogą przejść bezpośrednio do Części 2.

Musisz ustawić katalog roboczy, który będzie zawierał klucz pliku

Przede wszystkim utwórz folder o nazwie key. Dla nas znajduje się on w głównym folderze Docker. Następnie ustawiasz tę ścieżkę jako katalog roboczy

mkdir Docker/key
cd Docker/key

Terminal tworzy i otwiera katalog roboczy Docker/key

Część 2: Skonfiguruj grupę zabezpieczeń

Krok 1) Musisz skonfigurować grupę zabezpieczeń. Dostęp do niego uzyskasz za pomocą panelu

Panel nawigacyjny EC2 z wybranymi grupami zabezpieczeń

Krok 2) Kliknij opcję Utwórz grupę zabezpieczeń

Przycisk EC2 Utwórz grupę zabezpieczeń

Krok 3) Na następnym ekranie

  1. Wprowadź nazwę grupy zabezpieczeń „jupyter_docker” i opis Grupa zabezpieczeń dla Dockera.
  2. Dodaj cztery poniższe reguły przychodzące:
    • ssh: zakres portów 22, źródło Anywhere
    • http: zakres portów 80, źródło Anywhere
    • https: zakres portów 443, źródło Anywhere
    • Niestandardowy protokół TCP: zakres portów 8888, źródło Anywhere
  3. Kliknij przycisk Utwórz.

Grupa zabezpieczeń jupyter_docker z regułami SSH, HTTP, HTTPS i TCP 8888

Krok 4) Nowo utworzona grupa zabezpieczeń zostanie wyświetlona na liście

Lista EC2 pokazująca nowo utworzoną grupę zabezpieczeń jupyter_docker

Część 3: Uruchom instancję

W końcu jesteś gotowy, aby utworzyć instancję

Panel nawigacyjny EC2 z wybranymi instancjami

Krok 1) Kliknij opcję Uruchom instancję

Przycisk uruchamiania instancji EC2

Domyślny serwer wystarczy. Wybierz Amazon Linux AMI. Zrzuty ekranu pokazują obraz z 2018.03.0; obecne konsole oferują Amazon Linux 2023, więc dopasowuj etykiety, nie piksele.

AMI oznacza Amazon Obraz maszyny. Zawiera informacje wymagane do uruchomienia instancji działającej na serwerze wirtualnym w chmurze.

Amazon Ekran wyboru Linux AMI w kreatorze uruchamiania

Pamiętaj, że AWS ma serwer dedykowany do głębokiego uczenia się, taki jak:

  • Głębokie uczenie się AMI (Ubuntu)
  • AMI głębokiego uczenia
  • Baza głębokiego uczenia się AMI (Ubuntu)

Wszystkie z nich zawierają najnowsze wersje binarne frameworków głębokiego uczenia, preinstalowane w oddzielnych środowiskach wirtualnych:

Każdy obraz jest w pełni skonfigurowany z NVIDIA CUDA, cuDNN i NCCL, a także Intel MKL-DNN.

Krok 2) Dodaj t2.microJest to serwer w warstwie darmowej. AWS oferuje bezpłatnie tę maszynę wirtualną wyposażoną w 1 vCPU i 1 GB pamięci. Serwer ten zapewnia dobry kompromis między mocą obliczeniową, pamięcią i wydajnością sieci. Nadaje się do małych i średnich obciążeń.

Ekran typu instancji z wybranym t2.micro

Krok 3) Zachowaj ustawienia domyślne na następnym ekranie i kliknij Dalej: Dodaj pamięć

Ekran konfiguracji instancji pozostawiono z wartościami domyślnymi

Krok 4) Zwiększ pamięć do 10 GB i kliknij Dalej

Ekran pamięci masowej z woluminem głównym zwiększonym do 10 GB

Krok 5) Zachowaj ustawienia domyślne i kliknij Dalej: Skonfiguruj grupę zabezpieczeń

Ekran tagów pozostawiony z domyślnymi wartościami

Krok 6) Wybierz utworzoną wcześniej grupę zabezpieczeń, tj jupyter_docker

Ekran grupy zabezpieczeń z wybranym jupyter_docker

Krok 7) Revprzejrzyj swoje ustawienia i kliknij przycisk uruchamiania

Revzobacz ekran przed uruchomieniem instancji EC2

Krok 8) Ostatnim krokiem jest połączenie pary kluczy z instancją.

Okno dialogowe wyboru pary kluczy łączące klucz Dockera z instancją

Krok 9) Instancja zostanie uruchomiona

Strona stanu uruchomienia potwierdzająca uruchomienie instancji

Krok 10) Poniżej znajduje się podsumowanie aktualnie używanych instancji. Zwróć uwagę na publiczny adres IP.

Lista instancji EC2 pokazująca publiczny adres IP

Krok 11) Kliknij Połącz

Przycisk EC2 Connect dla działającej instancji

Szczegóły połączenia znajdziesz tutaj

Okno dialogowe połączenia zawierające szczegóły połączenia SSH

Uruchom swoją instancję (użytkownicy Mac OS)

Najpierw wskaż katalog roboczy terminala na folder zawierający plik pary kluczy.

uruchom kod

chmod 400 docker.pem

Otwórz połączenie za pomocą tego kodu.

Są dwa polecenia. Czasami pierwsze zatrzymuje Jupyter otwierając notatnik.

W takim przypadku użyj drugiego, aby wymusić połączenie Jupyter Notatnik na EC2.

# If able to launch Jupyter
ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com
# If not able to launch Jupyter
ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com -L 8888:127.0.0.1:8888

Za pierwszym razem zostaniesz poproszony o zaakceptowanie połączenia

Monit terminala z prośbą o zaakceptowanie odcisku palca hosta SSH

Uruchom instancję (Windows użytkownicy)

Krok 1) Przejdź do tej witryny, aby pobrać programy PuTTY i PuTTYgen PuTTY

Musisz pobrać

  • PuTTY: uruchom instancję
  • PuTTYgen: przekonwertuj plik pem na ppk

Strona pobierania PuTTY zawierająca listę PuTTY i PuTTYgen

Teraz, gdy oba programy są już zainstalowane, należy przekonwertować plik .pem na .ppk. PuTTY może odczytywać tylko pliki .ppk. Plik pem zawiera unikalny klucz utworzony przez AWS.

Krok 2) Otwórz PuTTYgen i kliknij Załaduj. Przeglądaj folder, w którym znajduje się plik .pem.

Przeglądanie okna dialogowego ładowania PuTTYgen w poszukiwaniu pliku .pem

Krok 3) Po załadowaniu pliku powinieneś otrzymać informację, że klucz został pomyślnie zaimportowany. Kliknij OK

Powiadomienie PuTTYgen potwierdzające zaimportowanie klucza

Krok 4) Następnie kliknij Zapisz klucz prywatny. Zostaniesz zapytany, czy chcesz zapisać ten klucz bez hasła. Kliknij tak.

PuTTYgen wyświetla monit o zapisanie klucza prywatnego bez hasła

Krok 5) Zapisz klucz

Zapisywanie przekonwertowanego pliku klucza prywatnego .ppk

Krok 6) Przejdź do AWS i skopiuj publiczny DNS

Konsola AWS pokazująca publiczną nazwę DNS instancji

Otwórz PuTTY i wklej publiczny DNS w nazwie hosta

Ekran sesji PuTTY z publicznym DNS w nazwie hosta

Krok 7)

  1. Na lewym panelu rozwiń SSH i otwórz Auth
  2. Przeglądaj klucz prywatny. Powinieneś wybrać plik .ppk
  3. Kliknij Otwórz.

Ekran uwierzytelniania SSH programu PuTTY z wybranym kluczem prywatnym .ppk

Krok 8)

Po wykonaniu tego kroku otworzy się nowe okno. Kliknij Tak, jeśli zobaczysz to wyskakujące okienko

Alert bezpieczeństwa PuTTY akceptujący klucz hosta serwera

Krok 9)

Musisz zalogować się jako: ec2-user

Monit logowania PuTTY z kontem ec2-user

Krok 10)

Jesteś podłączony do Amazon Linux-AMI.

Amazon Baner powłoki AMI systemu Linux po pomyślnym zalogowaniu

Część 4: Zainstaluj Dockera

Samouczek Dockera obejmuje słownictwo kontenerów używane poniżej.

Po połączeniu z serwerem za pomocą PuTTY lub terminala możesz zainstalować Doker silnik.

Wykonaj następujące kody. Włącz Amazon Linux 2023, użyj dnf dla yum oraz systemctl start docker dla service docker start.

sudo yum update -y
sudo yum install -y docker
sudo service docker start
sudo usermod -a -G docker ec2-user
exit

Uruchom ponownie połączenie

ssh -i "docker.pem" ec2-user@ec2-18-219-192-34.us-east-2.compute.amazonaws.com -L 8888:127.0.0.1:8888

Windows użytkownicy łączą się ponownie z PuTTY dokładnie tak, jak opisano powyżej.

Część 5: Zainstaluj Jupyter

Krok 1) utworzyć Jupyter kontener z gotowego obrazu:

## Tensorflow
docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/tensorflow-notebook
## Spark
docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/pyspark-notebook

Code Wyjaśnienie

  • uruchomienie okna dokowanego: Uruchom obraz
  • v: dołącz wolumin
  • ~/work:/home/jovyan/work: Tom
  • 8888:8888: port
  • jupyter/datascience-notebook: Obraz

Aby zapoznać się z innymi gotowymi obrazami, przejrzyj Jupyter Repozytorium Docker StacksOd października 2023 r. te obrazy są dostępne na Quay.io, więc pobierz quay.io/jupyter/tensorflow-notebook or quay.io/jupyter/pyspark-notebook dla PySpark; kopie Docker Hub są zamrożone.

Pozwól kontenerowi pisać do zamontowanego work folder, aby notatniki przetrwały ponowne uruchomienie:

sudo chown 1000 ~/work

Krok 2) Zainstalować tree aby móc sprawdzić katalog roboczy:

sudo yum install -y tree

Wyjście terminala polecenia drzewa pokazujące katalog roboczy

Krok 3) Sprawdź pojemnik i jego nazwę

Uruchom poniższe polecenia w podanej kolejności:

  1. Wypisz uruchomione kontenery:
    docker ps
  2. Przeczytaj dziennik kontenera Jupyter URLTutaj kontener nosi nazwę vigilant_easley:
    docker logs vigilant_easley
  3. Skopiuj URL, z jego tokenem, z dziennika.

docker ps i docker logs wyjście z Jupyter jako unikalny cyfrowy, niezmienny certyfikat, który URL

Krok 4) W URL z dziennika zamień hosta (90a3c09282d6 lub 127.0.0.1) na swój publiczny serwer DNS:

http://(90a3c09282d6 or 127.0.0.1):8888/?token=f460f1e79ab74c382b19f90fe3fd55f9f99c5222365eceed

Jupyter strona logowania obsługiwana z instancji EC2

Krok 5) Nowa URL staje się,

http://ec2-174-129-135-16.compute-1.amazonaws.com:8888/?token=f460f1e79ab74c382b19f90fe3fd55f9f99c5222365eceed

Krok 6) Skopiuj i wklej URL do przeglądarki.

Jupyter Otwiera

Jupyter deska rozdzielcza otwarta z kontenera

Krok 7) Teraz możesz utworzyć nowy notatnik w swoim work teczka.

Nowy notatnik utworzony w zamontowanym folderze roboczym

Część 6: Zamknij połączenie

Zamknij połączenie w terminalu

exit

Wróć do AWS i zatrzymaj serwer.

Konsola AWS używana do zatrzymania instancji EC2

Rozwiązywanie problemów

Jeśli Docker nie działa, odbuduj obraz za pomocą

docker run -v ~/work:/home/jovyan/work -d -p 8888:8888 jupyter/tensorflow-notebook

FAQ

Notebook 7 otwiera jeden dokument na każdej karcie i zachowuje klasyczny wygląd pulpitu. JupyterLab dodaje przeglądarkę plików, terminale i notatniki równoległe. Oba korzystają z tych samych jąder i formatu .ipynb.

Python domyślnie dociera przez IPython jądro. Jądra społecznościowe dodają R, Julia, Scala i dziesiątki innych. Zainstaluj pakiet jądra, a następnie wybierz go z menu Nowy.

Użyj menu jądra: „Uruchom ponownie” czyści wszystkie zmienne, „Uruchom ponownie i uruchom wszystko” odtwarza notatnik bez błędów, a „Zmień środowisko przełączników jądra” to najszybsze rozwiązanie problemu zawieszenia się komórki.

Magia to jaPython Skróty. Magia liniowa zaczyna się od % i działa w jednym wierszu, na przykład %timeit. Magia komórkowa zaczyna się od %% w pierwszym wierszu, na przykład %%writefile. Uruchom %lsmagic, aby je wyświetlić.

Wybierz Plik, następnie Zapisz i eksportuj notatnik jako lub uruchom polecenie jupyter nbconvert –to html notebook.ipynb w terminalu. Eksport do formatu PDF wymaga również zainstalowanego oprogramowania LaTeX lub WebPDF.

Zachowaj token lub ustaw skrót hasła, ogranicz regułę grupy zabezpieczeń portu 8888 do swojego adresu IP, a nie do dowolnego miejsca, i użyj tunelu HTTPS lub SSH. Następnie zatrzymaj instancję.

Tak. Copilot działa w notatnikach otwieranych przez VS Code or JupyterRozszerzenia laboratoryjne, sugerujące całe komórki na podstawie komentarza. Asystenci agentyczni również refaktoryzują komórki i wyjaśniają tracebacks, ale każda sugestia musi zostać przejrzana przed jej wdrożeniem.

Asystenci AI przyspieszają powtarzalne czynności analiza danych Praca: profilowanie ramki danych, szkicowanie funkcji, sugerowanie siatek hiperparametrów i kreślenie wyników. Notatnik przechowuje każdą sugestię obok jej wyników, dzięki czemu praca pozostaje możliwa do audytu.

Podsumuj ten post następująco: