Jupyter Notebook、ノートブックインターフェースの例ノートブック・インターフェースまたは計算ノートブックは、コンピュータ・プログラムの記述方法である文芸的プログラミングに用いられる仮想ノートブック環境です。[ 1 ]ノートブックの中には、実行可能な計算が書式設定された文書に埋め込まれたWYSIWYG環境のものもあれば、計算とテキストを別々のセクションに分離したものもあります。ノートブックは、スプレッドシートやワードプロセッサといくつかの目的や機能を共有していますが、それらの限られたデータモデルを超えた機能を備えています。
モジュラーノートブックは、「カーネル」と呼ばれる様々な計算バックエンドに接続できます。ノートブックインターフェースは、統計学、データサイエンス、機械学習、コンピュータ代数などで広く利用されています。[ 2 ]
ノートブックの中核にあるのは、文芸的プログラミングツールという考え方です。これは、「プログラムの部分を任意の順序で並べ、同じソースファイルからドキュメントとコードを抽出できる」というものです。[ 3 ]ノートブックはこのアプローチを新たなレベルに引き上げ、グラフィック機能とインタラクティブ性への重点によって拡張しています。Stephen Wolfram氏によると、「ノートブックの考え方は、コード、結果、グラフィック、テキスト、その他すべてを自由に組み合わせたインタラクティブなドキュメントを持つことです」[ 4 ]。また、Jupyterプロジェクトのドキュメントによると、「ノートブックは、コンソールベースのインタラクティブコンピューティングへのアプローチを質的に新しい方向に拡張し、コードの開発、ドキュメント作成、実行、そして結果の伝達という計算プロセス全体をキャプチャするのに適したWebベースのアプリケーションを提供します」[ 5 ] 。
歴史
パーソナルコンピュータ用の最初のスプレッドシートであるVisiCalc は、 1979 年に公開されました。視覚的に計算するというそのアイデアは今日でも広く使用されていますが、表に収まるドキュメントに限定されています。
1987年には、文書メタファーを用いた混合テキストと計算をサポートするWYSIWYG数学システムの研究が発表され始めました。[ 6 ]ロン・アヴィツァーのMilo、[ 7 ]ウィリアム・シェルターのINFOR、ゼロックスPARCのTioga [ 8 ]およびCaminoReal [ 9 ]などです。
ドキュメントメタファーを使用した最も古い商用システムは1987年に登場したMathCADである。 [ 10 ] Wolfram Mathematica 1.0は1988年に続いた。[ 11 ] [ 12 ] [ 13 ]その後Maple 5.2(1992年)[ 14 ]とMacsyma 2.0(1995年)が登場した。[ 15 ]
その後20年間でノートブックインターフェースの人気が高まるにつれ、MATLAB、Python、Julia、R、Scala、Elixir、SQLなど、さまざまな計算バックエンド(「カーネル」)用のノートブックが導入されました。[ 16 ] [ 17 ]
それ以来、ノートブックのインターフェースの種類は拡張され、新しい形式が進化し続けています。[ 18 ]
使用
ノートブックは伝統的に、研究の手順、データ、計算、および発見を記録するための電子実験ノートとして科学の分野で使用されています。ノートブックは方法論を追跡することで、異なるデータセットで結果や計算を再現しやすくしています。 [ 16 ] [ 17 ]教育の分野では、ノートブックのインターフェースは、特に計算的思考の指導のためのデジタル学習環境を提供します。[ 19 ] [ 4 ]テキストとコードを組み合わせるユーティリティにより、教育の分野ではユニークな存在となっています。デジタルノートブックは、ノートブック環境内でコードを実行できるため、PowerPointやその他のプレゼンテーションソフトウェアの代替としてプレゼンテーションに使用されることがあります。 [ 20 ] [ 21 ]データを視覚的に表示し、コードを変更することでさまざまなソースからデータを取得できるため、ノートブックはビジネスインテリジェンスソフトウェアの領域にも入りつつあります。[ 16 ] [ 22 ] [ 23 ] [ 24 ]
注目すべき例
ノートブックのプロジェクトや製品の例: [ 25 ]
無料/オープンソースのノートブック
部分的なコピーレフト
独自のノートブック
参照
参考文献
- ^ Standage, Daniel (2015年3月13日). 「文芸プログラミング、RStudio、IPython Notebook」 . BioWize . Wordpress . 2016年12月1日閲覧。
- ^ Jupyter、プロジェクト (2018年2月20日). 「JupyterLabはユーザー向けに準備完了」2018年5月30日閲覧。
- ^ Ramsey, N. (1994年9月). 「文芸プログラミングの簡素化」. IEEE Software . 11 (5): 97–105 . doi : 10.1109/52.311070 . ISSN 0740-7459 . S2CID 18593796 .
- ^ a b Wolfram, Stephen (2016年9月7日). 「計算的思考の教え方—Stephen Wolfram」 . blog.stephenwolfram.com . 2016年11月23日閲覧。
- ^ 「Jupyter Notebook — Jupyter Notebook 6.2.0 ドキュメント」 . jupyter-notebook.readthedocs.io . 2021年5月3日閲覧。
- ^ Dennis S. Arnon編、「計算数学環境に関するワークショップ(1987年7月)」、 Computer Graphics 22 :1(1988年2月)
- ^ Richard J. Fateman、「数学的知識の表現と操作のためのコンピュータシステム」、最終報告書、1987年8月(DTIC AD-A193 547)
- ^ Butler W. Lampson、「パーソナル分散コンピューティング:Altoとイーサネットソフトウェア」、パーソナルワークステーションの歴史、1988年、 ISBN 0201112590、318ページ。
- ^デニス・アーノン、リチャード・ビーチ、ケビン・マクアイザック、「カミノリアル:インタラクティブ数学ノートブック」、JC van Vliet編、『文書操作とタイポグラフィ』、国際電子出版会議、文書操作とタイポグラフィ会議、ニース、1988年4月20~22日、 ISBN 0521362946、2ページ。
- ^ N. Kajler, N. Soiffer, "コンピュータ代数システムのユーザーインターフェースの調査", Journal of Symbolic Computation 25 :2:127-159 (1998年2月), doi : 10.1006/jsco.1997.0170
- ^ The ReDiscovered Future (2016-04-04)、Macintosh + Mathematica = Infinity - 1989年4月、 2016年11月23日閲覧。
- ^ Hayes, Brian (1990). 「Mathematicaについての考察」(PDF) . PIXEL . 1990年1月/2月号: 28–35 .
- ^ 「iOS用Wolfram Playerの起動—Wolfram」 2016年11月16日。 2016年11月23日閲覧。
- ^ 「Maple V Release 2 - Mapleヘルプ」 . www.maplesoft.com . 2023年1月18日閲覧。
- ^「Macsyma 2.0」、 Design News、 1995年4月24日
- ^ a b c d Osipov, Matt (2016年5月4日). 「データサイエンスノートブックの台頭」 . Datanami . Tabor Communications . 2016年12月20日閲覧。
- ^ a b「IPythonノートブック:歴史的回顧」 . blog.fperez.org . 2016年11月23日閲覧。
- ^ Lau, Sam; Drosos, Ian; Markel, Julia M.; Guo, Philip J. (2020年8月). 「計算ノートブックの設計空間:学術界と産業界における60システムの分析」. 2020 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) . pp. 1– 11. doi : 10.1109/VL/HCC50065.2020.9127201 . ISBN 978-1-7281-6901-9. S2CID 219572399 .
- ^ Barr, Valerie; Stephenson, Chris (2011). 「K-12への計算思考の導入:その内容とコンピュータサイエンス教育コミュニティの役割とは?」
- ^ Databricks (2015-07-06)、Spark Summit 2015 デモ: Databricks を使用したエンドツーエンドの機械学習データパイプラインの作成、 2016年11月23日取得
- ^ Frazier, Cat (2018年4月17日). 「Wolfram Presenter Toolsの発表」 . 2018年11月27日閲覧。
- ^ Andrews, Ian (2016年3月30日). 「文脈の中で情報を伝える」 . O'Reilly Media . 2016年11月23日閲覧。
- ^ "jupyter-incubator/dashboards" . GitHub . 2016年11月23日閲覧。
- ^ Sharma, Shad. 「MathematicaとCDFによるビジネスインテリジェンス」 . 2018年11月27日閲覧。
- ^ https://datasciencenotebook.org
- ^ 「Spark Notebook」 。 2018年10月1日時点のオリジナルよりアーカイブ。2018年9月30日閲覧。
- ^ 「GNU TeXmacsへようこそ」。2020年11月28日閲覧。
- ^ Jupyter 開発チーム (2015-04-22). 「ライセンス条項」 . Jupyter Notebook . GitHub . 2018年12月20日閲覧。
- ^ 「LICENSE」 . Project Jupyter Contributors . 2018年7月19日. 2018年12月20日閲覧。
- ^ "R Markdown" . R Studio . 2018年9月30日閲覧。
- ^ "Licene" . Readme . GitHub. 2018年12月7日. 2018年12月20日閲覧。
- ^ 「Databricks Unified Analytics Platform」サンフランシスコ、カリフォルニア州:Databricks Inc. 2018年。 2018年12月20日閲覧。
- ^ 「WolframAlpha Notebook Edition」 . 2021年1月12日閲覧。