目的
JMP® Pro 的Torch 深度学习插件为流行的Torch 库提供了一个无代码接口,用于使用深度神经网络进行预测建模。该插件使您能够训练和部署使用图像、文本或表格特征作为输入的预测模型,以预测二进制、连续或名义目标。
主要特征
- 可以访问各种针对图像和文本数据的预训练模型,这些模型可以进行微调或从头开始训练
- 执行图像或文本分类或回归
- 能够为表格数据定制深度网络,以及为时间序列和图像数据设计自己的定制卷积神经网络的选项
- 大量高级选项方便模型构建、评估和比较
- 重复 k 倍交叉验证与折叠外预测,加上一个单独的例程来创建优化的 k 倍验证列
- 能够在一个模型中拟合具有不同建模类型的多个 Y 响应
- 详细且交互式的图形和表格输出
- 模型比较界面
- 表格神经网络的分析,有助于提高可解释性
- 如果可用,在 Windows 上使用 NVIDIA GPU 进行快速计算
安装
您必须拥有 JMP Pro 18 或更高版本的授权版本。从此窗口右上角的链接下载TorchDeepLearning.jmpaddin 。启动 JMP Pro,打开TorchDeepLearning.jmpaddin ,然后单击“是”进行安装。安装的插件位于插件顶部菜单(插件 > Torch Deep Learning )下。
该插件依赖于大量预编译的动态库和预训练的 Torch 模型,这些模型在初始安装后不包含在插件中。首次启动主插件平台时(通过选择插件 > Torch 深度学习 > Torch 深度学习),它将下载并解压一系列额外的大文件(总共约 4 GB)。如果您使用的是 Windows,则下载内容包括 CUDA 编译的库,这些文件的总下载和提取可能需要几分钟或更长时间,具体取决于您的网络连接速度。请耐心等待,让这些文件下载到 100% 并完全解压。所有下载和提取的文件都放在插件的主目录下(单击查看 > 插件,选择TorchDeepLearning,然后单击主文件夹链接)。
系统要求
此插件仅适用于 JMP® Pro 版本 18。对于较小的数据集, JMP® Pro 的最低要求应该足够;但是,对于中型到大型数据集的建模,包括那些包含大量图像或非结构化文本的数据集,建议您至少拥有 32 GB 的 CPU RAM 和具有充足存储空间的快速固态硬盘(例如 1 TB),以便处理通常为深度神经网络建模生成的数据量和参数。
如果您有一台配备 NVIDA GPU 的 Windows 计算机,有关配置 GPU 处理的更多详细信息,请参阅 Torch 插件文档(插件 > Torch 深度学习 > 帮助)。在 MacOS 上,Intel x86_x64 和 Apple Silicon arm64(M1 M2 和 M3)架构均受支持,并且应该会自动检测到。
如何使用它
在 JMP Pro 中安装插件后:
- 打开一个 JMP 表,其中包含要预测的目标变量 Y 以及可用作输入的图像、文本或表格特征。
- 通过单击“插件”>“Torch 深度学习”>“制作 K 折列”来创建一个或多个验证列。将 Y 指定为响应和分层变量(推荐)。
- 单击插件 > Torch 深度学习 > Torch 深度学习以启动平台。将变量分配给角色,如以下示例所示:
插件 > Torch 深度学习 >示例数据子菜单包含几个示例数据集和一个名为Torch_Storybook的 JMP 表,其中包含 40 个不同类型的场景示例,在这些场景中插件可能会有所帮助。它包含有关每个示例的丰富元数据,以及下载带有嵌入式脚本的 JMP 数据表、示例输出 JMP 日志和参考资料的链接。
插件 > Torch 深度学习 >附加下载子菜单提供了下载更多图像和文本模型的方法,从而进一步扩展了插件的功能。
单击菜单中的“帮助”可打开有关该插件的详细文档,其中包括分步示例和最有效使用指南。
例子

