프로젝트 주피터

Project Jupyter
프로젝트 주피터
Jupyter logo.svg
줄임말주피터
형성2015년 2월, 7년 전(2015-02)
유형비영리 단체
목적모든 프로그래밍 [1]언어에 걸쳐 인터랙티브한 데이터 과학 및 과학 컴퓨팅을 지원합니다.
서비스 지역
전 세계적으로
공용어
영어
웹 사이트jupyter.org

프로젝트 주피터(/ddʒuːpɪtər/ (listen))는 일부 사용자가 Python /ʌpɪθn/[citation needed]의 발음을 제안하며 "수십 개의 프로그래밍 언어에 걸쳐 인터랙티브 컴퓨팅을 위한 오픈 소스 소프트웨어, 오픈 표준 및 서비스를 개발하는 것"[2]을 목표로 하는 커뮤니티 실행 프로젝트입니다.2014년 Fernando[3] Pérez와 Brian [4]Granger에 의해 IPython에서 분사되었습니다.프로젝트 주피터의 이름은 Julia, Python, R이라는 Jupyter가 지원하는 3개의 핵심 프로그래밍 언어에서 따온 것이며, 목성의 위성을 발견한 갈릴레오의 노트에 경의를 표합니다.Project Jupyter는 대화형 컴퓨팅 제품인 Jupyter Notebook, Jupyter Hub 및 Jupyter Lab을 개발 및 지원했습니다.주피터는 NumFOCUS가 [5]재정적으로 후원하고 있다.

역사

목성과 그 4개의 달( four)을 관측한 갈릴레오 갈릴레이의 1610년 필사본으로, 그 묘사는 주피터 로고에 영감을 주었다.

2014년 Fernando Pérez는 IPython의 분사 프로젝트인 Project [6]Jupyter를 발표했습니다.IPython은 Python 쉘 및 Jupyter용 커널로 계속 존재하며, IPython의 노트북 및 기타 언어에 구애받지 않는 부분은 Jupyter라는 [7][8]이름으로 이동한다.Jupyter는 언어에 구애받지 않고 Julia, R, Haskell, Ruby 및 Python([9]IPython 커널 경유)을 포함한 수십 개 언어로 실행 환경(커널이라고도 함)을 지원합니다.

2015년 GitHub과 Jupyter Project는 GitHub 플랫폼에서 [10][11]Jupyter 노트북 파일 형식(.ipynb 파일)의 네이티브 렌더링을 발표했습니다.

철학

프로젝트 주피터의 운영 철학은 오픈 소스 소프트웨어 개발을 통해 모든 프로그래밍 언어에 걸쳐 대화형 데이터 과학 및 과학 컴퓨팅을 지원하는 것입니다.Project Jupyter 웹사이트에 따르면, "Jupyter는 항상 100% 오픈 소스 소프트웨어이며, 모든 사람이 무료로 사용할 수 있으며 수정된 BSD 라이센스의 자유로운 조건에 따라 출시됩니다."[1]

주피터 노트북

Jupyter 노트북 인터페이스

Jupyter 노트북(구 IPython 노트북)은 노트북 문서를 작성하기 위한 웹 기반 인터랙티브 컴퓨터 환경입니다.

주피터 노트북 문서는 코드, 텍스트(마크다운 사용), 수학, 플롯리치 미디어를 포함할 수 있는 입력/출력 셀의 순서 목록을 포함하는 브라우저 기반 복제입니다.인터페이스 아래에서 노트북은 버전화된 스키마를 따르는 JSON 문서이며, 일반적으로 .ipynb 확장자로 끝납니다.

주피터 노트북은 널리 사용되는 여러 오픈 소스 라이브러리를 기반으로 구축되어 있습니다.

Jupyter Notebook은 다양한 언어로 프로그래밍할 수 있도록 많은 커널에 연결할 수 있습니다.주피터 커널은 다양한 유형의 요청(코드 실행, 코드 완료, 검사)을 처리하고 응답을 제공하는 프로그램입니다.커널은 ZeroMQ를 사용하여 Jupyter의 다른 컴포넌트와 통신하기 때문에 같은 머신 또는 리모트머신 상에 존재할 수 있습니다.다른 많은 노트북과 유사한 인터페이스와 달리, Jupyter에서는 커널이 특정 문서에 첨부되어 있다는 것을 인식하지 못하고 한 번에 여러 클라이언트에 연결할 수 있습니다.일반적으로 커널에서는 단일 언어만 실행할 수 있지만 몇 가지 [citation needed]예외가 있습니다.기본적으로는 Jupyter Notebook에는 IPython 커널이 포함되어 있습니다.2.3 릴리즈[12][13](2014년 10월) 현재 Python, R, Julia, Haskell을 [14]포함한 많은 프로그래밍 언어에 대해 49개의 Jupyter 호환 커널이 있습니다.

