Niniejszy rozdział przedstawia prosty przykład procesu ręcznej budowy karty skoringowej za pomocą modułu Scoring Card.
Przed przystąpieniem do ręcznej budowy karty skoringowej niezbędne jest posiadanie danych w postaci tabelki w bazie danych. Ponadto zakłada się, że użytkownik zapoznał się z QuickStart.
Poniższy przykład wykorzystuje dane 'german_credit'. Wszystkie nazwy wymienione w cudzysłowie są przykładowymi nazwami obiektów.
W procesie budowy modelu karty skoringowej wykorzystywane są następujące obiekty MR:
Zadanie ręcznej budowy karty skoringowej składa się z etapu budowy struktury karty oraz przydzielenia liczby punktów.
Jeżeli wszystko poprawnie udało się zdefiniować, w wyniku działania 'ScoringCardBuildTask' w repozytorium pojawi się karta skoringowa. Wymaga ona jednak doprecyzowania parametrów dotyczących targetu oraz ręcznego zdefiniowania punktów (znakiem, że karta nie jest w pełni gotowa, jest zółta ikonka przyczepiona do ikonki modelu ). Aby proces budowy karty można było uznać za skończony należy wykonać dodatkowo kroki:
Po ustawieniu dodatkowych parametrów karta staje się prawidłowym modelem, który można obejrzeć, klikając dwukrotnie na ikonkę modelu (zobacz film). Poniższa ilustracja pokazuje postać repozytorium oraz kartę po wykonaniu wyżej opisanych kroków.
Ostatnią czynnością, którą należy wykonać jest przydzielenie punktów i ewentualna edycja atrybutów (zobacz film).
Wyżej przedstawione czynności można również wykonać w języku skryptowym.
Przykład 1.1. Proces ręcznej budowy karty skoringowej
# PROCES RĘCZNEJ BUDOWY KARTY SKORINGOWEJ # krok 1 -- tworzymy i zapisujemy PhysicalData w repozytorium # -- wskazujemy zbiór do modelowania: 'german_credit' PD = PhysicalData('german_credit') save('german_credit_pd',PD) # krok 2 -- tworzymy MiningFunctionSettings -->> ScoringCardSettings() # -- wybieramy ustawienia do budowy karty skoringowej MFS = ScoringCardSettings() # krok 2a -- MiningFunctionSettings: dodajemy logicalData # -- definiujemy logiczną strukturę danych wejściowych na podstawie PhysicalData MFS.setLogicalData(LogicalData(PD)) # krok 2b -- MiningFunctionSettings -> attributeUsageSet: ustawiamy target # -- ustawiamy zmienną 'Class' jako target MFS.getAttributeUsageSet().getAttribute('Class').usage = UsageOption.target # kroki 2,2a,2b -- zapisujemy ustawienia MiningFunctionSettings w repozytorium save('ScoringCardSettings',MFS) # krok 3 -- tworzymy MiningBuildTask # -- określamy cel zadania: budowa modelu (karty) MBT = MiningBuildTask() # krok 3a -- MiningBuildTask: dodajemy buildData # -- dodajemy dane do modelowania MBT.setBuildDataName('german_credit_pd') # krok 3b -- MiningBuildTask: dodajemy functionSettings # -- dodajemy ustawienia związane z budową karty skoringowej MBT.setFunctionSettingsName('ScoringCardSettings') # krok 3c -- MiningBuildTask: dodajemy model # -- definiujemy nazwę wynikowej karty skoringowej MBT.setModelName('CARD') # kroki 3,3a,3b,3c -- zapisujemy zadanie MiningBuildTask w repozytorium save('ScoringCardBuildTask',MBT) # krok 4 -- wykonujemy zadanie execute('ScoringCardBuildTask') # krok 5 -- CARD: ustawienia targetu # -- pobieramy model 'CARD' do edycji M = load('CARD') # krok 5a -- properties: wskazujemy target # -- deklarujemy zmienną 'Class' jako target M.setTargetAttributeName('Class') # krok 5b -- properties: określamy klasę pozytywną i negatywną targetu # -- wskazujemy wartość 'bad' jako pozytywną kategorię targetu oraz wartość 'good' jako kategorię negatywną M.setPositiveTargetValue('bad') M.setNegativeTargetValue('good') # krok 5c -- properties: ustalenie typu zmiennej target # -- deklarujemy typ zmiennej target jako tekstowy M.setTargetAttributeDataType(AttributeDataType.stringType) # kroki 5,5a,5b,5c -- zapisujemy dokonane zmiany w karcie 'CARD' save('CARD' , M) print "Done..."
Output:
Done...