Używam modeli SVM do krótkoterminowego prognozowania zanieczyszczeń powietrza. Aby wytrenować nowy model, muszę znaleźć odpowiednie metaparametry dla modelu SVM (mam na myśli C, gamma i tak dalej).
Dokumentacja Libsvm (i wiele innych książek, które przeczytałem) sugeruje użycie wyszukiwania siatki w celu znalezienia tych parametrów - w zasadzie trenuję model dla każdej kombinacji tych parametrów z określonego zestawu i wybieram najlepszy model.
Czy istnieje lepszy sposób na znalezienie optymalnych (lub prawie optymalnych) metaparametrów? Dla mnie jest to głównie kwestia czasu obliczeń - jedno przeszukiwanie siatki tego problemu zajmuje około dwóch godzin (po tym, jak przeprowadziłem kilka optymalizacji).
Zalety wyszukiwania siatki:
- Można go łatwo zrównoleglić - jeśli masz 20 procesorów, będzie on działał 20 razy szybciej, równolegle z innymi metodami jest trudniej
- Sprawdzasz duże części przestrzeni metaparametrów, więc jeśli istnieje dobre rozwiązanie, znajdziesz je.