- 功能介绍
- 参数说明
- 脚本示例
- 脚本代码
- 脚本运行结果
功能介绍
多层感知机多分类模型
参数说明
| 名称 | 中文名称 | 描述 | 类型 | 是否必须? | 默认值 | |
|---|---|---|---|---|---|---|
| layers | 神经网络层大小 | 神经网络层大小 | int[] | ✓ | ||
| blockSize | 数据分块大小,默认值64 | 数据分块大小,默认值64 | Integer | 64 | ||
| initialWeights | 初始权重值 | 初始权重值 | DenseVector | null | ||
| vectorCol | 向量列名 | 向量列对应的列名,默认值是null | String | null | ||
| featureCols | 特征列名数组 | 特征列名数组,默认全选 | String[] | null | ||
| labelCol | 标签列名 | 输入表中的标签列名 | String | ✓ | ||
| maxIter | 最大迭代步数 | 最大迭代步数,默认为 100 | Integer | 100 | ||
| epsilon | 收敛阈值 | 迭代方法的终止判断阈值,默认值为 1.0e-6 | Double | 1.0E-6 | ||
| l1 | L1 正则化系数 | L1 正则化系数,默认为0。 | Double | 0.0 | ||
| l2 | 正则化系数 | L2 正则化系数,默认为0。 | Double | 0.0 | ||
| vectorCol | 向量列名 | 向量列对应的列名,默认值是null | String | null | ||
| predictionCol | 预测结果列名 | 预测结果列名 | String | ✓ | ||
| predictionDetailCol | 预测详细信息列名 | 预测详细信息列名 | String | |||
| reservedCols | 算法保留列名 | 算法保留列 | String[] | null |
脚本示例
脚本代码
URL = "http://alink-dataset.cn-hangzhou.oss.aliyun-inc.com/csv/iris.csv"SCHEMA_STR = "sepal_length double, sepal_width double, petal_length double, petal_width double, category string";data = CsvSourceBatchOp().setFilePath(URL).setSchemaStr(SCHEMA_STR)mlpc = MultilayerPerceptronClassifier() \.setFeatureCols(["sepal_length", "sepal_width", "petal_length", "petal_width"]) \.setLabelCol("category") \.setLayers([4, 5, 3]) \.setMaxIter(20) \.setPredictionCol("pred_label") \.setPredictionDetailCol("pred_detail")mlpc.fit(data).transform(data).firstN(4).print()
脚本运行结果
sepal_length sepal_width ... pred_label pred_detail0 5.1 3.5 ... Iris-setosa {"Iris-versicolor":4.847903295060146E-12,"Iris...1 5.0 2.0 ... Iris-versicolor {"Iris-versicolor":0.5316800097281505,"Iris-vi...2 5.1 3.7 ... Iris-setosa {"Iris-versicolor":9.36626517454266E-10,"Iris-...3 6.4 2.8 ... Iris-virginica {"Iris-versicolor":0.19480380926794844,"Iris-v...
