Skip to content
Last Dictionary

Jupyter notebook

noun/JOO-pih-ter/Also: Jupyter, Project Jupyter, JupyterLab, IPython Notebook, .ipynb, notebook, Google Colab, Colab

In plain wordsAn interactive document, opened in a web browser, that mixes runnable code with its results, charts and notes, so people can experiment step by step and share their work.

  1. An interactive computing document, stored as a JSON file with the extension .ipynb, that interleaves cells of executable code with their outputs — text, tables, plots, images, interactive widgets — and with narrative text in Markdown and LaTeX mathematics. A notebook is edited in a web application (the classic Notebook, JupyterLab, or editors such as VS Code) connected to a kernel, a separate process that executes the code and keeps its state between cells; kernels exist for Python, R, Julia and dozens of other languages. Notebooks are the default environment for data exploration, teaching and prototyping in machine learning, and hosted services such as Google Colab and Kaggle Notebooks offer them with free or paid GPUs. Their weaknesses are well known: cells run out of order leave hidden state, outputs bloat version control, and notebook code is hard to test and deploy, so production work usually moves into modules and pipelinesmachine learning pipeline, n.: An automated chain of steps that takes raw data, prepares it, trains and tests a model and hands it over for use, so the whole process can be rerun the same way..

    Share the Jupyter notebook so reviewers can rerun the analysis cell by cell.

Origin

Grew out of IPython, an interactive Python shell created by Fernando Pérez in 2001, whose browser-based notebook appeared in 2011, drawing on earlier notebook interfaces such as Mathematica's (1988). In 2014 the language-independent parts were spun off as Project Jupyter, named after its core languages Julia, Python and R and in homage to Galileo's notebooks recording the moons of Jupiter.

Usage note

'Notebook' also names similar tools — Google Colab, Databricks notebooks, Observable, marimo — some with different file formats. Project Jupyter received the ACM Software System Award for 2017.

Related

See also
  • scikit-learnscikit-learn, prop. n.: A free, widely taught Python library of classic machine-learning methods — such as decision trees, regression and clustering — that all work in the same simple way.
  • NumPyNumPy, prop. n.: The basic free Python library for working quickly with large grids of numbers; nearly every data-science and machine-learning tool in Python is built on it or copies its style.
  • experiment trackingexperiment tracking, n.: Keeping an automatic logbook of every model-training attempt — settings, data, code and results — so a team can compare attempts, repeat the good ones and see what changed.
  • KaggleKaggle, prop. n.: A popular website, owned by Google, where people compete to build the most accurate prediction models on shared datasets, publish their code and data, and learn data science.
  • PyTorchPyTorch, prop. n.: The most widely used free software toolkit for building and training neural networks, especially in research; programmers write ordinary Python and it handles the calculus and the graphics chips.

Sources

  1. Pérez, F. & Granger, B. E. (2007). IPython: A System for Interactive Scientific Computing. Computing in Science & Engineering 9(3).
  2. Kluyver, T. et al. (2016). Jupyter Notebooks — a publishing format for reproducible computational workflows. In Positioning and Power in Academic Publishing: Players, Agents and Agendas. IOS Press.

Mentioned in

data sciencedata science, n.: The practice of collecting, cleaning, analyzing and interpreting data, using statistics, programming and machine learning, to answer questions and guide decisions., NumPyNumPy, prop. n.: The basic free Python library for working quickly with large grids of numbers; nearly every data-science and machine-learning tool in Python is built on it or copies its style., pandaspandas, prop. n.: A free Python library for loading, cleaning, combining and summarizing tables of data, like a programmable spreadsheet; it is a standard first tool for preparing data for machine learning., scikit-learnscikit-learn, prop. n.: A free, widely taught Python library of classic machine-learning methods — such as decision trees, regression and clustering — that all work in the same simple way., GradioGradio, prop. n.: A free Python library for quickly wrapping an AI model in a simple web page — text boxes, image uploads, chat windows — so that others can try it in a browser.