SZTUCZNA INTELIGENCJA RAPID MINER STUDIO Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej Laboratorium Biocybernetyki 30-059 Kraków, al. Mickiewicza 30, paw. C3/205 horzyk@agh.edu.pl, Google: Adrian Horzyk Adrian Horzyk
RapidMiner Studio 6.5 Basic (Free) RapidMiner Studio na ekranie startowym zaprasza nas na krótki kurs obsługi (Tutorials) oraz przewodnika umożliwiającego stworzenie rozwiązania do analizy danych. Możemy też utworzyć nowy proces lub otworzyć istniejący.
RapidMiner Studio 6.5 Basic (Free) RapidMiner Studio to jedno z najlepszych darmowych narzędzi do testowania działania różnych metod z zakresu inteligencji obliczeniowej nawet bez znajomości programowania. Rapid miner umożliwia tworzenie programów z bloczków, zwanych operatorami. Instalacja: https://my.rapidminer.com/nexus/account/index.html#downloads Po instalacji i uruchomieniu wybieramy wersję BASIC, która jest dla darmowa!
RapidMiner Samouczek (Tutorials) RapidMiner ma wbudowany samouczek, który pozwala zdobyć podstawowe umiejętności obsługi tej aplikacji. RapidMiner pozwala: Podłączać różne źródła danych Analizować i filtrować dane Projektować modele (Design – F8) Walidować modele pod kątem ich poprawności i zdolności do uogólniania Oglądać modele i wyniki (Results – F9)
Przykładowe zbiory uczące Zbiory uczące zawierają dane, które możemy wykorzystać do budowy modelu (poprzez jego adaptację – tzw. uczenie) lub do jego testowania. RapidMiner udostępnia kilka przykładowych zbiorów uczących, które można wykorzystać do uczenia tworzonych modeli. Można też tworzyć własne lokalne repozytoria danych i procesów modelujących te dane:
Przykładowe procesy i modele RapidMiner posiada bibliotekę gotowych modeli obliczeniowych, które można uruchamiać oraz modyfikować.
Operatory – cegiełki modeli Operatory – to bloczki, z których budujemy określony model obliczeniowy. Każdy operator posiada pewną liczbę wejść lub/i wyjść, które mogą być w różny sposób łączone z innymi operatorami. Niektóre posiadają również konfigurowalne parametry oraz hierarchiczną strukturę wewnętrzną składającą się z wybranych operatorów.
Tworzenie nowego modelu Tworzenie nowego modelu polega na przeciąganiu wybranych bloczków z lewej strony ekranu do okna głównego „Main Process”, w którym bloczki łączymy w zależności od celu jaki chcemy uzyskać. Ponadto niektóre bloczki podłączamy do ramy modelu reprezentującej: inp – input, res – result Następnie dla poszczególnych bloczków zmieniamy parametry ich działania z prawej strony ekranu.
Dane uczące – zbiór uczący Najpierw skorzystamy z przykładowych zbiorów uczących dostępnych w RapidMinerze: Szerokość płatka Długość płatka Szerokość liścia Ten zbiór składa się ze 150 kwiatków Irysów, opisanych przy pomocy 4 parametrów. Długość liścia Nazwy klasy
Wszystkie dane ze zbioru Iris
Charakterystyka danych ze zbioru Iris RapidMiner ma wbudowane narzędzia analizy danych, ich rozkładu w przestrzeni, liczności oraz podaje informację o brakujących danych dla poszczególnych wzorców danych (training samples)
Wykres histogramu danych dla atrybutu Można wybrać spośród wielu różnych wykresów ten, który pozwoli nam przeglądnąć rozkład danych w przestrzeni.
Wykres histogramu danych dla atrybutu Można wybrać spośród wielu różnych wykresów ten, który pozwoli nam przeglądnąć rozkład danych w przestrzeni.
Wykres histogramu danych dla atrybutu Można wybrać spośród wielu różnych wykresów ten, który pozwoli nam przeglądnąć rozkład danych w przestrzeni.
Tworzenie i walidacja modelu Dokładność modelu
Porty dla połączeń pomiędzy operatorami inp – input – wejście (danych) out – output– wyjście (danych) res – result – wyniki (np. obliczeń z modelu) mod – model – model do dalszego wykorzystania unl – unlabeled – wejście danych nie posiadających etykiety/klasy tra – training – wejście danych uczących (a training data set) tes – testing – wejście danych testujących (a testing data set) per – performance – wyjście określające efektywność i poprawność modelu thr – through – opcjonalnie podłączone wejście przechodzi przez ten operator bez zmian na jego wyjście par – parameters – parametry, np. wyznaczone wewnątrz operatora sto – store – zapisywanie danych na serwerze aplikacji lub w danych sesji exa – example set – zbiór wzorców (np. uczących, testujących) ori – original – oryginalny zbiór danych jest przesyłany na wyjście bez zmiany danych wyjściowych (etykiet (labels), np. klas) pre – preprocessing model – dostarczenie modelu wstępnego…
Operatory RapidMinera Opis specyfikacji wszystkich operatorów dostępny na stronie: http://docs.rapidminer.com/studio/operators/ Rodzaje operatorów: Operatory kontroli procesów Operatory rozszerzeń Operatory dostępu do repozytoriów Operatory importu danych Operatory eksportu danych Operatory transformacji danych Operatory tworzenia modeli obliczeniowych Operatory ewaluacji i walidacji Operatory konektorów
Najważniejsze operatory RapidMinera Operator umożliwiający zaimportowanie danych z pliku. Możemy też dane zapisywać w formacie bazy danych Accessa, a następnie je odczytać i wykorzystać do dalszych obliczeń lub budowy modeli: Możemy również w prosty sposób importować dane z arkusza Excel: Możemy również w prosty sposób importować dane w formacie XML:
Najważniejsze operatory RapidMinera Modele możemy zapisywać w formacie XMLa.
Najważniejsze operatory RapidMinera W trakcie wstępnej obróbki danych, potrzebnej dla niektórych metod z zakresu inteligencji obliczeniowej, przydatne jest przeprowadzenie analizy składowych niezależnych (ICA – Independent Component Analysis), w celu zmniejszenia wymiaru danych. W podobny sposób działa analiza głównych składowych (PCA – Principal Component Analysis), w celu zmniejszenia wymiaru danych.
Najważniejsze operatory RapidMinera Remove Duplicates - usuwanie wzorców zduplikowanych ze zbiorów uczących.
Najważniejsze operatory RapidMinera Filtrowanie danych, np. w celu odfiltrowania danych, dla których pewien parametr lub klasa są nieokreślone.
SOM Self-Organizing Maps Samo-organizujące się mapy neuronowe Kohonena należą do klasyki uczelnia nienadzorowanego (bez nauczyciela). Można przy ich pomocy wyznaczyć klastry podobnych wzorców reprezentowane przez neurony korzystając z metod WTA (Winner Takes All) lub WTM (Winner Takes Most)
K-NN Metoda k najbliższych sąsiadów To jedna z najprostszych metod klasyfikacji, zaliczająca się do tzw. algorytmów leniwych, które nie budują wiedzy o danych. Metoda wyznacza przyporządkowanie nieznanego elementu na podstawie przynależności do odpowiedniej klasy jego k najbliższych znanych sąsiadów.
Naiwny klasyfikator Bayesa To również jeden z najprostszych klasyfikatorów oparty o probabilistykę, czyli twierdzenie Bayesa.
Drzewo decyzyjne Jedna z klasycznych metod umożliwiająca dosyć intuicyjną klasyfikację zarówno danych numerycznych, jak również symbolicznych.
Sieci neuronowe To klasyczna wielowarstwowa sieć neuronowa (nieliniowy perceptron wielowarstwowy) uczona metodą propagacji wstecznej błędów. To klasyfikator liniowy oparty o pojedynczy perceptron Franka Rosenblatta.
Operator służący do predykcji numerycznej i regresji liniowej. Regresja Operator służący do predykcji numerycznej i regresji liniowej. Operatory służące do regresji wielomianowej.
Maszyna wektorów wspierających SVM SVM Support Vector Machine
Obliczenia ewolucyjne Wagi atrybutów wyznaczane są z wykorzystanie obliczeń ewolucyjnych (algorytm genetyczny)
Najważniejsze operatory RapidMinera Operator multiplikacji – umożliwia powielenie zbioru danych podpiętego do wejścia tego operatora i udostępnienie jego kopii na swoich wyjściach. Poniżej dane Iris są multiplikowane i wysłane do 3 modeli: k-NN, drzewa decyzyjnego oraz sieci neuronowej:
Najważniejsze operatory RapidMinera Operator multiplikacji – może multiplikować różne obiekty, również modele, które dzięki temu możemy przetestować równocześnie na wielu zbiorach danych, np. uczącym i testującym: Pierwszy z lewej operator Multiply multiplikuje dane Golf, w celu ich wykorzystania najpierw do budowy modelu, a następnie do jego ewaluacji. Drugi operator Multiply multiplikuje model k-NN, w celu jego wykorzystania do ewaluacji zarówno danych uczących, jak również danych testowych.
Najważniejsze operatory RapidMinera Operator optymalizujący parametry modelu zdefiniowanego wewnątrz tego procesu, wykorzystujący ewolucyjne podejście. Operator umożliwiający zastosowanie zbioru określonych wcześniej parametrów dla danego modelu (np. zapisanych).
Najważniejsze operatory RapidMinera Operator pętli, który powtarza zdefiniowany wewnątrz podproces określoną ilość razy. Operator if-then-else, który umożliwia rozgałęzienie procesów w zależności od spełnienia warunku.
Najważniejsze operatory RapidMinera Operator umożliwiający zapis modelu do repozytorium modeli w celu jego późniejszego ponownego wykorzystania dla danych określonego typu, dla których został utworzony.