Obecnie przechodzę przez Losowe wyszukiwanie Bengio i Bergsta w celu optymalizacji hiperparametrów [1], w którym autorzy twierdzą, że losowe wyszukiwanie jest bardziej wydajne niż wyszukiwanie siatkowe w osiąganiu w przybliżeniu jednakowej wydajności.
Moje pytanie brzmi: czy ludzie tutaj zgadzają się z tym twierdzeniem? W swojej pracy korzystałem z wyszukiwania siatki głównie z powodu braku narzędzi do łatwego wyszukiwania losowego.
Jakie są doświadczenia osób korzystających z siatki zamiast wyszukiwania losowego?
our Optunity
należy zrobić); jak mówi pomoc na temat zachowania, „jeśli niektórzy… zdarzają się na temat twojego produktu lub strony internetowej, to jest w porządku. Musisz jednak ujawnić swoją przynależność”Odpowiedzi:
Wyszukiwanie losowe ma prawdopodobieństwo 95% znalezienia kombinacji parametrów w ramach optymów 5% przy jedynie 60 iteracjach. Również w porównaniu do innych metod nie zagłębia się w lokalnych optymach.
Sprawdź ten świetny post na blogu w Dato autorstwa Alice Zheng, w szczególności sekcję Algorytmy strojenia hiperparametrów .
Możesz zwiększyć tę szansę dzięki większej liczbie prób.
Podsumowując, jeśli masz zbyt wiele parametrów, aby dostroić, wyszukiwanie siatki może być niewykonalne. To wtedy próbuję losowego wyszukiwania.
źródło
Ponownie spójrz na grafikę z papieru (ryc. 1). Powiedzmy, że masz dwa parametry, przy wyszukiwaniu siatki 3x3 sprawdzasz tylko trzy różne wartości parametrów z każdego z parametrów (trzy rzędy i trzy kolumny na wykresie po lewej), podczas gdy przy wyszukiwaniu losowym sprawdzasz dziewięć (!) Różnych wartości parametrów każdego z parametrów (dziewięć różnych wierszy i dziewięć różnych kolumn).
Oczywiście losowe wyszukiwanie może nie być reprezentatywne dla całego zakresu parametrów, ale wraz ze wzrostem wielkości próby szanse na to stają się coraz mniejsze.
źródło
Jeśli możesz napisać funkcję do wyszukiwania siatki, prawdopodobnie jeszcze łatwiej jest napisać funkcję do wyszukiwania losowego, ponieważ nie musisz wcześniej określać i przechowywać siatki z góry.
Odkładając to na bok, metody takie jak LIPO, optymalizacja roju cząstek i optymalizacja Bayesa dokonują inteligentnych wyborów, które hiperparametry prawdopodobnie będą lepsze, więc jeśli chcesz utrzymać liczbę modeli na absolutnym minimum (powiedzmy, ponieważ dopasowanie jest drogie model), narzędzia te są obiecującymi opcjami. Są również globalnymi optymalizatorami, więc mają duże prawdopodobieństwo zlokalizowania globalnego maksimum. Niektóre funkcje akwizycji metod BO mają pewne granice żalu, co czyni je jeszcze bardziej atrakcyjnymi.
Więcej informacji można znaleźć w tych pytaniach:
Jakie są wady optymalizacji bayesowskiej hiperparametrów?
Optymalizacja, gdy funkcja kosztu wolno ocenia
źródło
Domyślnie wyszukiwanie losowe i wyszukiwanie siatki są okropnymi algorytmami, chyba że zachodzi jedna z poniższych sytuacji.
Większość ludzi twierdzi, że wyszukiwanie losowe jest lepsze niż wyszukiwanie siatkowe. Należy jednak pamiętać, że gdy z góry określona jest całkowita liczba ocen funkcji, wyszukiwanie w siatce doprowadzi do dobrego pokrycia przestrzeni wyszukiwania, co nie jest gorsze niż wyszukiwanie losowe z tym samym budżetem, a różnica między nimi jest znikoma, jeśli w ogóle. Jeśli zaczniesz dodawać pewne założenia, np. Że twój problem można oddzielić lub prawie oddzielić, wówczas znajdziesz argumenty wspierające wyszukiwanie siatki. Ogólnie rzecz biorąc, oba są porównywalnie straszne, chyba że w nielicznych przypadkach. Dlatego nie ma potrzeby ich rozróżniania, chyba że zostaną wzięte pod uwagę dodatkowe założenia dotyczące problemu.
źródło
Znalezienie miejsca w granicach 95% maksimów w topografii 2D z tylko jednym maksima wymaga 100% / 25 = 25%, 6,25%, 1,5625% lub 16 obserwacji. Tak długo, jak pierwsze cztery obserwacje prawidłowo określają, w którym kwadrancie znajdują się maksima (ekstrema). Topografia 1D zajmuje 100/2 = 50, 25, 12,5, 6,25, 3,125 lub 5 * 2. Myślę, że ludzie szukający wielu dalekich lokalnych maksimów używają dużego początkowego wyszukiwania siatki, a następnie regresji lub innej metody przewidywania. Siatka 60 obserwacji powinna mieć jedną obserwację w zakresie 100/60 = 1,66% ekstremy. Global Optimization Wikipedia Nadal uważam, że zawsze istnieje lepsza metoda niż przypadkowość.
źródło