Сколько времени занимает сборщик SVM?

Я написал следующий код и протестировал его по небольшим данным:

classif = OneVsRestClassifier(svm.SVC(kernel='rbf')) classif.fit(X, y) 

Где X, y – числовые массивы. По алгоритму малых данных работает хорошо и дает мне правильные ответы. Но я запускаю свою программу около 10 часов назад … И она все еще находится в процессе. Именно в этом фрагменте кода. X – матрица 30000×784, y 30000×1. Я хочу знать, сколько времени это займет, или оно каким-то образом застряло? Мой ноутбук имеет 4 ГБ памяти, Core i5-480m.

One Solution collect form web for “Сколько времени занимает сборщик SVM?”

Обучение SVM может быть произвольным долго, это зависит от десятков параметров:

  • Параметр C – увеличивает штраф за пропущенную классификацию, замедляет процесс
  • Ядро – более сложное ядро, медленнее процесс (rbf является наиболее сложным из предопределенных)
  • размер / размерность данных – опять же, то же правило

в общем случае, базовый алгоритм SMO – это O(n^3) , поэтому в случае 30 000 наборов данных он должен выполнить количество операций, пропорциональное 2 700 000 000 000 что реально огромно. Какие у вас варианты?

  • изменить ядро ​​на линейное, 784 функций довольно много, rbf может быть избыточным
  • уменьшить размерность элементов (PCA?)
  • ниже параметр C
  • модели поездов на подмножестве ваших данных, чтобы найти хорошие параметры, а затем обучить целое на каком-то кластере / суперкомпьютере
  • Как установить LIBSVM для Python
  • Преобразование функции решения LinearSVC к вероятностям (Scikit learn python)
  • Вычисление функции решения SVM вручную
  • Вычисление ближайшего совпадения к среднему / Stddev парам с LibSVM
  • Как применить стандартизацию к SVM в scikit-learn?
  • Python: преобразовать матрицу в положительную полуопределенную
  • Scikit Узнать SVC decision_function и предсказать
  • Как исправить скорость ложных срабатываний линейного SVM?
  • Python scikit-learn SVM Classifier "ValueError: найден массив с тусклым 3. Ожидаемый <= 2"
  • Как извлечь информацию из scikits.learn классификатора, чтобы затем использовать в коде C
  • Как функция sklearn.svm.svc функция pred_proba () работает внутри?
  • Python - лучший язык программирования в мире.