[学习] 深度学习-Lesson 3 jupyter notebooks
Jupyter notebook 是一种 Web 应用,能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。
在文字表达化编程中,直接在代码旁写出叙述性文档,而不是另外编写单独的文档。
此架构的一个优点是,内核无需运行 Python。由于 notebook 和内核分开,因此可以在两者之间发送任何语言的代码。
另一个优点是,你可以在任何地方运行 notebook 服务器,并且可通过互联网访问服务器。
conda install jupyter notebook
如果在 conda 环境中运行 notebook 服务器,则你还能访问以下所示的“Conda”选项卡。 (需要在terminal中安装“Conda”选项卡,语句为conda install jupyter notebook nb_conda)
1. 通过在服务器主页上选中 notebook 旁边的复选框,然后点“Shutdown”(关闭)
2. 通过在终端中按两次 Ctrl + C,可以关闭整个服务器。
看到外框为绿色的一个小方框,成为单元格。单元格是你编写和运行代码的地方。你也可以更改其类型,以呈现 Markdown(一种常用于编写 Web 内容的格式化语法)。
- 软盘符号表示“保存”。请记得保存 notebook!
- + 按钮用于创建新的单元格
- 然后是用于剪切、复制和粘贴单元格的按钮。
- 运行、停止、重新启动内核
- 单元格类型:代码、Markdown、原始文本和标题
- 命令面板(见下文)
- 单元格工具栏,提供不同的单元格选项(例如将单元格用作幻灯片)
在“File”(文件)菜单中,你可以选择多种格式进行 notebook 的下载。通常,你会希望将它作为 HTML 文件下载,以便与不使用 Jupyter 的其他人共享。也可以将 notebook 作为普通的 Python 文件下载,此时所有代码都会像平常一样运行。要在博客或文档中使用 notebook,Markdown 和 reST 格式很合适。
https://daringfireball.net/projects/markdown/basics
# Header 1 ## Header 2 ### Header 3
要在 Markdown 中添加链接,请在文本两侧加上方括号,并在 URL 两侧加上圆括号。
[Leon's ****](https://me.****.net/u013659598)
可以使用星号或下划线(* 或 _)来表示粗体或斜体,从而添加强调效果。
可以通过两种不同的方式显示代码,一种是与文本内联,另一种是将代码块与文本分离。
在 Markdown 单元格中,可以使用 LaTeX 符号创建数学表达式。
http://data-blog.udacity.com/posts/2016/10/latex-primer/
https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
Magic 关键字是可以在单元格中运行的特殊命令,能让你控制 notebook 本身或执行系统调用(例如更改目录)
可以使用 Magic 命令 timeit 测算函数的运行时间,如下所示:
如果要测算整个单元格的运行时间,请使用 %%timeit,如下所示:
在 notebook 中可以使用 %matplotlib 将 matplotlib 设置为以交互方式工作。
对于 Python 内核,可以使用 Magic 命令 %pdb 开启交互式调试器。出错时,你能检查当前命名空间中的变量。
pdb文档:https://docs.python.org/3/library/pdb.html
http://ipython.readthedocs.io/en/stable/interactive/magics.html
Notebook 只是扩展名为 .ipynb 的大型 JSON 文件。
JSON->HTML: jupyter nbconvert --to html notebook.ipynb
我们也可以在notebook界面中点击File,在弹出的菜单中点击Download as,之后选择我们需要转换的格式。
nbconvert 文档:https://nbconvert.readthedocs.io/en/latest/usage.html
notebook 中创建幻灯片的过程像平常一样,但需要指定作为幻灯片的单元格和单元格的幻灯片类型。在菜单栏中,点击“View”(视图)>“Cell Toolbar”(单元格工具栏)>“Slideshow”(幻灯片),以便在每个单元格上弹出幻灯片单元格菜单。
这会在每个单元格上显示一个下拉菜单,让你选择单元格在幻灯片中的显示方式。
Slides(幻灯片)是你从左向右移动的完整幻灯片。按向上或向下的箭头时,Sub-slides(子幻灯片)会出现在幻灯片中。Fragments(片段)最初是隐藏的,在你按下按钮时会出现。选择Skip(忽略)会在幻灯片中忽略该单元格,而选择 Notes(备注)会将为演讲者保留备注。
创建幻灯片: jupyter nbconvert notebook.ipynb --to slides
转换看幻灯片:jupyter nbconvert notebook.ipynb --to slides --post serve