Zephyrnet-Logo

Die einzige Jupyter Notebooks-Erweiterung, die Sie wirklich brauchen

Datum:

Die einzige Jupyter Notebooks-Erweiterung, die Sie wirklich brauchen

Jetzt müssen Sie den Kernel nicht neu starten, nachdem Sie den Code in Ihren benutzerdefinierten Importen bearbeitet haben.


By Olga Tschernyzka, Senior Engineer für maschinelles Lernen

Bild

Wenn Sie in Jupyter Notebooks arbeiten, ist es praktisch, Ihre Funktionen und Klassen in separaten .py-Dateien zu speichern und sie einfach zu importieren. Dadurch werden Ihre Notizbücher lesbar und Sie können dieselben Funktionen und Klassen problemlos in mehreren Notizbüchern wiederverwenden.

Angenommen, Sie haben Ihr Notebook gestartet, benutzerdefinierte Funktionen aus .py-Dateien importiert, große Datasets geladen und einige Vorverarbeitungen mit Ihren benutzerdefinierten Funktionen durchgeführt. Und es stellt sich heraus, dass eine der Funktionen für die Vorverarbeitung falsch ist, also korrigieren Sie den Code in .py-Dateien, führen dann die Zelle noch einmal mit der Vorverarbeitung aus – und… nichts ändert sich, der gleiche Fehler ist da. Jupyter Notebook sieht keine aktualisierte Version der Funktion.

Leider können Sie hier nur den Kernel neu starten, wodurch alle bereits in den Speicher geladenen Datensätze verloren gehen.

Es sei denn, Sie verwenden autoreload.

So funktioniert's

 
Laut Dokumentation, autoreload „lädt Module automatisch neu, bevor Benutzercode ausgeführt wird“ [1].

Das bedeutet, dass Sie jetzt einfach: Funktion in .py-Dateien korrigieren, Änderungen speichern, zurück zum Notebook gehen und Zelle mit Vorverarbeitung ausführen. Alle Funktionen beim Notebook-Import werden auf die neueste Version geladen, Code in der Zelle ausgeführt – und Sie sehen, wie die feste Funktion funktioniert.

Bild

Anwendungsbereich

 
Um diese Magie wahr werden zu lassen, fügen Sie dieses Code-Snippet in die erste Zelle Ihres Notebooks ein und führen Sie es zuerst aus, nachdem Sie den Kernel gestartet haben:

%load_ext autoreload
%autoreload 2


Sie müssen es nur einmal ausführen, wenn der Kernel gestartet wird. Und autoreload funktioniert, bis Sie den Kernel stoppen.

Installation

 
Es ist keine Installation erforderlich, es sollte bereits vorhanden sein. Autoreload wird automatisch installiert, wenn Sie Jupyter Notebook oder Jupyter Lab installieren.

Mehr

 
Autoreload ermöglicht es Ihnen, nur bestimmte Module neu zu laden oder einige der Module vom Neuladen auszuschließen. Wenn Sie diese Funktion benötigen, lesen Sie bitte die offizielle Dokumentation [1].

Bibliographie

 
[1] IPython-Dokumentation

 
Bio: Olga Tschernyzka ist Senior Machine Learning Engineer in einem großen osteuropäischen Outsourcing-Unternehmen; war an verschiedenen Data-Science-Projekten für führende US-amerikanische, europäische und asiatische Unternehmen beteiligt; Schwerpunkt und Interesse ist Deep Computer Vision.

Original. Mit Genehmigung erneut veröffentlicht.

Related:

Münzsmart. Beste Bitcoin-Börse in Europa
Quelle: https://www.kdnuggets.com/2021/06/only-jupyter-notebooks-extension-truly-need.html

spot_img

Neueste Intelligenz

spot_img