资讯专栏INFORMATION COLUMN

Facebook开源深度学习框架Caffe2,带来跨平台机器学习工具

weapon / 1846人阅读

摘要:部署旨在帮助开发人员和研究人员训练大规模机器学习模型,并在移动应用中提供驱动的用户体验。现在,开发人员可以获取许多相同的工具,能够在大规模分布式场景训练模型,并为移动设备创建机器学习应用。

AI 模型的训练和部署通常与大量数据中心或超级计算机相关联,原因很简单。从大规模的图像、视频、文本和语音等各种信息中持续处理、创建和改进模型的能力不是小型计算擅长的。在移动设备上部署这些模型,使其快速轻量级运转,同样是令人生畏的任务。克服这些挑战需要一个强大、灵活、便携式(portable)深度学习框架。

Facebook一直在与开源社区一起建立这样一个框架。今天,我们将第一个生产就绪(production-ready)的 Caffe2 开源,这是一个轻量级和模块化的深度学习框架,强调便携性,同时保持了可扩展性和性能。

我们致力于为社区提供高性能的机器学习工具,以便每个人都能创造智能应用和服务。Caffe2 提供了教学和示例,演示了用一台机器上的多颗 GPU 或多台机器的一颗或多颗 GPU 进行大规模学习。学习训练和部署 iOS,Android 和 Raspberry Pi 模型。在模型库 Caffe2 Model Zoo 里面的预训练模型,只需几行代码就能运行。

Facebook 部署 Caffe2 旨在帮助开发人员和研究人员 训练大规模机器学习模型,并在移动应用中提供 AI 驱动的用户体验。现在,开发人员可以获取许多相同的工具,能够在大规模分布式场景训练模型,并为移动设备创建机器学习应用。

我们与英伟达,高通,英特尔,亚马逊和微软密切合作,在云端和移动环境两个方面都对 Caffe2 做了优化。这些合作将使机器学习从业者能够使用更复杂的模型快速地进行实验,并部署下一代 AI 增强型的应用和服务。

Caffe2 会持续更新,欢迎提供意见和建议。

更新信息可以查看 Caffe2 文档和教程请访问 caffe2.ai,并查看 GitHub 源代码。(下文有介绍。)

Caffe2 原理(Philosophy)

Caffe2 的原理与 Caffe 相同,开发原则可以概括为以下5点:

表达(Expression):模型和优化被定义为纯文本模式(plaintext schema)而不是代码。

速度:对学界和产业界都一样,速度对于较先进的模型和大数据至关重要。

模块化:新任务和设置需要灵活性和扩展性。

开放性:科学和应用进步需要通用代码(common code),参考模型和重现性(reproducibility)。

社区:学术研究、startup prototypes 和工业应用通过在 BSD-2 项目中联合讨论和开发,共享实力。

Caffe2:Caffe 的实验性再造,用更灵活的方式组织计算

根据 Github 页面介绍,Caffe2 这个深度学习框架,在制作时就考虑到了表达(expression)、速度和模块化这些特性。

Caffe2 是 Caffe 实验性的再造,可以提供更灵活的方法组织计算。

Caffe2 是根据 BSD 2-Clause 许可证条款发布的。

目前确定可以运行的 Build Status 如下:

Ubuntu 14.04 (GCC)

√ Default CPU build

√ Default GPU build

OS X (Clang)

√ Default CPU build

√ Default GPU build

Options (both Clang and GCC)

√ Nervana GPU

× ZMQ

√ RocksDB

√ MPI

√ OpenMP

√ No LMDB

√ No LevelDB

√ No OpenCV

BLAS

√ OpenBLAS

√ ATLAS

× MKL

其他

√ CMake 2.8 support

√ List of dependencies for Ubuntu 14.04

√ List of dependencies for Ubuntu 16.04

√ List of dependencies for OS X

Caffe2 模型库:图像分类、图像分割、对象和场景标记等

Caffe2 的宣传口号 “一次编码,随时随地运行”,可见 Caffe2 想要凸显其灵活、便携性,当然,还有预训练模型。

据介绍,Caffe 开发社区十分活跃,开发人员和研究人员会分享他们的 Caffe 模型,当然,现在也会分享 Caffe2 模型。

Caffe2 模型库的页面开始说,你可以用这些模型快速构建 demo 并探索深度学习功能,而不需要耗费时间和计算资源从头开始训练模型,你可以重新创建和评估其他项目的结果,或者改进以前发布的模型,欢迎分享和讨论。 

下面列出了 Caffe 模型,还提供了一组可用于 Caffe2 的模型。由于刚刚起步,Caffe2 模型现在还比较少。

目前,只有图像分类的 Squeezenet、BVLC AlexNet、BVLC CaffeNet 模型、BVLC GoogleNet 模型和 ImageNet ILSVRC13 RCNN 有 Caffe2 预训练模型,相信很快就会有更多丰富。

Caffe2 中基本计算单元之一是 Operators。每个 Operator 包含给定适当数量和类型的输入和参数来计算输出所需的逻辑。Caffe 和 Caffe2 功能的总体差异如下图所示:

(关于如何将 Caffe 模型转换为 Caffe2 模型主页上有非常详细而且友好的教程。)

图像分类

图像分割

对象和场景标记

风格

人脸

视频处理

Caffe2 深度学习应用

据介绍,Caffe2 的深度学习应用主要是计算机视觉(CV)、聊天机器人(Chat Bots)、物联网(IoT)、语音识别、翻译以及医疗。

此外,没有在上图中列出的,还有广告和其他一些应用,包括面向学术界研究人员的,可以改进现有模型、创新新的模型、开发算法和更智能的神经网络。

