pobierz plik referatu
Transkrypt
pobierz plik referatu
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Rozdział 35 w Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego w da .b w Streszczenie. Współcześnie prowadzone procesy wytapiania stali stały się na tyle skomplikowane, że koniecznym staje się stosowanie inteligentnych systemów informatycznych zarządzających procesem. Praca dotyczy metod automatycznej budowy Bazy Wiedzy dla takiego systemu. Zebrano dane pomiarowe pochodzące z rzeczywistego procesu przemysłowego i wykorzystując algorytm CART zbudowano drzewa decyzji. Na ich podstawie wygenerowano automatycznie reguły w postaci zrozumiałej dla ludzkiego eksperta oraz zapisano stworzoną bazę wiedzy jako moduł programowy w języku C. Przeprowadzono weryfikację uzyskanych reguł. Praca częściowo finansowana przez Ministerstwo Nauki i Szkolnictwa Wyższego, grant Nr 6ZR9 2006 C/06742 1 Wstęp pl s. Drzewa decyzyjne (klasyfikacyjne i regresyjne) są jedną z najpopularniejszych i najskuteczniejszych metod inteligencji obliczeniowej. Stosuje się je w problemach predykcyjnych, do objaśniania struktury danych lub objaśniania modeli uzyskanych innymi metodami, a także do wydobywania wiedzy (zwykle regułowej) z danych. Czasami drzewa stosuje się również podczas wstępnej analizy danych do selekcji cech, zamiany zmiennych ilościowych na jakościowe, czy łączenia kategorii (głownie algorytm CHAID - Chi-square Automatic Interaction Detektor, [4]). Ich popularność związana jest z intuicyjną oczywistością drzewiastej struktury danych dla człowieka. Sposób interpretacji wiedzy służącej do podejmowania decyzji za pomocą drzew, jest bardzo stary i nie wywodzi się ze sztucznej inteligencji. Obecnie jednak drzewa decyzyjne stanową podstawową metodę uczenia maszynowego, co spowodowane jest ich dużą efektywnością oraz prostą implementacją programową. Drzewa mogą być interpretowane jako zestaw reguł opisujących zależność między cechami a predefiniowanymi lub odkrywanymi klasami. Oprócz klasycznych reguł (tzw. ostrych) znane są systemy do budowy alternatywnych typów reguł, jak zaproponowany w pracy [3] algorytm rozmytych drzew. Tadeusz Wieczorek, Paweł Świtała Politechnika Śląska, Wydział Inżynierii Materiałowej i Metalurgii, ul. Krasińskiego 8, 40-019 Katowice, Polska email:{tadeusz.wieczorek, pawel.switala}@polsl.pl (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała w Formalnie drzewem decyzyjnym jest graf, którego węzeł macierzysty (korzeń, ang root) jest utworzony przez wybraną cechę (atrybut), natomiast poszczególne krawędzie drzewa (gałęzie) prowadzą do węzłów potomnych, reprezentujących wartości tej cechy. Węzły potomne w pierwszym etapie podziału stają się węzłami macierzystymi w kolejnych etapach podziału zbioru danych, dokonywanych dla kolejnych atrybutów. Na najniższym poziomie otrzymuje się węzły charakteryzujące poszczególne klasy decyzyjne. W zasadzie typ cechy nie ma wpływu na algorytm tworzenia drzewa, gdyż cechy ciągłe traktuje się tak jakby były to atrybuty dyskretne, poprzez zastosowanie dyskretyzacji. Do głównych zalet drzew decyzyjnych można zaliczyć: − możliwość reprezentowania dowolnie złożonych pojęć, − relatywnie niewielka zajętość pamięci, − czas przeszukiwania drzewa ograniczony jest liniowo przez maksymalną głębokość drzewa, − czytelność dla człowieka drzewiastej reprezentacji wiedzy, − łatwość przejścia od reprezentacji drzewiastej do reprezentacji regułowej, − odporność na nietypowe wartości cech (wartości odstające), − odporność nawet na dużą liczbę cech nie wpływających na zmienną wyjściową, natomiast do głównych wad: − algorytm budowy drzewa testuje wartość jednego atrybutu na raz, co powoduje niepotrzebny rozrost drzewa, dla danych gdzie poszczególne atrybuty zależą od siebie (inne metody reprezentacji wiedzy mogą być w tym przypadku o wiele mniej złożone), − kosztowne przedstawianie alternatyw w reprezentacji drzewiastej, − drzewa decyzyjne trudno jest inkrementacyjnie douczać (aktualizować), choć znane są takie rozwiązania, np. [5], , − niemożność opisania tak złożonych zależności jak np. sieci neuronowe − niestabilność drzew, nawet niewielka zmiana przypadków uczących może skutkować istotną zmianą struktury drzewa. W pracy wykorzystano drzewa decyzyjne do tworzenia bazy wiedzy Inteligentnego Systemu Ekspertowego (ISE), którego budowę i zastosowanie opisano w [6], [7]. Do budowy drzew decyzyjnych wykorzystano algorytm drzew klasyfikacyjnych i regresyjnych, w wielu pracach, np. [2] oznaczany skrótem CART. da .b w w Algorytm CART pl s. 2 Drzewa klasyfikacyjne i regresyjne (Classification and Regression Trees – CART, C&RT) [1] są jednym z najpopularniejszych i najdokładniejszych algorytmów drzew decyzji. Najogólniej, celem analizy z zastosowaniem algorytmu drzew decyzyjnych jest znalezienie zbioru logicznych warunków podziału typu: jeżeli-to, prowadzących do jednoznacznego zaklasyfikowania obiektów. W metodzie CART zastosowano binarny podział węzłów, tak że z każdego węzła wychodzą dwie gałęzie zakończone kolejnymi podwęzłami. Dla każdego węzła wyznaczana jest etykieta klasy, jako najbardziej liczna reprezentacja wektorów z danej klasy. W CART stosuje się różne kryteria statystyczne określające reguły podziału drzewa (np. statystyka chi-kwadrat, statstyka G-kwadrat [4]). W większości bazują one na różnego rodzaju entropiach. Autorzy algorytmu sugerują używanie indeksu Giniego (1), zwanego również miarą zanieczyszczenia węzła: 446 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego C QG = 1 − ∑ p(C i q) 2 (1) i =1 w gdzie p(Ci|q) jest prawdopodobieństwem warunkowym, czyli względną liczbą wektorów z klasy Ci pokrytych przez dany węzeł q, dla którego liczone jest kryterium. Przy prawdopodobieństwach a priori oszacowanych na podstawie wielkości klas oraz równych kosztach błędnej klasyfikacji miarę Giniego (1) oblicza się jako sumę iloczynów wszystkich par proporcji klas w danym węźle. Osiąga ona wartość maksymalną, gdy liczności klas w danym węźle są równe. Miara Giniego osiąga wartość zero, gdy w danym węźle wystąpi tylko jedna klasa. Metoda CART (wyczerpującego poszukiwania podziałów jednowymiarowych) działa w ten sposób, że szuka się podziału, który maksymalizuje redukcję wartości wybranej miary dobroci dopasowania. Doskonałe dopasowanie oznacza doskonałą klasyfikację. W przypadku nominalnych lub porządkowych zmiennych predykcyjnych w metodzie CART sprawdzane są wszystkie możliwe podziały dla każdej zmiennej predykcyjnej, w celu znalezienia podziału, przy którym następuje największa poprawa dobroci dopasowania (lub największa redukcja braku dopasowania). Dla nominalnych zmiennych predykcyjnych z k poziomami występuje (2(k -1) – 1) możliwych podziałów między dwoma zbiorami poziomów tego predyktora. Dla predyktorów porządkowych z k różnymi poziomami występuje (k -1) środkowych punktów między różnymi poziomami. Widać zatem, że liczba możliwych podziałów, które muszą być przeanalizowane może być bardzo duża, jeśli będziemy mieli dużą liczbę predykatorów, z wieloma poziomami, które muszą być analizowane w wielu węzłach. Innym często spotykanym kryterium jest miara entropii Shannona (2). Autorzy algorytmu zaproponowali również metodę pozwalającą na przetwarzanie danych niekompletnych, poprzez wyznaczenie dla każdego węzła alternatywnych atrybutów, analizowanych gdy aktualna wartość najlepszego atrybutu użytego w węźle jest niedostępna. Dlatego algorytm może być również wykorzystywany dla zbiorów danych cechujących się licznymi brakami. da .b w w C QE = −∑ p (C i q )log 2 p(C i q ) (2) i =1 pl s. Techniki budowy drzew bazują na algorytmach heurystycznych, nie na dokładnych metodach estymacji. Zamiast analitycznie otrzymywanych równań mamy tu pewne algorytmy postępowania. W praktyce często dają one użyteczne i powtarzalne wyniki. Jednak konkretne rozwiązania nie są "dokładne" w takim sensie, że inne w innych analizach, wykonywanych przez innych badaczy, otrzymamy zawsze identyczny lub przynajmniej bardzo podobny wynik (dla tych samych danych i tego samego algorytmu). W tym aspekcie, techniki te nie wyróżniają się spośród innych algorytmów uczenia maszyn, które wybierane są pod względem użyteczności, mimo, że wyniki ani nie są absolutnie jednoznaczne (np. możemy mieć różne drzewa, podobnie użyteczne), ani w pełni interpretowalne, jak w przypadku sieci neuronowych. 3 Ocena dokładności algorytmu drzew decyzyjnych Dla rozstrzygnięcia dokładności algorytmu drzew decyzyjnych kwestią fundamentalną jest jak mierzyć podobieństwo, w szczególności dla wielowymiarowych danych. Metody wykorzystywane w tworzeniu drzew decyzyjnych opierają się na przekształceniu przykładów 447 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała w uczących na n-wymiarową przestrzeń geometryczną ze zdefiniowaną odległością. W podejściu takim zakłada się, że odległości mierzone względem każdego z wymiarów są porównywalne. Natomiast poszczególne cechy są różnego typu (ilościowe i jakościowe) i opisują różne pod względem fizycznym wielkości. Poza tym zakłada się, że można obiektywnie zdefiniować podobieństwo nawet pozostając w ramach tylko jednego tylko wymiaru (cechy), natomiast wykorzystując miary podobieństwa oparte na nieliniowych skalach można budować różne, istotnie odbiegające od siebie metryki i trudno stwierdzić, która z nich lepiej oddaje podobieństwo. Konstruując drzewo decyzyjne na podstawie zbioru przykładów poszukuje się takich obszarów w przestrzeni cech, w których zmienna decyzyjna przyjmuje określoną wartość. W ten sposób są skonstruowane w praktyce wszystkie algorytmy tworzenia drzew decyzyjnych, zarówno klasyfikacyjnych jak i regresyjnych. Algorytmy te poszukują optymalnej segmentacji przestrzeni cech, wykorzystując różne kryteria kolejności wyboru cechy i różne kryteria stopu. Jedyne różnice w ich implementacjach polegają na odpowiedniej konstrukcji kryterium stopu. Ma to istotny wpływ na wygląd drzewa decyzyjnego, gdyż kolejność wyboru cech determinuje stopień komplikacji drzewa. Jako reguły stopu stosuje się: − minimalną liczność węzła podlegającego podziałom (podział zostaje zatrzymany na tym węźle, jeśli liczba przykładów jest mniejsza niż założona liczebność), − minimalną liczność węzła powstającego w wyniku podziału, − maksymalną liczbę poziomów drzewa, − przyjęcie progu dokładności; podziały zostaną zatrzymane, jeśli kolejny podział daje zysk informacyjny mniejszy niż przyjęty próg, − inne metody, analogiczne do metod regularyzacyjnych używanych w sieciach neuronowych, lub oparte są na warunku tzw. minimalnej długości opisu (ang. minimum description length). Wybór kryterium stopu jest ważnym zagadnieniem, bo jeśli podział zostanie zatrzymany zbyt wcześnie, powstałe drzewo będzie charakteryzowało się dużymi błędami na zbiorze uczącym. Wybór cechy, według której będzie wykonywana segmentacja przestrzeni danych wejściowych jest najważniejszą częścią algorytmu drzew decyzyjnych. Kolejność wyboru cech w znaczącym stopniu wpływa na wygląd drzewa. Wybór odpowiedniej cechy ze zbioru jest dokonywany albo w oparciu o kryteria teorioinformacyjne albo statystyczne. System wyboru właściwej dla podziału przestrzeni cechy oparty jest na określeniu funkcji ewaluacyjnej. Najczęściej jest to funkcja mierząca różnicę prawdopodobieństw występowania określonej klasy decyzyjnej w zbiorze wyjściowym przykładów (przed podziałem) i w zbiorze po podziale lub między różnymi podzbiorami zbioru wyjściowego. Do oceny wyboru najlepszej dla dokonania podziału cechy wykorzystuje się również miarę przyrostu informacji, po podziale. Inne stosowane funkcje testowania poprawności dokonanego podziału opisane są np. w pracy [2]. W drzewach CART używane są trzy sposoby oceny dokładności: resubstytucja (3), próba testowa (4) i v-krotna walidacja krzyżowa (5). Ocena według resubstytucji polega na obliczeniu oczekiwanego błędu kwadratowego, bazując na predykcji drzewa d: da .b w w pl s. R(d ) = 1 N N ∑(y i =1 i − d ( xi )) 2 (3), gdzie próba ucząca składa się z N przykładów (xi,yi). Ocena na bazie próby testowej polega na podziale danych na dwie grupy Z1 i Z2. Ocena dokładności obliczana jest następująco: 448 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego 1 ( yi − d ( 2) ( xi )) 2 ∑ N 2 ( xi yi )∈Z2 R(d ) = (4), w gdzie N2 jest liczbą przypadków w grupie Z2, która nie była wykorzystywana przy budowie drzewa. W v-krotnej walidacji krzyżowej wszystkie przypadki dzielone są na v grup Z1 , Z2 , ..., Zv zwykle takiej samej liczności. Poszczególne grupy danych wykorzystywane są naprzemiennie do budowy drzewa i do jego walidacji. Ocena dokładności obliczana jest w następujący sposób: w R cv (d ) = 1 Nv ∑ ∑ (y v ( xi yi )∈Z v i − d ( v ) ( xi ) ) 2 (5) da .b w W trakcie tworzenia drzewa decyzyjnego może nastąpić przeuczenie (podobnie jak w przypadku sieci neuronowych), czyli zbyt dobre dopasowanie do przykładów uczących. Drzewo takie jest zbyt złożone i nie zapewnia odpowiedniej generalizacji. Dlatego używa się metod służących do uproszczenia struktury drzewa, tak aby zminimalizować błąd testowania (powstający podczas testowania drzewa przykładami które nie były używane w trakcie uczenia) – rys.1. 120 100 80 60 błąd obliczony w oparciu o zbiór testowy miejsc e przyc ięcia 40 pl s. Błąd predykcji 20 błąd obliczony w oparciu o zbiór uczący 0 -20 0 1 2 3 4 5 6 7 Głębokość drzewa 8 9 10 11 12 13 Rys. 1. Wybór punktu przycięcia drzewa klasyfikacyjnego Tak więc, po zakończeniu podziałów przestrzeni decyzyjnej dokonuje się wyboru właściwej wielkości drzewa. Często stosowanymi metodami oceny wielkości są walidacja krzyżowa i przycinanie (ang. pruning). Zatrzymanie rozrostu drzewa następuje, gdy błąd na zbiorze walidacyjnym osiąga minimum (rys.1, rys.2). 449 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała 120 100 80 miejsce przycięcia w 60 40 w Błąd predykcji współczynnik błędu po wielokrotnej walidacji krzyżowej 20 koszt resubstytucji 0 w -20 0 1 2 3 4 5 6 7 8 9 10 11 12 13 Głębokość drzewa Rys. 2. Wybór punktu przycięcia drzewa regresyjnego da .b 4 Opis modelu i wyniki badań Celem prowadzonych badań było automatyczne wygenerowanie reguł na podstawie rzeczywistych danych pomiarowych rejestrowanych podczas procesu elektrostalowniczego w jednej z hut krajowych [6]. Dane te zapisywane były w czasie rzeczywistym ze sterowników SIMATIC bezpośrednio do bazy danych. Do analizy wybrane zostały dane opisujące parametry procesu wytwarzania tylko jednego gatunku stali – S235JRG2 (tabela 1). Do automatycznej budowy bazy wiedzy użyty został algorytm CART zaimplementowany w systemie analizy danych Statistica Data Miner. S235JRG 2,l Skład 1.0038/01 chemiczny Wg zamówien ia Wg normy: Rodzina: D22 Wymagany: pl s. Tabela 1. Wymaganie składu chemicznego dla stali S235JRG2. C Mn Si P S Cr Ni Cu Mo 0,11 0,3 0,15 - - - - - 0,15 0,45 0,3 0,04 0,04 0,2 0,2 0,05 0,11 0,38 0,2 - - - - - - 0,14 0,43 0,25 0,02 0,04 0,2 0,2 0,2 0,05 Temperatura: Likwidus Odle wania 1518 1558 Zbiór danych obejmował 987 wytopów. Każdy wytop charakteryzowany był 10 cechami (atrybutami), których selekcję przeprowadzono w oparciu o analizę technologiczną procesu, wybierając poniższe cechy jako najistotniejsze: − C – zwartość węgla (%), − Mn – zawartość manganu (%), − Si – zawartość krzemu (%), − P – zawartość fosforu (%), 450 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego w − S – zawartość siarki (%), − Cr – zawartość chromu (%), − Ni – zawartość niklu (%), − Cu – zawartość miedzi (%), − Mo – zawartość molibdenu (%), − waga – waga spustu z pieca łukowego (Mg). Decyzje, które są podejmowane w analizowanym procesie dotyczą ilości dodatków, koniecznych dla osiągnięcia żądanego końcowego składu chemicznego stali. Są to: − w_alu – aluminium (kg), − w_caf2 – fluoryt (kg), − w_casi – wapniokrzem (kg), − w_dolo – dolomit palony (kg), − w_mn_w – żelazomangan (kg), − w_simn – krzemomangan (kg), − w_woll – wollastonit (kg). Opis statystyczny zmiennych wejściowych i wyjściowych przedstawiono w tabeli 2. w w Tabela 2. Statystyczny opis atrybutów badanego procesu technologicznego Średnia 0,095 0,446 0,128 0,013 0,043 0,072 0,090 0,277 0,018 66,126 0,572 16,550 17,585 0,680 71,327 34,728 0,789 Mediana 0,096 0,452 0,130 0,013 0,043 0,070 0,090 0,278 0,020 67,000 0,000 0,000 21,000 0,000 70,000 22,000 0,000 Minimum 0,035 0,146 0,013 0,006 0,014 0,030 0,050 0,096 0,010 13,300 0,000 0,000 0,000 0,000 0,000 0,000 0,000 Maksimum 0,356 1,250 0,340 0,034 0,084 0,220 0,220 0,544 0,110 86,100 47,000 211,000 63,000 284,000 473,000 539,000 270,000 Odch.std 0,017 0,067 0,035 0,004 0,010 0,022 0,014 0,055 0,007 5,450 3,685 29,324 8,729 12,566 49,723 45,567 14,253 da .b Błąd std. 0,001 0,002 0,001 0,000 0,000 0,001 0,000 0,002 0,000 0,173 0,117 0,933 0,278 0,400 1,583 1,450 0,454 Skośność 3,842 1,182 -0,215 1,417 0,303 1,209 1,728 -0,007 3,998 -5,842 7,852 2,169 -0,936 19,172 1,708 2,322 18,109 pl s. C Mn Si P S Cr Ni Cu Mo waga w_alu w_caf2 w_casi w_dolo w_mn_w w_simn w_woll Z uwagi na to, że na podstawie tabeli 2 nie można wyciągnąć wniosków na temat rozkładów statystycznych poszczególnych zmiennych na rys.3 przedstawiono wybrane histogramy. Na rys. 4 przedstawiono w postaci wykresów jednowymiarowych, wybrane zależności obrazujące stopień rozproszenia danych i odstępstwa od średniej. Oba rysunki pokazują, że badane zmienne mają rozkłady bardzo niesymetryczne, daleko odbiegające od rozkładów normalnych. Także wariancje poszczególnych zmiennych są bardzo duże oraz występuje wiele tzw. wartości odstających. Analizowanie procesów opisywanych zmiennymi o takich rozkładach jest bardzo trudne, dlatego sięgnięto po metody inteligencji obliczeniowej, jak drzewa decyzyjne. 451 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała 900 70 0 800 60 0 700 50 0 600 40 0 500 30 0 400 300 200 10 0 0 L iczba przypad kó w w L iczba przypad kó w 20 0 100 0,0 0,1 0,2 0,3 0,4 0,5 0,6 cu [%] 0 0 10 20 30 40 50 60 70 80 90 100 wag a [Mg] 60 0 70 0 50 0 w 80 0 60 0 40 0 50 0 30 0 40 0 30 0 L iczba przypad kó w 10 0 10 0 0 -4 0 0 -2 0 40 20 80 60 120 100 L iczba przypad kó w w 20 0 20 0 160 140 180 200 2 40 2 20 fluoryt [kg] 0 -100 0 100 2 00 30 0 400 500 6 00 -50 50 150 2 50 35 0 450 5 50 da .b siliko mangan [kg] Rys. 3. Wybrane histogramy rozkładu zmiennych 0,6 0,40 0,35 0,5 0,30 0,4 0,25 0,3 0,20 0,05 0,00 0,2 0,1 0,0 c 300 220 200 250 180 160 200 140 120 150 100 cu 100 80 40 20 0 w_caf2 wollastonit [k g] fluoryt [kg] Mediana = 0 25%-75% = (0, 31) 1%-99% = (0, 131) Odstające Ekstremalne 60 -20 Mediana = 0,278 25%-75% = (0,247, 0,311) 1%-99% = (0,125, 0,406) Odstające Ekstremalne pl s. Mediana = 0,096 25%-75% = (0,087, 0,103) 1%-99% = (0,05, 0,129) Odstające Ekstremalne 0,10 cu [%] c [%] 0,15 Mediana = 0 25%-75% = (0, 0) 1%-99% = (0, 0) Odstające Ekstremalne 50 0 -50 w_woll Rys. 4. Przykładowe rozrzuty statystyczne wybranych zmiennych 452 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego Wstępnie przebadano istnienie korelacji liniowych między zmiennymi wejściowymi i wyjściowymi (w tabeli 3 zawarto obliczone współczynniki korelacji liniowej Pearsona), stwierdzając brak korelacji, a tym samym brak możliwości zastosowania prostych modeli regresyjnych dla rozwiązania tego zagadnienia. Tabela 3. Korelacje między zmiennymi wejściowymi i wyjściowymi w analizowanym procesie w c -0,21 -0,03 -0,03 0,15 -0,15 0,37 0,15 mn 0,11 -0,16 -0,07 0,22 -0,09 -0,10 0,23 si -0,07 -0,10 -0,04 0,02 -0,19 0,14 0,01 p -0,01 0,19 -0,01 -0,01 -0,08 0,01 -0,02 s -0,14 0,37 0,03 -0,04 0,01 0,00 -0,04 cr -0,06 0,18 0,05 -0,01 -0,22 0,00 -0,02 ni -0,04 0,05 0,00 -0,06 0,05 -0,06 -0,05 cu -0,12 0,24 0,12 -0,14 0,00 0,07 -0,13 mo 0,06 -0,04 0,05 0,05 0,01 -0,09 0,04 waga 0,08 -0,07 0,03 0,03 -0,01 0,01 0,03 w w w_alu w_caf2 w_casi w_dolo w_mn_w w_simn w_woll da .b Wykorzystując opisany algorytm CART i metody oceny dokładności drzewa decyzyjnego przeprowadzono proces budowy drzewa oraz analizę błędów, co pozwoliło na zatrzymanie procesu rozrostu drzewa unikając przeuczenia. Uzyskane wyniki zebrano w tabeli 4. Tabela 4. Wyniki predykcji drzewa CART dla stali S235JRG2 w_alu w_caf2 w_casi w_dolo w_mn_w w_simn w_woll 0,000 0,000 0,000 0,000 0,000 0,000 0,000 Maksimum 47,000 211,000 63,000 284,000 473,000 539,000 270,000 0,572 16,550 17,585 0,680 71,327 34,728 0,789 565,00 16335,00 17356,00 671,00 70400,00 34277,00 779,00 3,685 29,324 8,729 12,566 49,723 45,567 14,253 0,250 7,347 1,567 0,000 19,188 19,009 0,000 0,406 11,518 3,281 0,000 23,031 23,266 0,000 0,092 5,704 1,046 0,000 15,651 14,585 0,000 0,014 0,055 0,014 0,000 0,087 0,045 0,000 Średnia Suma Odchylenie standardowe Błąd standardowy średni Błąd średnio kwadratowy Błąd bezwzględny Błąd względny pl s. Minimum Przykładowe zbudowane drzewa decyzyjne przedstawiono na rys.5 i rys.6. Drzewa przedstawione w tej postaci pozwalają na analizę zależności przez ekspertów, a tym samym na ostateczne potwierdzenie poprawności implementacji algorytmu. 453 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała ID=1 N=987 Śr=0.679838 Var: 157.747547 mn <= 0.986000 ID=2 > 0.986000 ID=3 N =986 N=1 Śr=211.000000 V ar =0. 000000 Śr=0.466531 Var: 112.999387 w cu <= 0.117500 ID =4 > 0.117500 N=5 ID=5 N=981 Śr=56.800000 Śr=0.179409 Var: 12904.960000 Var: 31.543755 w c <= 0.105500 ID=6 N=4 waga > 0.105500 ID=7 <= 71.450000 N=1 ID=8 > 71.450000 N=959 ID=9 N=22 Śr=0.000000 Śr=284.000000 Śr=0.000000 Śr=8.000000 Var=0.000000 Var=0.000000 Var=0.000000 Var: 1344.000000 s w <= 0.032500 ID=10 > 0.032500 ID=11 N=1 N=21 Śr=176.000000 Śr=0.000000 Var=0.000000 Var=0.000000 da .b Rys. 5. Przykładowe drzewo predykujące ilość dodatku dolomit (zmienna w_dolo) ID=1N=987 Śr=0.789260 Var: 202.946470 mn <= 0.986000 ID=2N=986 > 0.986000 ID=3 N=1 Śr=0.533469 Var: 138.573423 Śr=253.000000 Var=0.000000 cu <= 0.117500 ID=4 N=5 > 0.117500 ID=5N=981 Śr=0.278287 Var: 74.239580 Śr=50.600000 Var: 10241.440000 waga <= 71.450000 ID=8N=959 Śr=0.003128 Var: 0.005204 c <= 0.123500 ID=10 N=942 Śr=0.001062 Var: 0.001060 > 0.123500 ID=11N=17 Śr=0.117647 Var: 0.221453 s s <= 0.032500 > 0.032500 ID=22 N=1 ID=23N=21 Śr=270.000000Śr=0.000000 Var=0.000000 Var=0.000000 mn <= 0.027500 ID=12N=31 > 0.027500 ID=13 N=911 <= 0.417500 ID=18 N=2 > 0.417500 ID=19N=15 Śr=0.032258 Var: 0.031217 Śr=0.000000 Var=0.000000 Śr=1.000000 Var: 1.000000 Śr=0.000000 Var=0.000000 s <= 0.026500 ID=14N=27 Śr=0.000000 Var=0.000000 > 71.450000 ID=9 N=22 Śr=12.272727 Var: 3163.016529 pl s. c <= 0.105500 > 0.105500 ID=6 N=4 ID=7 N=1 Śr=0.000000Śr=253.000000 Var=0.000000Var=0.000000 > 0.026500 ID=15 N=4 Śr=0.250000 Var: 0.187500 c <= 0.135500 > 0.135500 ID=20 N=1 ID=21 N=1 Śr=2.000000 Śr=0.000000 Var=0.000000Var=0.000000 c <= 0.093000 > 0.093000 ID=16 N=1 ID=17 N=3 Śr=1.000000 Śr=0.000000 Var=0.000000 Var=0.000000 Rys. 6. Przykładowe drzewo predykujące ilość dodatku wollastonit (zmienna w_woll) 454 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 Wykorzystanie algorytmu CART do automatycznego tworzenia bazy wiedzy systemu ekspertowego w Reguły decyzyjne zawarte w wynikowych drzewach, zbudowanych w oparciu o algorytm CART mogą być zapisane z wykorzystaniem języka programowania wyższego poziomu (C/C++, STATISTICA Visual Basic i PMML ). Powstały w ten sposób moduł programowy może być wykorzystany do automatycznego obliczania ilości dodatków na podstawie wprowadzonego wektora zmiennych wejściowych, które są parametrami konkretnego, aktualnie prowadzonego procesu technologicznego. Tak więc, otrzymane drzewo, np. obliczające potrzebną ilość wollastonitu można przedstawić w postaci poniższego kodu źródłowego programu: da .b w w double ret; if( Rnr[5] <= 9.86000000000000e-001 ) { if( Rnr[11] <= 1.17500000000000e-001 ) { if( Rnr[4] <= 1.05500000000000e-001 ) { ret = 0.00000000000000e+000; } else if( Rnr[4] > 1.05500000000000e-001 ) { ret = 2.53000000000000e+002; } } else if( Rnr[11] > 1.17500000000000e-001 ) { if( Rnr[29] <= 7.14500000000000e+001 ) { if( Rnr[4] <= 1.23500000000000e-001 ) { if( Rnr[8] <= 2.75000000000000e-002 ) { if( Rnr[8] <= 2.65000000000000e-002 ) { ret = 0.00000000000000e+000; } else if( Rnr[8] > 2.65000000000000e-002 ) { if( Rnr[4] <= 9.30000000000000e-002 ) { ret = 1.00000000000000e+000; } else if( Rnr[4] > 9.30000000000000e-002 ) { ret = 0.00000000000000e+000; } } } else if( Rnr[8] > 2.75000000000000e-002 ) { ret = 0.00000000000000e+000; } } else if( Rnr[4] > 1.23500000000000e-001 ) { if( Rnr[5] <= 4.17500000000000e-001 ) { if( Rnr[4] <= 1.35500000000000e-001 ) { ret = 2.00000000000000e+000; } else if( Rnr[4] > 1.35500000000000e-001 ) { ret = 0.00000000000000e+000; } } else if( Rnr[5] > 4.17500000000000e-001 ) { ret = 0.00000000000000e+000; } } } else if( Rnr[29] > 7.14500000000000e+001 ) { if( Rnr[8] <= 3.25000000000000e-002 ) { ret = 2.70000000000000e+002; } else if( Rnr[8] > 3.25000000000000e-002 ) { ret = 0.00000000000000e+000; } } } pl s. 455 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008 Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008 T. Wieczorek, P. Świtała } else if( Rnr[5] > 9.86000000000000e-001 ) { ret = 2.53000000000000e+002; } return ret; } Podsumowanie w 5 Literatura 1. 3. 4. 5. 6. 7. Breiman L., Friedman J.H., Oslhen R.A., Stone C.J., Classification and Regression Trees. Wadsworth International Group, Belmont CA.1984. Duda R.O., Hart P.E., Stork D.G. (2001). Pattern classification. John Wiley & Sons, New York. Ichihashi H., Shirai T., Nagasaka K., Miyoshi T., Neuro-fuzzy ID3: a method of inducing fuzzy decision trees with linear programming for maximizing entropy and an algebraic method for incremental learning, Fuzzy Sets and Systems 81, 1996, pp. 157167. Łapczyński M.: Drzewa klasyfikacyjne i regresyjne. StatSoft Polska, 2007. Utgoff P.E., Incremental Induction of Decision Trees, Proc. of the Eleventh International Conference on Machine Learning. Morgan-Kaufmann 1994, p. 318-325. Wieczorek T., Mączka K., Świtała P. (2007). Automatyczne tworzenie baz wiedzy z wykorzystaniem drzew decyzyjnych. w: Bazy danych – nowe technologie. Architektura, metody formalne i zaawansowana analiza danych. Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red). WKŁ Warszawa, str. 385-392. Wieczorek T.: Intelligent control of the electric-arc steelmaking process using artificial neural networks. Comp. Methods in Material Science, vol.6, No 1, 2006, pp. 9-14. pl s. 2. da .b w w Tworzenie baz wiedzy systemów ekspertowych jest procesem trudnym i czasochłonnym. Wymaga bowiem współpracy eksperta, inżyniera wiedzy i informatyka. Dlatego metody pozwalające na automatyczne tworzenie baz wiedzy, bazując na wielkościach mierzonych bezpośrednio w procesie technologicznym, np. przy użyciu drzew decyzji są szeroko rozwijane w kraju i na świecie. Przeprowadzone badania i uzyskane wyniki potwierdziły możliwość automatycznego tworzenia bazy wiedzy na podstawie rzeczywistych danych pochodzących z przemysłowego procesu metalurgicznego. Zastosowany algorytm CART oraz opisana metoda analizy błędów, pozwalająca na zatrzymanie procesu rozrostu drzewa na optymalnym poziomie wykazały bardzo wysoką dokładność predykcji zbudowanych drzew decyzyjnych. W pracy [6] przedstawiono wyniki drzew budowanych w oparciu o algorytm C4.5, gdzie uzyskano niski odsetek poprawnie klasyfikowanych danych. Porównując je z otrzymanymi z wykorzystaniem algorytmu CART, należy zauważyć znaczną poprawę dokładności. Algorytm CART jest wyraźnie odporny na braki danych i wartości odstające, co w badanych procesach występuje powszechnie (por. rys.3 i rys.4). W najbliższej przyszłości autorzy planują zastosowanie drzew decyzyjnych do budowania baz wiedzy dla kolejnych procesów technologicznych, badanych w ramach realizowanego projektu Nr 6ZR9 2006 C/06742. 456 (c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008