Paweł Cichosz
Date: 2001/2002
Wykład jest poświęcony metodom odkrywania zależności między atrybutami ciągłymi przy założeniu, że czytelność ich symbolicznego zapisu w postaci wyrażeń arytmetycznych jest ważniejsza niż dokładność. Omawiany jest zestaw heurystycznych metod odkrywania równań dla dwóch oraz większej liczby atrybutów.
Dla atrybutów o wartościach ciągłych można podjąć próbę opisania funkcyjnej zależności między nimi, jeśli taka występuje, za pomocą równania. Tego typu zależność, o ile uda się ją znaleźć, jest na ogół bardzo interesująca i przydatna. Wiąże się to z faktem, że równania o odpowiednio dużym zakresie obowiązywania (czyli zachodzące dla wielu przykładów) i stosunkowo dużej dokładności mają dość dobrą wartość predykcyjną i są łatwe do interpretacji. O ile pierwsza z tych dwóch właściwości, czyli możliwość przewidywania wartości pewnego atrybutu ciągłego na podstawie wartości innych atrybutów, może być osiągnięta łatwiej i w większym stopniu przez stosowanie metod aproksymacji funkcji, o tyle nie mogą one na ogół zapewnić drugiej z nich. Jeśli właśnie łatwość interpretacji ma priorytet, warto sięgnąć po metody odkrywania równań. Oczywiście nie jest jednak tak, że odkrywanie równań może zastąpić aproksymację funkcji. Wiele zależności ma charakter zbyt złożony, aby dały się zapisać symbolicznie w postaci czytelnych dla człowieka równań bez poświęcania przy tym dokładności w zbyt dużym stopniu. Próbę taką warto jednak podjąć, gdyż niektóre wielkości, zwłaszcza pochodzące z pomiarów i obserwacji empirycznych, jeśli rzeczywiście wiąże je bezpośrednia zależność, podlegają prawidłowościom, dla których równanie jest najlepszym opisem. Czasem zadowalamy się przy tym równaniami zachodzącymi tylko dla fragmentów dziedziny, szukając różnych równań dla różnych jej obszarów. Ze względu na, dość powierzchowną, zbieżność odkrywania równań z niektórymi aspektami działalności badawczej w obszarze nauk przyrodniczych, czasem ten rodzaj odkryć nazywa się odkryciami naukowymi.
Dla wygody i zgodnie z powszechnie przyjętym zwyczajem na czas
omawiania metod odkrywania równań odejdziemy od naszej zwykłej
terminologii i notacji. Atrybuty ciągłe, dla których będzie
poszukiwana zależność, nazwiemy zmiennymi, oznaczając je
literami
,
,
itp. Założymy, że analizowany zbiór przykładów
zawiera pewną liczbę wartości wszystkich rozważanych zmiennych, które
będziemy oznaczać dodając do odpowiedniej zmiennej dolny indeks
oznaczający kolejny numer wartości, czyli numer przykładu trenującego.
Zatem dla dwóch zmiennych
i
zawiera on pary
dla
, przy czym zazwyczaj nie będziemy
wprowadzać specjalnego oznaczenia dla ich liczby, choć oczywiście musi
ona być skończona. Odpowiednio dla trzech zmiennych
,
,
przykładami trenującymi będą trójki
dla
. Dla zbioru zmiennych
zbiór trenujący zawierający
-elementowe krotki wartości zmiennych z tego zbioru będziemy
oznaczać przez
, zakładając pewien ustalony porządek dla tych
zmiennych, tak aby przyporządkowanie poszczególnych wartości
odpowiednim zmiennym było jednoznaczne.
Przyjmiemy, że zawsze jedna ustalona zmienna jest zmienną
zależną, a pozostałe zmienne są zmiennymi niezależnymi.
Poszukiwane jest wówczas równanie opisujące zależność zmiennej
zależnej, którą zgodnie ze zwyczajem będziemy oznaczać przez
, od
zmiennych niezależnych. Wybór zmiennej zależnej ma przy tym znaczenie
podobne jak wybór atrybutu reprezentującego kategorie przy stosowaniu
algorytmów uczenia się pojęć do odkrywania zależności. Jest on na ogół
względny i wynika z zainteresowań eksperymentatora. Można wielokrotnie
poszukiwać równań dla tego samego zbioru zmiennych, przyjmując za
każdym razem inną z nich za zależną. Jeśli zmienna zależna
jest
jawnie wyodrębniona, to zbiór trenujący będziemy oznaczać przez
, przy czym
jest zbiorem zmiennych niezależnych, a w
przypadku szczególnym, gdy
, po prostu przez
.
Założymy przy tym, że w krotkach wchodzących w skład zbiorów
trenujących wartości zmiennej zależnej znajdują się na ostatniej
pozycji, czyli
| (1) |
Najprostszy rodzaj równań to funkcyjna zależność dwóch zmiennych.
Mając zbiór pochodzących z obserwacji (pomiarów) przykładów
trenujących w postaci par wartości
dla
, chcemy znaleźć funkcję
, o możliwie prostym
symbolicznym zapisie, taką że równanie
opisuje te dane
maksymalnie dokładnie. Zauważmy, że niektóre z omawianych metod
aproksymacji funkcji mogłyby być tu wykorzystane pod warunkiem
założenia szczególnych postaci tej funkcji. Ograniczając się do
funkcji liniowych, można do znalezienia określających je parametrów
(wag) wykorzystać parametryczne metody aproksymacji, a dokładniej
aproksymator liniowy (liniową regresję). Nas interesuje jednak
możliwość odkrywania zależności o w miarę dowolnym charakterze, a więc
bez założeń silnie ograniczających ich postać, a przy tym możliwych do
symbolicznego zapisania w czytelnej postaci.
Jedną z najprostszych heurystyk jest wykrywanie trendów i stałych. Jest to właściwie zestaw czterech heurystycznych reguł, które w bardzo nieformalny sposób można zapisać następująco:
Przedstawione reguły są niezwykle proste. Chociaż umożliwiają odkrycie
w efektywny sposób pewnych nietrywialnych równań, w szczególności
niektórych klasycznych praw nauk empirycznych i w wielu przypadkach
ich stosowanie zakończy się niepowodzeniem. Nie będzie on w stanie, w
szczególności, odkryć związków wielomianowych stopnia
lub
wyższych, w tym tak prostego związku jak
, w których
występują nie iloczyny dwóch zmiennych, lecz potęgi jednej zmiennej.
Zawiedzie on też zawsze, jeśli zależność
i
nie jest
monotoniczna, czyli przy wzroście wartości
wartości
zarówno
rosną dla części zbioru
, jak i maleją dla jego innych fragmentów.
W podstawowej postaci metoda wykrywania trendów i stałych nie
przewiduje również mechanizmów działania przy częściowo niepoprawnych
danych, kiedy wartości zmiennych w niektórych lub wszystkich
przykładach są obarczone pewnym błędem. Aby taką możliwość uwzględnić,
należy przy wykrywaniu wartości stałych i zależności liniowych
dopuścić odpowiednio wartości w przybliżeniu stałe (o dostatecznie
małym odchyleniu standardowym) i zależności w przybliżeniu liniowe (o
współczynniku korelacji dostatecznie bliskim
lub
).
Bardziej zaawansowaną heurystyką odkrywania prostych równań jest
wykrywanie stałych pochodnych. Technika ta umożliwia znajdowanie
dowolnych wielomianowych zależności między parą zmiennych,
przeszukując w pewien systematyczny sposób przestrzeń funkcji
wielomianowych. Przeszukiwanie to rozpoczyna się od rozważenia
możliwych składników wielomianu o najwyższym stopniu, przez kolejne
sprawdzanie składników o stopniach niższych aż do kwadratowych,
liniowych i stałych. Pomysł na znalezienie tych składników, czyli
określenie potęgi zmiennej
i odpowiadającego jej współczynnika
wielomianu, polega na badaniu pochodnych zależności
od
.
Metodą różnicową obliczane są wartości kolejnych pochodnych dla
poszczególnych przykładów (zerowego, pierwszego, drugiego rzędu itd.),
aż do uzyskania pochodnej o stałej wartości dla wszystkich przykładów.
Rząd tej stałej pochodnej i jej wartość dają informację odpowiednio
o stopniu i współczynniku najwyższego stopniem wyrazu wielomianu.
Następnie to samo podejście jest stosowane do znalezienia składników o
kolejnych niższych stopniach. Dokładny sposób postępowania najlepiej
wyjaśnia poniższy rekurencyjny algorytm.
Funkcja stałe-pochodne otrzymuje jako parametry zmienną
zależną
, zmienną niezależną
i zbiór przykładów
. Zbiór ten
przy pierwszym wywołaniu jest zbiorem trenującym
,
zawierającym pary wartości
dla
.
Funkcja zwraca wyrażenie opisujące zależność zmiennej
od zmiennej
występującą w zbiorze
. Jeśli więc jako wynik otrzymamy pewne
wyrażenie
, to odpowiednie równanie ma postać
.
Równania nie są zwracane bezpośrednio ze względu na wygodę zapisu
wywołań rekurencyjnych.
Podstawowe znaczenie dla działania algorytmu ma obliczanie na
podstawie przykładów zawartych w
wartości pochodnych zmiennej
zależnej rzędu
,
dla
oraz kolejnych
wartości
, rozpoczynając od 0. Ściślej mówiąc, w przedstawionej
postaci algorytm zamiast wartości pochodnej rzędu
oblicza jej
wartość podzieloną przez
, o czym dość łatwo się przekonać.
Obliczenia są przeprowadzane dla rosnących wartości
dopóty, dopóki
wartości
nie staną się stałe dla danych ze zbioru
. W
przypadku idealnym oznacza to jednakowe wartości
dla
wszystkich
, dla których para
znajduje się
w
, chociaż w praktyce możemy dopuścić wartości w przybliżeniu
stałe. Przyjmujemy, że wówczas wywołanie funkcji
daje w wyniku taką stałą lub ,,prawie
stałą'' wartość
w zbiorze
, co w tym drugim przypadku
może oznaczać faktycznie wartość średnią, która jest zachowywana jako
. Wówczas, jeśli
(w przeciwnym przypadku
jest określona
funkcją stałą
), to jest tworzona nowa zmienna zależna określona
jako
i ten sam algorytm jest stosowany rekurencyjnie do
odkrycia równania opisującego zależność zmiennej
od zmiennej
.
Jest to poprzedzone uzupełnieniem przykładów ze zbioru
o wartości
zmiennej
, czyli do każdego przykładu o numerze
jest dodawana
obliczona w podany sposób wartość
. Utworzenie zmiennej o podanej
definicji oraz rozszerzenie zbioru przykładów realizują odpowiednio
funkcje
i
. Zbiór
przykładów przekazywany do wywołania rekurencyjnego powstaje przez
wybranie z rozszerzonego w ten sposób zbioru
wartości zmiennych
i
, co zapisujemy jako
. Jeśli następnie wywołanie
rekurencyjne doprowadzi do znalezienia pewnej zależności
, to
oczywiście wyrażenie opisujące zależność
od
uzyskamy ponownie
dodając składnik
, czyli
.
Prosta modyfikacja opisanej metody umożliwia znaczne rozszerzenie
klasy funkcji branych pod uwagę przez system dokonujący odkryć. Oprócz
analizowania możliwych wielomianowych związków między
i
,
można więc poszukiwać takich związków między
i
,
i
itd., a także np.
i
lub
i
. Można więc nie
ograniczać się do poszukiwania zależności wielomianowych
od
,
lecz wziąć pod uwagę bardziej ogólną sytuację poszukiwania zależności
wielomianowych pewnej nowej zmiennej, zależnej bezpośrednio tylko od
, i pewnej nowej zmiennej, zależnej bezpośrednio tylko od
.
Jest to podejście analogiczne do rozszerzania reprezentacji przy
aproksymacji funkcji. Przedstawiona technika może zostać też w
sugerowany już wyżej sposób zmodyfikowana w celu dopuszczenia danych
obarczonych błędami przez rozluźnienie wymagania, aby pochodne były
stałe, czyli zastąpienie go wymaganiem, aby były one ,,prawie stałe''
-- z dokładnością określoną przez pewne parametry algorytmu.
W przedstawionych dotychczas podejściach system dokonujący odkryć stara się określić wyrażenia opisujące związki między obserwowanymi zmiennymi wyłącznie na podstawie dostępnych danych, do których jest dobierana postać równania. Mankamentem takiego podejścia jest dość mała odporność na niepoprawność tych danych, która może bądź uniemożliwić w ogóle odkrycie równania, bądź doprowadzić do jego nadmiernie skomplikowanej postaci. Alternatywne podejście może polegać na dostarczeniu automatycznemu odkrywcy wzorców równań, które należy wziąć pod uwagę. Wzorzec to nic innego niż równanie parametryzowane, które przekształca się w równanie konkretne po określeniu wartości wszystkich parametrów. Przy danym zestawie wzorców odkrywanie równań polega więc na dopasowywaniu ich do danych przez poszukiwanie odpowiednich wartości parametrów i ostatecznym wybraniu jednego równania o najlepszym dopasowaniu.
Jedną z najprostszych strategii dobierania parametrów wzorców jest
zachłanne przeszukiwanie ich przestrzeni, którego pewną wersję
przedstawimy tu dokładniej. Zgodnie z nią proces przeszukiwania
rozpoczyna się od zbioru równań początkowych, uzyskanych w wyniku
skonkretyzowania wszystkich wzorców przez przypisanie ich parametrom
różnych kombinacji wartości
, 0 i
. Następnie powtarza się
iteracyjnie podstawowy cykl generowania nowych równań przez
modyfikację parametrów i pominięcie najgorszych z nich. Jest to
przykład zastosowania przeszukiwania wiązkowego, w którym w każdej
fazie bierze się pod uwagę pewną ograniczoną liczbę najlepszych
kandydatów. Szczegóły tego podejścia przedstawia poniższy algorytm.
Funkcja
otrzymuje oprócz zwykłych
argumentów, z jakimi mieliśmy dotychczas do czynienia, dodatkowy
argument
, będący zbiorem wzorców, czyli parametryzowanych wyrażeń
zależnych od zmiennej niezależnej
. Wyrażenie zwracane przez tę
funkcję po zakończeniu jej działania jest zawsze konkretyzacją pewnego
wzorca z tego zbioru. Na ich podstawie generuje się i modyfikuje w
kolejnych iteracjach zbiór konkretnych wyrażeń
, których jakość
oceniana jest na podstawie zbioru danych
. W ogólnym
przypadku wartość funkcji oceny dla wyrażenia
na podstawie zbioru
przykładów
, oznaczana przez
, ma na celu
określenie jego przydatności do opisu występującej w zbiorze
zależności zmiennej
od zmiennej
. Można ją zdefiniować jako
wartość bezwzględną współczynnika korelacji wartości zmiennej
faktycznie występujących w zbiorze
oraz obliczonych dla
odpowiednich wartości zmiennej
wartości wyrażenia
.
Początkowy zbiór wyrażeń
powstaje na podstawie zbioru wzorców
przez ich konkretyzację, polegającą na podstawieniu za występujące w
nich parametry wszystkich kombinacji wartości
. Dla wzorca
-elementowego może w ten sposób powstać
konkretyzujących go
wyrażeń. Niektóre z nich mogą następnie z pewnych względów zostać
odrzucone jako trywialne (np. o stałych wartościach niezależnych od
wartości zmiennej
) lub źle określone matematycznie (np.
zawierające dzielenie przez 0 czy stosujące pewną funkcję
elementarną do argumentu spoza jej dziedziny). Mogą być także
pominięte wyrażenia zależne liniowo od innego wyrażenia. Za
przeprowadzenie konkretyzacji wzorców w opisany odpowiada wywołanie
funkcji
.
W kolejnych iteracjach w zbiorze
pozostawia się co najwyżej
najlepszych wyrażeń według przyjętej funkcji oceny, przy czym
oznacza ustaloną szerokość wiązki. Na ich podstawie są następnie
generowane i dodawane do zbioru
wyrażenia zmodyfikowane.
Modyfikacja każdego wyrażenia polega na zwiększeniu lub zmniejszeniu
wartości jednego lub większej liczby parametrów odpowiadającego mu
wzorca o pewną wielkość
, inicjowaną jako
, lecz
na końcu każdej iteracji redukowaną. Nazwiemy ją, ze względu na pewną
analogię do modyfikacji wag w parametrycznych aproksymatorach funkcji,
rozmiarem kroku. Zmniejszanie rozmiaru kroku jest realizowane przez
wywołanie funkcji
, która otrzymuje jako
argument dotychczasową wartość
i zwraca nową, zmniejszoną. W
najprostszym przypadku redukcja polega na mnożeniu
przez
pewien ustalony współczynnik mniejszy od
, na przykład
przez
.
W przypadku wyrażenia, będącego konkretyzacją wzorca zawierającego
parametrów, wyrażenia zmodyfikowane otrzymuje się dodając do lub
odejmując od wartości dowolnych
z tych parametrów
rozmiar kroku
. Liczba zmodyfikowanych wyrażeń wyniesie więc
, |
(2) |
Po zakończeniu wiązkowego przeszukiwania przestrzeni parametrów z
uzyskanego w ostatniej iteracji zbioru wyrażeń
jest wybierane
jedno najlepsze wyrażenie. Algorytm zapewnia, że obliczane za jego
pomocą wartości są silnie skorelowane z wartościami zmiennej
w
zbiorze
, nie zapewnia jednak, że są im równe lub chociaż
zbliżone. Ostatecznie zwracane wyrażenie musi więc powstać przez jego
dopasowanie do zbioru danych
, co w jest reprezentowane przez
operację
. Dopasowanie to może mieć postać
liniowego przekształcenia wyrażenia
, czyli ostatecznie zwracane
wyrażenie ma postać
, przy czym parametry
i
są dobrane w
taki sposób, aby wartości
były jak najbliższe wartościom
w
zbiorze
. Problem doboru tych wartości to oczywiście nic
innego niż (prosty, gdyż dotyczący dwóch zmiennych) problem regresji
liniowej.
Odkrywanie równań dotyczących więcej niż dwóch zmiennych jest zdecydowanie bardziej złożone i wymaga bardziej złożonych niż przedstawione dotąd technik. Bezpośrednie ich uogólnienie nie jest możliwe, z wyjątkiej, jak zobaczymy, najprostszej metody wykrywania trendów i stałych. Można natomiast próbować sprowadzić problem odkrycia równania dla wielu zmiennych do problemu wielokrotnego odkrywania równań dla dwóch zmiennych.
Gdy system ma eksperymentalną kontrolę nad zmiennymi, między którymi
poszukuje związków, lub gdy z góry jest dostępna dostatecznie duża
ilość danych, można zastosować technikę dekompozycji funkcji wielu
zmiennych, zgodnie z którą traktuje się je jako pewnego rodzaju
kombinacje funkcji jednej zmiennej. Założymy obecnie, że jeśli mamy
zmiennych niezależnych, to dla dowolnej występującej w zbiorze
trenującym kombinacji wartości dowolnych
z nich w zbiorze tym
jest także dostatecznie wiele różnych wartości pominiętej zmiennej
niezależnej i odpowiadających jej wartości zmiennej zależnej,
dopuszczając, że w razie potrzeby są przeprowadzane eksperymenty
niezbędne do uzyskania tych wartości. Można wówczas wybrać jedną
zmienną i podzielić zbiór trenujący na podzbiory, odpowiadające
poszczególnym występującym w nim jej wartościom, czyli dokonać
selekcji. Następnie dla każdego z tych podzbiorów można poszukiwać,
stosując rekurencyjnie ten sam algorytm, zależności zmiennej zależnej
od pozostałych zmiennych niezależnych. Po uzyskaniu tych równań można
je potraktować jako konkretyzacje wspólnego wzorca i zastosować
dowolną metodę odkrywania równań z dwiema zmiennymi do wyznaczenia
zależności parametrów tego wzorca od wartości zmiennej wybranej na
początku. Ponieważ liczba branych pod uwagę zmiennych niezależnych
zmniejsza się przy wywołaniu rekurencyjnym o
, na pewno głębokość
rekurencji nie przekroczy liczby zmiennych niezależnych. Przedstawiony
niżej algorytm precyzuje tę koncepcję.
Argumenty przedstawionej funkcji to zmienna zależna
, zbiór
zmiennych niezależnych
oraz zbiór przykładów
, o którym
zakładamy, że zawiera dostatecznie dużą ilość danych. Przy pierwszym
wywołaniu jest to zbiór trenujący
. Działanie algorytmu
rozpoczyna się od sprawdzenia kryterium stopu algorytmu. Jeśli jest
ono spełnione, to nie następują żadne wywołania rekurencyjne i zmienną
traktuje się jako stałą na zbiorze
, nawet jeśli naprawdę ma ona
różne wartości. Takie zatrzymanie rekurencji musi nastąpić w
szczegóności, jeśli zbiór
nie zawiera żadnej zmiennej. Wówczas
wprawdzie zmienna
może nie być stała na skutek niepoprawności
danych lub występowania ukrytej zależności
od innych nieznanych
zmiennych, lecz nie mając na te czynniki wpływu musimy ją
traktować jako stałą. Może się okazać, że
nawet jeśli
, to wartości zmiennej
są stałe na
zbiorze
i wtedy także nie ma potrzeby wykonywania dalszych wywołań
rekurencyjnych. Przyjmiemy zatem, że kryterium stopu obejmuje oba te
przypadki i że w każdym z nich jest zwracana stała wartość uzyskana za
pomocą wywołania funkcji
. Może to być w
rzeczywistości średnia wartość zmiennej
obserwowana w zbiorze
.
Jeśli nie jest spełnione kryterium stopu, czyli zbiór zmiennych
niezależnych
nie jest pusty i wartości zmiennej
nie są
stałe, to ze zbioru
jest wybierana pewna zmienna niezależna
.
Algorytm wywołuje w tym celu pomocniczą funkcję
. Sposób wyboru tej zmiennej z punktu
widzenia poprawności algorytmu może być zupełnie dowolny, możemy
jednak liczyć na najlepsze efekty wybierając zmienną, od której
wartości najsilniej zależą wartości zmiennej
, czyli dla której
odpowiedni współczynnik korelacji ma największą wartość (bezwzględną).
Taka strategia daje pewność, że jeśli niektóre zmienne niezależne są
nieistotne, nie będziemy im niepotrzebnie poświęcać uwagi. Dla
wybranej zmiennej
przez
oznaczamy zbiór tych przykładów
ze zbioru
, dla których ma ona pewną ustaloną wartość
. Brane
są pod uwagę wszystkie występujące w zbiorze
wartości
zmiennej
i dla każdej z nich odpowiedni zbiór przykładów
(wynik
selekcji) jest traktowany jako zbiór trenujący do uczenia się
zależności
od pozostałych zmiennych niezależnych. W tym celu są
wykonywane rekurencyjne wywołania algorytmu. Otrzymywane w ich wyniku
wyrażenia są gromadzone w zbiorze
.
Po rozpatrzeniu wszystkich wartości zmiennej
wyrażenia ze zbioru
są traktowane jako różne konkretyzacje pewnego wspólnego wzorca.
Interesuje nas wzorzec o minimalnej liczbie parametrów, którego
konkretyzacjami są wszystkie te wyrażenia. Taki wzorzec będziemy
nazywać minimalnym wzorcem. Jego wyznaczenie dla dowolnego
zbioru wyrażeń jest operacją dość prostą, w naszym przypadku na jej
uproszczenie dodatkowo wpływa fakt, że wszystkie te wyrażenia są
generowane przez ten sam algorytm, nie będziemy się więc zatrzymywać
nad sposobem realizacji funkcji
, która ma
to zadanie wykonać. Przyjmujemy, że zwraca ona trzy wartości: wzorzec
, zbiór występujących w nim parametrów
oraz oznaczany przez
zbiór zestawów wartości tych parametrów, odpowiadających
poszczególnym wyrażeniom ze zbioru
. Przyjmujemy dokładniej, że
| (3) |
Dla każdego parametru
uzyskanego wzorca pozostaje
znaleźć jego zależność od wybranej na początku zmiennej
. Jest to
prosta zależność dla dwóch zmiennych, do której znalezienia może być
użyta dowolna metoda, podstawiona w przedstawionym algorytmie w miejsce
wywołania procedury
. Poszukuje
ona zależności
od
na podstawie zbioru trenującego
. Znalezione wyrażenie zastępuje we wzorcu
parametr
. Po zastąpieniu wszystkich parametrów uzyskane wyrażenie jest
zwracane jako wynik działania algorytmu.
Powyższe podejście nie może być zastosowane, jeśli zbiór dostępnych
danych nie jest dostatecznie duży, a system nie ma eksperymentalnej
kontroli nad wartościami zmiennych i nie może pozyskać potrzebnych mu
przykładów. Musi on wtedy pozostać biernym obserwatorem dostarczanych
mu danych, które mogą nie zawierać przykładów potrzebnych do użycia
podejścia opartego na dekompozycji. Okazuje się, że pomocna może być
w tym przypadku nieco zmodyfikowana najprostsza z omawianych heurystyk
dla znajdowania prostych równań z dwiema zmiennymi: technika
wykrywania stałych i trendów. Modyfikacja polega na tym, że obecnie
zamiast wykrywać monotoniczne trendy, przy których wzrost wartości
jednej zmiennej pociąga za sobą wzrost lub spadek warości drugiej
zmiennej, staramy się wykrywać korelacje zachodzące między wartościami
zmiennych. Jeśli okaże się, że wartości
i
są pozytywnie
skorelowane, to jest tworzona nowa zmienna
, jeśli zaś
i
są skorelowane negatywnie, to jest tworzona nowa zmienna
.
Korelacje o różnym stopniu mogą występować między wieloma parami
zmiennych, co powoduje potrzebę wyboru najbardziej obiecujących.
Typowym podejściem jest wtedy zastosowanie przeszukiwania wiązkowego
zbioru możliwych zmiennych, zgodnie z którym bierze się pod uwagę
ustaloną liczbę
najsilniej skorelowanych par zmiennych, na
podstawie których tworzy się nowe zmienne. W kolejnej iteracji
ponownie oblicza się współczynniki korelacji dla wszystkich par
zmiennych, postępując w ten sposób aż do wykrycia zmiennej o stałej
wartości lub zmiennych zależnych liniowo czy też ,,prawie liniowo''.
Można liczyć na to, że w miarę tworzenia zmiennych o coraz bardziej
złożonych definicjach, uwzględniających coraz więcej pierwotnie
dostępnych zmiennych, największe współczynniki korelacji będą się
zbliżać do
lub
. Gdy dla pewnej pary zmiennych współczynnik
korelacji stanie się dostatecznie bliski
co do wartości
bezwzględnej, można przyjąć, że zmienne te łączy zależność liniowa i
zwrócić opisujące tę zależność równanie.
W praktyce często trudno liczyć na znalezienie równań dla wszystkich atrybutów ciągłych na podstawie całego dostępnego zbioru danych. Konieczne może się okazać dokonywanie dwóch rodzajów ograniczeń:
This document was generated using the LaTeX2HTML translator Version 2K.1beta (1.48)
Copyright © 1993, 1994, 1995, 1996,
Nikos Drakos,
Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999,
Ross Moore,
Mathematics Department, Macquarie University, Sydney.
The command line arguments were:
latex2html -split 0 -no_navigation mow-w14.tex
The translation was initiated by Pawel Cichosz on 2004-02-12