필터 지우기
필터 지우기

Using MNIST in MATLAB

조회 수: 45 (최근 30일)
Jacob Ebilane
Jacob Ebilane 2022년 3월 11일
댓글: Jacob Ebilane 2022년 3월 13일
Hello
I am new to OCRs and am trying to use the MNIST dataset in matlab. I found a csv version of the data set which is usable in MATLAB then stored it as a .mat file (Somehow loads faster, I'm not so sure why if you do know do tell me). I wanted to try it on the fitcknn command as such
clc, clear
close all;
load 'mnist_train.mat'
knnmodel = fitcknn(mnist_train,"Var1")
I tried the Onramp course and tried to mimic how they did it but I get these error messages. I wanted to know if I can make this work and how.
Error using classreg.learning.FullClassificationRegressionModel.prepareDataCR (line 234)
X and Y do not have the same number of observations.
Error in classreg.learning.classif.FullClassificationModel.prepareData (line 821)
classreg.learning.FullClassificationRegressionModel.prepareDataCR(...
Error in ClassificationKNN.prepareData (line 926)
prepareData@classreg.learning.classif.FullClassificationModel(X,Y,varargin{:},'OrdinalIsCategorical',true);
Error in classreg.learning.FitTemplate/fit (line 233)
this.PrepareData(X,Y,this.BaseFitObjectArgs{:});
Error in ClassificationKNN.fit (line 911)
this = fit(temp,X,Y);
Error in fitcknn (line 264)
this = ClassificationKNN.fit(X,Y,RemainingArgs{:});
Error in OCR (line 6)
knnmodel = fitcknn(mnist_train,"Var1");

채택된 답변

larasupernovae
larasupernovae 2022년 3월 11일
So here is book, check out Chapter 6 if you are begining the MNIST in MatLab this is the best way to understand it all, hope this helps :) I also included my code from the book, a while a back when I was starting out with MNIST.
  댓글 수: 3
larasupernovae
larasupernovae 2022년 3월 11일
You probably won't do much by manual addition. The thing is the MNIST data set has an accuracy of 99%, you should be having just small anomalies when it comes down to it, using backpropagation a bit more efficiently might help (using it as a library just like in Python). The version I sent you is using the BP you make on your own, you can also use this type of code: see attachment https://we.tl/t-qA7w4fS5cO it's via we transfer since MatLab has a policy about uploading too much code :)
Jacob Ebilane
Jacob Ebilane 2022년 3월 13일
I guess it has something to do with the algorithm I have for separating each digit. I think it has something to do with the data reaching the top of the image itself.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Image Data Workflows에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by