ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何免费云端运行Python深度学习框架?

如何免费云端运行Python深度学习框架? 如何免费云端运行深度学习框架有运行的想法, 然而却不存在苹果电脑, 并且也欠缺Linux使用方面的经验, 这种状况要如何处理呢? 借助这款云端应用, 能使你免去安装运行环境这一操作。无需花费一分钱, 凭借高性能GPU, 能够轻松地让深度学习顺利运行起来。痛点《怎样运用以及深度神经网络去识别图像? 》这篇文章发布之后, 接纳了许多读者的留言, 大家对于往昔印象里高不可攀的深度神经网络图片甄别产生了兴趣, 全都计划亲自上手, 试用一回简单且易用便利的框架。有的读者尝试之后很开心。有的读者却遇到了问题我于《如何用和深度神经网络寻找近似图片? 》这篇文章里, 针对这个疑问给出了回应, 当前支持的操作系统存在限制, 仅仅涵盖如下这些选项:如果你用的操作系统是 7及以下版本目前还不支持。解决办法有两种第一种升级到 10并且使用WSL。第二种采用虚拟机安装好Linux。这两种解决方法好不好不好。它们都是没有办法的办法。因为都需要用户接触到Linux这个新系统。对于IT专业人士来说Linux确实是个好东西。首先它免费。因此可以把软硬件的综合使用成本降到最低其次, 它具备灵活性, 从系统内核直至多种应用, 你能够依照自身意愿进行定制。这与macOS不同, macOS无论你是否会使用西班牙语以及文本语音朗读功能, 都会一概默认全部安装上。第三点, 它具备结实的特性。Linux尽管提供自由使用, 然而自诞生之际起便把UNIX当作参照对象, 完全能够胜任在那种一年之中都不会出现一次关机情况的大型服务器上运行的要求。然而, Linux具备的这些优点, 放置到来自我专栏的主要阅读群体之处, 也就是“文科生”那里, 最终呈现的结果就不一定会是一件对他们有利向好的事情所带来的那种状况了。因为Linux的学习曲线很陡峭。于是, 要是你执拗地坚决在自身的电脑上运行, 且又不愿意去学习Linux, 那么或许就必须得去购置一台了。但是谁说运行代码一定要在自己的机器上呢云端你可以把安装在云端——只要云端的主机是Linux就好。你或许是发怒了, 认为我方是在对你进行戏弄, 假定我方会运用Linux, 那就会直接在本地进行安装了, 然而本地的Linux我方并不会运用, 却还让我方远程使用Linux, 你搞的这是啥意思呀别着急听我把话说完。大多数位于云端的Linux主机, 仅仅是为你供给一种操作系统, 继而你能够于其上随心所欲地开展软件安装操作, 施行命令。这样一个云端系统, 往往要求你拥有相当级别的IT专业知识, 才能够轻松进行驾驭。更要命的是这种租用来的云主机要么功能很弱要么很贵。常常只有一个CPU核心的那种, 价格为几十块钱每月的主机, 要是用来跑深度学习项目, 只怕没等你得到结果呢, 别人的论文就已经发表出来了。有没有高性能主机当然有。就比如说亚马逊的 AWS, 它提供了 p2.这种样子的配置让你去进行选择。有了这个AWS给出的p2.配置, 运行深度学习任务就能够显得十分轻松, 毫无压力。但是它很贵。有人做过计算, 要是你有长期运用深度学习功能的需求, 那么相对而言, 在本地自行组装一台具备高性能的电脑, 会更具划算性。此外, 虽说亚马逊已然替你开展了诸多准备事项, 然而, 你于从着手处置这台云主机起, 直至切实娴熟掌控运用, 仍需耗费一番精力, 是这样的情况情形状态结果, 没错吧对不对是不是, 。先是从网上寻觅一篇靠谱的教程, 而后经由自身反复实践, 期间连续不断地求助, 最终你便能够掌握以下技能:知晓了怎样以最节省费用的方式去运行具备高配置的 AWS 虚拟主机, 清楚该在何时开启以及关闭实例。一个月结束后, 瞅着账单上所呈现的金额这般少, 是不是会格外有种成就感呢。问题是你最初是想要干什么来着你似乎仅仅是计划着, 将手头现有的照片, 借助运用上的卷积神经网络, 迅速地做出一个分类模型来是吧?所以这种折腾不是正道。在某些时刻做出正确的选择比盲目付出努力重要得多。你应该选择一个云平台它得具有如下特色你没必要掌握Linux, 也无需从一开始就安装一堆基础软件, 开启即可使用, 要是需要哪种额外的功能, 一条指令便能够解决, 提供高性能GPU用以运行深度学习代码, 而且最好是免费的。你是不是觉得我在做梦犹豫着要不要赶紧喊我醒过来这不是做梦真的有这样的好事儿。发现本文推荐给你的云运行环境是由提供的下文简称Colab。其实这个工具已经存在了好几年了。最先行的版本是跟团队一块合作去开发的, 仅仅是到了最近的时候, 才迭代成为了已然步入状况越变越好境界的模样, 借由了这篇文章的进行推行, 引来了好多从事研究的人和进行学习的人的留意。官方的介绍是是一种用于机器学习培训以及研究的研究工具, 它属于笔记本环境, 使用时无需进行任何设置就能使用。请用 浏览器打开这个链接你可以看到这份“简介”。虽然外观不同但是它实际上就是一份 笔记本。我们尝试运行一下其中的语句。留意一下这个笔记本当中的语句, 实际上呢, 它是2格式, 然而, 默认笔记本的运行环境, 却是3。所以, 若你直截执行头一句, 照样是借由ShiftEnter, 会泛起出错情况。解决的办法是极其简单的, 去将上方工具栏之中的“代码执行程序”标签页给打开。选择最下方的“更改运行时类型”。将默认的 3改成 2之后点击右下角的保存按钮。然后我们重新运行第一个代码区块的语句。这次就能正常输出了。语句区块2, 那可就更具趣味了, 它直接调用自身的深度学习框架, 也就是软件包。曾经, 我特意针对安装撰写过教程。然而在此处, 你压根未曾进行安装, 但是它实实在在地为你开展工作了。不止是, 诸多常常会用到的数据分析工具包, 举例来说numpy, 都是默认予以安装的状态了。对于这些基础工具, 你完全不必进行安装, 也无需进行配置, 更不用进行管理, 只管拿过来直接使用便可以了。我们运行最后一个代码单元。看图片输出都毫无问题。编程环境领域的即插即用啊太棒了但是兴奋完毕之后, 你或许会感觉也就这样——那些软件包, 我的本地机器都已正确安装好了。运行起来, 不管怎样讲都是本地更为便利一些呀。没错。但是安装时你的操作系统不支持对不对下面我为你展示如何用Colab运行进行深度学习。数据这份项目里, 我放置了要分类的图像数据, 还有ipynb文件。请点击此链接, 去下载压缩包。下载后解压到本地硬盘。可以看到其中包含一个ipynb文件和一个image目录。image目录所包含的内容, 那些就是你曾经在题名《如何用和深度神经网络寻找近似图片? 》一文当中已经碰到过的图, 图里画的是哆啦a梦和瓦力。这是蓝胖子的图片这是瓦力的图片要开启你的Drive, 需用浏览器打开这个链接, 而目前Colab是不支持其他浏览器开启的。当然如果你还没有账号需要注册一个然后登录使用。此刻, 将你方才解压出来的那个文件夹, 拖动到Drive的页面之上, 系统会自动予以上传。上传完成后在 Drive里打开这个文件夹。.ipynb文件上单击鼠标右键。选择打开方式为。Colab打开后的ipynb文件如下图所示。首先, 我们得去确定运行环境, 接着, 去往菜单栏里点击“修改”, 随后, 从中选择“笔记本设置”。确定程序运行期间实际类型归属为2, 硬件层面用于加速运行的设备装置是图形处理单元。要是情况并非如此这般的布局设置, 那就应对其作出修正。随后去往页面上点击那个保存按钮动作。数据有了环境也已配置好。下面我们正式开始运行代码了。代码我们尝试读入软件包。import turicreate as tc 复制代码结果会有如下报错。遇到这个报错很正常。因为我们还没有安装。不是说不需要安装深度学习框架吗那得看是谁家的深度学习框架了。Colab默认安装因为它是自家开发的深度学习框架。而是苹果的产品所以需要咱们手动安装。手动安装很麻烦吗才不会。新开一个代码单元然后输入以下一行语句!pip install turicreate 复制代码你瞧, 这般一来, Colab便会倾尽全力, 不辞辛劳地着手为你安装, 其所安装者, 乃是连同包含着整个的所有依赖包, 完全不必你亲自为此操心, 转瞬之间, 就已然安装妥当了。我们重新调用。import turicreate as tc 复制代码这次成功执行再没有出现报错。接下来, 我们要去做一件事, 这件事是, 使Colab能够, 自我们的数据文件夹之中, 读取内容。然而, 在默认情形之下, Colab压根儿不清楚我们的数据文件夹摆在何处, 就算我们原本是从Drive的演示文件夹的下方将这个ipynb文件给打开了的。我们首先要让Colab找到 Drive的根目录。这原本是个相对而言较为复杂的问题, 然而所幸的是, 我们存在现成可拿来使用的代码。把下面这个单元格的代码执行一下, 要是看不懂不用忧心, 毕竟其中任何语句都无须你去做调整。!apt-get install -y -qq software-properties-common python-software-properties module-init-tools !add-apt-repository -y ppa:alessandro-strada/ppa 21 /dev/null !apt-get update -qq 21 /dev/null !apt-get -y install -qq google-drive-ocamlfuse fuse from google.colab import auth auth.authenticate_user() from oauth2client.client import GoogleCredentials creds GoogleCredentials.get_application_default() import getpass !google-drive-ocamlfuse -headless -id{creds.client_id} -secret{creds.client_secret} /dev/null 21 | grep URL vcode getpass.getpass() !echo {vcode} | google-drive-ocamlfuse -headless -id{creds.client_id} -secret{creds.client_secret} 复制代码执行刚开始你会看到下面的运行状态。一小会儿过后, 你将会发觉程序停止了运行。给你一个链接, 让你去点击它。并且叮嘱你把所获取的结果填到下面的文本框当中。点击链接你会看到下图。点击你自己的账号。然后会提示你 Cloud SDK的权限请求。点击允许后你就获得了一长串字符了。复制它们。回到Colab页面上把这一长串字符粘贴进去回车。你可能认为运行完毕。不对还需要第二步验证。又出来了一个链接。点击之后还是让你选择账号。而后, Cloud SDK再度提出了权限方面的要求, 需留意, 此次与上次所请求的权限数量并不相同。你需要再复制另外的一串新字符。粘贴回去回车。这次终于执行完毕。行啦, 此刻Colab已然接管了你的Drive。我们为Drive云端硬盘的根目录赋予一个名称, 将其称作drive。!mkdir -p drive !google-drive-ocamlfuse drive 复制代码接着, 我们告知Colab, 要它将我们此刻所在的工作目录设定成为Drive下边的。demo--image---colab-文件夹。import os os.chdir(drive/demo-python-image-classification-Google-colab-master/) 复制代码好了准备工作完毕我们继续。我们需要告诉图像数据文件夹在哪里。img_folder image 复制代码然后我们读入全部图像文件到数据框data。data tc.image_analysis.load_images(img_folder, with_pathTrue) 复制代码此处, 你会探测到读入速率相对迟缓。这着实是个难题, 究竟是不是鉴于的数据框于Colab上有些不太适应呢? 当下我尚且无法断定。好在咱们样例中的文件总数不多还能接受。终于读取完毕了。我们看看data中包含哪些数据吧。data 复制代码跟 本地运行结果一致都是文件路径以及图片的尺寸信息。下面我们还是给图片打标记。来自哆啦a梦文件夹的标记为否则标记为walle。data[label] data[path].apply(lambda path: doraemon if doraemon in path else walle) 复制代码再看看data数据框内容。data 复制代码可见标记已经成功打好。我们尝试用()函数浏览data数据框查看图片。data.explore() 复制代码但是很不幸提示我们该功能暂时只支持macOS.可不能忘记, 当下我们所运用的, 乃是Linux操作系统, 因而没办法正常运用()函数。然而这仅仅是暂时的, 未来说不定哪一天就会予以支持了。幸好这个功能跟我们的图像分类任务关系不大。我们继续。为了把数据划分成训练集跟测试集, 我们采用统一的随机种子取值方式, 以此确保咱们能够得到的结果是可以重复验证的。train_data, test_data data.random_split(0.8, seed2) 复制代码下面我们正式建立并且训练模型。model tc.image_classifier.create(train_data, targetlabel) 复制代码当处于运行状态之际, 你将会发觉, 原本而言, 需要耗费相当长一段时间去开展的预训练模型参数下载行为, 竟然在刹那间就能够达成。这究竟是怎样的一种状况呢, 当作思考题目, 交由你靠自己去探寻解答, 给予你一个小小的提示, 那便是云存储。图像尺寸归一化被自动帮我们处理了, 还进行了多轮迭代, 为的是寻找合适的超参数设置结果。好了我们尝试用训练集生成的模型在测试集上面预测一番。predictions model.predict(test_data) 复制代码预测结果如何我们用()函数来做个检验。metrics model.evaluate(test_data) print(metrics[accuracy]) 复制代码结果如下0.935483870968 复制代码我们看看预测的结果predictions 复制代码 dtype: str Rows: 31 [doraemon, walle, walle, walle, walle, walle, doraemon, doraemon, doraemon, walle, walle, walle, doraemon, doraemon, walle, doraemon, doraemon, doraemon, doraemon, walle, walle, doraemon, doraemon, doraemon, walle, doraemon, doraemon, doraemon, doraemon, doraemon, walle] 复制代码再看看实际的标记test_data[label] 复制代码 dtype: str Rows: 31 [walle, walle, walle, walle, walle, walle, doraemon, doraemon, doraemon, doraemon, walle, walle, doraemon, doraemon, walle, doraemon, doraemon, doraemon, doraemon, walle, walle, doraemon, doraemon, doraemon, walle, doraemon, doraemon, doraemon, doraemon, doraemon, walle] 复制代码两相比对我们希望找出那些错误预测的图片存储位置test_data[test_data[label] ! predictions][path] 复制代码下面我们需要直观浏览一下预测错误的图像。读入的Image模块用于展示图像。from IPython.display import Image 复制代码我们先来展示第一幅图像Image(test_data[test_data[label] ! predictions][path][0]) 复制代码结果如下依旧维持原来的样子, 有着50层的深度神经网络模型, 已然没办法让人凭借直观去理解。因而我们没办法确切地弄明白到底是在哪一个判定环节上面出现了问题。可是凭借直观的猜想, 我们察觉于整个的那张照片内部, 四四方方的瓦力压根就并非是处于主要的位置之上。反而是脑袋圆圆的机器人变成了其中的主角。如此这般, 就于图片那儿形成了颇为严重的嘈杂干扰。我们再来看看另一幅图Image(test_data[test_data[label] ! predictions][path][1]) 复制代码结果是这样的在这幅图当中, 众多扰乱视线的信息是普遍存在的, 并且就连那只哆啦a梦也摇身一变成为海盗了。好了到这里我们的代码迁移到Colab工作顺利完成。正如你所目睹的那般, 我们并不需要于本地去安装任何软件包, 仅仅只是运用了一个浏览器以及一个从下载而来的文件夹, 便达成了深度学习的近乎全部功能呐。与通过虚拟机这一方式来安装Linux相比较, 抑或是自行去设定云端Linux主机而言, 难道不是要轻松许多吗?小结通过阅读本文希望你已经掌握了以下知识点另外, 当你针对需求去挑选工具之际, 要记着哈佛大学营销学教授莱维特所说的那句具有典范性的话语:原本人们并非是想要去买下一个呈现为1/4英寸的钻头, 他们实际所期望获取的仅仅只是一个尺寸为1/4英寸的洞而已。这句话不仅对学习者和开发者有用。对于产品的提供者意义只怕更为重大。讨论你先前是否正确进行了安装, 使用的是何种操作系统, 你有无尝试在云端运行代码, 是否存在相比Colab更优的云端代码运行环境, 欢迎留言, 将你的经验与思考分享给众人, 我们一同展开交流讨论。
返回列表