欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Jupyter 笔记

程序员文章站 2022-05-29 09:12:26
...

为什么用 Jupyter

  1. 2 个同事的推荐:
    一个刷了许多 MOOC 包括数据科学课的学霸直接推荐给我;
    另一个录制数据科学课程的同事在视频中介绍 iPython Notebook 时,屏幕上显示的是 Jupyter 环境

  2. Jupyter 官网看看并尝试了下,发现似乎能满足需要:

    • 这是个集成环境:你既可以通过写文字笔记,又能在笔记中嵌入代码及其运行结果,还可以直接在环境中进行命令行交互
    • 支持超过 40 种数据科学相关的编程语言,例如 R/Python/Scala 等
    • 支持 MathJax 渲染(也就是说 LaTex 公式可以渲染出来啦!从此机器学习相关的笔记要告别简书了……)

安装[1][2][3]

1. 安装 pip

对 Debian 系的环境,请在命令行中输入

$ sudo apt-get install python-pip

2. 安装依赖包需要的编译环境

对 Debian 系的环境,请在命令行中输入

$ apt-get install build-essential python-dev

3. 其他依赖包

使用 apt-get install 安装下述依赖包

使用 pip install 安装下述依赖包

4.安装 Jupyter

在命令行中输入下述命令,即可完成安装

$ sudo pip install jupyter

开始使用 Jupyter 写笔记

在终端输入下述命令即可打开 Jupyter Notebook:

$ jupyter notebook

屏幕正*是当前目录(你键入上述命令前所在目录,可通过 pwd 命令查看)的文件列表,点击右上方「New」可建立

  • 文本文件(Text File)
  • 文件夹(Folder)
  • 命令行(Terminal)
  • Notebook

选择 Notebook 即可建立一个新的笔记文件

新建文件后,屏幕分为 4 块,从上到下依次为:

  1. 标题栏:点击标题(例如 Untitled)可更改
  2. 菜单栏
  3. 工具栏
  4. 编辑区

菜单栏

  • 保存完成后,请点击 File - Close and Halt 停止该笔记的运行并退出

工具栏

  • 这里有一个下拉列表,可选择 Code/Markdown/Raw NBConvert/Heading,最常用的是前两项

编辑区

  • $$expression$$ 会使 expression 强制独立一行,而 $expression$ 则不会

技巧们

如何在 ipython notebook 中同时可选择 py2/py3 而不用每次都修改 ~/.bash_profile

参考

如何在云服务器上运行 jupyter notebook 并使用网址进行访问?

这个需求来源于我需要在亚马逊云服务(AWS)上搭建服务器以完成深度学习工作(众所周知,没有 GPU 提供的强大计算能力,跑模型那是慢得…)。

首先需要在云端安装好 jupyter notebook。接下来需要一些配置,主要内容来自官方文档,摘取如下:

  1. 命令行中运行 jupyter-notebook --generate-config 以生成配置文件 jupyter_notebook_config.json
  2. 修改该文件的 c.NotebookApp.ip 属性为 0.0.0.0(搜索 localhost 即可)
  3. 运行 ipython 命令,在打开的 IPython shell 中,运行 from notebook.auth import passwd,然后执行 passwd(),键入你希望设置的登录密码(登录 notebook 用),然后会返回类似 Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed' 的字样。复制整个字符串到配置文件中的 c.NotebookApp.password 项目后,如:c.NotebookApp.password = u'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
  4. 修改配置文件中的 c.NotebookApp.open_browser 属性为 c.NotebookApp.open_browser = False
  5. 此后你便可以在云端运行 jupyter notebook 服务了

同时,建议配合参数 --port=abcd(其中 abcd 为你指定的端口号),以及配合终端会话管理器 tmux 使用。关于后者,除了阅读手册,还可阅读指南如[《Tmux - Linux从业者必备利器》] (http://cenalulu.github.io/linux/tmux/) 。

参考资料


  1. Installing pip/setuptools/wheel with Linux Package Managers

  2. Installation/Using pip

  3. pip 8.1.1