[英]How to do regression using svmtrain() function in libsvm (what settings)? what is the label matrix form?
Libsvm 是一個用 C 編寫的支持向量機的小型庫。 這是我使用的 libsvm 源的鏈接( https://github.com/cjlin1/libsvm )。 有人可以在以下代碼中更正 svmtrain() function 或 label 矩陣中的選項以成功執行回歸,因為 output 表示優化已完成 #0 迭代
svmtrain() function 之前的代碼的目標是將水下彩色圖像(圖像中的一些矩形)的水像素排列成(mx 3)矩陣作為數據。 label 矩陣是一個(mx 1)向量預設為1;{這里是水下圖像的鏈接,紅色通道補償方程}
output:
optimization finished, #iter = 0
nu = 0.000000
obj = 0.000000, rho = -1.000000
nSV = 0, nBSV = 0
這是代碼:
##to load image package
pkg load image
## add the path to the matlab folder inside the LIBSVM package source
addpath('./libsvm-master/libsvm-master/matlab')
##load libsvm
pkg load statistics
##load an under water rgb image
im = imread('9554.png');
im=double(im);
startrow=1;
startcol=1;
endrow=100;
endcol=100;
## save rgb pixels in m x 3 form
data=zeros(endrow*endcol,3,'double');
for i=startrow:endrow
for j=startcol:endcol
data((i-1)*endrow+j,1:3)=im(i,j,1:3);
end
end
## m x 1 label matrix, all preset to 1
label_data=ones(size(data,1),1,'double');
model=svmtrain(label_data,data,'-s 3 -c 1');
感謝您提供圖片和額外的細節。
我認為問題只是你傳遞了一個“標簽”矩陣,它只包含一個 label。 該算法檢測到沒有要訓練的數據,然后停止。
如果您將一些標簽設為零,則算法會按預期運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.