还有工程师和开发人员,介绍中说,最终许多行业都会用到深度学习,即使你没有直接从事深度学习相关工作,你的公司也会将深度学习并入平台。

Caffe2强调易用性, 旨在为开发人员提供一种简单直观的方式,亲身体验深度学习。

在某些情况下,你可能希望使用现有的模型,跳过整个“学习”的步骤,在尝试训练你自己的模型之前,就熟悉深度学习是如何的实用和有效。

Caffe2 API:C++ & Python

Caffe2 给出了 C++ 和 Python 的 API。

C++:http://caffe2.ai/doxygen-c/html/classes.html

Python:http://caffe2.ai/doxygen-python/html/annotated.html

Caffe2 的网站非常友好,除了 API,不仅包括了教程(Tutorial)、参考(Reference),在最开始还有介绍深度学习的部分——Learn。

Learn 这部分从深度学习知识和应用讲起,介绍了如何将 Caffe2 整合入 iOS 和 Android。不仅如此,还有分布式训练和数据库的介绍。

在教程在方面,有模型和数据库介绍,从 Caffe2 的基本讲起,包括 Workspaces、Operators & Nets,还有 Toy Regression、图像预处理、加载预训练模型、MNIST(从头开始创建一个 CNN)的讲解,教你自己创建数据库,以及 AI 摄像机 Demo 和教程,RNN 和 LSTM 网络的介绍。

Facebook 产业级跨平台机器学习工具

在 2016 年 11 月发布 Caffe2go 时,Caffe 作者贾扬清介绍说,Caffe2 是 Facebook 第一个具有产业实力的深度学习平台,可以跨平台用同样的代码集全速运行。由于模块化设计,框架可以使用相同的语言,但要分别在各个平台上优化。例如,框架可以在手机(iOS 和 Android)的 NNPack 和服务器 GPU 的 CUDNN 之间选择。因此,开发者可以专业于算法的工作,而不用研究怎样运行卷积。

人工智能已经产生了深远的影响,但大部分 AI 还是局限于大型数据中心,远离实际使用 AI 应用和服务的人。我们不可能让人随身携带超级计算机,那么,让 AI 在当前更为普及便携的设备——智能手机工作上工作就成为关键一环。

以下是开源地址和体验链接:

主页:http://caffe2.ai

Github: https://github.com/caffe2/caffe2

参与调查,改善 Caffe2:https://www.surveymonkey.com/r/caffe2欢迎加入本站公开兴趣群

商业智能与数据分析群

兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识

QQ群:81035754

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/4521.html

相关文章

  • Facebook贾扬清宣布新机器学习系统Caffe2Go

    摘要:这一新程序被称为,是一个完整的深度学习系统,它的架构已经嵌入手机中。因此,移动设备环境对机器学习系统提出了机遇和挑战。展望下一步,加上这样的研究工具链,是的机器学习产品的核心。 风格迁移一直是机器学习领域内的一项重要任务,很多研究机构和研究者都在努力打造速度更快、计算成本更低的风格迁移机器学习系统,比如《怎么让你的照片带上艺术大师风格?李飞飞团队开源快速神经网络风格迁移代码 》、《谷歌增强型...

    Rango 评论0 收藏0
  • 最新Github上各DL框架Star数量大PK

    摘要:下图总结了绝大多数上的开源深度学习框架项目,根据项目在的数量来评级,数据采集于年月初。然而,近期宣布将转向作为其推荐深度学习框架因为它支持移动设备开发。该框架可以出色完成图像识别,欺诈检测和自然语言处理任务。 很多神经网络框架已开源多年,支持机器学习和人工智能的专有解决方案也有很多。多年以来,开发人员在Github上发布了一系列的可以支持图像、手写字、视频、语音识别、自然语言处理、物体检测的...

    oogh 评论0 收藏0
  • Caffe2正式发布!新框架有何不同?贾扬清亲自解答

    摘要:贾扬清现身说法发布后,作者贾扬清在上连发四记解答。,贾扬清一上来就表明了身份。正式发布新框架有何不同贾扬清亲自解答有人问搞出意义何在现在已经有等诸多框架。贾扬清说和团队紧密合作。  图左为Caffe2作者贾扬清今天凌晨召开的F8大会上,Facebook正式发布Caffe2~随着人工智能的发展,在训练深度神经网络和大规模人工智能模型以及部署各机器的计算量时,通常要在大量数据中心或超级计算机的支...

    feng409 评论0 收藏0
  • 贾扬清撰文详解Caffe2:从强大的新能力到入门上手教程

    摘要:英伟达作为的开发合作者,计划对的深度学习应用推出一系列博客文章。可使用的英伟达深度学习库和来实现高性能多加速训练和推理。最近的训练基准使用了块的英伟达和神经网络架构。 昨天,Facebook 推出了 Caffe2,一个兼具表现力、速度和模块性的开源深度学习框架。它沿袭了大量的 Caffe 设计,可解决多年来在 Caffe 的使用和部署之中发现的瓶颈问题。最终,Caffe2 打开了算法实验和新...

    galois 评论0 收藏0
  • 23种深度学习库排行榜:TensorFlow最活跃、Keras最流行

    摘要:我们对种用于数据科学的开源深度学习库作了排名。于年月发布了第名,已经跻身于深度学习库的上半部分。是最流行的深度学习前端第位是排名较高的非框架库。颇受对数据集使用深度学习的数据科学家的青睐。深度学习库的完整列表来自几个来源。 我们对23种用于数据科学的开源深度学习库作了排名。这番排名基于权重一样大小的三个指标:Github上的活动、Stack Overflow上的活动以及谷歌搜索结果。排名结果...

    princekin 评论0 收藏0

发表评论

0条评论

weapon

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<