阿里云首页 工业大脑开放平台

人工神经网络

功能说明

人工神经网络组件支持使用人工神经网络算法对分类或回归问题进行建模。人工神经网络(Artificial Neural Network,缩写ANN),简称神经网络或类神经网络,是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。

人工神经网络有多层和单层之分,每一层包含若干神经元,各神经元之间用带可变权重的有向弧连接,网络通过对已知信息的反复学习训练,通过逐步调整改变神经元连接权重的方法,达到处理信息、模拟输入输出之间关系的目的。

计算逻辑原理

依据训练给定的样本,来调整神经元之间的“连接权”,以及每个功能神经元的阈值。最终所得到的这个模型,期望对未知样本有一定的泛化能力。对每个训练样本,先走前向传播,输入传递给输入层、隐藏层、输出层。依据输出层的输出结果计算误差,再将误差反向传播到隐藏层神经元,最后依据隐层神经元的误差来对连接权和阈值进行调整,迭代循环该过程,直到达到设定的终止条件。

参数说明

IN端口

参数名

参数描述

是否必填

输入数据类型

数据源类型

特征变量

配置模型特征变量。

整数或浮点数

说明

若存在非数值数据,则会抛出异常

  • csv组件

  • igateoffline组件

  • 平台上其他数据处理组件

  • 按照平台组件开发的自定义组件

目标变量

配置模型目标变量。

  • 分类:整数或浮点数或字符

  • 回归:整数或浮点数

说明

若存在非数值数据,则会抛出异常

  • csv组件

  • igateoffline组件

  • 平台上其他数据处理组件

  • 按照平台组件开发的自定义组件

算法参数

参数名

参数描述

是否必填

参数默认值

参数范围

建模类型

选择使用分类模型还是回归模型进行建模。

分类

  • 分类

  • 回归

隐藏层数量

神经网络隐藏层个数,默认1,即单层。

1

[1,99999999]

神经元数量

每个隐藏层对应的神经元数量。

说明

每层的神经元数量以英文逗号隔开。例如:隐藏层个数为3,神经元数量设置为“100,101,102”,代表第一层神经元数量为100,第二层神经元数量为101,依次类推。

100

激活函数

  • 无激活函数:不做转换。

  • Sigmoid 函数:将拟合曲线最后的结果转换到 (0,1) 区间。

  • 双曲tan函数:将拟合曲线最后的结果转换到 (-1,1) 的区间上。

  • ReLU函数:将拟合曲线最后的结果转换到 [0,+∞) 的区间上,其中小于 0 的结果转换为 0,大于 0 的结果不变。

ReLU函数

  • 无激活函数

  • Sigmoid函数

  • 双曲tan函数

  • ReLU函数

求解器

  • lbfgs:是准牛顿方法家族中的优化程序。

  • sgd:是指随机梯度下降。

  • adam:是指由Kingma,Diederik和Jimmy Ba提出的基于随机梯度的优化器。

说明

就训练时间和验证分数而言,求解器“ adam”在相对较大的数据集(具有数千个训练样本或更多)上的效果很好。但是,对于小型数据集,“ lbfgs”可以收敛得更快并且性能更好。

adam

  • lbfgs

  • sgd

  • adam

alpha

L2惩罚(正则项)参数。

0.0001

[0,99999999]

迷你批次大小设置方式

随机优化器的迷你批次的大小设置方式。

  • 自动:迷你批次大小为min(200, 样本数)。

  • 手动:手动设置具体大小。

当求解器为“sgd”或“adam”时,才需要配置。

自动

  • 手动

  • 自动

迷你批次大小

随机优化器的迷你批次的大小。

当迷你批次大小设置方式为“手动”时,才需要配置。

200

[1,99999999]

学习速率

权重更新的学习速率。

  • 常数:恒定学习率。

  • 反比例缩放:使用反比例缩放指数在每个时间步处逐渐降低学习率。

  • 自适应:算法自动选择速率。

当求解器为“sgd”时,才需要配置。

常数

  • 常数

  • 反比例缩放

  • 自适应

初始学习率

使用的初始学习率,用于控制更新权重的步长。

当求解器为“sgd”或“adam”时,才需要配置。

0.001

[0,1]

学习率指数

反比例学习率的指数,用于更新有效学习率。

当学习速率为“反比例缩放”时,才需要配置。

0.5

[0,99999999]

最大迭代次数

求解程序收敛所需的最大迭代次数。

200

[0,99999999]

是否对样本进行洗牌

是否在每次迭代中对样本进行洗牌。

当求解器为“sgd”或“adam”时,才需要配置。

停止训练的误差精度

停止训练的误差精度。

0.0001

[0,99999999]

动量

梯度下降更新的动量。

当求解器为“sgd”时,才需要配置。

0.9

[0,1]

是否使用内斯特罗夫的势头

当求解器为“sgd”时,才需要配置。

是否提前停止训练

当验证分数没有提高时,是否使用提前停止来终止训练。

说明

如果设置为是,它将自动预留10%的训练数据作为验证,并在n_iter_no_change连续几个时期验证分数没有改善至优化公差时终止训练 。

当求解器为“sgd”或“adam”时,才需要配置。

预留的训练数据比例

预留的训练数据比例作为早期停止的验证集。

当是否提前停止训练为“是”时,才需要配置。

0.1

[0,1]

一阶矩向量的指数衰减速率

用于估计一阶矩矢量的指数衰减率。

当求解器为“adam”时,才需要配置。

0.9

[0,1)

二阶矩向量的指数衰减速率

用于估计二阶矩矢量的指数衰减率。

当求解器为“adam”时,才需要配置。

0.999

[0,1)

稳定数值

用于估计数值稳定性的值。

当求解器为“adam”时,才需要配置。

0.000001

[0,99999999]

最大纪元数

不符合停止训练的误差精度改进要求的最大纪元数。

当求解器为“sgd”或“adam”时,才需要配置。

10

[0,99999999]

丢失函数调用的最大次数

当求解器为“lbfgs”时,才需要配置。

15000

[0,99999999]

测试集比例

测试模型的数据占总输入数据的比例,用于计算模型的评价指标。

0.2

[0,1]

测试集生成方式

根据选定方式,选取部分数据作为测试集,剩余部分作为训练集。

  • 随机:按比例随机从输入数据中截取n条数据作为测试集。

  • 头部:按比例将输入数据前n条数据作为测试集。

  • 尾部:按比例将输入数据后n条数据作为测试集。

随机

  • 随机

  • 头部

  • 尾部

其他参数

参数名

参数描述

模型结果

查看建模成功后的模型评价结果或发布模型。