Привет, я сейчас работаю над проектом и начал использовать библиотеку LIBSVM (http://www.csie.ntu.edu.tw/~cjlin/libsvm/) для моего приложения Java для обучения набора данных с несколькими измерениями для каждого изображения.LIBMSVM Формат svm_node
У меня есть вопрос относительно svm_problem и svm_node
В svm_problem мы имеем следующий код
package libsvm;
public class svm_problem implements java.io.Serializable
{
public int l;
public double[] y;
public svm_node[][] x;
}
Правильно ли я сказать, что
л представляет размер все изображение?
у- метку изображения, как в моем случае я хочу + 1/-1
А теперь приводит к моему второму вопросу о svm_node [] [] х
package libsvm;
public class svm_node implements java.io.Serializable
{
public int index;
public double value;
}
каждый svm_node от 1 до i, где i - номер моего атрибута, хранятся в каждой позиции массива.
так, например, у меня есть значения изображения следующим
1 1: 1.5 2: 2.5 3: 4.5
-1 1: 1 2: 2 3: 3
Так что мой Int л = 3
мой у будет
у [0] = 1
у [1] = -1
х [0] [0] = 1 .index
х [0] [0] .value = 1,5
х [0] [1] = 2 .index
х [0] [1] = 2,5 .value
х [0] [2] .index = 3
х [0] [2] = 4,5 .value
х [1] [0 ] .index = 1
х [1] [0] = 1 .value
х [1] [1] = 2 .index
х [1] [1] = 2 .value
х [1] [2] .index = 3
х [1] [2] .value = 3
Правильно ли я в моем понимании?
согласно https://github.com/cjlin1/libsvm указание в конце строки не требуется в версии java, это необходимо в версии C++ – Clocker