前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >挑战Jupyter Notebook:云协作、云硬件,上云的Notebook编程环境

挑战Jupyter Notebook:云协作、云硬件,上云的Notebook编程环境

作者头像
机器之心
发布2020-03-25 11:58:59
1.5K0
发布2020-03-25 11:58:59
举报
文章被收录于专栏:机器之心机器之心机器之心

选自medium

作者:Anthony Agnone

机器之心编译

参与:李诗萌、张倩

对全世界的 Python 高手而言,Jupyter Notebook 是目前最流行的编程环境,但它也有一些令人难以忍受的缺点。为此,一个位于旧金山的小团队开发了一款名为 Deepnote 的笔记本工具,这是一种云协作、云硬件,上云的 Notebook 编程环境。Pindrop 的高级研究科学家 Anthony Agnone 认为,Deepnote 已经表现出了超越 Jupyter Notebook 的趋势。

Deepnote 官方网站:https://www.deepnote.com/

如果你是像我一样的数据科学家,你可能会在工程项目而不是真正的研究上花很多时间。安装库、管理数据库、追踪实验、调试代码、耗尽内存……对此,你一定深有感触。

Jupyter Notebook 非常适合数据科学的原型设计。在这个单一的环境中,你可以进行无缝探索性分析、数据可视化以及构建 ML 模型的原型。因此,Jupyter Notebook 在数据科学领域大受欢迎。

但它也有一些缺陷。作为一种新工具,DeepNote 能够以更好、更快的方式弥补这些缺陷,所以比现有工具都更适合使用。

下面我们来说一下 DeepNote 中令人兴奋的改进。

实时协作

谷歌的在线协作工具套件(Docs、Sheets 和 Slides 等)在没加任何功能的情况下,抢走了微软 Office 大量的市场份额。他们是如何做到的?答案是:实时协作。

在谷歌的套件中和同事合作,不再需要同步进行,也无需为合并而烦心。此外,你还能知道同事们的当前进展,更加便于分工。

DeepNote 可以立即进行实时协作——它支持在共享计算环境中无缝合作。这虽然带来了改变命名空间的问题,但我觉得,这总比共享 Jupyter notebook 强——它需要重新运行才能获得给定状态。

DeepNote 的实时协作。

此外,DeepNote 还提供了不同的权限等级:查看、执行、编辑、管理以及所有者。这样就可以大批量控制操作这些笔记本了。

首先,以教学场景为例。在线课程的教师可以浏览虚拟教室中所有共享笔记本。教师拥有管理或所有者权限,而教室中的其他人只有查看权限。

再以要审查整个团队成员工作的场景为例。团队成员有所有者权限,这样就可以全面控制整个笔记本。审查人员拥有编辑权限,可以提供在线反馈,但无法执行任何单元。只有团队成员持有执行权限,这样审查人员就无法改(wu)变(ran)团队成员的命名空间。

变量浏览器

Spyder IDE 中有一个 Jupyter 没有且重要的功能——易于访问的命名空间浏览器。当然,Jupyter 笔记本中有 who/whos 的命令。但无法与 Spyder 相提并论。

而 DeepNote 再次填补了这一空白!

DeepNote 为变量提供了精致的总结。

除了可靠的变量浏览器外,如果无法漂亮地显示 pandas 的 DataFrame,那任何笔记本环境都是不完美的。

没错,DeepNote 笔记本还能很好地展示 pandas 的 DataFrame

连接云硬盘

你肯定听说过一条经验法则(其实更像是抱怨):数据科学中有 80% 无关数学和统计学。在云计算设置中,这个比例更接近 90%,还有 10% 的时间损失在为笔记本配置正确的算力上。

轻松查看并选择笔记本在何种硬件上运行(https://docs.deepnote.com/)。

DeepNote 理解你的痛苦,可以让你无缝访问基于云的硬件。「无缝」的意思是你可以在笔记本界面上进行所有设置。顺便说一句,除非你的核处于空闲状态,否则它是不会主动关闭的。

Python 包的管理

Python 有出色的包管理系统。DeepNote 意识到了这一点,并在工作路径中附有 requirements.txt 文件。即使这样,也很容易忘记安装一些依赖包。除非导入包时触发错误,否则无法意识到这方面有所疏漏。

为此,DeepNote 笔记本会主动监控包的导入,并根据你声明的需求,提醒你遗漏的依赖。还有,如果需要的文件不存在,它会猜测该文件是什么。剧透预警:它的猜测一般都是正确的。

DeepNote 包管理器建议安装缺少的依赖包。

大量集成

创建新项目的示例。

最后,DeepNote 几乎提供了你想要的所有集成。为了使笔记本井井有条,你可以从不同连接中选择源码控制库。这可以在创建笔记本和写后台更新时用到。

除了源码控制,DeepNote 笔记本还可以连接云计算数据存储,比如 S3、GCS 以及常用的数据库引擎。

正式连接到不同的云基础架构。

尽管 DeepNote 还没能完全取代 Jupyter,但已隐隐表现出这样的趋势。我期待看到 DeepNote 未来将如何继续!但不需要一味相信我,可以像我一样注册他们的抢先访问计划。他们在一周内就给出了回应,从那以后我们就一直在讨论可以改进之处。不要只抱怨现状,要改变它。

原文链接:https://towardsdatascience.com/deepnote-sets-course-to-become-the-jupyter-killer-d0cb6e3ca011

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器之心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云硬盘
云硬盘(Cloud Block Storage,CBS)为您提供用于 CVM 的持久性数据块级存储服务。云硬盘中的数据自动地在可用区内以多副本冗余方式存储,避免数据的单点故障风险,提供高达99.9999999%的数据可靠性。同时提供多种类型及规格,满足稳定低延迟的存储性能要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档