Jupyter Notebook-tutorial: installeren en gebruiken Jupyter?

⚡ Slimme samenvatting

Jupyter Notebook is een open-source webapplicatie die live code, vergelijkingen, visualisaties en beschrijvende tekst combineert in één deelbaar document, en die even goed werkt op een laptop als op een AWS-server.

  • 🔘 Kernidee: Code Cellen, Markdown-cellen en hun uitvoer bevinden zich in één .ipynb-bestand.
  • ☑️ Kernelmodel: Elk notitieboek is gekoppeld aan een kernel, het proces dat elke cel uitvoert.
  • ✅ Lokale start: Het commando `jupyter notebook` opent het dashboard, waar u 'Nieuw' kunt selecteren. Python 3. Maak een notitieboekje.
  • 🧪 Uitvoeren en bewerken: Groen betekent bewerkingsmodus, blauw betekent opdrachtmodus, Alt+Enter voert een actie uit op een cel en telt er een op.
  • ️ Cloudpad: Een EC2-sleutelpaar, een beveiligingsgroep op poort 8888 en een Docker-image: verplaats het naar AWS.
  • 🔒 Let op je veiligheid: Close and Halt maakt de kernel vrij; stopping Het AWS-factureringsproces wordt hiermee beëindigd.

Jupyter Notebook installeren en gebruiken

Wat is Jupyter Notitieboekje?

Jupyter Notitieboek is een open-source webapplicatie voor het schrijven en delen van live codes, vergelijkingen, visualisaties met rich text-elementen. Het biedt een handige manier om alinea's, vergelijkingen, titels, links en figuren te schrijven om data-analyses uit te voeren. Het is ook handig voor het delen van interactieve algoritmen met uw publiek voor het onderwijzen of demonstreren van doeleinden.

Proef de Jupyter Notebook-app

De Jupyter Notebook App is de interface waarmee u uw scripts en codes via uw webbrowser kunt schrijven. De app kan lokaal worden gebruikt, wat betekent dat u geen internettoegang of een externe server nodig heeft.

Jupyter De interface van de Notebook-app draait in een webbrowser.

Elke berekening wordt gedaan via een kernel. Elke keer dat u een kernel start, wordt er een nieuwe kernel gemaakt Jupyter Notebook.

Huidige installaties verzenden Notebook 7, gebouwd op JupyterLab. jupyter notebook Het werkt nog steeds, en beide lezen hetzelfde. .ipynb bestand.

Gebruiksaanwijzing Jupyter Notitieboek

In onderstaande sessie leert u hoe u dit kunt gebruiken Jupyter Notitieboekje. Je schrijft een eenvoudige regel code om vertrouwd te raken met de omgeving van Jupyter.

Stap 1) Je voegt een map toe aan de werkmap die alle notitieboeken zal bevatten die je tijdens de tutorials zult maken. TensorFlow.

If Jupyter ontbreekt, uitvoeren pip install notebook ten eerste, als de Installatiehandleiding voor TensorFlow doet dat. Open vervolgens de Terminal en schrijf

mkdir jupyter_tf
jupyter notebook

Code Uitleg

  • mkdir jupyter_tf: Maak een map met de naam jupyter_tf aan
  • jupyter-notitieboek: Openen Jupyter web-app

Terminaluitvoer na het uitvoeren van mkdir jupyter_tf en jupyter notebook

Stap 2) U kunt de nieuwe map in de omgeving zien. Klik op de map jupyter_tf.

Jupyter Dashboard met de nieuwe jupyter_tf-map.

Stap 3) In deze map maakt u uw eerste notitieboekje. Klik op de knop Nieuwe en Python 3.

Jupyter Nieuw menu met de Python 3 kerneloptie

Stap 4) Je bent binnen de Jupyter omgeving. Tot nu toe heet je notitieboek Untitled.ipynb. Dit is de standaardnaam die wordt gegeven door Jupyter. Laten we de naam ervan wijzigen door op te klikken Dien in en andere naam geven

Jupyter Het menu 'Bestand' met de opdracht 'Naam wijzigen' gemarkeerd.

Je kunt het hernoemen naar Introduction_jupyter

Hernoem het dialoogvenster Notebook naar de naam Introduction_jupyter.

Binnen Jupyter In de Notebook-interface schrijf je code, annotaties of tekst in cellen.

Leeg Jupyter Notitieblokcel klaar voor code of tekst

