KNIME - 构建您自己的模型


在本章中,您将构建自己的机器学习模型,以根据一些观察到的特征对植物进行分类。为此,我们将使用UCI 机器学习存储库中著名的iris数据集。该数据集包含三种不同类别的植物。我们将训练我们的模型将未知植物分类为这三个类别之一。

我们将首先在 KNIME 中创建一个新的工作流程来创建我们的机器学习模型。

创建工作流程

要创建新工作流程,请在 KNIME 工作台中选择以下菜单选项。

文件 → 新建

您将看到以下屏幕 -

创建工作流程

选择“新建 KNIME 工作流程”选项,然后单击“下一步”按钮。在下一个屏幕上,系统将要求您输入所需的工作流程名称以及保存它的目标文件夹。根据需要输入此信息,然后单击“完成”以创建新工作区。

具有给定名称的新工作区将添加到工作区视图中,如下所示 -

创建工作空间

现在,您将在此工作区中添加各种节点来创建模型。在添加节点之前,您必须下载并准备iris数据集供我们使用。

准备数据集

从 UCI 机器学习存储库网站 下载 iris 数据集下载 iris 数据集。下载的 iris.data 文件为 CSV 格式。我们将对其进行一些更改以添加列名称。

在您喜欢的文本编辑器中打开下载的文件,并在开头添加以下行。

萼片长度、花瓣长度、萼片宽度、花瓣宽度、类别

当我们的文件读取器节点读取该文件时,它会自动将上述字段作为列名。

现在,您将开始添加各种节点。

添加文件阅读器

转到节点存储库视图,在搜索框中键入“file”以找到文件读取器节点。这可以在下面的屏幕截图中看到 -

添加文件阅读器

选择并双击文件读取器以将节点添加到工作区中。或者,您可以使用拖放功能将节点添加到工作区中。添加节点后,您必须对其进行配置。右键单击该节点并选择“配置”菜单选项。您在前面的课程中已经完成了此操作。

加载数据文件后,设置屏幕如下所示。

添加数据文件

要加载数据集,请单击“浏览”按钮并选择 iris.data 文件的位置。该节点将加载显示在配置框下部的文件内容。一旦您对数据文件的正确定位和加载感到满意,请单击“确定”按钮关闭配置对话框。

您现在将向该节点添加一些注释。右键单击该节点并选择“新建工作流注释”菜单选项。屏幕上会出现一个注释框,如屏幕截图所示:

工作流程注释

单击框内并添加以下注释 -

读取 iris.data

单击框外的任意位置可退出编辑模式。根据需要调整框的大小并将其放置在节点周围。最后,双击节点下方的节点 1文本,将此字符串更改为以下内容 -

加载数据

此时,您的屏幕将如下所示 -

虹膜数据

我们现在将添加一个新节点,用于将加载的数据集划分为训练和测试。

添加分区节点

节点存储库搜索窗口中,键入几个字符来找到分区节点,如下面的屏幕截图所示 -

定位分区

将节点添加到我们的工作区。设置其配置如下 -

相对(%):95
随机抽取

以下屏幕截图显示了配置参数。

配置参数

接下来,在两个节点之间建立连接。为此,单击“文件读取器”节点的输出,按住鼠标按钮,会出现一条橡皮筋线,将其拖动到“分区”节点的输入,释放鼠标按钮。现在两个节点之间已建立连接。

添加注释、更改描述、根据需要定位节点和注释视图。在此阶段,您的屏幕应如下所示 -

文件读取器分区

接下来,我们将添加k-Means节点。

添加 k-Means 节点

从存储库中选择k-Means节点并将其添加到工作区。如果您想刷新有关 k-Means 算法的知识,只需在工作台的描述视图中查找其描述即可。这如下面的屏幕截图所示 -

K 均值

顺便说一句,您可以在描述窗口中查找不同算法的描述,然后再决定使用哪种算法。

打开节点的配置对话框。我们将使用所有字段的默认值,如下所示 -

配置对话框

单击“确定”接受默认值并关闭对话框。

将注释和描述设置为以下内容 -

  • 注释:对簇进行分类

  • 描述:执行聚类

将Partitioning节点的顶部输出连接到k-Means节点的输入。重新放置您的项目,您的屏幕应如下所示 -

分区节点

接下来,我们将添加一个集群分配器节点。

添加集群分配器

集群分配器将新数据分配给现有的一组原型。它需要两个输入 - 原型模型和包含输入数据的数据表。在描述窗口中查找节点的描述,如下面的屏幕截图所示 -

添加集群分配器

因此,对于这个节点,您必须建立两个连接 -

  • 分区节点的 PMML 集群模型输出→集群分配器的原型输入

  • Partitioning节点的第二个分区输出→ Cluster分配器的输入数据

这两个连接如下面的屏幕截图所示 -

集群分配器

集群分配器不需要任何特殊配置。只需接受默认值即可。

现在,向该节点添加一些注释和描述。重新排列您的节点。您的屏幕应如下所示 -

形状管理器

至此,我们的聚类就完成了。我们需要以图形方式可视化输出。为此,我们将添加散点图。我们将在散点图中为三个类设置不同的颜色和形状。因此,我们将首先通过颜色管理器节点,然后通过形状管理器节点过滤k-Means节点的输出。

添加色彩管理器

在存储库中找到颜色管理器节点。将其添加到工作区。将配置保留为默认值。请注意,您必须打开配置对话框并单击“确定”以接受默认值。设置节点的描述文本。

将k-Means的输出连接到Color Manager的输入。在此阶段,您的屏幕将如下所示 -

色彩管理器屏幕

添加形状管理器

在存储库中找到形状管理器并将其添加到工作区。将其配置保留为默认值。与前一个一样,您必须打开配置对话框并单击“确定”以设置默认值。建立从颜色管理器的输出到形状管理器的输入的连接。设置节点的描述。

您的屏幕应如下所示 -

添加形状管理器

现在,您将在模型中添加最后一个节点,即散点图。

添加散点图

在存储库中找到散点图节点并将其添加到工作区。将Shape Manager的输出连接到Scatter Plot的输入。将配置保留为默认值。设置描述。

最后为最近添加的三个节点添加组注释

注释:可视化

根据需要重新定位节点。在此阶段,您的屏幕应如下所示。

注释可视化

这样就完成了模型构建的任务。