Выбор значения c и гаммы

Привет, Я выполняю классификацию SVM с помощью SMO, в котором ядро ​​является RBF, теперь я хочу выбрать значения c и sigma, используя поиск по сетке и перекрестное подтверждение, Я новичок в функциях ядра, помогите, шаг за шагом, процесс

4 ответа

  • Выберите некоторые значения для C и сигмы, которые вы считаете интересными. Например, C = {1, 10, 100, 1000} и sigma = {.01,.1, 1} (я просто делаю это).
  • Разделите обучающий набор на k (например, 10) частей, предпочтительно в stratified.
  • Перебирать все пары значений C и sigma.
    • Переверните все части вашего тренировочного набора. Удерживайте k'th часть. Обучите классификатор по всем другим частям, а затем проверьте на протянутой части.
    • Отслеживайте некоторый балл (точность, F1 или то, что вы хотите оптимизировать).
  • Вернуть пару эффективных значений для C, sigma по счету, который вы только что вычислили.


Прочтите практическое руководство по поддержке векторной классификации Чжи-Вэй Хсу, Чи-Чун Чан и Чжи-Джен. Они рассматривают эту точную проблему и объясняют методы для выполнения поиска сетки для выбора параметров. http://www.csie.ntu.edu.tw/~cjlin/papers/guide/guide.pdf


Я просто добавлю немного объяснения к ответ larsmans.

Параметр C является параметром регуляризации/ослабления. Его меньшие значения заставляют грузы быть маленькими. Чем больше он получает, тем больше допустимый диапазон весов. Результирующие значения большего значения C повышают штраф за неправильную классификацию и тем самым уменьшают коэффициент ошибок классификации на данных обучения (что может привести к чрезмерной установке). Ваше время тренировки и количество векторов поддержки будут увеличиваться по мере увеличения значения C.

Вам также может быть полезно прочитать Расширение SVM до мягкого классификатора полей от K.K. Chin.


Вы также можете использовать выбор модели Uniform Design, который уменьшает количество кортежей, которые вам нужно проверить. Бумага, которая объясняет это, - "Выбор модели для векторных машин поддержки по равномерному дизайну" Чиан-Мин Хуан Некоторая реализация в python существует в ssvm 0.2

licensed under cc by-sa 3.0 with attribution.