czwartek, 14 sierpnia 2008

Testy hipotez

W dzisiejszych czasach jesteśmy zalewani informacjami statystycznymi. Myślę, że ten kto wie jak konstruowane są te informacje może dojść do intencji jak potraktowano dane. Tym razem do sprawdzania danych statystycznych trzeba wykorzystać hipotezy. A w tym przypadku w celu sprawdzenia wartości danych użytych do wyciągania wniosków stosuje się wnioskowanie statystyczne czyli testy hipotez.
W czerwcu na swoim blogu o Flex 2 miałem 6727 użytkowników, a w lipcu 7245 użytkowników. Zadaję sobie pytania: Czy ta zmiana ilości użytkowników ma moim blogu jest znacząca czy nie?
Jakie jest kryterium znaczącej zmiany ilości użytkowników na blogu? Aby znaleźć odpowiedź na to pytanie trzeba postawić jakiś wniosek do sprawdzenia czyli hipotezę zerową. W naszym przypadku ta hipoteza brzmi: nie ma istotnej zmiany w ilości użytkowników mojego bloga. Trzeba też postawić hipotezę alternatywną czyli, że jest istotna zmiana w ilości użytkowników mojego bloga. Mamy 2 hipotezy i wtedy podejmujemy decyzję którą hipotezę przyjmiemy na wiarę. Przyjmujemy hipotezę zerową. W tej sytuacji zaczynamy robić eksperyment na danych aby stwierdzić czy dane spełniają hipotezę zerową. Gdy okaże się, że z eksperymentu wyjdzie wniosek sprzeczny z hipotezą zerową to prawdopodobnie popełniliśmy błąd drugiego typu.
Natomiast, jak za punkt wyjścia przyjmiemy alternatywną i eksperyment pokaże, że nie ma istotnej zmiany to oznacza że popełniliśmy błąd pierwszego typu.

Jeżeli wnioskujemy, że coś jest prawdziwe, a fakty stwierdzają, że to jest fałszywe to nasze wnioskowanie zawiera błąd drugiego typu. Jeżeli myślimy, że to coś jest fałszywe, kłamliwe a fakty stwierdzają, że to jest prawdziwe to popełniamy błąd pierwszego typu.

poniedziałek, 11 sierpnia 2008

Eksperyment - narzędzia analityczne

Coraz większy wpływ na efekty działań marketingowych w internecie będzie miał eksperyment. W tym momencie przyjrzymy się procedurze w jakim możemy osiągnąć efekt z eksperymentu.
  1. Wybieramy temat i stawiamy hipotezę
  2. Opisujemy sytuację bieżącą i ustalamy cel (weryfikację hipotezy)
  3. Sporządzamy plan działania (planowanie eksperymentu)
  4. Analizujemy przyczyny (zebranie danych i ich eksploracja)
  5. Opracujemy środki zaradcze (na bazie analizy wyciągamy wnioski i wybieramy rozwiązanie)
  6. Sprawdzamy rezultaty (weryfikacja eksperymentu ma pokazać czy nie popełniliśmy błędu)
  7. Ustalamy procedurę postępowania (przeprowadzamy stałą kontrolę nad danymi).
Narzędzia w analizie eksperymentu w serwisie internetowym:
  • Lista kontrolna - przeprowadzenie audytów w serwisie internetowym, główny nacisk położony na audyt funkcjonalny (użyteczności) serwisu internetowego. Testujemy serwis pod kątem tego celu jak użytkownik może szybko osiągnąć to czego oczekuje twórca serwisu. Celem listy kontrolnej jest wyłapanie wszystkich nieprawidłowości i propozycji usprawnień w serwisie
  • Stosowanie wykresów pozwala na wyłapanie tendencji oraz częstości występowania problemów z jakimi zmaga sie serwis internetowy
  • Wykres Pareto ma na celu oszacowanie w jakim zakresie skali mogą występować problemy w serwisie internetowym
  • Rybia ość i techniki mapy myśli pozwalają na uchwycenie zależności pomiędzy przyczyną a skutkiem problemów serwisu internetowego
  • Histogramy i krzywe statystyczne mają na celu sprawdzanie jak dane wpływają na problemy z serwisem internetowym. Pozwalają określić jaki model statystyczny pasuje do tych danych
  • Wykresy kontrolne pozwalają na stwierdzenie czy procesy jakie zachodzą w serwisie internetowym są stabilne.
  • Diagramy rozproszenia - pozwalają na wyszukiwanie pewnych relacji pomiędzy danymi które mają wpływ na serwis internetowy (na przykład ilość użytkowników a ilość zamówień).
