Jupyter Notebook的三大短板,都被这个新工具补齐了

2018 年 9 月 10 日 量子位
Jupyter Notebook的三大短板,都被这个新工具补齐了
夏乙 发自 凹非寺
量子位 出品 | 公众号 QbitAI

在机器学习和数据科学领域,Jupyter已经家喻户晓。它把笔记、代码、图表、注释融合在一个交互式的笔记本里,还能添加各种扩展功能。可谓机器学习入门进阶研究之神器。

可是,神器也有短板

  • 文件是固定的JSON格式,体积还非常大;

  • 要在浏览器里编辑文档好烦,好怀念自己喜欢的编辑器;

  • 版本控制好艰难,想用标准的合并工具来协作,可是人家只支持文本!

最近推出的一个工具,帮Jupyter Notebook把这些短板补齐了。

这个工具叫Jupytext,顾名思义,能够把Jupyter Notebook的内容转化成纯文本,用你最顺手的IDE打开。

于是,编辑协作版本控制等一系列问题,迎刃而解。

Jupytext现在支持的语言还不能覆盖Jupyter Notebook的全部,但搞定了最流行的几种。它支持Jupyter Notebook和下面这些格式之间的相互转换:

Julia脚本(.jl)、Python脚本(.py)、R脚本(.R)、Markdown文件(.md)、R Markdown文件(.Rmd)。

Jupytext作者Marc Wouts在一篇博客里展示了怎样借助这个工具在IDE或者编辑器里来编辑Jupyter Notebook、进行版本控制。

上面就是Jupytext使用过程的一个例子:把一个Jupyter Notebook存储为.ipynb和.py两种文件格式、用PyCharm打开.py脚本来修改代码、保存之后刷新浏览器,就能在Jupyter Notebook里看到新结果了。

想要在一大堆代码和笔记里查找内容、编辑、执行cell、debug……用IDE比用Jupyter Notebook要方便得多。

上图则是对文本执行版本检查,然后将有意义的差异合并的过程。

看起来不错,怎么安装呢?

这个工具支持pypi.安装,代码是这样的:

upytext from pip
pip install jupytext --upgrade
# Append this to .jupyter/jupyter_notebook_config.py c.NotebookApp.contents_manager_class="jupytext.TextFileContentsManager"
# And restart your notebook server
jupyter notebook

在Jupyter Notebook的元数据里输入jupytext_formats,就能激活笔记本和文本文件的配对,实现在IDE里编辑脚本,Notebook里也跟着更新的效果。

如果想在编辑文本文件的时候还开着Jupyter,可以在一个单元格里运行%autosave 0,关掉Jupyter的自动保存功能。

最后,附上Jupytext的传送门:

https://github.com/mwouts/jupytext

加入社群

量子位AI社群28群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;


此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。


进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态


登录查看更多
68

相关内容

Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示的程序。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。
小贴士
相关资讯
告别 PS !3 行代码 5 秒搞定抠图的 AI 神器!
程序人生
6+阅读 · 2019年7月11日
手把手教你用Python做一个哄女友神器,小白可上手
网易智能菌
4+阅读 · 2019年6月15日
一个牛逼的 Python 调试工具
机器学习算法与Python学习
13+阅读 · 2019年4月30日
已删除
将门创投
18+阅读 · 2019年2月18日
资源警告!有人收罗了40个中文NLP词库,放到了GitHub上
中国人工智能学会
7+阅读 · 2018年11月16日
刚开始学编程?这几款小工具能让你事半功倍
手把手教TensorFlow(附代码)
深度学习世界
9+阅读 · 2017年10月17日
相关论文
Deformable Style Transfer
Sunnie S. Y. Kim,Nicholas Kolkin,Jason Salavon,Gregory Shakhnarovich
7+阅读 · 3月24日
Don't Blame Distributional Semantics if it can't do Entailment
Matthijs Westera,Gemma Boleda
3+阅读 · 2019年5月17日
Two-phase Hair Image Synthesis by Self-Enhancing Generative Model
Haonan Qiu,Chuan Wang,Hang Zhu,Xiangyu Zhu,Jinjin Gu,Xiaoguang Han
3+阅读 · 2019年2月28日
Foreground-aware Image Inpainting
Wei Xiong,Zhe Lin,Jimei Yang,Xin Lu,Connelly Barnes,Jiebo Luo
3+阅读 · 2019年1月17日
Bo-Jian Hou,Zhi-Hua Zhou
16+阅读 · 2018年10月25日
Feature Selection Library (MATLAB Toolbox)
Giorgio Roffo
3+阅读 · 2018年8月6日
Two Stream 3D Semantic Scene Completion
Martin Garbade,Johann Sawatzky,Juergen Gall
4+阅读 · 2018年7月16日
Ke Tran,Yonatan Bisk
3+阅读 · 2018年5月28日
Guillaume Klein,Yoon Kim,Yuntian Deng,Vincent Nguyen,Jean Senellart,Alexander M. Rush
3+阅读 · 2018年5月28日
Yanzhao Zhou,Yi Zhu,Qixiang Ye,Qiang Qiu,Jianbin Jiao
3+阅读 · 2018年4月3日
Top