GPU 优先
框架从设计上就把 GPU 放在第一位,提供快速且高效的 GPU 支持,可以把神经网络的运算并行到 CPU 和 GPU 上执行。
拖动滑块完成拼图,通过后发送验证码
独立第三方 AI 评测平台 · 只用实测数据
Torch 是一套面向科学计算的框架,重点在机器学习算法的支持上,并以 GPU 优先为设计取向。它用 LuaJIT 作为脚本语言,底层由 C/CUDA 实现,兼顾易用性和运行效率。核心能力包括 N 维数组、索引切片转置等例程、线性代数、神经网络与基于能量的模型、数值优化,以及可嵌入到 iOS 与 Android 后端的 GPU 支持。未公开价格与授权说明。
Torch 是一个科学计算框架,对机器学习算法有广泛支持,并把 GPU 放在第一位。它通过易用且快速的脚本语言 LuaJIT 提供上层接口,底层由 C/CUDA 实现,目标是让构建科学算法的过程既灵活又简单。
包括的核心特性包括:强大的 N 维数组、大量用于索引、切片、转置等操作的例程、经由 LuaJIT 提供的 C 接口、线性代数例程、神经网络与基于能量的模型、数值优化例程、快速高效的 GPU 支持,以及可嵌入并移植到 iOS 与 Android 后端。框架的心脏是常用的神经网络与优化库,可以构建任意拓扑的神经网络图,并高效地并行到 CPU 和 GPU 上。Torch 还带有一个由社区驱动的包生态,覆盖机器学习、计算机视觉、信号处理、并行处理、图像、视频、音频与网络等方向,并建立在 Lua 社区之上。
不同角色的用法不同:想快速上手的用户可以在 Mac OS X 和 Ubuntu 12+ 上通过三步命令把 Torch 安装到 ~/torch 目录;开发者可以直接从 GitHub 上的源码开始,或用 LuaRocks 安装 torch、nn、paths 等核心包以及 image 这类扩展包;团队与研究人员则可以在 CPU 与 GPU 上并行地搭建和训练复杂的神经网络。
框架从设计上就把 GPU 放在第一位,提供快速且高效的 GPU 支持,可以把神经网络的运算并行到 CPU 和 GPU 上执行。
提供强大的 N 维数组结构,并配套大量索引、切片、转置等例程,用来组织科学计算中常见的高维数据。
内置常用的神经网络库与优化库,可以构建任意拓扑的神经网络图,并使用数值优化例程完成训练,也能表达基于能量的模型。
上层使用易用且快速的脚本语言 LuaJIT,底层是 C/CUDA 实现,并经由 LuaJIT 提供与 C 的接口,方便把已有 C 代码接进来。
框架可嵌入到其他程序中使用,并已移植到 iOS 和 Android 后端,便于在移动设备上运行模型。
依托 Lua 社区形成由社区驱动的包生态,覆盖机器学习、计算机视觉、信号处理、并行处理、图像、视频、音频和网络等方向。
在 Mac OS X 和 Ubuntu 12+ 上提供简单安装流程,可装到 ~/torch 目录,卸载时直接删除该目录即可;新包通过 LuaRocks 命令行安装,例如 luarocks install image。
官方说明 ↗安装后可用 th 命令启动,进入名为 TREPL 的交互式会话,边写边试,是学习和实验 Torch 最直接的方式。
官方说明 ↗需要搭建任意拓扑的网络并并行到 CPU 和 GPU 上训练,Torch 的神经网络与优化库正好覆盖这类工作。
底层由 C/CUDA 实现、上层用 LuaJIT,还提供与 C 的接口,已经有 Lua 或 C 代码的人接入成本低。
框架可嵌入,并已移植到 iOS 和 Android 后端,适合需要把模型带到移动端的场景。
Torch 的脚本层是 LuaJIT 而非 Python,已有 Python 工作流的人需要额外适应一门语言。
给出的安装流程只覆盖 Mac OS X 和 Ubuntu 12+,Windows 下的安装方式官网未说明。
说明 Torch 是开源的,可以从 GitHub 仓库直接取代码开始使用,安装流程也不需要 sudo 权限,直接装到自己的 home 目录。至于是否有商业授权或付费支持,官网没有给出相关信息。
官网把「GPU 优先」写进了框架定位,核心特性里也明确列出快速且高效的 GPU 支持。神经网络图和数值优化这些运算可以并行到 CPU 和 GPU 上执行,这是它区别于纯 CPU 科学计算框架的主要点。
上层脚本语言是 LuaJIT,底层实现是 C/CUDA。强调 LuaJIT 既易用又快,并通过它提供与 C 的接口,方便把已有的 C 代码接进来。新包则通过 Lua 的包管理器 LuaRocks 安装。
在 Mac OS X 和 Ubuntu 12+ 上,官网给出的方式是把 distro 仓库克隆到 ~/torch,依次运行 install-deps 和 install.sh,安装 LuaJIT、LuaRocks 以及 torch、nn、paths 等核心包。卸载只需执行 rm -rf ~/torch。
安装脚本会把 torch 加进 PATH,source 一次对应的配置文件后,用 th 命令即可启动交互式会话 TREPL。建议从这个交互式环境开始学习和实验,另外也提供 Getting Started 指南和 GitHub 上的源码入口。
官网把「可嵌入,并已移植到 iOS 和 Android 后端」列为核心特性之一,说明框架可以嵌入到移动端应用里运行。但具体怎么集成、有什么限制,官网没有展开说明。
涉及 Torch 已经应用在 Facebook、Google、Twitter、NYU、IDIAP、Purdue 以及其他若干公司和研究实验室中,这些场景主要集中在研究和工程侧的机器学习工作。
| 工具 | 编辑评分 | 价格 | 核心功能 | 平台 |
|---|---|---|---|---|
| Torch本工具 | 4.1 | 未标价 | GPU 优先;N 维数组;神经网络与优化;LuaJIT 脚本层 | Mac OS X / Ubuntu 12+ / iOS / Android |
| BigML | — | 免费账户最多 60 个任务,3 天全功能试用;私人部署每年 $45,000 起 | 提供基于云的机器学习平台,目标是让机器学习更容易使用 | Web / API |
| 国家岩矿化石标本 | — | 未标价 | 整合了我国收藏的具有科学价... | — |
| PredictionIO | — | 未标价 | 一个开源机器学习服务,帮助开发人员和数据科学家为机器学习任务创建预测引擎和服务 | Web / API |
| Theano | — | 未标价 | 一个 Python 库,可以在 CPU 或 GPU 上运行快速数值计算 | — |
| Registry of Open Data on AWS | — | 未标价 | 地理空间和环境、基因组和生命科学、机器学习数据集 | Web |