NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Facebook 开源深度学习项目 Torchnet

  • 2016-07-31
  • 本文字数:1089 字

    阅读完需:约 4 分钟

Facebook 发表了一篇学术论文博客,详细介绍基于 Lua Torchnet 项目。这是一个以深度学习为中心的新的开源项目,以之前开源的 Torch 库为基础构建。

在一次采访中,Facebook 人工智能研究实验室( FAIR )的 Laurens van der Maaten 指出,它可以用于类似图像识别、自然语言处理这样的工作,其方法和面向 Theano 框架的 Blocks Fuel Python 库类似。他还指出:

举例来说,它让完全隐藏 I/O[输入 / 输出] 开销变得非常简单,如果想要训练一个实际的大规模深度学习系统,那么这是许多人都需要的东西。

据报道,Torchnet 提供的抽象不限于 Torch,也可以用于 Caffe 和 TensorFlow,因为 Torchnet 对底层学习框架的限制很少。

据报道,基于 Torch-7 的 Torchnet 提供了可重用的抽象和样板逻辑(围绕异步数据加载、机器学习多 GPU 计算等诸如此类的工作)。Torch 7 使用 Lua 构建,用于在 CPU 上使用 OpenMP / SSE 以及通过 CUDA 体系结构在 GPU 上运行代数运算。据 FAIR 介绍,Torch 7 是深度机器学习的基本框架之一。FAIR 打算将 Torchnet 打造成一个社区驱动的、基于插件的平台。对于 Torchnet 项目的动机和愿景,FAIR 指出:

开源的 Torch 库已经有了一个非常活跃的开发者社区,创建出了用于优化、“流形学习(manifold learning)”、度量学习、神经网络等的程序包。Torchnet 以此为基础构建,而且被设计成了一个研究社区可以做贡献的平台,主要是通过实现机器学习实验或工具的插件……按照我们的设想,Torchnet 会成为一个社区所有的平台,在 Torchnet 核心实现完成之后,它会使用和 Torch 一样的方式提供一系列的子程序包。

根据 FAIR 的论文,Torchnet 主要运用了5 个抽象,以实现高效地重用和优化,否则,就要像许多项目所做的那样使用客户化代码。_Dataset_ 抽象提供了数据集中的样本数量和一个返回样本的_get()_ 函数。_DatasetIterator_ 抽象允许遍历数据集,并管理异步并行。_Engine_ 抽象实现了模型、_DatasetIterator_ 和损失函数之间的交互以及一个训练和测试函数。 Engine_ 还提供了钩子,让用户可以注入实验特有的代码,比如性能 _Meter。据报道,将钩子实现为闭包让 Torchnet 可以在用于训练和测试模型的代码之间共享逻辑。_Meter_ 抽象一般会实现两个函数 _add(output, target)_ 函数和 _value()_ 函数。Meter 提供了度量如下性能属性的能力:

一个训练阶段的执行时间,所有示例的损失函数平均值,二元分类器 ROC 曲线下的面积,多类分类器的分类错误,检索模型的准确率和召回率,或者排序算法的归一化衰减累积熵。

最后,Log 抽象提供了将实验日志输出为原始文本或 JSON 的能力。

查看英文原文 Facebook Open-Sources Deep Learning Project Torchnet

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2016-07-31 19:002910
用户头像

发布了 1008 篇内容, 共 374.2 次阅读, 收获喜欢 341 次。

关注

评论

发布
暂无评论
发现更多内容

这一篇让你搞懂电商平台中的商品 SPU 和 SKU

产品海豚湾

产品经理 产品设计 商品管理 电商平台 需求分析

如何使用火焰图对 Rust 程序进行性能和内存占用分析

Databend

如何在云原生环境中实现安全左移?

SEAL安全

云原生 安全 DevSecOps 12 月 PK 榜

车载LED显示屏的4大性能指标

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

如何通过Java提取PDF中的图片

Geek_249eec

Java PDF 图片

技术分享 | 测试的本质是什么?

霍格沃兹测试开发学社

更加灵活、经济、高效的训练 — 新一代搜推广稀疏大模型训练范式GBA

阿里技术

大模型 搜索推荐

4年“落子”8大城市,骥翀氢能产业布局背后精心下好“商业模式”先手棋

硬科技星球

学生管理系统架构文档

闲人Eric

架构实战营

校招面试真题 | 你的期望薪资是多少?为什么?

霍格沃兹测试开发学社

头像类NFT的未来,实际价值在哪里?

博文视点Broadview

软件测试 | 测试开发 | 你的期待薪资是多少?为什么?

测吧(北京)科技有限公司

测试

校招面试真题 | 你的期望薪资是多少?为什么?

测试人

2022中国产业数字化发展成熟度行业指数分析—— 重视差异,结合自身要素禀赋,推进产业精细化治理

易观分析

产业 产业数字化

跨平台应用开发进阶(三十六) :uniapp使用uni.request请求报错{“errMsg“:“request:fail abort statusCode:-1“}的解决办法

No Silver Bullet

uni-app 12月月更 跨平台应用开发 statusCode:-1“ request:fail abort

跨平台应用开发进阶(三十七)uni-app前端监控方案 Sentry 探究

No Silver Bullet

uni-app sentry 12月月更 前端监控方案

weidl x DeepRec:热门微博推荐框架性能提升实战

阿里云大数据AI技术

性能优化 AI技术 推荐引擎 12 月 PK 榜

从咖啡馆到世界,共赴下一个十年|写在EMQX开源十周年

EMQ映云科技

GitHub 开源 IoT emqx 12 月 PK 榜

教你用Python实现BMI计算器

小院里的霍大侠

Python 实战案例 初学者 入门实战

网络ping不通,试试这8招

华为云开发者联盟

开发 网络 服务器 华为云 12 月 PK 榜

低代码多分支协同开发的建设与实践

阿里巴巴终端技术

前端 低代码

论文复现丨基于ModelArts进行图像风格化绘画

华为云开发者联盟

人工智能 华为云 12 月 PK 榜

跨平台应用开发进阶(三十四) :uni-app 应用 Universal Link 实现 iOS 微信分享

No Silver Bullet

uni-app universal link 跨平台应用 12月月更 iOS 微信分享

MyBatis是如何初始化的

华为云开发者联盟

Java 开发 华为云 12 月 PK 榜

这个团队敢闯、会创,北京交通大学团队结合昇思MindSpore技术助力打造“智慧安全交通”

Geek_2d6073

数据人PK也无人,为什么业务部门的数据需求都是急活?

雨果

数据开发 数据工程师 数据服务

企业大数据价值最大化的关键因素

元年技术洞察

大数据 数据中台 数字化转型

MySql索引下推知识分享

京东科技开发者

数据库 后端 索引 MySQL 数据库 索引原理

计算机科学通识-01-电子计算机发展史

邱比特讲编程

计算机基础 计算机 计算机教育

TypeScript 前端工程最佳实践

京东科技开发者

typescript 前端 前端开发 编程语言】

带你读AI论文丨针对文字识别的多模态半监督方法

华为云开发者联盟

人工智能 华为云 文字识别 12 月 PK 榜

Facebook开源深度学习项目Torchnet_开源_Dylan Raithel_InfoQ精选文章