Jak wybierać narzędzia do przeprowadzania eksperymentu?
  1. Stawianie hipotezy przynosi dobre efekty jak używa się listy kontrolnej
  2. Do opisania stanu faktycznego potrzebne są dane z narzędzi raportujących, a te dane najlepiej przedstawiać w postaci wykresów
  3. Do zaplanowania eksperymentu dobrze jest użyć map myśli.
  4. Po zebraniu danych z eksperymentu trzeba użyć szeregu narzędzi - głównie trzeba na nowo narysować wykresy, określić krzywe statystyczne, wyznaczyć wykresy kontrolne i zbadać korelację w diagramie rozproszenia.
  5. Do wyciągania wniosków warto użyć mapy myśli i jak na bazie tych danych dokonać oszacowania wyników w przyszłości - w tym przyda sie dopasowywanie danych do modeli statystycznych
  6. Do weryfikacji eksperymentu wystarczy mierzyć wartości zaobserwowanych od wartości oczekiwanych i trzeba dokonywać testu hipotez bądź testu ANOVA
  7. Standaryzacja eksperymentu polega na ustaleniu listy kontrolnej i ciągle stosowanie wobec danych wykresów kontrolnych.
Wezwanie analityka do sklepu internetowego w którym ma tylko do dyspozycji narzędzia raportujące jest tak jak wezwanie lekarza do zmarłego, żeby powiedział na co umarł.



niedziela, 10 sierpnia 2008

Silverlight w Google Analytics

Zaciekawiło mnie to ile osób ma zainstalowane w swoich komputerach Silverlighta. Są 2 posty w internecie które opisują to jak mierzyć to czy ktoś ma zainstalowanego Silverlighta
Nikhil Kothari napisał na swoim blogu wpis o tym jak napisać kod JS który mierzyłby którą wersję Silverlighta mają zainstalowaną użytkownicy, natomiast Jeff Wilcox napisał wpis o tym jak można trackować aplikacje Silverlight (mierząc zdarzenia kliknięcia).

__utmSetVar() w pliku urchin.js trzeba zamienić na pageTracker._setVar() jak korzystamy z ga.js Więcej o tym warto poczytać w tym dokumencie. Z perspektywy czasu taki monitoring użytkowników jest dość kłopotliwy - ale pozwala na spore możliwości o czym pisze lunametrics.
Inna sztuczka (aczkolwiek ma sens w pewnych sytuacjach) pozwala na tworzenie odpowiednich adresów URL

Czy rynek analitycznych dla internetu jest tym w co warto inwestować? W Polsce na pewno.
Szczególnie, że teraz mamy wysyp nowych narzędzi Google w tym zakresie: Google Insights for Search Google Trends for Websites i Google Ad Planner. Ale nie tylko Google inwestuje w takie technologie: Microsoft ma adCenter Analytics, Yahoo zaś będzie miało do zaoferowania IndexTools.

piątek, 8 sierpnia 2008

Co robi Analityk?

Co ma do roboty Analityk w internecie?
  • śledzenie informacji o użytkownikach ma większy sens niż śledzenie pozycji organicznych w wyszukiwarce
  • zadaje niewygodne pytania klientowi i odpowiada za niego
  • bawi sie w detektywa i próbuje znaleźć jakiś skuteczny sposób na zarobienie "dużych pieniędzy" przez klienta
  • zawsze szuka sposobu na mierzenie wyników i to co ma wpływ na te wyniki
  • uwielbia programować i tworzy narzędzia do automatyzacji zbierania danych
  • aby jego praca miała sens to tworzy tajemnicze wykresy
  • może powiedzieć dlaczego sukces jest mierzalny
  • uwielbia statystykę i rachunek prawdopodobieństwa
  • czasami podmieni stronę główną w celu sprawdzenia jakiejś hipotezy
Jego ulubione narzędzia raportujące to Google Analytics, Google Trends, Google Webmaster Tools, Google Website Optimizer. W razie czego zawsze otrzymuje dane.
Rolą analityka jest obserwacja danych i w razie czego wspomóc resztę w osiągnięciu celu.
Drugie zadanie analityka - bardziej odpowiedzialne polega na tym że tworzy hipotezę i eksperyment który ma przynieść jakieś wyniki. Klasycznym pytaniem jest to: jak zamieszczenie formularza kontaktowego na stronie głównej wpłynie na ilość kontaktów z potencjalnymi klientami? albo czy zamieszczenie prezentacji wideo wpłynie na osiągniecie celu? Aby na to odpowiedzieć trzeba zaplanować eksperyment, przeprowadzić eksperyment i zebrać dane oraz napisać prezentację tych danych i interpretację wyników.