In een cel kunt u één regel code schrijven.

Jupyter cel die één regel code bevat

of meerdere lijnen. Jupyter leest de code regel voor regel voor.

Jupyter cel die meerdere regels code bevat

Als u bijvoorbeeld de volgende code in een cel schrijft.

Voorbeeldcode getypt in een Jupyter codecel

Het zal deze output produceren.

Uitvoer afgedrukt onder uitgevoerd Jupyter cel

Stap 5) Je bent klaar om je eerste regel code te schrijven. Je ziet dat de cel twee kleuren heeft. De groene kleur betekent dat je je in de juiste positie bevindt. bewerkingsmodus.

Groene celrand die aangeeft Jupyter bewerkingsmodus

De blauwe kleur geeft echter aan dat je binnen bent uitvoeringsmodus.

Blauwe celrand die aangeeft Jupyter commando modus

Je eerste regel code zal afdrukken Guru99! Binnen de cel kun je schrijven

print("Guru99!")

Er zijn twee manieren om een ​​code uit te voeren Jupyter:

  • Klik en voer uit
  • Sneltoetsen

Om de code uit te voeren, kunt u op klikken Cel en Voer cellen uit en selecteer hieronder

Jupyter Celmenu met 'Cellen uitvoeren' en 'Onder selecteren'

U kunt zien dat de code onder de cel wordt afgedrukt en dat er direct na de uitvoer een nieuwe cel is verschenen.

Guru99 uitvoer afgedrukt onder de cel met een nieuwe lege cel toegevoegd

Een snellere manier om een ​​code uit te voeren is door gebruik te maken van de Sneltoetsen. Ga naar om toegang te krijgen tot de sneltoetsen Help en Sneltoetsen

Jupyter Helpmenu met de vermelding Toetsenbord sneltoetsen

Hieronder de lijst met sneltoetsen voor een MacOS-toetsenbord. U kunt de sneltoetsen bewerken in de editor.

Jupyter Lijst met sneltoetsen voor macOS

Hieronder staan ​​snelkoppelingen voor Windows

Jupyter Lijst met sneltoetsen voor Windows

Schrijf deze regel

print("Hello world!")

Probeer de sneltoets eens. Alt+Enter voert de cel uit en voegt een nieuwe, lege cel eronder in.

"Hello world"-uitvoer geproduceerd met de sneltoets Alt+Enter.

Stap 6) Het is tijd om het Notebook te sluiten. Ga naar Dien in en klik op Sluiten en stoppen

Jupyter Bestandmenu met de opdracht Sluiten en Stoppen

Note: Jupyter slaat het notebook automatisch op met checkpoint. Als u het volgende bericht krijgt:

Jupyter Waarschuwing dat het notitieboek niet-opgeslagen wijzigingen bevat.

Het betekent Jupyter heeft het bestand niet opgeslagen sinds het laatste controlepunt. U kunt het notitieblok handmatig opslaan

Handmatig opslaan Jupyter notitieboek controlepunt

U wordt doorgestuurd naar het hoofdpaneel. U kunt zien dat uw notitieblok een minuut geleden is opgeslagen. U kunt veilig uitloggen.

Jupyter Hoofdvenster met een lijst van de opgeslagen notitieboeken

Install Jupyter Notitieboekje met AWS

Wanneer een dataset te groot wordt voor het lokale geheugen, verplaats dan het notebook naar een cloudserver. Hieronder vindt u een stapsgewijze handleiding voor het installeren en uitvoeren van de applicatie. Jupyter Notitieboekje over AWS:

Heeft u nog geen account bij AWS, maak dan een gratis account aan hier.

Wij gaan als volgt te werk

Deel 1: Stel een sleutelpaar in

Stap 1) Ga naar Services en vind EC2

AWS Services-menu met de optie EC2 geselecteerd

Stap 2) In het paneel en klik op Sleutelparen

EC2-navigatiepaneel aan de linkerkant met geselecteerde sleutelparen

Stap 3) Klik op Sleutelpaar maken

EC2 Sleutelpaar aanmaken-knop

  1. Je kunt het Docker-sleutel noemen
  2. Klik op Maken

Maak een dialoogvenster voor het aanmaken van een sleutelpaar met de naam Docker-sleutel.

Een bestand met de naam Docker_key.pem wordt gedownload.

Download het privé-sleutelbestand Docker_key.pem via de browser.

