https://jupyter.org/
目錄
1.什麼是 Jupyter Notebook?
2.jupyter Notebook的影響力?
3.jupyter的優點?
3.1整合所有資源
3.2 互動性程式設計體驗
3.3零本成重制結果
4.jupyter notebook的體驗
1.什麼是 Jupyter Notebook?
jupyter已成為一個幾乎支援所有語言,能夠把軟體代碼、計算輸出、解釋文檔、多媒體資源整合在一起的多功能科學運算平台。
import numpy as np
from matplotlib import pyplot as plt
ys = 200 +np.random.randn(100)
x = [x for x in range(len(ys))]
plt.plot(x,ys,'-')
plt.fill_between(x,ys,195,where=(ys >195),facecolor = 'g',alpha = 0.6)
plt.title("Fills and Alpha Example")
plt.show()
2.jupyter Notebook的影響力?
2017年開始,已有大量的北美頂尖計算機課程開始使用jupyter Notebook作為工具。如李飛飛的CS231N計算機視覺與神經網絡的作業都是在該平台上完成的。
3.jupyter的優點?
3.1整合所有資源
jupyter Notebook通過把所有和軟體編寫有關的資源全部放在一個地方,解決了這個問題。當打開一個jupyter notebook時,可以看到相應的文檔、圖表、視訊和相應的代碼,為需要切換視窗找資料,會很友善的獲得項目的所有資訊。
3.2 互動性程式設計體驗
引進了Cell的概念,每次實驗可以跑一個小Cell裡的代碼,并且,在代碼的下面立刻可以看到結果。很強的互動性,為被繁雜的工具鍊所累,不用在指令行直接切換,所有科研工具可以jupyter上完成。
3.3零本成重制結果
同樣在機器學習和數學領域,python的使用非常短平快的,在論文中看到别人的方法想進行複現,卻發現需要在pip裡重新安裝一堆依賴軟體,可以會花費大量的時間和精力。
4.jupyter notebook的體驗
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
plt.plot(*np.random.randn(2,1000))
每一個jupyter 的運作單元都包含了in Out的Cell.