如何在MATLAB中的UCI数据集上训练CNN?

时间:2019-02-21 01:58:57

标签: matlab uci

目前,我对CNN不太熟悉。我正在尝试在UCI数据集上训练CNN,这些数据基本上是更精确的平面文件csv。我可以使用Matlab上的其他分类器轻松地执行基于ML的任务,但我对CNNS相当执着。据我所知,将使用一维CNN对文件进行分类,但是任何人都不知道可以实现这一目标吗?现在,我正在使用的代码如下:

X = Xtrain;
y = Ytrain;
height = size(X, 2);
width = 1;
channels = 1;
sampleSize = size(X,1);
noOfClasses = length(unique(y));

CNN_Xtrain = reshape(X,[height, width, channels, sampleSize]);
CNN_Ytrain = categorical(y);


layers = [imageInputLayer([height, width, channels])
    convolution2dLayer([1], 100)
    batchNormalizationLayer
    reluLayer
    fullyConnectedLayer(noOfClasses)
    softmaxLayer
    classificationLayer];

options = trainingOptions('adam',...
    'MaxEpochs', 1000 ...
    );

layers(2).Weights = randn([1 1 1 100]) * 0.0001;
layers(2).Bias = randn([1 1 100])*0.00001 + 1;

classifier = trainNetwork(CNN_Xtrain, CNN_YTrain, layers, options);

但是使用此代码,我的准确性确实很差。请帮忙。

0 个答案:

没有答案