Stap 4) Kopieer en plak het in de mapsleutel. We zullen het binnenkort nodig hebben.

Alleen voor Mac OS-gebruikers

Deze stap is alleen van toepassing op Mac OS-gebruikers. Windows Linux-gebruikers kunnen direct doorgaan naar deel 2.

U moet een werkmap instellen die de bestandssleutel bevat.

Maak eerst een map met de naam key. Voor ons bevindt het zich in de hoofdmap Docker. Vervolgens stelt u dit pad in als uw werkmap

mkdir Docker/key
cd Docker/key

Terminal maakt de Docker/key-werkmap aan en opent deze.

Deel 2: Een beveiligingsgroep instellen

Stap 1) U moet een beveiligingsgroep configureren. Je hebt er toegang toe via het paneel

EC2-navigatiepaneel met geselecteerde beveiligingsgroepen

Stap 2) Klik op Beveiligingsgroep maken

EC2-knop voor het aanmaken van een beveiligingsgroep

Stap 3) In het volgende scherm

  1. Voer de naam van de beveiligingsgroep "jupyter_docker" en de beschrijving "Beveiligingsgroep voor Docker" in.
  2. Voeg de vier onderstaande inkomende regels toe:
    • ssh: poortbereik 22, bron overal
    • http: poortbereik 80, bron Anywhere
    • https: poortbereik 443, bron Anywhere
    • Aangepast TCP: poortbereik 8888, bron Anywhere
  3. Klik op Create.

Beveiligingsgroep jupyter_docker met SSH-, HTTP-, HTTPS- en TCP 8888-regels

Stap 4) De nieuw gemaakte beveiligingsgroep wordt weergegeven

EC2-lijst met de nieuw aangemaakte beveiligingsgroep jupyter_docker

Deel 3: Startinstantie

U bent eindelijk klaar om de instantie te maken

EC2-navigatiepaneel met geselecteerde instanties

Stap 1) Klik op Startinstantie

EC2-instantie starten-knop

De standaardserver is voldoende. Kies de Amazon Linux AMI. De screenshots tonen image 2018.03.0; de huidige consoles bieden Amazon Linux 2023Zorg dus voor overeenkomende labels, niet voor overeenkomende pixels.

AMI staat voor Amazon Machine-image. Deze bevat de informatie die nodig is om een ​​instantie te starten die draait op een virtuele server in de cloud.

Amazon Scherm voor het selecteren van een Linux AMI in de opstartwizard

Houd er rekening mee dat AWS een server heeft die speciaal is bedoeld voor diepgaand leren, zoals:

  • Diep Leren AMI (Ubuntu)
  • Diepgaand leren AMI
  • Diepe leerbasis AMI (Ubuntu)

Ze worden allemaal geleverd met recente binaire bestanden van deep learning-frameworks die vooraf zijn geïnstalleerd in aparte virtuele omgevingen:

Elke image is volledig geconfigureerd met NVIDIA CUDA, cuDNN en NCCL, evenals Intel MKL-DNN.

Stap 2) Kies t2.microHet betreft een gratis server. AWS biedt deze virtuele machine met 1 vCPU en 1 GB geheugen gratis aan. Deze server biedt een goede balans tussen rekenkracht, geheugen en netwerkprestaties. Hij is geschikt voor kleine en middelgrote workloads.

Instantietypescherm met t2.micro geselecteerd

Stap 3) Houd de instellingen standaard in het volgende scherm en klik op Volgende: Opslagruimte toevoegen

Het configuratiescherm van de instantie is ingesteld op de standaardwaarden.

Stap 4) Verhoog de opslag naar 10 GB en klik op Volgende

Opslagscherm met het rootvolume vergroot tot 10 GB

Stap 5) Houd de instellingen standaard en klik op Volgende: Beveiligingsgroep configureren

Het scherm met tags is teruggezet naar de standaardwaarden.

Stap 6) Kies de beveiligingsgroep die u eerder hebt gemaakt jupyter_docker

Beveiligingsgroepscherm met jupyter_docker geselecteerd

Stap 7) RevBekijk uw instellingen en klik op de startknop

Revschermweergave vóór het starten van de EC2-instantie

Stap 8) De laatste stap is het koppelen van het sleutelpaar aan de instance.

Dialoogvenster voor het selecteren van sleutelparen waarmee de Docker-sleutel aan het exemplaar wordt gekoppeld

