Cel ćwiczenia
Celem ćwiczenia jest zapoznanie się ze sposobami estymacji nieliniowej. Na poprzednich laboratoriach stosowaliśmy metodę najmniejszych kwadratów do estymacji zależności liniowej w postaci: y=ax+b oraz do zależności, które można było zlinearyzować np.: y=axb. W ogólniejszym przypadku zależy nam na możliwości znalezienia współczynników dowolnie zaprojektowanej funkcji nieliniowej. Głównie dlatego, że nie każdą funkcję nieliniową można zlinearyzować, ale również z powodu przekształcania danych w czasie linearyzacji, silnie wpływającego na wyniki estymacji.
Podstawowym problemem przy analizie nieliniowej jest zrozumienie, że „program” nie odgadnie za nas postaci zależności regresyjnej. Dlatego należy zwrócić szczególną uwagę studentom na zrozumienie idei regresji oraz faktu, iż proponowane zależności nie biorą się z „powietrza”. Są to najczęściej proponowane przez naukowców zależności, których postać zależy od głębokiej wiedzy badaczy oraz dogłębnego zrozumienia analizowanego zjawiska.
Przebieg zajęć (opis zawarty w skrypcie uzupełniam o mim zdaniem potrzebne komentarze)
Wprowadzenie danych – estymacja_nieliniowa.xls – dane są zorganizowane w dwóch kolumnach zawierających poszczególne zmienne (zależną oraz niezależną) Należy zwrócić uwagę na fakt, że tej samej wartości zmiennej X są przypisane więcej niż jedna wartość zmiennej zależnej Y.
„Moduł estymacja nieliniowa” proponuje uruchomić w trybie zgodności win2k bez kompozycji wizualnych. Udało mi się w ten sposób narysować wykresy. Po wyborze modułu musimy określić rodzaj analizowanego zagadnienia. Do wyboru mamy:
Regresją użytkownika : można zdefiniować dowolny model nieliniowy.
Regresja logistyczna : Ogólny model logistyczny można wyrazić następującym wzorem:
Y = b0/{1 + b1*exp(b2*x)} Stanowi on niejako rozwinięcie modelu logit. Model logit ogranicza zależną zmienną objaśnianą tylko do dwóch wartości, zaś regresja logistyczna pozwala odpowiedziom przybierać wartości z pewnego przedziału. Załóżmy na przykład, że interesuje nas wzrost w funkcji czasu populacji pewnego gatunku, który został wprowadzony do nowego środowiska. Zmienną zależną może być liczba jednostek tego gatunku w danym środowisku. Oczywiście istnieje dolna granica zmiennej zależnej, ponieważ w środowisku nie może istnieć mniej niż 0 jednostek; najprawdopodobniej istnieje również górna granica, która zostanie osiągnięta w pewnym momencie czasu. Modele logistyczne są również używane w farmakologii w celu opisania wpływu różnych dawek leku.
Modele dla odpowiedzi binarnych: probit i logit: Jest to specyficzny przypadek analizy, w której zmienna zależna jest zmienną mogącą przyjmować jedynie dwie możliwe wartości (0,1) – czyli mają naturę binarną. Na przykład pacjenci powrócą do zdrowia po urazie albo nie; kandydaci do pracy przejdą albo nie przejdą testu kwalifikacyjnego, subskrybenci czasopisma wznowią albo nie subskrypcję itd.
Regresja wykładnicza: Estymowana zależność regresyjna ma postać: y=c+exp(b0+b1x1+b2x2+…+bkxk)
Regresja segmentowa : Jest to narzędzie do analizy zależności cechującej się nieciągłością a dokładniej model opisujący zależność regresyjną zmienia się w pewnych „przedziałach”. Przykładem może być sytuacja, w której prowadzona jest produkcja i w ramach zwiększenia mocy produkcyjnych uruchamiana jest dodatkowa produkcja na starszych maszynach. Koszt jednostkowy rośnie wtedy znaczącą, lecz wraz ze wzrostem ilości wyprodukowanych elementów maleje.
W trakcie laboratorium przybliżona zostanie zagadnienie estymacji dowolnej postaci zależności regresyjnej.
Po wyborze pierwszej opcji z listy ukazuje się panel:
Wybór przycisku „Funkcja estymowana i funkcja straty” przenosi nas do panelu:
W oknie tym należy wpisać estymowana postać funkcji. Przypomnieć w tym miejscu o źródle naszej wiedzy na temat proponowanej zależności regresyjnej. W oknie należy wpisać pełną postać funkcji, np.: Y=b1+b2+X^6. Program sam „zrozumie”, że Y to zmienna zależna, X, to niezależna a bi to współczynniki regresji.
W okienku funkcja straty można zdefiniować wzorem tzw. funkcję straty, czyli w praktyce określić metodę, za pomocą której wyznaczone zostaną współczynniki modelu regresyjnego:
(OBS-PRED)**2 – metoda najmniejszych kwadratów.
(Obs-Przew)2 * (1/x2) –ważona metoda najmniejszych kwadratów – uwzględnia fakt, że wariancja błędu pomiaru dla różnych zmiennych niezależnych nie jest stała.
Metoda największej wiarygodności ( o tym tylko wspomnieć)
Po wpisaniu postaci zależności regresyjnej otrzymujemy panel:
Tutaj należy określić szczegółowe parametry optymalizacji. Bo tak naprawdę, to analiza regresji polega na wyznaczeniu współczynników modelu metodami optymalizacyjnymi. Każda z dostępnych metod ma swoje zalety oraz wady. Po szczegóły należałoby sięgnąć do podręczników z optymalizacji. W skrócie:
Metoda quasi-Newtona polega na tym, że w każdym kroku iteracji zostaje oszacowana funkcja w różnych punktach w celu estymacji pochodnych pierwszego i drugiego rzędu. Informacja ta jest następnie wykorzystywana w celu podążania po ścieżce zmierzającej do minimum funkcji straty.
Procedura Sympleks. Algorytm ten nie opiera się na obliczaniu lub estymacji pochodnych funkcji straty. Natomiast w każdej iteracji funkcja będzie szacowana w m+1 punktach w m wymiarowej przestrzeni parametrów. Na przykład w dwóch wymiarach (tzn. gdy trzeba oszacować dwa parametry), program oszacuje funkcję w trzech punktach wokół bieżącego optimum. Te trzy punkty zdefiniują trójkąt; w więcej niż trzech wymiarach "figura" utworzona przez te punkty nazywa się sympleksem. Intuicyjnie, w dwóch wymiarach trzy punkty pozwolą nam określić, "w którym kierunku podążać", to znaczy, w którym kierunku w przestrzeni w dwuwymiarowej należy podążać, aby zminimalizować funkcję. Tę samą zasadę można zastosować do wielowymiarowej przestrzeni parametrów, to znaczy, że sympleks będzie "przemieszczał" się w dół, gdy aktualne długości kroków staną się zbyt "zgubne", aby wykryć wyraźny kierunek opadający (tzn. gdy sympleks jest zbyt duży), to sympleks "skurczy się" i nastąpi kolejna próba.
Metoda Hooke'a-Jeevesa przemieszczania układu.W pewnym sensie jest to najprostszy ze wszystkich algorytmów. Metoda ta polega na tym, że w każdej iteracji zostaje zdefiniowany układ punktów przez przesuwanie pojedynczo każdego parametru, tak by zoptymalizować bieżącą funkcje straty. Cały układ punktów zostaje następnie przesunięty lub przemieszczony w nowe położenie; nowe położenie jest określone przez ekstrapolację linii ze starego punktu bazowego w m wymiarowej przestrzeni parametrów do nowego punktu bazowego. Długości kroków w tym procesie są stale dostosowywane, tak by synchronizować się w odpowiednim optimum. Metoda ta jest zazwyczaj całkiem efektywna i powinna być wypróbowana, gdy obie metody quasi-Newtona i sympleks (patrz powyżej) nie dają sensownych ocen parametrów.
Metoda Rosenbrocka poszukiwania układu. Kiedy wszystkie inne metody zawodzą, wówczas często dobre wyniki daje metoda Rosenbrocka poszukiwania układu. W metodzie tej rotuje się przestrzeń parametrów i wyrównuje się jedną oś do grzbietu (metoda ta nazywana jest również metodą rotacji współrzędnych); wszystkie inne osie pozostaną do niej ortogonalne. Jeśli funkcja straty jest jednomodalna i posiada wykrywalne grzbiety wskazujące w kierunku minimum funkcji. Zauważmy jednak, że ten algorytm poszukiwania może zostać wcześnie przerwany, jeśli istnieje kilka krępujących ograniczeń (odbijających się na wartości kary; patrz powyżej), które się nakładają, co prowadzi do nieciągłości w okolicach grzbietów.
Tip: Macierz (cząstkowych) pochodnych drugiego rzędu nazywa się hesjanem.
Właściwe wybranie metody optymalizacji oraz ustalenie ich parametrów nie jest zagadnieniem prostym. Wymaga praktyki w posługiwaniu się procedurami optymalizacyjnymi.
Opcja asymptotyczne błędy standardowe - pozwala wyznaczyć ocenę odchyleń standardowych współczynników,
Maksymalna liczba iteracji – można dawać max (1000), ponieważ irytujące jest zapytanie co 30 iteracji czy program ma liczyć dalej.
Kryterium zbieżności – im mniejsza wartość tym teoretycznie dokładniejszy wynik, lecz czasem algorytm nie będzie w stanie znaleźć współczynników zapewniających zadana dokładność. (pozostawić wartości domyślne).
Wartości początkowe – tu problem, ponieważ badający powinien w przybliżeniu znać poszukiwane rozwiązanie. To znaczy, że im dalej od optimum zaczniemy szukać, tym większe prawdopodobieństwo, że nie znajdziemy poszukiwanych wartości współczynników.
Długość kroku – wartość silnie zależna od zmienności funkcji regresji. Ma również wpływ na to, czy przy zadanej ilości iteracji będziemy w stanie znaleźć optimum.
Po wciśnięciu ok. mamy ekran wyników:
Bardzo ważna jest informacja czy proces estymacji osiągnął zbieżność czy też nie. Jeśli nie, wówczas należy przemyśleć zastosowane parametry estymacji lub wybrać inny algorytm lub w ostateczności przemyśleć, czy zaproponowana postać regresji jest właściwa.
Dwukrotne wciśnięcie OK. daje:
Ocena – to wartości współczynników
t(41) - wartość statystyki testowej t-Studenta, służącej do weryfikacji hipotezy o nieistotności poszczególnych współczynników.
Wyjaśniona wariancja – to współczynnik determinacji R2 (kwadrat współczynnika korelacji)
Wybór dopasowana funkcja 2W i wart obserwowane pozwala wyznaczyć wykres zależności:
Uzyskany wykres należy analizować w taki sam sposób jak dla zależności liniowych, np. poszukując błędów pomiaru (odstające dane) itd.
Zadanie 1
Stężenie toksyn w wodzie, spowodowane wyciekiem z uszkodzonego rurociągu maleje w funkcji czasu. Przyjmuje się zależność w postaci:
Y=b1+(.49-b1)exp(-b2(X-b3))
Wyznaczyć postać zaproponowanego modelu oraz określić stopień jego dopasowania.
Zadanie 2
Na podstawie danych pochodzących z pomiarów oblicz wartości parametrów i wykreśl krzywą wysokości drzewostanu. Zastosuj w tym celu równanie Näslunda.
$$h = \left( \frac{d}{A + B \bullet d} \right)^{2} + 1.3$$
gdzie: h – wysokość drzewa, d – pierśnica drzewa, A, B – parametry równania.