Wyobraź sobie, że posiadasz model predykcyjny zbudowany za pomocą języka R i przykładowo chciałbyś przewidywać w czasie rzeczywistym czy warto udzielić kredytu i zastanawiasz się jak opublikować skrypt napisany w języku R jako Web Service.
Zadanie to wydaje się skomplikowane, jednakże może okazać się proste i przyjemne. Modele predykcyjne mają wiele innych zastosowań i możliwości przewidywania określonych zdarzeń na podstawie danych historycznych, ale w tym przykładzie zajmiemy się modelem, który ocenia prawdopodobieństwo spłacenia pożyczki.
Scoring.One to narzędzie umożliwiające szybkie wdrażanie modeli predykcyjnych, tworzenie scenariuszy decyzyjnych oraz, dzięki niezwykle wysokiej wydajności, przetwarzanie setki tysięcy zapytań dla wielu modeli predykcyjnych w tym samym czasie.
Załóż darmowe konto tutaj.
Aby zastosować taki model w Scoring.One potrzebujemy pliku .zip zawierającego:
Możesz pobrać przykładowy ZIP użyty w tym tutorialu tutaj ,a także zajrzeć do dokumentacji Scoring.One.
Wszystkie pliki pakujemy do archiwum .zip. I tak naprawdę najtrudniejsze za nami, teraz przyszła pora na samą przyjemność, czyli zastosowanie modelu!
Wchodzimy w zakładkę „Scoring Code Management” i wybieramy opcję dodania nowego kodu.
Następnie wpisujemy nazwę, jaką chcemy nadać naszemu kodowi scoringowemu (scoring code) i upuszczamy stworzony wcześniej plik .zip w przeznaczone do tego miejsce.
Gdy zapiszemy kod, przychodzi pora na scenariusz. Wybieramy odpowiednią zakładkę i tworzymy nowy. Przeciągamy kafelki na środek ekranu. W tym przypadku (chociaż pewnie jak we wszystkich, na co wskazuje nazwa kafelka) zaczynamy od kafelka „Start”.
Nie uzupełniamy już tym razem zmiennych, gdyż posiadamy je w pliku .zip. Metodą drag&drop wybieramy jeszcze „Scoring Code” oraz „End”. Kafelki łączymy ze sobą w takiej kolejności.
Następnie klikamy na „Scoring Code” i wybieramy wcześniej wgrany kod, z którego importujemy także zmienne. Zapisujemy i klikamy „Deploy”. Po kliknięciu, scenariusz przetworzy się i wówczas w klocku „End” możemy wybrać zmienne, które mają zostać zwrócone jako wynik scenariusza. Następnie klikamy „Deploy” ponownie.
Z uśmiechem na twarzy stworzyliśmy scenariusz!
Przetestujmy jego działanie: wybieramy „Forms”, znajdujemy nasz scenariusz i uzupełniamy dane. W efekcie dostajemy ocenę scoringową zapisaną jako zmienna rResult. I już model został odpytany.
Jest możliwość dodania kolejnych zmiennych, na przykład w celu kategoryzowania na podstawie wyniku. W tym celu wracamy do scenariusza i dodajemy jeszcze jeden kafelek.
W „Expressions” możemy dopisać kod w R lub Groovy. Zmienne, które tam utworzymy będą także zwracane przez model.
Po dodaniu zmiennej „category” oprócz oceny scoringowej w wyniku otrzymamy także kategorię, do której zalicza się jej wartość.
Przyszła pora na wysłanie zapytania http. W tym celu możemy użyć dowolnego klienta http. W poniższym przykładzie został użyty Advanced REST Client.
W miejsce, gdzie należy wpisać URL wstawiamy:
https://demo.scoring.one/api/scenario/code/remote/score/?name=NAZWA_SCENARIUSZA&key=KLUCZ_UŻYTKOWNIKA
Jak znaleźć ten tajemniczy klucz?
Ukryty został pod nazwą „Score Token”.
Jako Body zapytania wpisujemy zmienne potrzebne do modelu w postaci JSONa.
Naciskamy „Send”. I to tyle. Zadanie wykonane!