Stap 9) Instantie wordt gestart

De opstartstatuspagina bevestigt dat het exemplaar wordt gestart.

Stap 10) Hieronder vindt u een overzicht van de momenteel in gebruik zijnde instanties. Let op het openbare IP-adres.

EC2-instantielijst met het openbare IP-adres

Stap 11) Klik op Verbinden

EC2 Connect-knop voor de actieve instantie

U vindt hier de verbindingsgegevens.

Het dialoogvenster 'Verbinden' toont de details van de SSH-verbinding.

Start uw exemplaar (Mac OS-gebruikers)

Stel eerst de werkmap van de terminal in op de map waarin het sleutelpaarbestand zich bevindt.

voer de code uit

chmod 400 docker.pem

Open de verbinding met deze code.

Er zijn twee commando's. Soms stopt het eerste commando. Jupyter Het notitieboekje openen.

Gebruik in dit geval de tweede om de verbinding te forceren Jupyter Notitieboekje op 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

De eerste keer wordt u gevraagd de verbinding te accepteren

Terminalprompt waarin wordt gevraagd om de SSH-hostvingerafdruk te accepteren

Start uw exemplaar (Windows gebruikers)

Stap 1) Ga naar deze website om PuTTY en PuTTYgen te downloaden PuTTY

U moet downloaden

  • PuTTY: start de instantie
  • PuTTYgen: converteer het pem-bestand naar ppk

PuTTY-downloadpagina met een overzicht van PuTTY en PuTTYgen

Nu beide programma's geïnstalleerd zijn, moet je het .pem-bestand converteren naar .ppk. PuTTY kan alleen .ppk-bestanden lezen. Het .pem-bestand bevat de unieke sleutel die door AWS is aangemaakt.

Stap 2) Open PuTTYgen en klik op Laden. Blader door de map waarin het .pem-bestand zich bevindt.

PuTTYgen laaddialoogvenster, bladerend naar het .pem-bestand

Stap 3) Nadat u het bestand hebt geladen, ontvangt u een melding dat de sleutel met succes is geïmporteerd. Klik op OK

PuTTYgen-melding die bevestigt dat de sleutel is geïmporteerd

Stap 4) Klik vervolgens op Privésleutel opslaan. U wordt gevraagd of u deze sleutel zonder wachtwoordzin wilt opslaan. Klik op ja.

PuTTYgen vraagt ​​om de privésleutel op te slaan zonder wachtwoordzin.

Stap 5) Bewaar de sleutel

Het geconverteerde .ppk-bestand met de privésleutel opslaan.

Stap 6) Ga naar AWS en kopieer de openbare DNS

AWS-console toont de openbare DNS-naam van het exemplaar.

Open PuTTY en plak de openbare DNS in de hostnaam

PuTTY-sessiescherm met de openbare DNS in het veld Hostnaam.

Stap 7)

  1. Vouw in het linkerpaneel SSH uit en open Auth
  2. Blader door de privésleutel. U moet de .ppk selecteren
  3. Klik op Openen.

PuTTY SSH-authenticatiescherm met de geselecteerde .ppk-privésleutel

Stap 8)

Wanneer deze stap is voltooid, wordt een nieuw venster geopend. Klik op Ja als u deze pop-up ziet

PuTTY-beveiligingswaarschuwing: de serverhostsleutel wordt geaccepteerd.

Stap 9)

U dient in te loggen als: ec2-user

PuTTY-aanmeldingsprompt met het ec2-gebruikersaccount

Stap 10)

U bent verbonden met de Amazon Linux-AMI.

Amazon Linux AMI shell-banner na een succesvolle login

Deel 4: Docker installeren

De Docker-handleiding Dit omvat de onderstaande terminologie met betrekking tot containers.

Terwijl je via PuTTY of Terminal met de server bent verbonden, kun je de installatie uitvoeren. havenarbeider krachbron.

Voer de volgende code uit. Op Amazon Linux 2023, gebruik dnf besteld, yum en systemctl start docker besteld, service docker start.

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

Start de verbinding opnieuw

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 Gebruikers maken opnieuw verbinding met PuTTY precies zoals hierboven beschreven.

Deel 5: Installeren Jupyter

Stap 1) Maak de Jupyter container uit een vooraf gebouwde image:

## 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 Uitleg

  • docker run: Voer de afbeelding uit
  • v: voeg een volume toe
  • ~/werk:/home/jovyan/werk: Volume
  • 8888:8888: poort
  • jupyter/datascience-notebook: Afbeelding

