neuralNet:neuralNet

创建一个包含函数名称和参数的列表,以使用 rxEnsemble 训练 NeuralNet 模型。

用法

  neuralNet(numHiddenNodes = 100, numIterations = 100, optimizer = sgd(),
    netDefinition = NULL, initWtsDiameter = 0.1, maxNorm = 0,
    acceleration = c("sse", "gpu"), miniBatchSize = 1, ...)
 

参数

numHiddenNodes

神经网络中的默认隐藏节点数。 默认值为 100。

numIterations

对完整训练集执行的迭代次数。 默认值为 100。

optimizer

一个列表,用于指定 sgdadaptive 优化算法。 此列表可使用 sgdadaDeltaSgd 创建。 默认值是 sgd

netDefinition

神经网络结构的 Net# 定义。 有关 Net# 语言的详细信息,请参阅 Reference Guide

initWtsDiameter

设置初始权重直径,该直径指定为初始学习权重采用的值范围。 权重在此范围内随机初始化。 默认值为 0.1。

maxNorm

指定用于约束每个隐藏单元的传入权重向量范数的上限。 在最大输出神经网络以及训练产生无限权重的情况下,此参数非常重要。

acceleration

指定要使用的硬件加速类型。 可能的值为“sse”和“gpu”。 对于 GPU 加速,建议使用大于 1 的 miniBatchSize 值。 如果要使用 GPU 加速,则需要执行其他手动设置步骤:

  • 下载并安装 NVidia CUDA Toolkit 6.5 (CUDA Toolkit)。
  • 下载并安装 NVidia cuDNN v2 库 (cudnn Library)。
  • 通过调用 system.file("mxLibs/x64", package = "MicrosoftML") 查找 MicrosoftRML 包的 libs 目录。
  • 将 CUDA Toolkit 6.5 中的 cublas64_65.dll、cudart64_65.dll 和 cusparse64_65.dll 复制到 MicrosoftML 包的 libs 目录中。
  • 将 cuDNN v2 库中的 cudnn64_65.dll 复制到 MicrosoftML 包的 libs 目录中。

miniBatchSize

设置微型批大小。 建议的值介于 1 到 256 之间。 仅在加速为 GPU 时才使用该参数。 将此参数设置为较高的值可以提高训练速度,但可能会影响准确性。 默认值为 1。

...

其他参数。