روش دیگه ای نداره؟؟ اخه متلبم رو ویندوز64 من نصب نمیشه،(خیلی از درایورام واسه ویندوز64 کمیابه )
Printable View
روش دیگه ای نداره؟؟ اخه متلبم رو ویندوز64 من نصب نمیشه،(خیلی از درایورام واسه ویندوز64 کمیابه )
این هم نسخه 32 بیتی
http://www.csie.ntu.edu.tw/~cjlin/li...-mat-3.0-1.zip
سلام
من نتونستم فایلی ک فرمودید داخل ویندوز هست را پیداکنم،اگه میشه مراحلشو بگید که این libsvm رو چجوری نصب کنم؟بعداینکه برناممو اجراکنم یا اینکه همون چند خطی که فرستادین اونو فقط اجرا کنم؟؟
in karo krardam vali error dad
Error: C <= 0
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled7 (line 7)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
>>
این را بزنید:
size(azmayesh)
چه جوابی میاد؟
Error: C <= 0
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled7 (line 7)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
>>
فقط این را بزنید:
size(azmayesh)
چه جوابی میاد؟
Undefined function or variable 'azmayesh'.
Error in Untitled7 (line 1)
size(azmayesh)
من گفتم این کد را اجرا کنید
load xdataazmayesh.mat
load xdataamoozesh.mat
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain(groupamoozesh, double(xdataamoozesh), '-c 0');
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
اگه همین دستور را زده اید احتمالا باید خطاهای بیشتری هم داده باشه
لطفا کل خطا ها را بذارید
in code ro k mizanam in khataro mide
Error: C <= 0
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled10 (line 7)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
اصلا تک تک خط ها را در متلب کپی و پیست کنید اولین مورد که خطا داد گزارش کنید
خط 6 این ارورو میده(یکی مونده به اخری)
Error: C <= 0خط اخرم این ارور رو میده
model file should be a struct array
Error: C <= 0بقیه خط ها ارور نمیده
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled10 (line 9)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
فایل svmtrain.mexw32 را به svmtrain2.mexw32 تغییر نام بدهید سپس این کد را اجرا کنید
load xdataazmayesh.mat
load xdataamoozesh.mat
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(groupamoozesh, double(xdataamoozesh), '-c 0');
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
دوباره ارور داد
Error: C <= 0
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled11 (line 7)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
این دستورات خود libsvm هست . ببینید اجرا میشه؟
[heart_scale_label, heart_scale_inst] = libsvmread('heart_scale');
model = svmtrain2(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
[predict_label, accuracy, dec_values] = svmpredict(heart_scale_label, heart_scale_inst, model)
چه چیزی چاپ میشه؟
فقط همین کدروزدم اررور دادError using svmtrain2
Matrix API is called with negative size or index.
Error in Untitled2 (line 4)
model = svmtrain2(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
فایل heart_scale را داخل همون فولدر اکسترکت کنید
http://www.sharefile.ir/uploads/1408827087.zip
Accuracy = 86.6667% (234/270) (classification)
دیگه ارور ندادولی قبلا 98% بود الان 86%
پس مشکلی نیست. این کد را اجرا کنید:
load xdataazmayesh.mat
load xdataamoozesh.mat
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(double(groupamoozesh), double(xdataamoozesh), '-c 0');
[azmayesh, accuracy, dec_values] = svmpredict(double(groupazmayesh), double(xdataazmayesh), svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
بازم ارور داد
Error: C <= 0
model file should be a struct array
Error using perfcurve
Argument 'scores' failed validation
@(x)~isempty(x)&&(isnumeric(x)||iscell(x)).
Error in perfcurve (line 313)
p.parse(labels,scores,posClass,varargin{:});
Error in Untitled3 (line 9)
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
این هم ارور میده؟
load xdataazmayesh.mat
load xdataamoozesh.mat
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(double(groupamoozesh), double(xdataamoozesh));
[azmayesh, accuracy, dec_values] = svmpredict(double(groupazmayesh), double(xdataazmayesh), svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
in error nadad
Accuracy = 64.5161% (400/620) (classification)
vali darsadesh kheyli omade peiyn
accuracy را ولش کن auc را ببین چند شده؟
auc=0.5000
این که افتضاحه معلوم نیست مشکل کجاست جون من یه جا دیگه امتحان کردم فقط دو مورد اشتباه طبقه بندی شده بود
خب پس چیکارمیشه کرد
ای یکی چه طوره؟
load xdataazmayesh.mat
load xdataamoozesh.mat
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(double(groupamoozesh), double(xdataamoozesh),'-s 2');
[azmayesh, accuracy, dec_values] = svmpredict(double(groupazmayesh), double(xdataazmayesh), svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
auc=0.4988
صبر کنید من تست می کنم فردا خبر میدم
ok mrc :لبخندساده:
این را امتحان کنید ابتدا باید داده ها نرمالیزه می شدند
miangin=mean(xdataamoozesh);
enherafmeyar=std(xdataamoozesh);
xdataamoozesh=(xdataamoozesh-miangin)/enherafmeyar;
xdataazmayesh=(xdataazmayesh-miangin)/enherafmeyar;
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(groupamoozesh, doublexdataamoozesh);
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
error dad
Undefined function or variable 'xdataamoozesh'.
Error in Untitled6 (line 1)
miangin=mean(xdataamoozesh);
اشتباه از من بوده چون پلاک ها همسایز نبوده،میخوام نرمالایزهم بکنم که دیگه کامل مطمئن بشم چطوربایدداده هامونرمالیزه کنم؟
ببینید من تست کردم 99 و خورده ای درصد مدل دقت داشت دستور load را بذارید منظورم این بود
load xdataazmayesh.mat
load xdataamoozesh.mat
miangin=mean(xdataamoozesh);
enherafmeyar=std(xdataamoozesh);
xdataamoozesh=(xdataamoozesh-miangin)/enherafmeyar;
xdataazmayesh=(xdataazmayesh-miangin)/enherafmeyar;
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(groupamoozesh, doublexdataamoozesh);
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
سایز پلاک رو که تغییر دادم ازکتابخانه استفاده نکردم ازهمون برنامه قبلی استفاده کردم auc یک شده،ازاین برنامه هم که استفاده میکنم ارور میده
Error using -
Matrix dimensions must agree.
Error in Untitled2 (line 6)
xdataamoozesh=(xdataamoozesh-miangin)/enherafmeyar;
توی اکتاو متفاوت بود
load xdataazmayesh.mat
load xdataamoozesh.mat
miangin=mean(xdataamoozesh);
enherafmeyar=std(xdataamoozesh);
xdataamoozesh=bsxfun(@rdivide,bsxfun(@minus ,xdataamoozesh,miangin),enherafmeyar);
xdataazmayesh=bsxfun(@rdivide,bsxfun(@minus ,xdataazmayesh,miangin),enherafmeyar);
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(groupamoozesh, doublexdataamoozesh);
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);
Undefined function or variable 'doublexdataamoozesh'.
Error in Untitled3 (line 10)
svmStruct = svmtrain2(groupamoozesh, doublexdataamoozesh);
bazam eror dad.in dastur normalize ham mikone?
ببخشید نام متغیر اشتباه بود
با میانگین و انحراف معیار نرمال می کنیم
load xdataazmayesh.mat
load xdataamoozesh.mat
miangin=mean(xdataamoozesh);
enherafmeyar=std(xdataamoozesh);
xdataamoozesh=bsxfun(@rdivide,bsxfun(@minus ,xdataamoozesh,miangin),enherafmeyar);
xdataazmayesh=bsxfun(@rdivide,bsxfun(@minus ,xdataazmayesh,miangin),enherafmeyar);
groupamoozesh=[ones(440,1);zeros(800,1)];
groupazmayesh=[ones(220,1);zeros(400,1)];
svmStruct = svmtrain2(groupamoozesh, xdataamoozesh);
[azmayesh, accuracy, dec_values] = svmpredict(groupazmayesh, xdataazmayesh, svmStruct);
[x,y,T,auc]=perfcurve(groupazmayesh ,azmayesh,1);