Eksplorator danych to taki kto odkrywa osobliwości w oczywistości.

środa, 6 sierpnia 2008

Odchylenie standardowe

Bardzo często zdarza mi się czytać z narzędzi raportujących różne rozkłady danych. Na przykład ilość odsłon, czy ilość użytkowników albo odwiedzin jakiegoś serwisu internetowego.
Jak wiadomo trzeba czasami klientowi powiedzieć że ilość użytkowników jego serwisie jest stabilna czyli nie ma zbyt dużych zmian. Jak klient sie spyta na czym opieram stwierdzenie ze jego serwis ma stabilny proces jeżeli chodzi o ilość użytkowników.
Po prostu mierzę odchylenie standardowe użytkowników na stronie i z tego wynika że wahania wokół średniej ilości użytkowników są takie same w jakimś okresie co oznacza że odchylenie standardowe ma małą wartość.

Na przykład na moim blogu w ostatnim tygodniu miałem tylu użytkowników dziennie:
235, 250, 236,211,217,169,179.
Średnia arytmetyczna wynosi 213,86 odchylenie standardowe z populacji wynosi 28 co oznacza, że to jest bardzo niska wartością odchylenia wobec średniej wynoszącą 14,14%. Można to też tak zinterpretować: na moim blogu nic się nie zmieniło. W internecie serwisy, które mają duże odchylenia standardowe użytkowników oznacza to ze mają spory ruch i jest on zależny od jakiś czynników. Oczywiście, że to pozwala zmierzyć hipotezę tego typu jaki wpływ na użytkowników bloga mają poszczególne słowa kluczowe. W praktyce odchylenie standardowe jest użytecznym narzędziem, które ma prowadzić do wielu różnych analiz.

Odchyleniem standardowym mierzymy to jak bardzo odstajemy od reszty świata

niedziela, 3 sierpnia 2008

Średnia w serwisie internetowym

Dzięki statystyce lepiej się czuję z danymi, które mam z narzędzi raportujących. Zbieramy informacje aby ustalić zjawiska, które rządzą serwisem internetowym. Dane inaczej nazywane zmiennymi maja reprezentować pomiary czyli to co mierzymy. W serwisie internetowym pomiary dotyczą użytkowników, albo odsłon. Statystycy mogą powiedzieć, że ten pomiar jest ciągły. Te dane czyli zmienne podlegają kategoryzacji (segmentacji). Są to cechy danych, które podlegają pomiarowi. W przypadku serwisu może to być podział użytkowników na nowych i jak tych powracających. Statystycy mogą określić to jak atrybuty zmiennych.
Średnia arytmetyczna jest łatwa w obliczeniu, ale w analizie danych z raportów z serwisów internetowych ma sens gdy dane są równomierne i stabilne. Jak wiadomo w serwisach internetowych nic nie ma stabilnego ani równomiernych danych w swoim zakresie. Na przykład w danych z transakcji w Google Analytic wynika, że większość zamówień mieszczą się w zakresie 500 - 1200 zł, ale były też 2 zamówienia za 150 zł, w tym momencie te 2 zamówienia mają zbyt duży wpływ na średnią. W tej sytuacji lepiej pokazać w raporcie medianę.
Obserwując dane z ruchu w serwisie można zauważyć wzrosty lub spadki, w tej sytuacji może zainteresować nas jak ta zmienność wpływa na ruch, tak aby wskazać jaka jest tendencja odsłon (spadkowa czy wzrostowa). W tym momencie lepiej jest użyć średniej geometrycznej. Pozwoli to na zminimalizowanie wpływu jednorazowych czynników takich jak nagły wzrost odsłon spowodowany na przykład zamieszczeniem bannera w portalu.
Otóż większość danych jakich otrzymuje się z narzędzi raportujących zawiera informacje atrybutów, czyli pozwala na obliczenie istności ( czy wag danej cechy) na serwis internetowy. Obecnie taką cechą mogą być słowa kluczowe które miały wpływ na to, że użytkownik dokonał zakupu, czy jakiegoś działania w serwisie (na przykład wypełnił formularz). W tym bardzo przydaje się średnia ważona.
Pozwolę sobie na dygresję: w szkołach w jakich się uczyłem stosowano średnią arytmetyczną do oceniania wyników w nauce. Według mnie to jest pewien niesprawiedliwy sposób oceniania uczniów i studentów. Dlaczego? Bo nie uwzględnia tego, że nauka polskiego czy matematyki jest ważniejsza od nauki religii. Za kryterium istności jest ilość godzin w tygodniu na dany przedmiot. Mogę pokazać przykład, który zmienia całkowicie sens analizy. W pewnej klasie było 5 godzin tygodniowo na lekcje języka polskiego, 4 godziny na matematykę oraz 1 godzina na naukę religii.
Mamy 3 zdolnych uczniów: uczeń A ma 4 z polskiego i z matematyki oraz 6 z religii (jego średnia arytmetyczna to 4,67), uczeń B ma 5 z polskiego oraz 4 z matematyki i z religii (jego średnia arytmetyczna to 4,33) a uczeń C ma 4 z polskiego 5 z matematyki oraz 3 z religii (jego średnia arytmetyczna to 4). Gdyby w szkołach stosowano średnią ważoną to tacy spryciarze jak uczeń A nie otrzymywali świadectwa z biało czerwonym paskiem. Średnia ważona ucznia A to 4,2 dla ucznia B to 4,5 , a uczeń C otrzymuje 4,3 (co za ironia uczeń C jest lepszy od ucznia A). Zresztą uważam, że średnia ważona za "sprawiedliwszą" miarę oceny w szkołach i na uczelni.

