作者|奔跑的鳄鱼转载自菜鸟学Python(ID:cainiao_xueyuan)
今天给大家推荐一款超级强大的在线编辑器Colaboratory,Colaboratory是一个谷歌提供的Jupyternotebook环境,不需要进行任何设置就可以使用,并且完全在云端运行,最重要的是Colaboratory免费,这绝对是谷歌提供的一项的福利啊。下面就来聊聊Colaboratory的基本用法和其优势。
01.使用篇
1)准备阶段
以上工作都完成后,就可以登陆Colaboratory网站来体验一番了,下面这幅图就是Colaboratory(以下简称colab)的介绍页面。
2)基本用法
用过jupyternotebook的朋友应该对这个界面非常的熟悉,事实上colab的操作与普通的notebook相似度非常高,下面我们就新建一个Python3的notebook(下图),简单地演示一下它的基本用法。
在下图中的代码框中输入Python代码,点击左侧的按钮执行程序,就会在下方输出打印结果,由于程序第一次运行之前colab会自动连接云端服务器,所以速度可能会有点慢。
值得一提的是,上面这个代码框可不是只能执行Python代码,你还可以把它当作ubuntu的终端来使用,只不过要在所有需要执行的指令之前加一个“!”号。例如,我们如果想查看当前的云端服务器中自带了哪些Python库的话,可以执行“!piplist”指令,结果如下:
可以看到,colab默认安装了大量的Python第三方库,就数据科学方面的库而言,colab的自带库应该会比Anaconda更加完善。
既然可以使用pip指令,那如果想安装其他Python库的时候也可以很方便地安装了,我拿tushare做了一个试验,结果如下:
除了python库之外,使用这种方式还可以执行其他linux指令来部署你自己的云端环境,别忘了在指令前加一个“!”号就好。
2.配置篇
1).常用配置
我个人认为最常用的配置项主要集中在两个地方:
一是"工具"中的偏好设置(下图),在这里可以设置主题背景(共分light和dark两种)、缩进宽度等风格,有趣的是colab还自带coding特效,如果威力等级一栏选择了“manypower”,那么在写代码的过程中就会产生非常炫酷的效果。
二是“修改”中的笔记本设置,这里可以设置运行时的python版本和硬件加速器。说到这里不得不佩服谷歌,居然提供了GPU和CPU两种加速模式,只要在选项中进行设置,就可以免费获取额外的算力,这下通过在线编辑器使用TensorFlow再也不是梦想了。
除此之外,colab还允许通过共享的方式邀请他人共同讨论、完善代码;如果你不想将代码放到云端服务器中运行,还可以连接本地的开发环境运行程序(下图)。
2)云盘挂载
先来说说挂载云端硬盘的重要性。colab中的代码文件是放在云端服务器中运行的,但存储的位置却是同一账户的谷歌云端硬盘,如果不进行关联设置,colab会默认将notebook文件放到云端硬盘根目录下的“ColabNotebooks”文件夹中。
colab的notebook在云端服务器中运行期间是没办法直接读取本地文件的(比如数据集),如果想让程序读取指定文件,只能将其放到谷歌云端硬盘中,然后将云端硬盘挂载到colab。
如果在colab中保存过notebook文件,系统将会自动关联你的colab和云端硬盘账户,否则需要在云端硬盘中进行手动关联(此处略)。然后在代码框中输入以下代码并运行。
!apt-getinstall-y-qqsoftware-properties-commonpython-software-propertiesmodule-init-tools!add-apt-repository-yppa:alessandro-strada/ppa2>&1>/dev/null!apt-getupdate-qq2>&1>/dev/null!apt-get-yinstall-qqgoogle-drive-ocamlfusefusefromgoogle.colabimportauthauth.authenticate_user()fromoauth2client.clientimportGoogleCredentialscreds=GoogleCredentials.get_application_default()importgetpass!google-drive-ocamlfuse-headless-id={creds.client_id}-secret={creds.client_secret}&1|grepURLvcode=getpass.getpass()!echo{vcode}|google-drive-ocamlfuse-headless-id={creds.client_id}-secret={creds.client_secret}
接着再执行下面两行代码,由于我在挂载前云端硬盘中有文件,所以加上了nonempty参数,否则可以忽视。
!mkdir-pdrive!google-drive-ocamlfuse-ononemptydrive
顺利的话,到这里云盘挂载就完成了,默认挂载的云盘根目录路径是’drive‘,我们来检验一下(下图),可以看到输出的内容和云端硬盘中的文件是一致的。
这样一来,我们就可以将文件放到云盘中供colab读取,或者将colab的运行结果输入到云盘中了。
03.教学篇
colab作为一款在线编辑器,通过云计算让我们摆脱了装备的限制,不管什么设备,只要能连上谷歌的网络服务,就可以使用云端的服务器,处理云端的数据集;同时,对于工作地点不固定的人来说,也省去了反复配置环境和拷贝文件的麻烦。
然而,colab给自己的定位却是旨在帮助传播机器学习培训和研究成果,所以Colab还关联了一个非常优秀的机器学习学习平台。
点击上图中的“完整课程网站”链接进入教学网站,这里不仅有非常完善的学习资料,还可以根据每个人的基础制定不同的学习计划,更难得的是,无论视频、语音还是文字资料都可以选择中文模式(虽然中文朗读疑似语音合成)。
除了教学网站,colab还有大量交互式机器学习分析的端到端示例(seedbank)供学习和练习,所有seedbank中的项目都可以一键导入colab中运行(下图)。
关于Colaboratory今天就简单介绍到这里,明明是款编辑器,却集成了教学功能,真的堪称史上最强。由于篇幅有限,一些细节和功能都没有介绍,有兴趣的同学可以探索体验一下。
◆
CTA核心技术及应用峰会
5月25-27日,由中国IT社区CSDN与数字经济人才发展中心联合主办的第一届CTA核心技术及应用峰会将在杭州国际博览中心隆重召开,峰会将围绕人工智能领域,邀请技术领航者,与开发者共同探讨机器学习和知识图谱的前沿研究及应用。