当前位置:网站首页>Deepnote点评 -数据科学家的新IDE - 知乎

Deepnote点评 -数据科学家的新IDE - 知乎

2020-12-06 08:06:09 osc_923iryp1

本文是我在利用Deepnote开发Python课程的总结和体会


免责声明:我不隶属于Deepnote或它的任何成员。

Deepnote是一个免费的在线数据科学集成开发环境(online data science notebook),主要关注诸如:实时、谷歌文档、协作类型,等抽象工作概念之间的协作-环境和架构配置。




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

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

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



Deepnote的示例项目


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

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

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

经验

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

随着我对平台越来越熟悉,我主要利用CTRL/⌘ P来搞定一切。




虽然它可以很好地执行屏幕截图中的命令,但是它的查询功能并不能让我100%满意。 我在文件夹中查找文件时遇到一些问题,这令我感到颇为痛苦,因为这个项目主要是由文件夹和子文件夹组织的。


在“项目”选项卡中,可以看到项目文件、添加新文件、添加数据连接和访问终端。



Deepnote的侧导航为标签和可变资源管理器(以及葡萄牙语课程的迷你剧透:)

Notebook自身很有趣,有一些很酷的功能。 令我高兴的是:很容易便可访问到标记备忘单。

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

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



代码智能功能,如自动完成和go-to定义,与当前的β版本不太一样。

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

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

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



创建与IDE的新连接

在建立了数据连接之后,我对终端做了一些改动,于是有了机器的完全根访问权限,但我不太明白这个项目是否需要它。 我认为我唯一一次运行到终端是:当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(集成开发环境),可以与其它一些非常好的、已经建立的替代方案相媲美。

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

我相信:目前团队正在修复“有趣的外观”这一功能,诸如如版本控制、团队、仪表板和笔记本的API共享等其它功能的修复工作,也在进展之中。

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

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

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



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

加油干,继续编码!

版权声明
本文为[osc_923iryp1]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/4260177/blog/4776504

随机推荐