Jupyter 노트북은 웹 인터페이스의 "Download As" 또는 셸의 "jupyter nbconvert[15]" 명령줄 인터페이스를 통해 다수의 개방형 표준 출력 형식(HTML, 프레젠테이션 슬라이드, LaTeX, PDF, ReStructuredText, Markdown, Python)으로 변환할 수 있습니다.웹상의 Jupyter 노트북 문서 시각화를 단순화하기 위해 nbconvert[16] 라이브러리는 NbViewer를[17] 통해 서비스로 제공됩니다.이 라이브러리는 공개 가능한 노트북 문서의 URL을 가져와 즉시 HTML로 변환하여 사용자에게 표시할 수 있습니다.

노트북 인터페이스는 0.12 릴리즈[18](2011년 12월)에서 IPython에 추가되었으며 2015년에 Jupyter 노트북으로 이름이 변경되었습니다(IPython 4.0은 Jupyter 1.0).주피터 노트북은 Maple, Mathematica, SageMath 다른 프로그램의 노트북 인터페이스와 유사합니다.이것은 1980년대 [19]Mathematica에서 시작된 컴퓨터 인터페이스 스타일입니다.주피터의 관심은 2018년 [19]초에 Mathematica 노트북 인터페이스의 인기를 추월했습니다.

JupyterLab은 Project Jupyter를 위한 새로운 사용자 인터페이스입니다.기존 Jupyter 노트북의 구성 요소(노트북, 단말기, 텍스트 편집기, 파일 브라우저, 리치 출력 등)를 유연한 사용자 인터페이스로 제공합니다.첫 번째 안정 발매는 2018년 [20]2월 20일에 발표되었습니다.

기타 제품

  • Jupyter[21] Hub은 Jupyter 노트북용 다중 사용자 서버입니다.다수의 단일 Jupyter 노트북 서버를 [citation needed]산란, 관리 및 프록시하여 많은 사용자를 지원하도록 설계되었습니다.Jupyter Hub에는 서버 관리가 필요하지만, Jupyo와 같은[22] 타사 서비스는 클라우드에서 다중 사용자 Jupyter 노트북을 호스팅하고 관리함으로써 Jupyter Hub의 대안을 제공합니다.
  • Jupyter Book은 컴퓨터 [23]재료로 책과 문서를 만드는 오픈 소스 프로젝트입니다.사용자는 MyST라고 불리는 Markdown의 확장 버전인 [24]Markdown, MathJax를 사용한 Maths & Equilations, Jupyter 노트북, 빌드 시 Jupyter 노트북 실행 시 출력인 reStructuredText를 혼합하여 콘텐츠를 구성할 수 있습니다.복수의 출력 포맷을 작성할 수 있습니다(현재는 1개의 파일, 복수의 HTML Web 페이지, PDF 파일).
  • nbgrader는 Jupyter [25]노트북에서 할당(마킹)을 만들고 등급을 매기기 위한 도구입니다.이를 통해 강사는 Python 또는 지원되는 다른 커널에서 코딩 연습과 텍스트 응답을 포함하는 할당을 작성할 수 있습니다.제출된 과제는 자동으로 표시되거나 수동으로 점수가 매겨지거나 둘 다 혼합될 수 있습니다.

업계의 도입

Jupyter Notebook은 클라우드 컴퓨팅에 널리 사용되는 사용자 인터페이스가 되었으며, 주요 클라우드 공급자들은 Jupyter Notebook 또는 파생 툴을 클라우드 사용자를 위한 프런트 엔드 인터페이스로 채택했습니다.예를 들어 AmazonSageMaker 노트북,[26] Google의 Collaboratory[27], Microsoft의 Azure [28]노트북 등이 있습니다.

Google Colaboratory(Colab이라고도 함)는 클라우드에서 실행되며 Google Drive에 노트북을 저장하는 무료 주피터 노트북 환경입니다.Colab은 원래 구글 사내 프로젝트였다.모든 코드를 오픈소스로 하고 업스트림에서 보다 직접적으로 작업하는 시도가[29] 이루어졌으며, 이는 "Open in Colab" 구글 크롬 [30]확장의 개발로 이어졌으나 결국 종료되었고, Colab 개발은 내부적으로 계속되었다.2019년 10월 현재 Collaboratory UI는 Python 2와 Python 3 커널을 사용하는 노트북만 만들 수 있지만 R과 Swift가 모두 컨테이너에 설치되어 있기 때문에 커널 스펙이 IR 또는 Swift인 기존 노트북도 사용할 수 있습니다.Julia language는 Colab에서도 사용할 수 있습니다(예:Python과 GPU, Google의 텐서 처리 유닛도 Julia와 함께 Colab에서[31] [32][33]작동합니다.)

매체의 보도 내용

  • 2016년 2월 11일, LIGO의 협업이 최초로 중력파 관측을 발표했습니다.이 공동작업은 데이터를 처리하고 디스커버리 [34]페이퍼의 수치를 재현하기 위한 Python 코드가 포함된 Jupyter 노트북과 함께 원시 과학 데이터를 공개했습니다.
  • 2018년 4월 5일, The Atlantic은 The Scientific Paper Is Oldoes라는 제목의 기사를 발행했는데, 과학 출판의 미래에서 [19]주피터 노트북과 매스매티카 노트북의 역할에 대해 논의했습니다.이 기사는 경제학자인 폴 로머[35]포함한 저명한 과학자들과 학자들의 반응을 이끌어냈다.

