使用机器学习 (Machine Learning,ML) 模型

Data Transforms 支持在数据流中使用机器学习模型。了解如何在数据流中创建和使用机器学习 (Machine Learning,ML) 模型。

在数据流编辑器中创建 ML 模型数据实体

要在数据转换中使用机器学习模型,您需要创建两个数据流。您需要首先使用数据流编辑器构建 ML 模型数据实体,然后可以使用数据流中的数据实体从源连接挖掘数据并将其加载到目标服务器中。

要在数据流编辑器中构建 ML 模型数据实体,

  1. 将要构建 ML 模型的数据实体拖动到设计画布上。
  2. 选择组件并单击目标组件右上角显示的“添加数据实体”图标 “添加数据实体”图标
  3. 此时将显示 Add Data Entity(添加数据实体)页面,可用于配置目标组件的以下详细信息:

    一般信息选项卡

    • 名称文本框中,输入新创建的数据实体的名称。
    • Entity Type 下拉列表中,选择 ML Model 作为数据实体类型。
      选择此实体时,请按如下方式键入用户界面更改:
      • 连接下拉列表仅列出您已创建的 Oracle 连接。
      • “添加数据实体”向导将显示属性选项卡,您可以在其中选择学习类型、函数类型、算法和配置参数以定义 ML 模型。有关详细信息,请参阅 ML 模型数据实体属性
    • 连接类型下拉列表中,选择要从中添加新创建的数据实体的必需连接。对于 ML 模型数据实体,连接类型下拉列表仅列出 Oracle 作为选项。
    • “Connection(连接)”下拉列表中将填充您已使用关联的连接类型创建的连接。从连接下拉列表中,选择要保留 ML 模型数据实体的服务器名称。
    • Schema(方案)下拉列表中,与所选连接对应的所有方案将分两组列出。
      • 新数据库模式(以前未导入的模式)和
      • 现有数据库方案(以前导入过并且可能正在替换数据实体的区域)。
      方案下拉列表中,选择所需的方案。
    • 标记文本框中,输入您选择的标记。可以使用标记筛选“数据实体”页中显示的数据实体。
    • 如果要将此数据实体标记为功能组,请展开高级选项,然后单击作为功能组处理复选框。
    • 单击下一步

    属性选项卡

    • 选择要用于构建此数据实体的学习类型函数算法。有关选项的更多信息,请参阅 ML 模型数据实体属性
    • 根据选定的选项,参数部分将填充标记为“重要程度”和“高”的参数列表。您可以使用 “添加参数”图标 图标添加其他必需的参数。

      您必须为每个参数指定一个值,以便数据流可以成功运行。

    选项卡

    • 单击 “添加列”图标“Add Columns(添加列)”图标,将新列添加到新创建的数据实体。

      将向显示的表中添加一个新列。

    • 该表显示以下列:
      • 名称
      • Data Type(数据类型)- 单击单元格以配置所需的数据类型。
      • 缩放比例
      • 长度
      • 操作 - 单击交叉图标以删除创建的列。
    • 要成批删除列,请选择这些列,然后单击 “删除”图标“删除”图标。
    • 要搜索所需的列详细信息,请在“搜索”文本框中输入所需的列名称,然后单击“输入”。将显示必需列的详细信息。
    • 单击下一步

    预览数据实体选项卡

    它显示所有已创建列的预览及其配置的详细信息。如果数据实体属于 Oracle 数据库,则还可以查看表的统计信息。有关详细信息,请参阅查看数据实体的统计信息

  4. 单击保存以保存配置并退出向导。
  5. 保存并执行数据流。

    将创建新数据实体。显示在“数据实体”页中。

ML 模型数据实体属性

添加数据实体向导的属性选项卡提供了可用于定义 ML 模型数据实体的数据挖掘选项。

本主题采用 Oracle Machine Learning 概念的先验知识,例如数据挖掘函数和算法。有关详细信息,请参阅 Oracle Machine Learning for SQL API Guide

您可以使用以下任一选项来配置 ML 模型数据实体的属性:

  • 学习类型:监督
    • 功能:分类
      • 决策树
      • 显式语义分析
      • 广义线性建模
      • 朴素贝叶斯
      • 随机森林
      • 神经网络
      • 支持向量机
    • 函数:回归
      • 广义线性建模
      • 神经网络
      • 支持向量机
    • 功能:时间序列
      • 指数平滑
    • 功能:属性重要性
      • 最短说明长度
  • 学习类型:无监督
    • 功能:关联
      • 先验
    • 功能:属性重要性
      • CUR 矩阵分解
    • 功能:异常检测
      • 一类支持向量机
    • 函数:聚类
      • 预期结果最大化
      • k-平均
      • 正交分区群集
    • 功能:功能提取
      • 显式语义分析
      • 非负矩阵因子分析
      • 奇异值分解

在数据流中使用机器学习模型

您可以使用预测模型数据库功能对源数据运行机器学习模型演算法,并将输出加载到目标数据库。

在数据流中使用 ML 模型之前,您需要构建 ML 模型。有关如何创建 ML 模型的说明,请参阅在数据流编辑器中创建 ML 模型数据实体

要在数据流中使用 ML 模型:

  1. 按照创建数据流中的说明创建新数据流。
  2. 在数据流编辑器中,将要用作数据流源的表拖放到设计画布上。
  3. 从“数据库函数”工具栏中,单击机器学习,然后将预测模型转换组件拖到设计画布上。
  4. 单击 Prediction Model(预测模型)转换组件以查看其属性。
  5. 常规选项卡中,指定以下内容:
    • 连接 - 下拉列表列出了所有可用的 Oracle 连接。选择要使用的 Oracle 连接。
    • Schema(架构) - 选择架构。
    • ML 模型 - 下拉列表列出了所有可用的 ML 模型。有关如何构建 ML 模型的说明,请参阅在数据流编辑器中创建 ML 模型数据实体
  6. 列映射选项卡中,将要嵌入的源列映射到运算符的 INPUT 属性。列映射中唯一可用的列是 prediction parameters。将文本列从可用列拖动到表达式列。
  7. 将要用作数据流中目标的表拖放到设计画布上。
  8. 保存并执行数据流。

    数据转换将在源数据上运行预测模型,并将输出写入目标表。