发表日期:2016-09 文章编辑:小灯 浏览次数:1794
人工智能(AI)和深度学习(Deep Learning)在最近几年得到迅猛的发展,除了AlphaGO击败人类棋手外,AI正在向生活的各个领域进军。更让人激动的是,国内外的互联网巨头们纷纷将自己的深度学习产品开源,让每个人都有机会参与到人工智能的开发中。
几年前开源的Hadoop成就了大数据的爆发,眼下众多深度学习框架的开源必将在未来几年内引领下一波人工智能的大爆发。对于没有抓住上次机会的小伙伴们来说,现在的机会不容错过。
Rapp也开始了深度学习之旅,并且先给自己制订了一个小目标:打造一款简单的AI产品,比如图像识别app
经过一番Google和深入思考,我打算使用以下的策略来开发:
我们先来安装TensorFlow(基于Ubuntu系统):
接下来,准备TensorFlow预先训练好的图像识别模型:
TensorFlow的准备工作已经结束,下面我们需要用Shiny来开发Web应用。Shiny应用程序的开发很敏捷,只需要安装好Shiny Server,再写2个程序:ui.R(用户界面)和server.R(服务器端程序),上传到指定目录下即可通过浏览器使用。(本文的重点并不是介绍Shiny程序的开发和部署,如果读者对这个方面感兴趣,可以继续关注【App开发】系列文章)
以下是Shiny程序的代码:
ui.R
ui.png server.R
server.png我给开发好的app起了个名字:RappEyes,并部署在我的个人网站上:http://112.74.107.44/shiny/rappeyes
打开网页后,RappEyes会对TensorFlow自带的熊猫照片进行识别:
rappeyes1.jpg也可以自己上传图片:
rappeyes2.jpg当背景比较干净的时候,识别准确率会很高:
rappeyes3.jpg 我以为RappEyes会告诉我它们是apple,没想到还让我学习了用英语怎么说“青苹果”:Granny Smith,真是意外收获:)
掌握deep learning是一件很有挑战性的任务,我们今天只是迈出了第一步:安装了TensorFlow,对图像识别有了一个感性的认识,也练习了基于R的Web开发。我相信,“边学习边应用”是掌握一门技能最好的方法,希望今天的文章能给大家带来一些帮助。
如果你喜欢本文,欢迎积极打赏:)