LOADING

Follow me

【独家】5招教你用Python构建好玩的深度学习应用【zoues.com】
三月 23, 2017|DockerPaaS

【独家】5招教你用Python构建好玩的深度学习应用【zoues.com】

【独家】5招教你用Python构建好玩的深度学习应用【zoues.com】

【独家】5招教你用Python构建好玩的深度学习应用

翻译:方芳、贺选

校对:丁楠雅

原文链接:

5 More Deep Learning Applications a beginner can build in minutes (using Python)

本文长度为4000字,建议阅读10分钟

本文教你利用深度学习建立图像自动标注、服装推荐等好玩的应用。


【独家】5招教你用Python构建好玩的深度学习应用


介绍


深度学习正在从根本上改变我们周围的一切。许多人认为只有成为专家才能在应用中运用深度学习,实际上并非如此。


上一篇文章中讨论了6个初学者在几分钟内就可以建立的深度学习应用。我很高兴看到很多读者由此受到启发,所以在其后又增加了一些深度学习的应用。如果错过了我上一篇文章,建议您先去读一下。


本文中我们将学习如何利用深度学习建立例如图像自动标注、服装推荐、音乐制作等其他很多应用。这些应用中的任何一个都可以在几分钟内完成。


PS. 本文假定你了解Python的基本知识,如果不了解的话,请参考this tutorial(https://www.analyticsvidhya.com/blog/2016/01/complete-tutorial-learn-data-science-python-scratch-2/) 然后再从这儿开始。


内容列表


1.使用现有API的应用

  • 利用Clarifai API实现图像自动标注

  • 利用Indico API 实现服装推荐系统

2.开源应用

  • 运用深度学习制作音乐

  • 检测“办公室不宜(Not Safe For Work)”图像

3.实现超分辨率

  • 其他常用资源


1

使用现有API的深度学习应用


1.1 自动图像标注(Clarifai API)


图像标注是具有突破性意义的深度学习应用之一。和文本数据不一样,机器解析图像数据要困难得多,机器需要更深入地理解像素数据。因此我们通过图像标注来分析图像,由此得到图像分类并且辨识出相应的对象。


这就是我们使用图像标注来分析图像的原因。图像标注能告诉我们图像分类和辨识对象是什么。


下面是一个通过深度学习预测图像标注的例子:

【独家】5招教你用Python构建好玩的深度学习应用


下面就让我们来看看Clarifai提供的API是如何给上面的每幅图标注特征的。


系统需求和说明:

1.Python(2或者3)

2.互联网连接(能获取API端点)  


第一步:在Clarifai网站上注册,获取API key。然后在开发者页面(https://indico.io/demos/clothing-matching)找到API的证书


【独家】5招教你用Python构建好玩的深度学习应用


第二步:在终端输入以下命令安装Clarifai的Python客户端

【独家】5招教你用Python构建好玩的深度学习应用


第三步:使用Clarifai客户端来配置系统

【独家】5招教你用Python构建好玩的深度学习应用


这一步需要提供客户端ID和客户端密钥。这些能在开发者页面找到。


第四步:生成文件application.py,加入下面标注图像的代码。请记住把代码中<your_image>替换成你想标注的图像的路径。

【独家】5招教你用Python构建好玩的深度学习应用


然后用以下命令运行代码

【独家】5招教你用Python构建好玩的深度学习应用


你将会得到如下输出:

【独家】5招教你用Python构建好玩的深度学习应用


这个JSON输显示了预测的结果。你可以在outputs->data-> concept->name里找到相关的标注。


1.2 服装推荐(Indico API)


推荐系统正逐渐成为一种巨大的财富。随着产品种类的增加,企业十分需要一种能够智能锁定产品潜在消费者的工具。深度学习恰恰能在这方面很好地帮助我们。


我并不是个时髦的人,但我发现人们会“浪费”大量时间在选择穿哪件衣服上。要是能有个人工智能代理知道我们的喜好,并能给我们建议最佳搭配该多好呀!


幸运的是,深度学习正让这个成为可能。

你可以在here(https://indico.io/demos/clothing-matching)找到这个应用的演示。


【独家】5招教你用Python构建好玩的深度学习应用
【独家】5招教你用Python构建好玩的深度学习应用

official article (https://indico.io/blog/fashion-matching-tutorial/)文中有更详细的描述。现在让我们看看如何建立这个推荐系统:


系统需求和说明

1.Python 2

2.互联网连接(获取API端点)

 

第一步:Indico website(https://indico.io/pay-per-call)上注册获取你自己的API key

【独家】5招教你用Python构建好玩的深度学习应用


第二步:在命令行窗口输入以下命令,安装Indico的python客户端

【独家】5招教你用Python构建好玩的深度学习应用


第三步:Github(https://github.com/IndicoDataSolutions/SuperCell)下载Repository。解压并进入“matching clothes”目录

 

第四步:在main.py文件中加入如下代码。记住将YOUR_API_KEY替换成在第一步中获取的你自己的KEY

【独家】5招教你用Python构建好玩的深度学习应用


在末尾将 ‘if __name__ == “__main__”’替换成如下代码

【独家】5招教你用Python构建好玩的深度学习应用


输入以下命令运行代码

【独家】5招教你用Python构建好玩的深度学习应用


你将会得到如下输出:

【独家】5招教你用Python构建好玩的深度学习应用


这段输出表示上面例子中匹配的概率。


2

深度学习的开源应用


2.1 使用深度学习进行音乐制作


音乐制作是深度学习最酷的应用之一。下面这个应用如果能运用得当的话,将带来突破性的发展。


和自然中的其他事物一样,音乐是和谐的。音乐具备一种我们能捕捉和理解的模式。而这些音乐模式对计算机来说是可以学习的,并能被用来产生新的音乐旋律。这就是音乐制作背后的原理。


This open source application(https://deepjazz.io/)就是基于这一点建立的。下面是它所产生的音乐的一个例子。


【独家】5招教你用Python构建好玩的深度学习应用


访问网站听听音乐效果(https://soundcloud.com/deepjazz-ai/deepjazz-on-metheny-128-epochs)

现在让我们来复制这个结果吧!


系统需求:

1.Python (2 或 3)


第一步:安装关联软件

首先安装Theano,注意必须安装最新版的Theano, 可以在here(http://deeplearning.net/software/theano/install.html#bleeding-edge-install-instructions)找到安装指南。


然后用以下命令安装Keras:

【独家】5招教你用Python构建好玩的深度学习应用


然后按照here(https://keras.io/backend/)提供的指南,把Keras的后端从tensorflow 变成Theano。


最后一个关联软件是Music21。参照this(http://web.mit.edu/music21/doc/installing/index.html)链接进行安装。

 

第二步: 运行以下命令生成音乐

【独家】5招教你用Python构建好玩的深度学习应用


2.2 检测“办公室不宜(Not Safe For Work)”图像


虽然审查制度是个颇具争议的话题,但是它仍然是为浏览者过滤出带有攻击性的成人内容的重要组成部分。以下应用主要聚焦于过滤出NFSW类型的内容和辨认色情图像方面。系统返回的分数能表示NFSW的倾向性,从而过滤出在一定阈值之上的图像。


下面是三张预测图像和系统给出的NFSW分数。


【独家】5招教你用Python构建好玩的深度学习应用


让我们来看看如何建立这样一个应用。


系统需求:

1.Python 2


第一步:在系统中安装docker(https://docs.docker.com/engine/installation/)并且用以下命令建立一个图像 

【独家】5招教你用Python构建好玩的深度学习应用


第二步:从Github下载repository并且解压(https://github.com/yahoo/open_nsfw)

 

第三步:在你的下载目录下运行以下命令。 给出你要分析的图像路径

【独家】5招教你用Python构建好玩的深度学习应用


2.3 超级分辨率


我们经常在电影中看到这样的镜头:放大图像后看到了最精细的细节,然后据此抓住了罪犯或者找到关键证据。



(Let us enhance)


但事实并非如此,当你放大图像时,图像往往是变得模糊不清。为了处理这个问题(使梦想变为现实),我们可以使用深度学习来提高图像分辨率,帮助我们得到清晰的放大效果。


下面这个应用就是以上场景的实现,这里有一个输出的例子。


【独家】5招教你用Python构建好玩的深度学习应用


现在来看看如何建立这个应用。


系统需求

1.Python 3

 

第一步:在系统中安装docker  


第二步:打开 .bashrc 文件并输入以下代码

【独家】5招教你用Python构建好玩的深度学习应用


第三步:现在提升你的图像,在下面的代码中加入图像的文件名

【独家】5招教你用Python构建好玩的深度学习应用


3

其他常用的资源


深度学习一直不断带给我们惊喜,伴随着无数应用的开发,各行各业利用这项技术展开竞争大有星火燎原之势。在本文结束之前,我很愿意再列举些可能对您有启发的资源。


Course material on “Applications of Deep Learning”

Projects done by students of Stanford’s CS231n ’16 batch

Projects done by students of Stanford’s CS224d ’16 batch

List of Deep Learning Startups


你也可以观看下面这些使用深度学习丰富我们生活的视频。希望你能喜欢!



(deep learning simplified)


结语


希望您喜欢这篇文章。深度学习一直让包括顶尖数据科学家在内的每个人着迷。我在本文与读者分享了几个应用,如果您还知道任何其他深度学习应用,请在评论中分享给我们。


如果您在建立应用中遇到任何问题,请在下面发布问题,我会很高兴回答。

【独家】5招教你用Python构建好玩的深度学习应用

方芳,甲骨文公司研发中心,爱科技,善学习,喜欢一切有科幻色彩的新事物。一路从传统ERP、数据仓库转战大数据,对大数据的技术和应用有无穷的好奇心和关注,愿意作为数据派志愿者为大家提供大数据的有趣知识。

翻译组招募信息

工作内容:需要一颗细致的心,将选取好的外文文章翻译成流畅的中文。如果你是数据科学/统计学/计算机类的留学生,或在海外从事相关工作,或对自己外语水平有信心的朋友欢迎加入翻译小组。

你能得到:定期的翻译培训提高志愿者的翻译水平,提高对于数据科学前沿的认知,海外的朋友可以和国内技术应用发展保持联系,THU数据派产学研的背景为志愿者带来好的发展机遇。

其他福利:来自于名企的数据科学工作者,北大清华以及海外等名校学生他们都将成为你在翻译小组的伙伴。


点击文末“阅读原文”加入数据派团队~


转载须知

如需转载,请在开篇显著位置注明作者和出处(转自:数据派ID:datapi),并在文章结尾放置数据派醒目二维码。有原创标识文章,请发送【文章名称-待授权公众号名称及ID】至联系邮箱,申请白名单授权并按要求编辑。

发布后请将链接反馈至联系邮箱(见下方)。未经许可的转载以及改编者,我们将依法追究其法律责任。

【独家】5招教你用Python构建好玩的深度学习应用

公众号底部菜单有惊喜哦!

加入组织请查看“联合会”

往期内容请查看“最火文章”

参与活动请查看“活动资讯”

【独家】5招教你用Python构建好玩的深度学习应用
【独家】5招教你用Python构建好玩的深度学习应用

点击“阅读原文”报名

no comments
Share

发表评论