情報解析技術の教育を革新しよう - cps web...

50
情報解析技術の教育を革新しよう - JupyterNotebookによる講義の試 による講義の試 による講義の試 による講義の試み - 20166釜江 江常 常好 (東大、スタンフォード大 (東大、スタンフォード大 (東大、スタンフォード大 (東大、スタンフォード大OB情報解析技 報解析技 報解析技 報解析技術の習得 術の習得 術の習得 術の習得は、産業界や研究教育分野だけでなく、スポーツ関係者、メ ディア企業などで、最重要視される資質となっている。その要請に答えるべく、大規 模なデータを組み合わせ、手の込んだ情報解析を初心者にも可能にする、画期 期的 なソフトウェア なソフトウェア なソフトウェア なソフトウェアが開発されている。 しかるに、学生が細分化された専門分野に囲い込まれる日本の大学では、新しい 情報解析技術に触れる機会が少ない。その結果、情報解析技術の習得に関して は、欧米の大学に大きく遅れを取っている。 私は情報解析技術の専門家ではないが、米国の大学で研究し、大学院生を指導 する中で、新しい情報解析技術に触れてきた。その中で、急速に普及し始めた、汎 用性が高い、IPython NotebookJupyter Notebookと改名した)を紹介したい。

Upload: others

Post on 06-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

情報解析技術の教育を革新しよう- JupyterNotebookによる講義の試による講義の試による講義の試による講義の試みみみみ -

2016年年年年6月月月月釜釜釜釜江江江江常常常常好好好好

(東大、スタンフォード大(東大、スタンフォード大(東大、スタンフォード大(東大、スタンフォード大OB))))

情情情情報解析技報解析技報解析技報解析技術の習得術の習得術の習得術の習得は、産業界や研究教育分野だけでなく、スポーツ関係者、メ

ディア企業などで、最重要視される資質となっている。その要請に答えるべく、大規

模なデータを組み合わせ、手の込んだ情報解析を初心者にも可能にする、画画画画期期期期的的的的なソフトウェアなソフトウェアなソフトウェアなソフトウェアが開発されている。

しかるに、学生が細分化された専門分野に囲い込まれる日本の大学では、新しい

情報解析技術に触れる機会が少ない。その結果、情報解析技術の習得に関しては、欧米の大学に大きく遅れを取っている。

私は情報解析技術の専門家ではないが、米国の大学で研究し、大学院生を指導

する中で、新しい情報解析技術に触れてきた。その中で、急速に普及し始めた、汎

用性が高い、IPython Notebook(Jupyter Notebookと改名した)を紹介したい。

Page 2: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

American

Inst Physのののの

調査結果調査結果調査結果調査結果

博士課程博士課程博士課程博士課程があるがあるがあるがある大学で学士号を取得する人が増えている大学で学士号を取得する人が増えている大学で学士号を取得する人が増えている大学で学士号を取得する人が増えている

Page 3: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

American

Inst Physのののの

調査結果調査結果調査結果調査結果

STEM学士の増加Sci,Tech,Eng,Mathを統合した学士号取得者が増加を統合した学士号取得者が増加を統合した学士号取得者が増加を統合した学士号取得者が増加

Page 4: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

American

Inst Physのののの

調査結果調査結果調査結果調査結果情報解析関係

情報解析関係

情報解析関係

情報解析関係のの のの知識

知識

知識

知識がが がが役立

役立

役立

役立っている

っている

っている

っている

Page 5: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

IPythonとはとはとはとは

Page 6: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Jupyter Notebookとはとはとはとは

Jupyter Notebookとはブラウザ上で動くアプリケーションブラウザ上で動くアプリケーションブラウザ上で動くアプリケーションブラウザ上で動くアプリケーションで、

ローカルローカルローカルローカルなLinux、Win、Macなどにインストールできると共に、

リモートリモートリモートリモートでも動かすことが可能です。Home: http://jupyter.org/

Page 7: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

JupyterNotebook

とは No.2

インタラクティブなセルと、LaTex、html

などを含むマークダウン形式で記述した説明文を並べることができる。

多くの言語(40)をサポート

いろいろなサイト(Github、Dropbox等)

で共有可能

ビッグデータを解析することが容易

Page 8: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Youtube from PyCon on Jupyter Notebook

https://youtu.be/26wgEsg9Mcc

https://youtu.be/2NSbuKFYyvc

Presentations by Fernando Perez

最近のQiitaの記事から

Page 9: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Jupyter NotebookでPythonを経験する

Jupyter NotebookでPythonに触れてみる

Jupyterのホームページで、のホームページで、のホームページで、のホームページで、Jupyter Notebookを動かしてみるを動かしてみるを動かしてみるを動かしてみる

Page 10: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

宇宙論や宇宙物理で広く使われている宇宙論や宇宙物理で広く使われている宇宙論や宇宙物理で広く使われている宇宙論や宇宙物理で広く使われている

Page 11: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Univ Southampton講義録

Page 12: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

JupyterHubhttps://github.com/jupyterhub/jupyterhub

Page 13: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

U. Colorado Computational Science and Engineering

https://github.com/ResearchComputing/Meetup-Fall-2013

Page 14: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Pythonの国際会議、の国際会議、の国際会議、の国際会議、PyConでの講演での講演での講演での講演

https://youtu.be/26wgEsg9Mcc

https://youtu.be/2NSbuKFYyvc

Youtube: Fernando Pérez, Keynote talk in PyCon 2014

Youtube: Fernando Pérez , “Python at your fingertips” PyCon 2012

Page 15: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

公開されている公開されている公開されている公開されている Jupyter Notebook 1

中井悦司さんのCTC教育サービス講演から(2016年5月)

ササササーバーオペレーションーバーオペレーションーバーオペレーションーバーオペレーションUIとしてのとしてのとしてのとしてのJupyterを使った例を使った例を使った例を使った例

中井悦司さんの本をJupyterNotebookに書き改めた例

「ITエンジニアのための機械学習理論入門」

Page 16: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

公開されている公開されている公開されている公開されている Jupyter Notebook 2

Page 17: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

JupyterののののJuははははJuliaからからからからRははははR言語から?言語から?言語から?言語から?- 「最速の言語?」 Juliaとは -

Page 18: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Julia:Fortranに迫る高速性に迫る高速性に迫る高速性に迫る高速性

Pythonから異議:使われたから異議:使われたから異議:使われたから異議:使われたPythonコードは最適化されてない!コードは最適化されてない!コードは最適化されてない!コードは最適化されてない!

Page 19: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Pythonはもっと早くできる!はもっと早くできる!はもっと早くできる!はもっと早くできる!

https://www.ibm.com/developerworks/community/blogs/jfp/entry/Python_

Meets_Julia_Micro_Performance?lang=en原典原典原典原典

Page 20: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Pythonを高速で走らせるにはを高速で走らせるにはを高速で走らせるにはを高速で走らせるには

Page 21: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

いろいろないろいろないろいろないろいろな Jupyter Notebookの例の例の例の例

� Git/Githubについて:KobeLectureJun2016GitGithub.ipynb

出典 CodemapとTechacademyのブログとウェブから

� JupyterNotebook入門: KobeLectureJun2016Jupyter.ipynb

出典 Ipythonのホーム、Cookpad有賀さん、KEK ObinaさんのWeb

� 顔認識を試みる: KobeLectureJun2016FaceDetection.ipynb

出典 中井悦司さんのGithub(enakai00/jupyter_gcp)から

� 量子力学入門: KobeLectureJun2016FaceDetection.ipynb

出典 Univ College LondonのDr.Janina Dewitzの講義録から

� ベイズ推定講義録: KobeLectureNakaiBeyesInference.ipynb

出典 中井悦司さんのGithub/enakai00/jupyter_ml4se から

� LIGOが検出した重力波の解析: KobeLectureJun2016GW150914.ipynb

出典 https://losc.ligo.org/s/events/GW150914/GW150914_tutorial.html

Page 22: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

Jupyter Notebookの限界の限界の限界の限界

JupyterNottttebookで、本格的なプログラム開発をするのは困難:で、本格的なプログラム開発をするのは困難:で、本格的なプログラム開発をするのは困難:で、本格的なプログラム開発をするのは困難:

� It messes with your version control

� Code can only be run in chunks

� It’s difficult to keep track

� Code often ends up very fragmented

� The output is incomplete

� Potential security risks?

Kirill Pomogajkonoポスティングと、それに対する議論ポスティングと、それに対する議論ポスティングと、それに対する議論ポスティングと、それに対する議論

しかし、新しい言語を学ぶときには、しかし、新しい言語を学ぶときには、しかし、新しい言語を学ぶときには、しかし、新しい言語を学ぶときには、Jupyter Notebookが便利が便利が便利が便利

Page 23: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

やり残したこと

� Dockerを活用する <= ビッグデータ

� リモートでJupyter Notebookを使う <= 講義や演習

� Python以外の言語

Page 24: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

付録:JupyterNotebookの画面例:Git/GitHub

Page 25: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 26: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 27: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 28: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

付録:JupyterNotebookとは

Page 29: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 30: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

付録:Face Detection

Page 31: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 32: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 33: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 34: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 35: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 36: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 37: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

付録:LIGO重力

波解析

Page 38: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 39: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 40: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 41: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 42: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 43: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 44: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 45: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 46: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 47: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando

付録:UCL講義録-量子力学

Page 48: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 49: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando
Page 50: 情報解析技術の教育を革新しよう - CPS Web Sitecps/pub/seminar/fy2016/2016-06-07/kamae/pub/01_kamae.pdfYoutube: Fernando Pérez, Keynote talk in PyCon 2014 Youtube: Fernando