GraphLab Create使深度学习更easy

本文原载于我的主页:planckscale.info,转载于此。
版权声明:本文系PlanckScale工作室翻译整理,欢迎转载,但转载请以超链接形式注明文章来源(planckscale.info)、作者信息和本声明,否则将追究法律责任。

消息来源: GraphLab Create关于深度学习的一篇博文

机器学习的一个核心目标是对输入数据进行分类。例如一个训练好的分类器,输入一张图片便可预测这张图中是狗还猫。

用来分类的方法有很多,支持向量机、逻辑回归、深度学习等。最近深度学习如日中天,虽然很强大,但其训练起来却是昂贵的,费时费力。你需要确定网络多少层,需要确定每层多少个节点,需要初始化模型的参数等等。简单来说,深度学习模型就像一个带有很多旋钮和表盘的机器,这些旋钮和表盘你没调好它就罢工。

最新发布的GraphLab Create 1.1 及1.2使深度学习变得超级简单。它不需要你自己在选择模型和调参上成为专家,就可以玩转神经网络。基于输入数据,neuralnet_classifier.create()函数选择一个网络架构并设置合理的参数值。在MNIST上测试:

在测试集上评估这个模型:

结果达到了98%的精度。寥寥几行代码,深度学习就这么简单。

这样还不够,GraphLab Create还要求要使深度学习变得更简单。尽管GraphLab Create能选择较好的网络架构和参数,但这种自动化处理往往是不够的。优化设置往往是极端具体的问题,没有好的直觉、没有足够丰富的经验、没有很多PhD学生的话这个问题很难解决。

其实并非所有问题都得从头开始去训练一个深度模型,再者说,你要解决的问题也并不特殊,它与一些已经解决的问题多少有关联。拿分类猫狗的例子,最有名的数据集ImageNet,DNN表现最优异,其训练的模型可将输入从一千种类别中分辨出其属于哪一类。分辨狮子和狐狸类别的那些特征难道对分辨猫狗没用?

当然有用。通过简单移除DNN的输出层,将传播到输出层的信号作为特征喂给任何一种分类器便可解决我们区分猫狗的任务。步骤如下:

第一步:在一个超大的通用的数据集上训练一个DNN分类器。最好的例子是ImageNet,1000种类别120万张图片。GraphLab拥有在ImageNet上训练好的模型,因此当你应用的时候可以跳过这一步,只需下载这个模型:

gl.load_model(‘http://s3.amazonaws.com/GraphLab-Datasets/deeplearning/imagenet_model_iter45′)

第二步:DNN每一层的输出可以看作每张图像的一个有意义的向量表示。对你任务中的图像,提取输出层前面那层的特征向量。

第三步:以这些特征作为输入,训练一个针对你自己任务的新的分类器。

乍一看可能觉得这样比训练一个DNN更复杂。其实不然,第一步可在很多不同的问题上复用,而且GraphLab给你提供了这个模型,所以并不需要你自己去训练。第二步用GraphLab的API就可搞定。第三步随便一个比深度学习模型简单的分类器都可行。这样一套流程下来,无需调参、训练更快、效果更好,即使有时训练数据不够也不影响。另外,即便你的第三步分类任务与第一步训练的任务相对无关,此方法效果依然很好。

举个例子,还是分类猫和狗:

第一步,下载在ImageNet上训练好的模型。

而后下载狗和猫的图像。因原始ImageNet模型在256x256x3的图像上训练,所以这里调整了一下图像大小。

第二步,提取特征

第三步,训练一个简单的分类器

为看效果,做个评估:

结果达到约96%的精度,为作对比,仅用.create()方法,结果如下:

精度仅60%。很明显,提取特征结合简单的分类器的方法超级强悍。

为了确保此方法具有通用性,在CIFAR-10上验证。CIFAR有6万张32×32的图像,总共分为10类,5万张训练图像,一万张测试图像。少量例图如下:

重复上述步骤:

做评估:

精度接近95%。事实上,这个结果比已公布的任何结果都好,且看齐Kaggle竞赛中获胜的结果。人类的识别精度才94%。

Graph Create在深度学习这块的表现实在令人兴奋。会持续关注之。

时间: 2024-10-07 21:21:12

GraphLab Create使深度学习更easy的相关文章

阿里云人工智能小Ai是比深度学习更高阶的算法

(上图为阿里云人工智能科学家闵万里) 4月8日,在<我是歌手>的第四季总决赛中,出现了一个不速之客,这就是扬言能预测歌王的阿里云人工智能机器人小Ai.开场前,小Ai预测黄致列夺冠概率第一,尽管最终的歌王是李玟,但小Ai成功预测了前三名. 在了解阿里云人工智能机器人小Ai的基本运作过程后,记者认为小Ai的算法其实已经不仅是深度学习,而是在深度学习之上的更高阶算法,并就此向阿里云人工智能科学家闵万里求证,得到的回复:是的. 小Ai算法高阶在哪里? 尽管阿里云方面没有透露关于小Ai更多算法方面的信息

浅说深度学习

这篇文章写的挺科普挺好,所以就转载过来了 本文旨在提供直观简明的深度学习引导,涵盖深度学习的基本概念,而不涉及很多数学和理论细节.当然如果要做更深入的研究,数学肯定是必不可少的,但是本系列主要还是用图片和类比等方式,帮助初学者快速建立大局观. 核心概念 机器学习(Machine Learning) 在机器学习中,我们(1)读取数据,(2)训练模型,(3)使用模型对新数据做预测.训练可以看作是当模型拿到新数据的时候.逐步学习一个的过程.在每一步,模型做出预测并且得到准确度的反馈.反馈的形式即是某种

人工智能的新纪元——深度学习

摘要:随着大数据时代的到来,以神经网络为基础的深度学习迎来春天,世界各地深度学习研究所,研究项目如雨后春笋.一种并非全新却会令世界都会改变的新技术正在渐渐的成熟,走进我们的视野.它的出现使人工智能得到飞跃性的发展[1].深度学习是近几年人工智能领域颇具影响力和代表性的技术之一.本文从深度学习的发展历程,深度学习的技术实现和存在的问题,以及展望和它对社会的影响进行报告. 正文:一.发展历程 1.基础 深度学习的基础是神经网络NN(Neural Network),神经网络最早出现在上世纪40年代.早

深度学习“引擎”之争:GPU加速还是专属神经网络芯片?

深度学习“引擎”之争:GPU加速还是专属神经网络芯片? 深度学习(Deep Learning)在这两年风靡全球,大数据和高性能计算平台的推动作用功不可没,可谓深度学习的“燃料”和“引擎”,GPU则是引擎的引擎,基本所有的深度学习计算平台都采用GPU加速.同时,深度学习已成为GPU提供商NVIDIA的一个新的战略方向,以及3月份的GTC 2015的绝对主角. 那么,GPU用于深度学习的最新进展如何?这些进展对深度学习框架有哪些影响?深度学习开发者应该如何发挥GPU的潜力?GPU与深度学习结合的前景

深度学习补充和总结

一.损失函数 深度学习中,常用的损失函数为均方误差和交叉熵,分别对应回归和分类问题,其实深度学习的损失函数和机器学习的损失函数差不多,是一致的,均方误差就相当于最小二乘,交叉熵其实是一种特殊的对数损失函数形式,这里不再赘述. 二.激活函数 是深度学习特有的. 关于激活函数,首先要搞清楚的问题是,激活函数是什么,有什么用?不用激活函数可不可以?答案是不可以.激活函数的主要作用是提供网络的非线性建模能力.如果没有激活函数,那么该网络仅能够表达线性映射,此时即便有再多的隐藏层,其整个网络跟单层神经网络

一线开发者在Reddit上讨论深度学习框架:PyTorch和TensorFlow到底哪个更好?

本文标签:   机器学习 TensorFlow Google深度学习框架 分布式机器学习 PyTorch   近日,Reddit用户 cjmcmurtrie 发了一个主题为「PyTorch vs. TensorFlow」的讨论帖,想要了解这两大流行的框架之间各自有什么优势. 原帖地址:https://redd.it/5w3q74 帖子一楼写道: 我还没有从 Torch7 迁移到 TensorFlow.我玩过 TensorFlow,但我发现 Torch7 更加直观(也许是我玩得不够?).我也尝试了

利用更快的r-cnn深度学习进行目标检测

此示例演示如何使用名为"更快r-cnn(具有卷积神经网络的区域)"的深度学习技术来训练对象探测器. 概述 此示例演示如何训练用于检测车辆的更快r-cnn对象探测器.更快的r-nnn [1]是r-cnn [2]和快速r-nnn [3]对象检测技术的引伸.所有这三种技术都使用卷积神经网络(cnn).它们之间的区别在于它们如何选择要处理的区域以及如何对这些区域进行分类.r-cnn和快速r-概算在运行美国有线电视新闻网之前使用区域建议算法作为预处理步骤.提议算法通常是技术例如edgox [4]

为什么相比芯片,我们更在意深度学习框架的中国化?

这两天美国宣布对中兴进行封锁,可谓在科技圈掀起了从上到下的一股龙卷风. 4月16日美国商务部发布命令,禁止美国企业向中兴通讯销售元器件,时间长达7年.假如这一纸禁令真正生效,意味着中兴通讯旗下全产业链所依靠的芯片等核心元件失去获取渠道,基本意味着庞大的中兴通讯将面临无法继续经营的最坏可能. 中兴通讯股价随之快速下跌,已相当于两个跌停板,其美国供应商的股价在"禁令"发布后也遭遇不同程度的下跌. 19日,中国商务部新闻发言人高峰在新闻发布会上表示,美方行径引起了市场对于美国贸易和投资环境的

吴恩达《深度学习》-课后测验-第三门课 结构化机器学习项目(Structuring Machine Learning Projects)-Week2 Autonomous driving (case study) (case study)( 自动驾驶 (案例研究))

Week2 Autonomous driving (case study) (case study)( 自动驾驶 (案例研究)) \1. To help you practice strategies for machine learning, in this week we'll present another scenario and ask how you would act. We think this "simulator" of working in a machine l