조성금 및 상

「 」를 참조해 주세요.

레퍼런스

  1. ^ a b "About Us". Project Jupyter. 2018-04-20. Retrieved 2018-05-03.
  2. ^ "Project Jupyter". www.jupyter.org. Retrieved 2020-11-13.
  3. ^ "Berkeley Institute for Data Science".
  4. ^ "Speaker: Brian Granger: Jupyter Notebook conference & training: JupyterCon".
  5. ^ "NumFOCUS Sponsored Projects". NumFOCUS. Retrieved 2021-10-25.
  6. ^ "Project Jupyter // Speaker Deck".
  7. ^ "The Notebook, Qt console and a number of other pieces are now parts of Jupyter". GitHub. 29 May 2021.
  8. ^ "The Big Split™". 28 August 2017.
  9. ^ "Project Jupyter Home".
  10. ^ sshirokov (2015-05-07). "GitHub + Jupyter Notebooks = <3". The GitHub Blog. Retrieved 2018-04-10.
  11. ^ "Rendering Notebooks on GitHub". Jupyter Blog. 2015-05-07. Retrieved 2018-04-10.
  12. ^ "What's new in IPython > Issues closed in the 2.x development cycle".
  13. ^ "What's new in IPython > 2.0 Series".
  14. ^ "Jupyter kernels > List of (some) IPython compatible kernels". GitHub.
  15. ^ "nbconvert: Convert Notebooks to other formats". nbconvert 6.0.8.dev0 documentation. Retrieved 2020-11-13.
  16. ^ jupyter/nbconvert, Project Jupyter, 2021-04-12, retrieved 2021-04-13
  17. ^ "nbviewer". nbviewer.jupyter.org. Retrieved 2020-11-13.
  18. ^ "Notebook's announcement- 0.12 release note".
  19. ^ a b c Somers, James. "The Scientific Paper Is Obsolete". The Atlantic. Retrieved 2018-04-10.
  20. ^ "JupyterLab is Ready for Users". Jupyter Blog. 2018-02-20. Retrieved 2018-05-04.
  21. ^ "Project Jupyter".
  22. ^ "Jupyo Jupyter notebooks for Python, R, Julia in the cloud". jupyo.com. Archived from the original on 2019-01-03. Retrieved 2019-01-02.
  23. ^ "Books with Jupyter". jupyterbook.org. Retrieved 2020-11-13.
  24. ^ "The MyST Syntax Guide". myst-parser.readthedocs.io. Retrieved 2020-11-13.
  25. ^ "nbgrader 0.6.1 documentation". nbgrader.readthedocs.io. Retrieved 2020-11-13.
  26. ^ "Amazon SageMaker on AWS". Amazon Web Services, Inc. Retrieved 2018-05-09.
  27. ^ "Welcome to Colaboratory". research.google.com. Retrieved 2018-05-09.
  28. ^ "Online Jupyter Notebooks". notebooks.azure.com. Retrieved 2018-05-09.
  29. ^ "Nerds rejoice: Google just released its internal tool to collaborate on AI". Quartz. Retrieved 2018-09-06.
  30. ^ "Open in Colab GitHub repository". GitHub. Retrieved 2018-09-06.
  31. ^ Julia on TPUs, JuliaTPU, 2019-12-03, retrieved 2019-12-03
  32. ^ "Google Colaboratory". colab.research.google.com. Retrieved 2019-12-06.
  33. ^ "gpu — Julia in Google Colab". Stack Overflow. Retrieved 2019-12-06.
  34. ^ "LIGO Open Science Center". losc.ligo.org. Retrieved 2018-05-04.
  35. ^ Romer, Paul. "Jupyter, Mathematica, and the Future of the Research Paper". paulromer.net. Retrieved 2018-04-15.
  36. ^ "Sloan Foundation Grant". ipython.org. Retrieved 2018-05-03.
  37. ^ "An Open Source Framework for Interactive, Collaborative and Reproducible Scientific Computing and EducationOpen Source Tools for Interactive, Collaborative and Reproducible Computing". ipython.org. Retrieved 2018-05-03.
  38. ^ Perez, Fernando (December 28, 2015). "IPython 2015 Final Report — Sloan Foundation" (PDF). ipython.org. Retrieved May 3, 2018.
  39. ^ "UC Berkeley and Cal Poly to Expand and Enhance Open-Source Software for Scientific Computing and Data Science Helmsley Charitable Trust". helmsleytrust.org. Archived from the original on 2020-01-03. Retrieved 2018-05-03.
  40. ^ "Software System Award". ACM Awards. Association for Computing Machinery. Retrieved April 28, 2016.

외부 링크