推荐 :数据科学家的新IDE

百家 作者:数据分析 2020-10-28 11:13:18
作者:Thiago Candido  翻译:陈之炎  校对:和中华

本文约2500字,建议阅读8分钟

本文为你介绍免费的在线数据科学集成开发环境。

在利用Deepnote开发了一个Python课程后,我决定采用Deepnote。
 
免责声明:我不隶属于Deepnote或它的任何成员。
 
Deepnote是一个免费的在线数据科学集成开发环境(onlinedata science notebook),主要关注多人协作(实时的、像谷歌文档一样的协作类型)以及工作中所有概念的抽象——环境和基础配置。


这家初创公司最近宣布,在IndexVentures的牵头下,它筹集了380万美元的种子轮融资,其中包括Greg Brockman和Naval Ravikant等天使投资人。

看完TC的公告后,我跃跃欲试,于是报名参加了β测试,耐心地等了五天之后,收到了测试邀请函。

登录之后,在平台上浏览了大约一个小时,尝试了一些示例项目,如下图所示。

Deepnote的示例项目

 
几个月后,我的一位在金融领域工作的好朋友罗德里戈·塔德瓦尔德(Rodrigo Tadewald)邀请我共同创建一个Python的在线课程,我主要负责环境设置/编程/性能等主题课程。

由于对金融话题很感兴趣,而且是头一回制作在线课程,我欣然接受了邀请。于是,我有了尝试Deepnote的想法,并开始利用它来开发所有的Python课程。

免责声明:我主要使用了Brave浏览器(Bravebrowser),只有当Brave浏览器异常时,才使用其他浏览器来验证 (Brave浏览器运行在Chromium引擎上)。在项目开发过程中,还交替使用了OSX、Ubuntu和Windows。


经验


为了启动这个项目,我上传了一些以前在本地课程中用过的旧代码,并用它来创建这个项目。Deepnote提供了从GitHub和GitLab导入存储库的选项,设置起来也不难。

随着对平台越来越熟悉,CTRL/⌘ P也成为了我完成工作的主要方式。

命令面板
 
虽然它可以很好地执行屏幕截图中的命令,但是它的查询功能并不能让我100%满意。我在文件夹中查找文件时遇到一些问题,这令我颇为痛苦,因为这个项目主要是由文件夹和子文件夹组织的。
 
在“项目”选项卡中,可以看到项目文件、添加新文件、添加数据连接和访问终端(Terminal)。

Deepnote的侧导航为标签和变量查看器(以及葡萄牙语课程的相关文件迷你剧透)
 
Notebook自身很有趣,有一些很酷的功能。令我高兴的是:很容易便可访问到Markdown小抄(cheat sheet)。

IDE可以自动检测模块,可以轻松地在线安装pip包。如果使用pip命令,Deepnote会将其保存在隐藏文件中,并在每次启动环境时进行安装;还可以选择创建一个requirements.txt文件,并通过终端(Terminal)与之交互。

还有一个很好的特性是变量查看器,它集成到Notebook之中,确实是一个不错的功能。

变量查看器中的PandasDataFrame
 
“代码智能”功能,如自动补全和定义定位功能,在当前的β版本中还不能正常使用。

改进:我在项目开发过程中注意到的一件重要的事情是:文件资源管理器的性能有了大幅度提高。由于我上传了很多文件,我需要将它们组织在文件夹中,几周前,将文件移动到文件夹和子文件夹中是一种非常延迟滞后/棘手的经历。自课程开发开始以来,大约在2020年4月左右,这种情况有了很大的改善。真的不错!

在一些课程模块上,我需要处理数据。数据集并非海量,但也不小,如果不得不重新上传到平台中,工作量也不小。Deepnote有一些集成数据集,如Landsat8和Goodreads书籍,对于我的项目而言,需要使用先前准备好的自定义数据集。

此外,除了从本地上传文件外,还可以与AWS S3、Mongo DB和Postgres集成(至少在我的β测试帐户上)。有很多“灰色”选项,但没看到与Azure存储和GoogleDrive的集成。如果Google Colab用户想随意尝试一下Deepnote,那么有Google Drive集成肯定会少很多麻烦。

用IDE创建新连接

在建立了数据连接之后,我对终端做了一些改动,于是有了机器的完全root访问权限,但这个项目中似乎不需要它。我认为我唯一一次运行到终端是:当Deepnote内核进入一个重新启动循环时,我试图通过使用一些bash命令来修复它。

可以利用“环境”选项卡选择机器配置,重新启动它,查看CPU和RAM的使用情况,并检查项目所依赖的包。


免费提供的机器配置如下:

  • 基础版-英特尔哈斯韦尔1V CPU~1.5GB RAM无 GPU;
  • 专业版-英特尔哈斯韦尔2v CPU~5GB RAM无 GPU;

还有一个性能配置,可根据请求提供:

  • 性能版-英特尔哈斯韦尔4v CPU~12GB RAM T4 GPU。

最后,还有评论选项卡。Deepnote上的交流功能非常先进,虽然这门课程主要是一个单人的项目,但有时我会请一个朋友审查它的一些notebook,这一功能没有令我失望。


可以实现代码审查的实时会话,并用评论功能来异步交互。这给了数据科学家以异步或同步方式进行远程协作的巨大优势。远远优于我在其他notebook平台的协作经验。

结论


Deepnote是数据科学团队首选IDE(集成开发环境),可以与其它一些非常好的、已经建立的替代方案相媲美。

其核心优势是以协作为中心的方法,它脱颖而出,为数据科学家提供了真正意义上的谷歌文档式的体验。

我相信:目前团队正在修复一些“看起来很有趣”的功能,诸如版本控制、团队、仪表板和notebook的API共享等其它功能的实现,也在进展之中。

如果对这个平台感兴趣,我建议从尝试一个基于协作的项目开始,可以与朋友或同事互相协作,这样便可以感受到该平台提供的真正价值。

如果你是Python或Notebook环境的初学者,Deepnote是一个简单易行的起点。

对于数据科学团队来说,我鼓励他们在新建项目中使用它,并与Deepnote人员保持密切联系。可以使用集成聊天与团队交谈,这将对于你很有帮助(由于它还在β测试中,所以它具有β功能:)


我将定期更新这篇文章,对新的功能做出点评,所以本文写的很多东西将来都可能更新。

希望你喜欢这篇文章,谢谢你拨冗阅读。

加油干,继续编码!
 
原文标题:
Reviewing Deepnote — The New IDE for Data Scientists
原文链接:
https://towardsdatascience.com/reviewing-deepnote-the-new-ide-for-data-scientists-90c3464ebc5e

译者简介:陈之炎,北京交通大学通信与控制工程专业毕业,获得工学硕士学位,历任长城计算机软件与系统公司工程师,大唐微电子公司工程师,现任北京吾译超群科技有限公司技术支持。目前从事智能化翻译教学系统的运营和维护,在人工智能深度学习和自然语言处理(NLP)方面积累有一定的经验。

转自: 数据派THU 公众号;

END


版权声明:本号内容部分来自互联网,转载请注明原文链接和作者,如有侵权或出处有误请和我们联系。


合作请加QQ:365242293  

数据分析(ID : ecshujufenxi )互联网科技与数据圈自己的微信,也是WeMedia自媒体联盟成员之一,WeMedia联盟覆盖5000万人群。


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接