我们经常看到各种各样关于用机器学习解决问题的方法被讨论。但当涉及到将所有模型真正投入生产时,我们却看不到太多的吸引力——人们仍然不得不依赖公有云或云服务。在本文中,我们将讨论将在生产环境中使用的机器学习模型以及支持它们的系统架构。让我们来看看如何在不使用公有云提供商的情况下实现这一点。
模型导出
基本上,所有机器学习模型都是数学表达式、如何将 列表到数据 ML 方程式或数据结构(树或图)。数学表达式包含系数、一些变量、一些常量以及一些概率分布参数(特定于分布的参数、标准差或平均值)。
导出模型其实就是将模型的元数据写入文件或数据存储中。这对于保存模型以供将来使用是必要的。
导出独立于平台的模型
机器学习模型的训练需要使用各种技术平台, 精准定位客户旅程并测试其可访问性 如何将 ML 例如 Python、Java、.NET 等。Python 中存在不同的框架,例如 Sci-Kit-Learn、Pytorch、Tensorflow 等等。模型显然需要独立于平台。
在大多数情况下
模型的典型用途是跨平台的。模型可以在 Python 平
台上开发,但出于高可访问性的原因,也可以在 Java 平台上使用。我们将在以下章节中详细讨论这一点。在此之前,我们先讨论一下导出模型的两种不同格式。
PMMML:这是用于标记预测模型的语言。这是一个 巴西商业名录 基于 XML 的标准,并具有预定的方案。该模型导出为 XML 文件。
上面的 PMML 内容是针对线性回归模型的。如何将 ML 我们可以看到它包含模型类型(在上面的例子中是回归)、预处理步骤(在上面的例子中是 StandardScaler)、函数名称以及许多其他信息。
PMML 存在大小问题。过多的函数会创建相当大的 XML 文件,尤其是对于 NLP 模型而言。因此,有时将 PMML 内容转换为 JSON 会更方便。