28
Jupyter 簡介 互動式的筆記本系統 嘉義學物資源學系 林政道 [email protected]

Jupyter 簡介—互動式的筆記本系統

Embed Size (px)

Citation preview

Page 1: Jupyter 簡介—互動式的筆記本系統

Jupyter 簡介 — 互動式的筆記本系統

嘉義⼤大學⽣生物資源學系 林政道 [email protected]

Page 2: Jupyter 簡介—互動式的筆記本系統

什麼是 Jupyter?• JuPyteR

• 前⾝身為 ipython ,即⼀一個互動式的計算介⾯面

• 現在可⽀支援多種程式語⾔言核⼼心(Python2, Python3, R, Ruby, etc.)

• ⽀支援 markdown (簡單的排版語法)、mathjax (撰寫數學式排版)

Page 3: Jupyter 簡介—互動式的筆記本系統

什麼是 Jupyter?

• 結合「程序處理」以及「輸出展⽰示」

• 適合資料處理(資料探索、資料展⽰示、教學探討、分享等)

• ⽀支援平⾏行運算(ipyparallel)

Page 4: Jupyter 簡介—互動式的筆記本系統

http://jupyter.org

Page 5: Jupyter 簡介—互動式的筆記本系統

Jupyter notebook interface

Jupyter notebook-server

程序處理

瀏覽器端

程式語⾔言核⼼心(kernel):

內容展⽰示

外部資料 取得

輸出nbconvert

Page 6: Jupyter 簡介—互動式的筆記本系統

你可能還不是很瞭解 Jupyter 可以做什麼 沒關係,直接來看例⼦子

Page 7: Jupyter 簡介—互動式的筆記本系統

各式各樣的實例—程式開發、互動式書籍

Page 8: Jupyter 簡介—互動式的筆記本系統

互動式的書籍以及課程

• 對於需要實際操作的課程,可以透過線上的 notebook viewer 來與使⽤用者互動

• 讓學習除了課堂講授,加上即時的互動

• 例:

• 數學理論+實際計算

• ⽣生態課程的設計:野外調查收集資料、互動式介⾯面輸⼊入資料、套⼊入理論公式、視覺化的呈現(繪圖

Page 9: Jupyter 簡介—互動式的筆記本系統

http://nbviewer.jupyter.org/github/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/blob/master/Chapter1_Introduction/Chapter1.ipynb

理論解釋

公式、 定理

Page 10: Jupyter 簡介—互動式的筆記本系統

Python 的 程式碼, 可以直接執⾏行

Page 11: Jupyter 簡介—互動式的筆記本系統

輸出的圖

Page 12: Jupyter 簡介—互動式的筆記本系統

資料視覺化展⽰示

Page 13: Jupyter 簡介—互動式的筆記本系統

圖的展⽰示不再只是平⾯面,⽽而是動態的Python + Bokeh

滑⿏鼠游標移到圖上, 可⽴立即看到地理座標、數據資料等

http://nbviewer.jupyter.org/github/bokeh/bokeh-notebooks/blob/master/gallery/texas.ipynb

Page 14: Jupyter 簡介—互動式的筆記本系統

⾰革命性的學習法改變

• 對於教學者/學習者來說,教材從靜態變成動態

• adaptive learning/intelligent adaptive learning 適應學習法/智慧式適應學習法

• 即時的互動可⽴立即找出學習盲點

• 彈性:學習的速度可隨不同學習者的能⼒力⾃自⾏行調控

Page 15: Jupyter 簡介—互動式的筆記本系統

⾰革命性的學習法改變

• 模組化:不同的教學筆記可透過課程設計連結起來,依照教學⺫⽬目標彈性搭配

• 科學探究的過程可完整記錄,不再只是知識講授、背誦,中間過程的討論甚⾄至是錯誤的歷程都可記錄下來

• 開放與分享:因為跨平台的特性,筆記可互相交流。搭配開放資料讓科學教育及研究互相結合

Page 16: Jupyter 簡介—互動式的筆記本系統

範例:以物種⾯面積曲線為例

• ⽣生態學上的經典理論

• 過去技術的限制,僅能在課堂上講授

• 實際調查後

Page 17: Jupyter 簡介—互動式的筆記本系統

資料的輸⼊入

Page 18: Jupyter 簡介—互動式的筆記本系統

使⽤用 R 的 plot 來繪圖

Page 19: Jupyter 簡介—互動式的筆記本系統

定義物種數量-⾯面積曲線⽅方程式 讓學習者了解如何計算—使⽤用對數

Page 20: Jupyter 簡介—互動式的筆記本系統

求完對數後,解⼆二元⼀一次⽅方程式 ⽤用簡單直線迴歸來適配常數值

Page 21: Jupyter 簡介—互動式的筆記本系統
Page 22: Jupyter 簡介—互動式的筆記本系統

除了⼿手動計算外,練習使⽤用函數(function)來 進⼀一步⾃自動化算出⽅方程式的值

可重複帶進不同棲地的資料,求得不同的⽅方程式

Page 23: Jupyter 簡介—互動式的筆記本系統

繪圖產出

Page 24: Jupyter 簡介—互動式的筆記本系統

如何使⽤用?

• 安裝 jupyter notebook server,然後啟⽤用

• 使⽤用雲端服務

• tmpnb.org 免費服務

• sagemath.com 免費服務,可付費升級有較多的運算資源

Page 25: Jupyter 簡介—互動式的筆記本系統

http://cloud.sagemath.com

Page 26: Jupyter 簡介—互動式的筆記本系統

http://tmpnb.org

Page 27: Jupyter 簡介—互動式的筆記本系統

有興趣嗎?直接開啟你的瀏覽器點選下⽅方網址開始:

http://tmpnb.org

Page 28: Jupyter 簡介—互動式的筆記本系統

完整的⽂文件

• 官⽅方⽂文件 http://jupyter-notebook.readthedocs.org