Język wspierający przetwarzanie danych

Załóżmy, że odpowiadamy w przedsiębiorstwie za realizację kampanii marketingowych. W ramach kampanii, ma zostać skierowana informacja elektroniczna do wybranej grupy klientów o umieszczeniu w ofercie nowego produktu. Produkt jest w kilku odmianach, uzależnionych od rodzajów klientów. Produkt jest w atrakcyjniej cenie. Założenie jest takie, że kampania jest ograniczona do maksymalnie 1000 klientów, jako nagroda za dotychczasową aktywność. Istotne jest to, aby skierować ofertę do klientów, którzy potencjalnie byliby zainteresowani zakupem.

Proces dla realizacji takiej kampanii mógłby wyglądać następująco:


W takim procesie do opisu reguł, które stwierdzą, którzy Klienci będą zainteresowani ofertą, a którzy nie, można wykorzystać język PMML (ang. Predictive Model Markup Language). Elementy zawarte na powyższym diagramie w ramce, mogą zostać opisane za pomocą tego języka.

Język PMML jest językiem służącym do prezentacji modeli przetwarzania danych (ang. data mining models) lub modeli analitycznych służących do tworzenia prognoz (ang. Predictive analytic models). Język pozwala na zapisanie reguł, pozwalających na wyciągnięcie wzorców z dostępnych danych. Podstawą działania są modele matematyczne/statystyczne umożliwiające na poznanie ukrytych wzorców w dużych zestawach historycznych danych.

Struktura PMML, zgodnie z tym co podaje strona IBM.com,  składa się z następujących elementów:

  1. Słownik danych (ang. Data dictionary) – jest wynikiem analizy danych i określa, które dane wejściowe są najbardziej użyteczne do rozwiązania problemu.
  2. Schemat przetwarzania (ang. Mining Schema) – określa strategię postępowania z wartościami granicznymi i brakującymi.
  3. Modyfikacje danych (ang. Data Transformations) – określa jakie obliczenia, operacje powinny zostać wykonane na danych źródłowych przed ich przekazaniem do dalszego etapu.
  4. Definicja modelu (ang. Model Definition) – zawiera strukture i zmienne użyte do budowy modelu.
  5. Dane wyjściowe (ang. Outputs) – definiuje oczekiwany wynik działania modelu.
  6. Dane zwrotne (ang. Targets) – określa modyfikacje na danych wyjściowych przed ich przekazaniem dalej.
  7. Wyjaśnienie modelu (ang. Model Explanation) – zawiera wskaźniki wykonania przy przetwarzaniu danych przez model.
  8. Weryfikacja modelu (ang. Model Verification) – zawiera zestaw przykładowych danych wejściowych z oczekiwanymi danymi wynikowymi.
Reklama

Proces rezerwacji wycieczki – tani czy komfortowy?

Po dłuższej przerwie, co prawda z pewnym opóźnieniem, ale myślę, że temat jest jak najbardziej aktualny, chciałbym poświęcić chwilę tematowi wybierania wakacji. Mogłoby się wydawać, że jest to prosty proces w stylu wybierz kierunek, znajdź ofertę, wybierz biuro, zarezerwuj, zapłać, ustal pozostałe elementy, podpisz umowę – w różnej kolejności. Przyznaję proces może być czasochłonny. Podczas poszukiwań wakacji okazało się, że sprawa nie jest taka prosta jak się wydaje. Zaobserwowałem, że proces szeroko pojętej rezerwacji wycieczki, patrząc od strony Klienta, odbywa się na różne sposoby, choć kroki są podobne (zaprezentowane subiektywnie na poniższym diagramie):

  • Wybierasz, biuro rezerwuje, płacisz, dzięki czemu masz pewne informacje o miejscu pobytu, można wybrać hotel zgodnie ze swoimi preferencjami i zebranymi opiniami;
  • Wybierasz, płacisz, biuro dokonuje wstępnej rezerwacja, następue potwierdzenie rezerwacji lub anulowanie i wzrot kosztów – przez czas kiedy czekasz na potwierdzenie rezerwacji nie wiesz czy szukać dalej wycieczki, czy będzie trzeba dopłacić, czy proces należy zacząć od początku, a niestety jest to czasochłonne;
  • Wybierasz, płacisz i czekasz gdzie Cię zakwaterują (dosłownie tam gdzie jest miejsce, w momencie rezerwacji nie wiesz dokładnie w którym hotelu) – najtańsze, ale i najmniej pewnie gdzie trafisz;

Świadomie nie wskazywałem powyżej punktu jakim jest podpisanie umowy, ponieważ jest to element dość płynny w dobie współczesnych technologii, gdzie pewne elementy ustala się często najpierw elektronicznie, a dopiero potem się otrzymuje papier. Często najistotniejszym elementem procesu i możliwości jego przeprowadzenia jest moment zapłaty i tego, czy płatność jest całością, czy tylko częścią opłaty za wakacje. Drugim elementem, jest kwestia rezerwacji i ustalenia miejsca odlotu i przylotu.

Ułożenie powyższych wariantów od najlepszego do najgorszego jest uzależnione od kryterium wyboru – czas poświęcony na zakup wycieczki, cena, czy to jak istotne jest miejsce – czytaj hotel – w którym przyjdzie spędzić określony czas. Właśnie, dodatkowym utrudnieniem w powyższym procesie jest długość wyjazdu. Jeżeli w danym kierunku wyjazdy są przede wszystkim tygodniowe, ale z możliwością przedłużenia, to już różnie wygląda kwestia szczegółów – dogranie miejsca, czasu wylotu, opcji dodatkowych, transferu itp. Czasami może się okazać, że konieczna będzie zmiana hotelu albo zmiana miejsca przylotu w drodze powrotnej. Niestety nie zawsze wybierając opcję na stronie www, ostatecznie otrzymuje się w danej cenie, wybrane elementy. Czasami w momencie podpisania umowy okazuje się jednak, że o pewnych elementach trzeba jeszcze podyskutować z biurem.