W tym tutorialu nauczysz się jak zbudować model predykcyjny przy użyciu programu AdvancedMiner w kilku prostych krokach. Na początek przejdź do strony pobierania darmowej wersji AdvancedMinera.
Stwórz alias – jest to miejsce, w którym wszystkie bazy danych są przechowywane.
Wybierz folder, w którym chcesz go zapisać.
Zaimportuj bazę danych z pamięci komputera.
Wyświetl dane. W tym przykładzie Class jest atrybutem, który będziemy przewidywać. Oprócz wyświetlenia danych możesz wykonać wiele innych operacji związanych z Twoją bazą np. użyć narzędzia Freq służącego do analizy danych. Freq przelicza statystyki dla analizowanych zmiennych, dzięki czemu można uzyskać ważne informacje o atrybutach, a także umożliwia wizualizację rozkładów zmiennych, budowę różnych histogramów, badanie zależności między zmiennymi a targetem lub też grupowanie wartości zmiennej kategorycznej. Nie są to wszystkie możliwości narzędzia Freq, dlatego warto je przetestować samodzielnie. Więcej informacji na temat funkcji Freq możnesz przeczytać w naszym wpisie tutaj.
Kolejną ciekawą funkcjonalnością są skrypty kontekstowe dzięki którym można przykładowo podzielić i posortować tabelę. Skrypty kontekstowe mają również bardziej zaawansowane zastosowania, ale jeśli nie są one wystarczające możesz stworzyć i dodać własne skrypty.
Aby łatwiej przewidywać sukces lub porażkę można zamienić nasz target na wartość numeryczną poprzez prostą modyfikację w bazie danych. Naciśnij prawym przyciskiem myszy na projekt, wybierz „New”, a następnie „Gython Script”.
Gython Script umożliwia tworzenie skryptów w języku Gython, który jest językiem wykorzystywanym do przetwarzania danych opartym na Pythonie. Wiele operacji i modyfikacji na bazach danych umożliwia posługiwanie się w Gythonie zapytaniami SQL, co jest możliwe po wpisaniu „sql:” lub też „sql in `nazwa_aliasu`”.
Bardzo istotna w tym języku jest możliwość połączenia Pythona i poleceń SQL, dzięki czemu możemy używać różnych funkcjonalności obu języków naraz (np. zapętlać polecenia SQL). W tym przykładzie użyj języka SQL, aby wprowadzić zmiany.
Powstała kolumna z wartościami “1” I “0”. To jest nowy target.
Następnie stwórz nowy Workflow.
Metodą drag&drop umieść swoją bazę danych na środku Workflow. To samo zrób z kafelkiem Split Table. Aby je połączyć przeciągnij kotwicę ze swojej bazy danych do kotwicy Split Table.
Pomimo, że Workflow jest łatwy w użyciu pozwala na bardziej skomplikowane operacje takie jak tworzenie diagramów, transformacje techniczne i analityczne, modelowanie, generowanie kodów czy dodawanie własnych kodów napisanych w Gython Script.
Aby wybrać atrybuty, użyj kafelka Attribute Usage.
Edytuj kafelek i wybierz, który atrybut jest targetem.
Niepotrzebne atrybuty ustaw jako nieaktywne.
Naciśnij przycisk Execute lub wciśnij F6.
Użyj metody drzewek do stworzenia modelu. Połącz je z Attribute Usage oraz z bazą danych. Ustaw pozytywną wartość targetu jako „1” (albo „0”, w zależności co chcesz przewidywać) w ustawieniach algorytmu.
Oprócz drzewek dostępne są również takie metody jak na przykład linearna i logistyczna regresja. Każda metoda zawiera szereg unikalnych dla niej ustawień, które można dowolnie zmieniać.
Aby zobaczyć skuteczność swojej predykcji wybierz Classification Test Result i połącz z bazą testową oraz modelem. Edytuj i wybierz target oraz jego pozytywną wartość.
Classification Test Result umożliwia przeanalizowanie wyników. Możemy sprawdzić jak prezentuje się ROC oraz ile wynosi ROC Area, jak wygląda krzywa Lift, czy też zinterpretować macierz konfuzji.
Aby przewidzieć wyniki używając swojego modelu dołącz do Workflow bazę danych, dla której chcesz przewidywać. Dołącz do niej kafelek Scoring, który musi być połączony z modelem.
Wybierz ‘View Mining Apply Task’, a następnie w ‘New Columns’ dodaj element.
Postępuj zgodnie z poniższymi krokami:
I naciśnij przycisk Execute lub wciśnij F6.
Została dodana kolumna z prawdopodobieństwem wystąpienia wartości “1”.
Wybierz, od jakiego minimalnego prawdopodobieństwa wartość będzie pozytywna.
I zobacz, dla których pozycji występuje “1”, a dla których “0”.