背景:作为一名化学家,您需要通过与三种成分的比例发生改变的混合物实验的核磁共振光谱进行比较来预测未知样品的成分。
挑战:混合物实验的输出 NMR 光谱很宽,实验次数很少,但有数千列独特特征。标准预测模型不准确且过度拟合,并且该过程编码耗时。
过程:使用 Graph Builder 将单个光谱转换为图像,然后使用它们训练图像分类模型(卷积神经网络)以了解 3 个成分在不同比例下的光谱是什么样的。
结果:可以应用未知样本并准确识别3种成分的组成/比例。


背景:半导体制造中的晶圆缺陷可能发生在晶圆的不同区域。晶圆图片或晶圆图可以捕捉不同批次中缺陷的区域。识别缺陷类型和根本原因对于提出合适的解决方案至关重要。
挑战:您有超过 30,000 个晶圆图图像,其中一些图像包含多种缺陷类型,都需要准确识别。
流程:使用具有已知晶圆缺陷的晶圆图图像来训练深度卷积神经网络。
结果:构建并部署深度学习模型,以准确预测新晶圆图像上最可能出现的缺陷类别和缺陷概率。

背景:在线产品评论提供了大量的文本数据,可以通过分析这些数据来了解客户对产品的情绪,从而就产品改进、客户支持和营销策略做出关键决策。
挑战:文本评论是非结构化的、数量巨大的,并且难以确定情绪和识别主题,需要复杂的分析。
流程:根据产品评论分数使用深度语言神经网络预测购买情绪,以确定关键结果,例如重新购买的可能性。
结果:确定对产品的关键情绪(即再次购买的可能性、产品问题)作为产品决策的关键反馈。
视频教程
综合背景和概述以及示例
表格数据和因果推断
图像分类
如果您希望观看有关插件或主题的某个特定方面的视频教程,请在评论中发表。
反馈
我们欢迎您的反馈,并鼓励您在此页面发表评论。请注意,虽然插件通常不受我们的 JMP 技术支持团队的正式支持,但此插件是由 JMP Life Sciences R&D 编写并正在积极开发的。
您也可以直接向russ.wolfinger@jmp.com发送反馈、问题、疑问和建议。如果报告潜在的错误或崩溃,请发送尽可能多的信息以重现和诊断它,包括数据和模型设置、屏幕截图、错误窗口、日志消息以及您正在使用的操作系统和 JMP Pro 版本。
致谢和版权声明
我们衷心感谢 PyTorch 团队通过精心设计的 C++ 接口开发出如此出色的功能。请参阅帮助文档以获取完整的个人和版权声明列表以及来自PyTorch 基金会的这些在线声明。
我们也高度赞赏并感谢Mark Lalonde和Francis Charette-MIgneault对 LibTorch 的杰出贡献:
https://medium.com/crim/contributing-to-libtorch-recent-architectures-and-vanilla-training-pipeline-3789c7bf6959
https://github.com/crim-ca/crim-libtorch-extensions
我读得对吗?在将模型加载到 pytorch 的文档中,它说。
在 Python 中,您必须使用 PyTorch 重新创建完全相同的架构组件,然后依次加载这些文件。
所以无论如何,我们仍然需要一个了解 pytorch 并能够将他们在 JMP 中所做的事情转化为 python 的人。对吗?比如他们需要知道如何创建数据集和 nn,以及 JMP 用户所做的任何验证?
@vince_faller感谢您的评论。文档的这一部分指的是在 Python 中部署,在这种情况下,这些事情确实需要以某种方式完成。在 JSL 中部署更容易。以下内容正在添加到文档中:
示例 Python 部署代码位于加载项主文件夹中的 Jupyter iPython 笔记本文件中。单击“视图”>“加载项” ,选择“TorchDeepLearning” ,单击“主文件夹”链接,然后导航到笔记本子文件夹以查看此代码。
此示例 Python 部署代码在多个地方仍不够完善,我们正在努力对其进行改进和简化。我们将您的帖子视为对更自动化的 Python 代码生成的支持,就像 XGBoost 模型拟合一样。Torch 插件和 JMP 的原生 Python 集成都是版本 18 的全新功能,我们尚未实现两者之间的连接(Torch 插件是用 C++ 编写的,没有 Python)。
谢谢@russ_wolfinger
是的,我对此毫无好感。我应 Tony C 的要求发布了一个社区问题。希望我能得到这个,因为它肯定会对我们的工作流程大有裨益。