Jestem ciekaw powtarzalnych procedur, które mogą być wykorzystane do odkrywania postaci funkcyjnej funkcji y = f(A, B, C) + error_term
, gdzie jest mój tylko wejście jest zbiorem obserwacji ( y
, A
, B
i C
). Należy pamiętać, że funkcjonalna forma f
jest nieznana.
Rozważ następujący zestaw danych:
AA BB CC DD EE FF == == == == == == 98 11 66 84 67 10500 71 44 48 12 47 7250 54 28 90 73 95 5463 34 95 15 45 75 2581 56 37 0 79 43 3221 68 79 1 65 9 4721 53 2 90 10 18 3095 38 75 41 97 40 4558 29 99 46 28 96 5336 22 63 27 43 4 2196 4 5 89 78 39 492 10 28 39 59 64 1178 11 59 56 25 5 3418 10 4 79 98 24 431 86 36 84 14 67 10526 80 46 29 96 7 7793 67 71 12 43 3 5411 14 63 2 9 52 368 99 62 56 81 26 13334 56 4 72 65 33 3495 51 40 62 11 52 5178 29 77 80 2 54 7001 42 32 4 17 72 1926 44 45 30 25 5 3360 6 3 65 16 87 288
W tym przykładzie załóżmy, że o tym wiemy FF = f(AA, BB, CC, DD, EE) + error term
, ale nie jesteśmy pewni co do formy funkcjonalnej f(...)
.
Jakiej procedury / jakich metod użyłbyś do znalezienia funkcjonalnej formy f(...)
?
(Punkt bonusowy: Jak najlepiej zgadnąć przy f
podaniu powyższych danych? :-) I tak, istnieje „poprawna” odpowiedź, która da R^2
ponad 0,99.)
FF
była „wydajnością spalania” iAA
była ilością paliwa iBB
była ilością tlenu, szukałbyś współdziałającego terminuAA
iBB
R^2 >= 0.99
chciałbym znaleźć tę o najlepszym stosunku wydajności do złożoności (i oczywiście bez dopasowania próbki). Przepraszam, że nie napisałem tejOdpowiedzi:
Aby znaleźć najlepiej dopasowaną formę funkcjonalną (tzw. Regresję swobodną lub regresję symboliczną) dla danych, wypróbuj to narzędzie - o ile wiem, jest to najlepsza dostępna metoda (przynajmniej jestem bardzo podekscytowana) ... i jej wolny :-)
http://creativemachines.cornell.edu/eureqa
EDYCJA : Dałem temu szansę z Eureqą i wybrałbym:
Nazwałbym to idealnym dopasowaniem (Eureqa daje inne, lepiej dopasowane rozwiązania, ale są one również nieco bardziej skomplikowane. Eureqa preferuje to, więc wybrałem ten) - i Eureqa zrobiła wszystko dla mnie w ciągu kilku sekund normalny laptop ;-)
źródło
W tym celu należy zauważyć, że standardowe techniki analizy danych eksploracyjnych (EDA) i regresji (ale nie etapowe lub inne zautomatyzowane procedury) sugerują stosowanie modelu liniowego w postaci
plus mały normalnie rozłożony błąd SD w przybliżeniu równy 50.
Edytować
W każdym razie poprawione dopasowanie zapewnia
BTW, używając solidnej regresji mogę dopasować model
z resztkowym SD wynoszącym 27,4 i wszystkimi resztami między -51 a +47: zasadniczo tak dobre jak poprzednie dopasowanie, ale z jedną zmienną mniejszą. W tym sensie jest bardziej oszczędny, ale mniej oszczędny w tym sensie, że nie zaokrągliłem współczynników do „ładnych” wartości. Niemniej jednak jest to forma, którą zwykle faworyzuję w analizie regresji bez rygorystycznych teorii na temat tego, jakie wartości powinny mieć współczynniki i jakie zmienne należy uwzględnić.
źródło
Twoje pytanie wymaga dopracowania, ponieważ
f
prawie na pewno funkcja nie jest jednoznacznie zdefiniowana w przykładowych danych. Istnieje wiele różnych funkcji, które mogą generować te same dane.To powiedziawszy, analiza wariancji (ANOVA) lub „badanie wrażliwości” może wiele powiedzieć o tym, jak twoje dane wejściowe (AA..EE) wpływają na twoją produkcję (FF).
Właśnie zrobiłem szybki ANOVA i znalazł dość dobry model:
FF = 101*A + 47*B + 49*C - 4484
. Funkcja nie wydaje się zależeć liniowo od DD lub EE. Oczywiście moglibyśmy pójść dalej z modelem i dodać warunki kwadratowe i mieszane. W końcu otrzymasz idealny model, który nadmiernie pasuje do danych i nie ma wartości predykcyjnej. :)źródło
Ogólnie rzecz biorąc, w uczeniu maszynowym nie ma darmowego lunchu:
/ edit: również promieniowy SVM z C = 4 i sigma = 0,206 z łatwością daje R2 równe 0,99. Wyodrębnienie faktycznego równania użytego do uzyskania tego zestawu danych pozostawia się jako ćwiczenie dla klasy. Kod znajduje się w R.
źródło
Wszystkie modele są błędne, ale niektóre są przydatne: GEPBox
Y (T) = - 4709,7
+ 102,60 * AA (T) - 17,0707 * AA (T-1)
+ 62,4994 * BB (T) + 41,7453 * CC (T) + 965,70 * ZZ (T)
gdzie ZZ (T) = 0 DLA T = 1,10 = 1 INACZEJ
Wydaje się, że istnieje „opóźniony związek” między Y i AA ORAZ wyjaśniona zmiana średniej dla obserwacji 11–25.
Ciekawe wyniki, jeśli nie są to dane chronologiczne ani przestrzenne.
źródło
ORDER BY
). Rzędy nie mają żadnej specjalnej kolejności. Możesz więc bezpiecznie zmienić ich kolejność bez utraty jakichkolwiek informacji. Przepraszam, jeśli cięAA(T-1)
Termin w równaniu nie ma sensu w tym kontekście.AA(T-1)
r kwadrat 97,2
Oszacowanie / kontrola diagnostyczna dla zmiennej YY
X1 AAS
X2 BB
X3 BBS
X4 CC
Liczba reszt (R) = n 25
Liczba stopni swobody = nm 20
Średnia resztkowa = Suma R / n -141873E-05
Suma kwadratów = Suma R 2,775723E + 07
Wariancja = SOS / (n) 310289.
Skorygowana Wariancja = SOS / (nm) 387861.
Odchylenie standardowe RMSE = SQRT (Adj Var) 622,785
Błąd standardowy średniej = Standard Dev / (nm) 139,259
Średnia / jej błąd standardowy = Średnia / SEM -101877E-07
Średnia bezwzględna dewiacja = Suma (ABS (R)) / n 455.684
Wartość AIC (Używa var) = nln + 2m 326,131
Wartość SBC (Używa var) = nln + m * lnn 332.226
Wartość BIC (Używa var) = patrz Wei p153 340.388
R Kwadrat = .972211
Statystyka Durbin-Watsona = [- A (T -1)] ** 2 / A 2 1,76580
**
WZÓR KOMPONENTU LAG COEFF STANDARDOWY
BŁĄD WARTOŚĆ BŁĘDU WARTOŚĆ
WEJŚCIE SERII X1 AAS AA SQUARED
WEJŚCIE SERII X2 BB BB JAKO DOSTARCZONE
SERIA WEJŚCIOWA X3 BBS BB SQUARED
WEJŚCIE SERII X4 CC CC JAK DANE
źródło