인공지능 AI/머신러닝 Machine Learning

Jupyter Notebook 주피터 노트북이란?

Tap to restart 2021. 2. 3. 23:00
반응형

Jupyter Notebook 주피터 노트북이란?

공식사이트 설명은 아래와 같다.

The notebook extends the console-based approach to interactive computing in a qualitatively new direction, providing a web-based application suitable for capturing the whole computation process: developing, documenting, and executing code, as well as communicating the results. The Jupyter notebook combines two components:

A web application: a browser-based tool for interactive authoring of documents which combine explanatory text, mathematics, computations and their rich media output.

Notebook documents: a representation of all content visible in the web application, including inputs and outputs of the computations, explanatory text, mathematics, images, and rich media representations of objects.

(출처: The Jupyter Notebook introduction)

간단히 요약하면 웹애플리케이션과 노트북을 합친 형태다.

 

누가 주로 쓰는가?

초보자부터 데이터 분석 전문가까지 다양한 층의 사람들이 쓰는 거 같다.

가장 놀란 건 데이터 분석가들까지도 쓴다는 점이었다.

간단한 데이터 모델링을 할 때 쓴다고 한다.

 

자체 프로그램 강의 시스템이 없는 경우 강사들이 파이썬을 가르칠 때 주로 쓰는 도구인 거 같다.

그 이유는 문서와 웹애플리케이션을 합친 형태라서 설명 - 코드 - 실습 형태로 쉽게 구성할 수 있기 때문이다.

 

왜 강의에 많이 쓸까?

대부분 프로그래밍 강의는 이런 형태로 진행된다.

1. 설명

2. 예제 코드

3. 실습 문제

 

기존의 경우 설명을 하는 PPT 자료를 따로 만들었고, 예제 코드는 통합개발환경이든 아니면 그냥 에디터든 따로 적었고, 또 실행을 따로 했다.

공부하는 사람이나 강의하는 사람이나 문서와 코드, 실행환경이 따로 되어 있어서 불편했다. 문서를 보고, 다시 코드를 따로 봐야 하고, 또 실행도 따로 해야 하니까.

주피터 노트북은 이 3가지를 한 프로그램인 주피터 노트북 안에서 모두 할 수 있다. 문서를 markdown 등을 이용해서 작성할 수 있고, 그 문서를 바로 보고, 아래에서 코드를 적어보고, 코드를 실행할 수 있다. 주피터 노트북 문서는 무겁지 않고 가벼워서 다른 사람한테 쉽게 배포할 수 있고, 쉽게 수정할 수 있다.

 

아래 예처럼 쓸 수 있다.

 

주피터 노트북 장점은?

위 예처럼 코드를 쪼개서 실행할 수 있다.

그게 최대 장점인 거 같다.

보통 많이 쓰는 통합개발환경(IDE) 프로그램을 사용할 경우, 코드가 기본적으로 처음부터 끝까지 실행된다. 물론 멈추는 지점을 설정해놓으면 쪼개서 실행할 수 있지만, 주피터 노트북처럼 쉽게 결과를 볼 수는 없게 되어 있다.

 

아이디어가 떠올라서 간단히 테스트를 하거나 할 때 주피터 노트북이 아주 유용한 거 같다.

반응형