当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R SparkR spark.mlp用法及代码示例


说明:

spark.mlp 针对 SparkDataFrame 拟合多层感知器神经网络模型。用户可以调用summary打印拟合模型的摘要,调用predict对新数据进行预测,调用write.ml/read.ml保存/加载拟合模型。仅支持分类数据。有关详细信息,请参阅Multilayer Perceptron

用法:

spark.mlp(data, formula, ...)

## S4 method for signature 'SparkDataFrame,formula'
spark.mlp(
  data,
  formula,
  layers,
  blockSize = 128,
  solver = "l-bfgs",
  maxIter = 100,
  tol = 1e-06,
  stepSize = 0.03,
  seed = NULL,
  initialWeights = NULL,
  handleInvalid = c("error", "keep", "skip")
)

## S4 method for signature 'MultilayerPerceptronClassificationModel'
summary(object)

## S4 method for signature 'MultilayerPerceptronClassificationModel'
predict(object, newData)

## S4 method for signature 'MultilayerPerceptronClassificationModel,character'
write.ml(object, path, overwrite = FALSE)

参数:

  • data 用于模型拟合的 SparkDataFrame 观察值和标签。
  • formula 要拟合的模型的符号说明。目前仅支持少数公式运算符,包括'~'、'.'、':'、'+'和'-'。
  • ... 传递给该方法的附加参数。
  • layers 包含每层节点数的整数向量。
  • blockSize 块大小参数。
  • solver 求解器参数,支持的选项:"gd"(小批量梯度下降)或"l-bfgs"。
  • maxIter 最大迭代次数。
  • tol 迭代的收敛容差。
  • stepSize 步长参数。
  • seed 权重初始化的种子参数。
  • initialWeights 权重初始化的 initialWeights 参数,它应该是一个数字向量。
  • handleInvalid 如何处理字符串类型的特征和标签列中的无效数据(看不见的标签或 NULL 值)。支持的选项:"skip"(过滤掉包含无效数据的行)、"error"(抛出错误)、"keep"(将无效数据放入特殊的附加存储桶中,索引为 numLabels)。默认为"error"。
  • object spark.mlp 拟合的多层感知器分类模型
  • newData 用于测试的 SparkDataFrame。
  • path 保存模型的目录。
  • overwrite 如果输出路径已经存在,是否覆盖。默认为 FALSE,这意味着如果输出路径存在则抛出异常。

返回:

spark.mlp 返回拟合的多层感知器分类模型。

summary 返回拟合模型的汇总信息,是一个列表。该列表包括numOfInputs(输入数量)、numOfOutputs(输出数量)、layers(包括输入和输出层的层大小数组)和weights(层的权重)。对于 weights ,它是一个长度等于给定架构的预期长度的数字向量(即,对于 8-10-2 网络,112 个连接权重)。

predict 返回一个 SparkDataFrame,其中包含在名为 "prediction" 的列中标记的预测值。

注意:

spark.mlp 自 2.1.0

摘要(MultilayerPerceptronClassificationModel) 自 2.1.0

从 2.1.0 开始预测(MultilayerPerceptronClassificationModel)

write.ml(MultilayerPerceptronClassificationModel, character) 自 2.1.0

例子:

df <- read.df("data/mllib/sample_multiclass_classification_data.txt", source = "libsvm")

# fit a Multilayer Perceptron Classification Model
model <- spark.mlp(df, label ~ features, blockSize = 128, layers = c(4, 3), solver = "l-bfgs",
                   maxIter = 100, tol = 0.5, stepSize = 1, seed = 1,
                   initialWeights = c(0, 0, 0, 0, 0, 5, 5, 5, 5, 5, 9, 9, 9, 9, 9))

# get the summary of the model
summary(model)

# make predictions
predictions <- predict(model, df)

# save and load the model
path <- "path/to/model"
write.ml(model, path)
savedModel <- read.ml(path)
summary(savedModel)

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 Multilayer Perceptron Classification Model。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。