面向新手和专家的机器学习 - Amazon Redshift

面向新手和专家的机器学习

有了 Amazon Redshift,无论您是机器学习(ML)方面的新手还是专家,都可以利用机器学习功能从数据中获得见解。机器学习是 Amazon Redshift 的一项功能,可让您使用 SQL 命令创建、训练和部署 ML 模型,而无需丰富的 ML 专业知识或复杂的数据工程。

以下各节将引导您了解使用机器学习的过程,使您能够通过 Amazon Redshift 释放数据的全部潜能。

通过 Amazon Redshift ML,您可以使用一个 SQL CREATE MODEL 命令来训练模型。CREATE MODEL 命令将创建一个模型,Amazon Redshift 可以使用该模型来生成具有熟悉 SQL 结构的基于模型的预测。

当您不具备机器学习、工具、语言、算法和 API 方面的专业知识时,Amazon Redshift ML 特别有用。借助 Amazon Redshift ML,您无需执行与外部机器学习服务集成所需的千篇一律的繁重工作。Amazon Redshift 为您节省了格式化和移动数据、管理权限控制或构建自定义集成、工作流和脚本的时间。您可以轻松使用常用的机器学习算法,并简化从训练到预测需要频繁迭代的训练需求。Amazon Redshift 会自动发现最佳算法并针对您的问题调整最佳模型。您可以从 Amazon Redshift 集群中进行预测,而无需将数据移出 Amazon Redshift,也无需与其它服务接口并支付其它服务费用。

Amazon Redshift ML 支持数据分析师和数据科学家使用机器学习。此外,机器学习专家还能够利用自己的知识来指导 CREATE MODEL 语句仅使用他们指定的方面。通过这样做,您可以加快 CREATE MODEL 找到最佳候选项所需的时间和/或提高模型的准确性。

CREATE MODEL 语句在如何指定训练任务的参数方面提供了灵活度。借助此灵活度,机器学习新手或专家用户都能够选择他们首选的预处理器、算法、问题类型或超参数。例如,对客户流失感兴趣的用户可能会在 CREATE MODEL 语句中指定问题类型是一种可以很好地适用于客户流失的二进制分类。然后,CREATE MODEL 语句将其对最佳模型的搜索范围缩小到二进制分类模型中。即使用户选择了问题类型,CREATE MODEL 语句仍然有很多选项可以使用。例如,CREATE MODEL 发现并应用最佳的预处理转换,并发现最佳的超参数设置。

Amazon Redshift ML 通过使用 Amazon SageMaker Autopilot 自动查找最佳模型,使训练变得更轻松。在后台,Amazon SageMaker Autopilot 会根据您提供的数据自动训练和调整最佳的机器学习模型。然后,Amazon SageMaker Neo 将编译训练模型,并使其可在您的 Redshift 集群中进行预测。当您使用训练好的模型运行机器学习推理查询时,查询可以使用所有的 Amazon Redshift 大规模并行处理功能。同时,查询可以使用基于机器学习的预测。

  • 作为机器学习新手,利用有关机器学习的不同方面(如预处理器、算法和超参数)的一般知识,只将 CREATE MODEL 语句用于指定的方面。然后,您可以缩短 CREATE MODEL 找到最佳候选项所需的时间或提高模型的准确性。此外,您还可以通过引入其他领域知识(如问题类型或目标)来提高预测的商业价值。例如,在客户流失情况下,如果结果“客户不活跃”很少,则 F1 目标通常优先于准确性目标。由于高精度模型可能会始终预测“客户处于活动状态”,因此可以实现高精度,但业务价值却很少。有关 F1 目标的信息,请参阅 Amazon SageMaker API 参考中的 AutoMLJobObjective

    有关 CREATE MODEL 语句的基本选项的更多信息,请参阅简单 CREATE MODEL

  • 作为机器学习高级从业人员,您可以为某些(但不是全部)功能指定问题类型和预处理器。然后,CREATE MODEL 将遵循您对指定方面的建议。同时,CREATE MODEL 仍然会发现剩余功能的最佳预处理器和最佳超参数。有关如何约束训练管道的一个或多个方面的更多信息,请参阅根据用户指导创建模型

  • 作为机器学习专家,您可以完全控制训练和超参数调整。然后,CREATE MODEL 语句不会尝试发现最佳预处理器、算法和超参数,因为您做出了所有选择。有关如何将 CREATE MODEL 语句与 AUTO OFF 结合使用的更多信息,请参阅带有 AUTO OFF 的 CREATE XGBoost 模型

  • 作为数据工程师,您可以在 Amazon SageMaker 中引入预训练的 XGBoost 模型,并将其导入 Amazon Redshift 进行本地推理。使用自带模型 (BYOM),您可以将在 Amazon Redshift 之外训练的模型与 Amazon SageMaker 结合使用,以用于 Amazon Redshift 本地的数据库内推理。Amazon Redshift ML 支持在本地或远程推理中使用 BYOM。

    有关如何将 CREATE MODEL 语句用于本地或远程推理的更多信息,请参阅自带模型 (BYOM) – 本地推理

作为 Amazon Redshift ML 用户,您可以选择以下任何选项来训练和部署模型: