В настоящее время я работаю над классификацией изображений с разными дескрипторами изображений. Поскольку у них есть свои собственные показатели, я использую предварительно вычислимые ядра. Поэтому, учитывая эти NxN ядра-матрицы (всего N изображений), я хочу обучать и тестировать SVM. Однако я не очень опытен с помощью SVM.
Что меня смущает, так это то, как вводить ввод для обучения. Используя подмножество ядра MxM (M - количество обучающих образов), обучает SVM с помощью M-функций. Однако, если я правильно понял, это ограничивает меня использованием тестовых данных с аналогичным количеством функций. Попытка использовать подъядер размером MxN вызывает бесконечные циклы во время тренировки, следовательно, использование большего количества функций при тестировании дает плохие результаты.
Это приводит к использованию тренировок равных размеров и наборов тестов, дающих разумные результаты. Но если бы я хотел только классифицировать, произносить одно изображение или тренироваться с заданным количеством изображений для каждого класса и тестировать с остальными, это не работает вообще.
Как я могу удалить зависимость между количеством обучающих образов и функций, поэтому я могу тестировать любое количество изображений?
Я использую libsvm для MATLAB, ядра - это матрицы расстояний между [0,1].