To samo możemy zastosować w analizie serwisu internetowego. Otóż najbardziej cenna strona na blogu to taka dzięki, której użytkownik spędza sporo czasu aby to przeczytać. W tej sytuacji robimy średnią ważoną ze średniej ilości czasu w jakim spędzają użytkownicy na tej stronie z ilością odsłoń. W ten sposób może okazać się że będziemy mieli podgląd, które artykuły na blogu są cenne.

sobota, 2 sierpnia 2008

Analiza statystyczna serwisu internetowego

Coraz ważniejsza staje się analiza informacji z danych, które mamy w serwisach internetowych. Te dane mają na celu pokazanie w jakim stanie znajduje się serwis.

Cała sztuka polega na tym, żeby przy pomocy odpowiednich narzędzi szukać odpowiedzi. Oczywiście, że mamy coraz lepsze narzędzia do zbierania informacji o ruchu na stronach, ale bez statystyki nie ruszymy się dalej.

Istotne jest zrozumienie, że co możemy osiągnąć dzięki statystyce pozwoli na lepsze prowadzenie biznesu w internecie. Na wstępnie warto przyjrzeć się temu co ma nam do zaoferowania statystyka.

Najpierw trzeba zebrać dane, a o to już jest łatwiej. Wystarczy zainstalować Google Analytics, czy Stat24. Całe szczęście polega na tym, że pobrane dane można już pobierać w formacie Excela.

Idziemy dalej warto patrzeć na dane poprzez pryzmat wykresów. Ale wykresy to narzędzie. Oczywiście że sporo serwisów analitycznych już pozwala na prezentacje danych w postaci wykresów. W tym momencie warto spojrzeć na wykresy jako narzędzie, które pozwala nam wyciągnąć dane odnośnie tendencji centralnych. Wykresy przydadzą nam się przy testach hipotez. Gdy mamy pojedynczy zbiór danych (na przykład ilość odsłoń) to możemy zrobić test chi kwadrat na trafność dopasowania, przy wielu zbiorach danych można porównywać dane za pomocą testów F i testów Studenta.

Ale dane z serwisów internetowych mają bardzo ważny czynnik - czas. W tej sytuacji potrzebne jest narzędzie do analizy danych w kontekście czasu. Aby sprawdzić stabilność procesu (np: ilość użytkowników w serwisie) warto wykorzystać wykresy kontrolne. Gdy bardziej jest się zainteresowanym wpływem czasu na serwis to trzeba będzie dokonać analizy szeregów czasowych w celu podania prognozy przyszłych zmian.

Najciekawsza w statystyce jest analiza relacji pomiędzy wieloma czynnikami, które wpływają na serwis (na przykład wpływ pól formularza na proces zamówień). W pewnym sensie istotne jest dokonanie eksperymentów. Jak wiadomo serwisy internetowe łatwo poddać różnym eksperymentom. W tym kontekście istotne jest zaprojektowanie eksperymentu pod kątem analizy wariancji (ANOVA). Gdyby przyszło pracować na danych, które nie są wynikiem eksperymentu, ale interesuje nas jak pewne czynniki mają wpływ na te dane to wystarczy nam na początek użyć dopasowania krzywych - regresji albo korelacji.

Tak więc zaczniemy przygodę z eksploracji danych. Mnie jako programisty Adobe Flex cieszy to że są narzędzia do prezentacji danych czyli Flex Data Visualization zawierające zestaw kontrolek do wykresów i jak zaawansowane tabele przestawne