You need to enable JavaScript to run this app.
导航
特征工程
最近更新时间:2024.07.11 17:32:50首次发布时间:2023.03.17 14:39:45

1.功能概述

特征工程,通常指将原始数据转化成更好地表达问题本质的特征的过程,使得将这些特征运用到预测模型中能提高对不可见数据的模型预测精度。我们在完成数据输入之后,即可利用特征工程算子对输入数据进行进一步加工处理操作,下文将为您具体介绍这些算子。

2.算子介绍

2.1 二值化

将数值特征转换为二值特征 0 或 1,在数据挖掘领域,二值化的目的是为了对定量的特征进行“是与否”的划分,以剔除冗余信息。

2.2 列归一化

对一个表的某一列或多列进行归一化处理,将原始数据缩放到需要的范围。原始数据经过数据归一化处理后,各指标处于同一数量级,适合进行综合对比评价。暂时不支持 inplace 修改,生成的结果是一列数组,若想拆分成单独的列,需要在该算子后增加一个向量分解器算子。现在支持的数据缩放方式为标准化(standard),最小最大化(min-max)和最大绝对值化(max-abs)。

2.3 主成分分析法

主成分分析(PCA)是一种使用最广泛的数据降维算法。PCA 的主要思想是将 n 维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有 n 维特征的基础上重新构造出来的k维特征。只能对数据型并且角色为 regular 的属性做运算,输出通常为中间结果,需要作为其他算子的输入。

说明

字段设置 特征列:特征列,用来训练的特征
参数设置 降维方式: 此参数有三个选择,选择不同表示的降维程度不同 。

  • 选择 none 表示不移除任何主成分, 即若是输入的数据含有 n 个属性,那么输出的主成分向量为 n 维;
  • 选择 keepV ariance,需要设置子参数 percent;
  • 选择 fixedNu mber,需要设置子参数k。

2.4 笛卡尔乘积

笛卡尔乘积是指两个集合 X 和 Y 的笛卡尓积(Cartesian product),又称直积,表示为 X × Y,第一个对象是 X 的成员而第二个对象是 Y 的所有可能有序对的其中一个成员。

说明

字段设置 左右操作数所选列

2.5 离散余弦变换

离散余弦变换(DCT)将一个长度为N的时间域实值序列转换为一个长度为N的频率域实值序列。

说明

字段设置 特征列:特征列,用来训练的特征
参数设置 反向:当这个参数为 true 的时候,进行反向余弦变换,否则是正向余弦变换

2.6 行归一化

行归一化,是一种数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。

说明

字段设置 特征列:特征列,用来训练的特征
参数设置 p:p 为大于 0 的实数,表示规 范值。归一化后每行各属 性 p 次方之和等于 1(单位 化)。

2.7 奇异值分解

奇异值分解,是数据降维的一种方式,它可以对数值型数据进行简化处理,通过选取较高的奇异值将数据投影到低维空间。它只能对角色为 regular 的属性操作,并且输出通常为中间结果,需要作为其他算子的输入。如图所示,可以通过 SVD 将 n 维矩阵降维到 k。

说明

字段设置 特征列:特征列,用来训练的特征
参数设置 降维方式:此参数有三个选择,选择不同表示的降维程度不同。

  • 选择 none 表示不移除任何主成分,即若是输入的数据含有 n 个属性,那么输出的主成分向量为 n 维;
  • 选择 keepVariance,需要设置子参数 percent;
  • 选择 fixedNumber,需要设置子参数 k。

2.8 特征哈希

特征哈希,是一种简单的降维方法,目标是把原始的高维特征向量压缩成较低维特征向量,且尽量不损失原始特征的表达能力。

说明

参数设置

  • 筛选类型:选择筛选覆盖的列范围,有 4 种不同的方式,all 表示全部替换,regular_ex pression 表示正则表达式符合时替换
  • 反向选择:若选中,则未被选中的列被保留
  • 特征数量:特征数量

2.9 one-hot编码

类型转换算子,将一列映射为一个 0/1 向量,这个向量最多只有一个 1 值。

说明

参数设置

  • 筛选类型:选择筛选覆盖的列范围,有 4 种不同的方式,all 表示全部替换,regular_ex pression 表示正则表达式符合时替换
  • 反向选择:若选中,则未被选中的列被保留;选择所有字符串类型属性建立索引:点选此参数后,不需要手动设置需要索引的列,系统会自动选择所有字符串类型的属性值建立索引; 若不点选此参数,需要设置 inputColumns(输入列 )参数,点击选择属性,将需要索引的属性名称添加到已选属性后,点击应用,就选择了一个属性子集。
  • dropLast:在编码 vector 中抛弃最后一个类型
  • handle invalid:选择 keep 或 error
  • 替换原始列:是否用新生成的列替换原始列
  • 输出列后缀:为区别于输入列,给输入列加上后缀作为所对应输出列的列名
  • 索引顺序:索引顺序表示字符串索引依照的规则,分为 freque ncyDesc、frequencyAsc 、alphabetDesc 和 alphab etAsc 四种。
    • frequencyDesc 和 frequencyAsc 表示在 某个字符串类型列中,以某个字符串出现频率进行排序,分别为降序和升序。
    • alphabet Desc 和alphabet Asc 表示在某个字符串类型列中,以编码顺序进行排序,分别为降序和升序。

2.10 Array处理、Map处理

数据中存在 array 或 map 字段时,可通过 Array 处理、Map 处理算子进行数据拆分输出。

2.11 特征重要性

计算属性的权重,权重计算输出列名说明:对于数据类型为 vector 的列,产生的权重计算名字为 VectorColName__index,VectorColName 是原向量列名,index 是元素在向量中的位置,从零开始。计算权重算子支持 5 种权重计算方式1.chi-square, 2.correlation 3.Gini 4.information gain 5.Information Gain Ratio 6.PCA.

说明

  • 特征列: 用来训练的特征
  • 标签列: 分类训练的依据
  • 特征重要性计算方法: 目前支持 chi-square, correlation, Gini, information gain, Information Gain Ratio, PCA.

2.12 特征筛选

计算属性的权重的筛选,权重计算输出列名说明:对于数据类型为 vector 的列,产生的权重计算名字为 VectorColName__index,VectorColName 是原向量列名,index 是元素在向量中的位置,从零开始。计算权重算子支持5种权重计算方式1.chi-square, 2.correlation 3.Gini 4.information gain 5.Information Gain Ratio 6.PCA.

说明

  • 特征列: 用来训练的特征
  • 标签列: 分类训练的依据
  • 特征重要性计算方法: 目前支持chi-square, correlation, Gini, information gain, Information Gain Ratio, PCA.
  • 权重关系选择: 以哪种权重方式筛选,提供 threshold、top K, top p% 三种筛选方式
  • 阈值: 特征筛选的阈值设置,这里设置是<1的值,根据特征重要性的计算方法算出的结果筛选大于阈值的列