我正在使用apache spark mllib实现多层感知分类器。如下面的代码中,我仅使用了两个层是输入层,输出层。而且我只有33%的精度。当我尝试添加更多层时,因为int[] layers = new int[] {36,30,20,13};
我获得了27%的精度。我尝试使用各种随机数的层。但是准确性很低。您能帮我提高准确性吗?
int[] layers = new int[] {36,13};
// create the trainer and set its parameters
MultilayerPerceptronClassifier trainer = new MultilayerPerceptronClassifier()
.setLayers(layers)
.setBlockSize(128)
.setSeed(1234L)
.setMaxIter(100);
// train the model
MultilayerPerceptronClassificationModel model = trainer.fit(newFrame2);
数据集中有多少个功能和类?通常,MLPC中的层是描述前馈神经网络中层的数字矢量。向量中的每个元素给出一层的大小。
例如,c(4,5,2)将暗示三层,其中大小为4的输入(特征)层,大小5的中间层和大小2的输出(类)层。
因此,相应地定义了您的图层。希望这可以帮助。