Voor andere vooraf gemaakte afbeeldingen kunt u bladeren door de Jupyter Docker Stacks-repositorySinds oktober 2023 worden deze afbeeldingen via Quay.io verzonden, dus download ze gerust. quay.io/jupyter/tensorflow-notebook or quay.io/jupyter/pyspark-notebook besteld, PySparkDe Docker Hub-kopieën zijn bevroren.

Laat de container naar het aangekoppelde bestand schrijven. work map zodat notitieboeken een herstart overleven:

sudo chown 1000 ~/work

Stap 2) Install tree zodat je de werkmap kunt inspecteren:

sudo yum install -y tree

Terminaluitvoer van het commando `tree` waarin de werkmap wordt weergegeven

Stap 3) Controleer de container en de naam ervan

Voer de onderstaande opdrachten in de aangegeven volgorde uit:

  1. Lijst de actieve containers:
    docker ps
  2. Lees het containerlogboek voor de Jupyter URLDe container heet hier vigilant_easley:
    docker logs vigilant_easley
  3. Kopieer de URL, met zijn token, uit het logboek.

De uitvoer van `docker ps` en `docker logs` met de Jupyter teken URL

Stap 4) In de URL Vervang in het logbestand de host (90a3c09282d6 of 127.0.0.1) door de openbare DNS-server van uw instantie:

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

Jupyter inlogpagina die wordt aangeboden door de EC2-instantie

Stap 5) De nieuwe URL wordt,

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

Stap 6) Kopieer en plak de URL in uw browser.

Jupyter Opent

Jupyter dashboard geopend vanuit de container

Stap 7) Je kunt nu een nieuw notitieboek aanmaken in je work map.

Nieuw notitieboek aangemaakt in de gekoppelde werkmap.

Deel 6: Een nauwe verbinding

Sluit de verbinding in de terminal

exit

Ga terug naar AWS en stop de server.

AWS-console gebruikt om het EC2-exemplaar te stoppen

Problemen oplossen

Als Docker niet werkt, bouw dan de image opnieuw op met

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

Veelgestelde vragen

Notebook 7 opent één document per tabblad en behoudt het klassieke dashboard. JupyterLab voegt een bestandsbrowser, terminals en notebooks naast elkaar toe. Beide delen dezelfde kernels en het .ipynb-formaat.

Python komt standaard aan via de IPython kernel. Community-kernels voegen toe RJulia, Scala en tientallen andere. Installeer het kernelpakket en selecteer het vervolgens in het menu 'Nieuw'.

Gebruik het Kernel-menu: 'Opnieuw opstarten' wist alle variabelen, 'Opnieuw opstarten en alles uitvoeren' speelt het notebook schoon af en 'Kernelinstellingen wijzigen'. Opnieuw opstarten is de snelste oplossing wanneer een cel vastloopt.

Magie ben ikPython Snelkoppelingen. Regelmagie begint met % en werkt op één regel, zoals %timeit. Celmagie begint met %% op de eerste regel, zoals %%writefile. Voer %lsmagic uit om ze weer te geven.

Kies Bestand, vervolgens Opslaan en Notebook exporteren als, of voer jupyter nbconvert –to html notebook.ipynb uit in een terminal. Voor PDF-export is ook een LaTeX- of WebPDF-backend vereist.

Bewaar het token of stel een wachtwoordhash in, beperk de beveiligingsgroepregel voor poort 8888 tot uw eigen IP-adres in plaats van 'Overal', en gebruik HTTPS of een SSH-tunnel. Stop het exemplaar daarna.

Ja. Copilot werkt in notebooks die via geopend zijn. VS Code or JupyterLab-uitbreidingen, waarbij hele cellen worden voorgesteld op basis van een opmerking. Agentische assistenten herstructureren ook cellen en leggen deze uit. tracebacks, maar elke suggestie moet eerst worden beoordeeld voordat je hem uitvoert.

AI-assistenten versnellen repetitieve taken. gegevensanalyse Werkzaamheden: het profileren van een dataframe, het opstellen van kenmerken, het voorstellen van hyperparameterroosters en het plotten van de resultaten. Het notitieboek bewaart elke suggestie naast de bijbehorende uitvoer, zodat het werk traceerbaar blijft.

Vat dit bericht samen met: