Diplomarbeit aus Technischer Mathematik, TU-Graz Statistische Analyse von Zugriffen auf die Homepage des Instituts für Statistik Zehetner Andreas September 2000 Vorgelegt der Technisch-Naturwissenschaftlichen Fakultät an der Technischen Universität Graz Begutachter: Univ.-Prof. Dr. Stadlober Ernst Betreuer: Univ.-Ass. Dr. Stampfer Erwin Institut für Statistik der Technischen Universität Graz Ich versichere, diese Arbeit selbständig verfasst, andere als die angegebenen Quellen und Hilfsmittel nicht benutzt und mich auch sonst keiner unerlaubten Hilfsmittel bedient zu haben. -ii- Ich möchte mich bei Herrn Univ.-Prof. Dr. Stadlober Ernst für die großzügige Bereitstellung der Institutseinrichtungen, die für die Durchführung dieser Arbeit notwendig waren, bedanken. Speziell möchte ich mich für die intensive fachliche Betreuung meiner Diplomarbeit bei Herrn Univ.-Prof. Dr. Stadlober Ernst und Herrn Univ.-Ass. Dr. Stampfer Erwin bedanken. Besonderer Dank gilt jedoch meinen Eltern für ihre jahrelange Unterstützung meiner Studientätigkeit. -iii- Verzeichnisse Inhaltsverzeichnis Verzeichnisse............................................................................................................................. 1 Inhaltsverzeichnis ................................................................................................................... 1 Abbildungsverzeichnis ........................................................................................................... 3 Tabellenverzeichnis ................................................................................................................ 4 Definitions-, Satz- und Lemmaverzeichnis ............................................................................ 4 Abstract ..................................................................................................................................... 5 1. Einleitung .............................................................................................................................. 6 2. Datenaufbereitung ................................................................................................................ 8 3. Allgemeine Statistiken........................................................................................................ 11 4. Zeitliche Verteilungen ........................................................................................................ 14 4.1. Erzeugen eines Scatter-Plots in S-Plus 4.5.................................................................... 14 4.2. Erzeugen einer Boxplotserie in S-Plus 4.5 (Trellis-Grafiken) ...................................... 16 5. Wahrscheinlichkeitsverteilungen ...................................................................................... 20 5.1. Statistische Kennzahlen................................................................................................. 20 5.2. Histogramme und Kernschätzer .................................................................................... 21 5.3. Boxplots ........................................................................................................................ 22 5.4. Kolmogorov-Smirnov Test auf Normalverteilung ........................................................ 23 5.5. Kolmogorov-Smirnov Test auf Gammaverteilung ....................................................... 25 5.6. Wilson-Hilferty Approximation .................................................................................... 26 5.7. Box-Cox Transformation .............................................................................................. 30 6. Benutzer .............................................................................................................................. 34 7. Webseiten ............................................................................................................................ 37 7.1. Zeitliche Verteilung der Zugriffe auf die Webseiten .................................................... 39 8. Tageszeit .............................................................................................................................. 42 9. Modellanpassung ................................................................................................................ 43 9.1. Allgemeines Verfahren ................................................................................................. 43 9.2. Stationärität und Autokorrelationsfunktion ................................................................... 44 9.2.1. Prüfen der Daten mittels empirischer Autokorrelationsfunktion ........................... 45 9.3. Stationäre Prozesse ........................................................................................................ 47 9.3.1. MA(q)-Prozess ....................................................................................................... 47 9.3.2. AR(p)-Prozess ........................................................................................................ 48 9.3.3. ARMA(p,q)-Prozess ............................................................................................... 48 9.3.3.1. YULE-WALKER Gleichungen ...................................................................... 50 9.3.4. ARIMA(p,q)-Prozess ............................................................................................. 51 9.3.5. Saisonaler ARIMA(p,d,q)x(P,D,Q)-Prozess .......................................................... 51 9.3.6. Schätzen der Modellparameter eines ARMA(p,q)-Modells .................................. 53 9.3.6.1. Gauß´sche Maximum Likelihood Schätzung .................................................. 53 9.3.6.2. YULE-WALKER Schätzer ............................................................................. 55 9.4. Wahl der Ordnung ......................................................................................................... 56 9.4.1. Beurteilung der emp. ACF ..................................................................................... 56 9.4.2. Beurteilung der emp. PACF ................................................................................... 57 9.4.3. Wahl der Ordnungen bei saisonalen ARIMA-Modellen........................................ 57 9.4.4. Akaike`s Information Criterion (AIC) ................................................................... 58 -1- 9.5. Simulation von ARIMA-Prozessen ............................................................................... 59 9.6. „Goodness of Fit“-Tests ................................................................................................ 63 9.6.1. Graph der standardisierten Residuen...................................................................... 63 9.6.2. Emp. ACF der Residuen......................................................................................... 63 9.6.3. Portmanteau-Test ................................................................................................... 64 9.6.4. Ljung-Box Test ...................................................................................................... 64 9.7. Modellanpassung für Anwendersitzungen/Tag der 2. Periode ..................................... 65 9.8. Vorhersage .................................................................................................................... 75 9.8.1. Prognoseintervall für vorhergesagte Werte ............................................................ 75 9.8.2. Vorhersage für das 1. Quartal 2000 ....................................................................... 75 Anhang A ................................................................................................................................ 80 Literaturverzeichnis ............................................................................................................... 82 -2- Abbildungsverzeichnis Abbildung 3.1.: Verhältnis zwischen internen und externen Benutzern .................................. 12 Abbildung 3.2.: Regionale Verteilung ..................................................................................... 13 Abbildung 4.1.: Scatter-Plots ................................................................................................... 15 Abbildung 4.2.: Boxplotserien ................................................................................................. 17 Abbildung 4.3.: Scatter-Plots mit Angabe der Wochentage .................................................... 18 Abbildung 4.4.: Boxplotserien mit emp. Variationskoeffizienten ........................................... 19 Abbildung 5.1.: Histogramme und Kernschätzer ..................................................................... 21 Abbildung 5.2.: Boxplots ......................................................................................................... 22 Abbildung 5.3.: Vergleiche mit N ( ˆ , ˆ ²) -Verteilungen ......................................................... 24 Abbildung 5.4.: Vergleiche mit Gam(â, ̂ )-Verteilungen ........................................................ 25 Abbildung 5.5.: Vergleiche mit N ( ˆ , ˆ ²) -Verteilungen, nach Wilson-Hilferty Transformation. ............................................................................. 28 Abbildung 5.6.: QQ-Plots nach Wilson-Hilferty Transformation............................................ 29 Abbildung 5.7.: 95%-Konfidenzintervalle für λ ...................................................................... 31 Abbildung 5.8.: QQ-Plots nach Box-Cox Transformation ...................................................... 33 Abbildung 6.1.: Benutzer ......................................................................................................... 34 Abbildung 6.2.: Benutzerländer ............................................................................................... 35 Abbildung 6.3.: Benutzerkategorien ........................................................................................ 36 Abbildung 7.1.: angeforderte Seiten ........................................................................................ 37 Abbildung 7.2.: Einstiegseiten ................................................................................................. 38 Abbildung 7.3.: zeitliche Verteilung der angeforderten Seiten ................................................ 39 Abbildung 7.4.: zeitliche Verteilung der Einstiegseiten .......................................................... 40 Abbildung 7.5.: zeitliche Verteilung des Benutzers TU-Graz ................................................. 41 Abbildung 7.6.: Scatter-Plot mit emp. Korrelationskoeffizienten ........................................... 41 Abbildung 8.1.: Tageszeitenverläufe ....................................................................................... 42 Abbildung 9.1.: ACF-Plot für Anwendersitzungen/Tag der 2. Periode ................................... 46 Abbildung 9.2.: Simulierter AR(1)-Prozess ............................................................................. 59 Abbildung 9.3.: ACF-Plots von simulierten AR(1)-Prozessen mit verschiedenen 1 ............ 60 Abbildung 9.4.: Simulierter ARMA(1,1)-Prozess ................................................................... 61 Abbildung 9.5.: Yt ( X t X t 7 ) ............................................................................................ 66 Abbildung 9.6.: Diagnoseplots für ARIMA(3,0,0)×(0,1,1)7-Modell ....................................... 71 Abbildung 9.7.: Diagnoseplots für ARIMA(3,0,0)×(0,1,1)7-Modell mit 2 0 .................... 73 Abbildung 9.8.: Diagnoseplots für ARIMA(0,0,15)×(0,1,0)7-Modell ..................................... 74 Abbildung 9.9.: Vorhersage mit ARIMA(3,0,0)×(0,1,1)7-Modell ........................................... 76 Abbildung 9.10.: Vorhersage mit ARIMA(0,0,15)×(0,1,0)7-Modell ...................................... 76 Abbildung 9.11.: Plot der Vorhersagefehler beim ARIMA(3,0,0)×(0,1,1)7-Modell ............... 78 Abbildung 9.12.: Plot der Vorhersagefehler beim ARIMA(0,0,15)×(0,1,0)7-Modell ............. 78 Abbildung 9.13.: Boxplotserien ............................................................................................... 79 -3- Tabellenverzeichnis Tabelle 2.1.: Auszug aus dem Logfile........................................................................................ 8 Tabelle 2.2.: Top Level Domains ............................................................................................... 9 Tabelle 3.1.: Allgemeine Statistiken ........................................................................................ 11 Tabelle 5.1.: Statistische Kennzahlen ...................................................................................... 20 Tabelle 5.2.: Quantile der Gammaverteilung ........................................................................... 27 Tabelle 5.3.: Box-Cox Transformation 1 ................................................................................. 32 Tabelle 5.4.: Box-Cox Transformation 2 ................................................................................. 32 Tabelle 6.1.: Benutzerkategorien ............................................................................................. 36 Tabelle 9.1.: AIC-Werte für 7 Typen von Modellen................................................................ 69 Definitions-, Satz- und Lemmaverzeichnis Definition 2.1.: Anwendersitzung, Einstiegzugriff, Einstiegseite .............................................. 9 Definition 9.1.: Zeitreihe, Zeitreihenprozess ........................................................................... 43 Definition 9.2.: Kovarianzfunktion .......................................................................................... 44 Definition 9.3.: Stationär .......................................................................................................... 44 Definition 9.4.: Autokovarianzfunktion und Autokorrelationsfunktion .................................. 44 Definition 9.5.: Empirische Autokorrelationsfunktion (emp. ACF) ........................................ 45 Lemma 9.1.: Approximative Verteilung von ˆ (h) ................................................................. 45 Definition 9.6.: White Noise .................................................................................................... 47 Definition 9.7.: MA(q)-Prozess ................................................................................................ 47 Definition 9.8.: AR(p)-Prozess................................................................................................. 48 Definition 9.9.: ARMA(p,q)-Prozess ....................................................................................... 48 Satz 9.1.: Existenz und Eindeutigkeit ....................................................................................... 48 Definition 9.10.: Kausalität ...................................................................................................... 48 Satz 9.2.: Kausalität .................................................................................................................. 49 Definition 9.11.: Invertierbarkeit ............................................................................................. 49 Satz 9.3.: Invertierbarkeit ......................................................................................................... 49 Definition 9.12.: Partielle Autokorrelationsfunktion (PACF) .................................................. 50 Definition 9.13.: Empirische partielle Autokorrelationsfunktion (emp. PACF) ...................... 51 Definition 9.14.: ARIMA(p,d,q)-Prozess ................................................................................. 51 Definition 9.15.: Saisonaler ARIMA(p,d,q)x(P,D,Q)-Prozess ................................................ 52 Lemma 9.2.: Approximative Verteilung von ̂ p ..................................................................... 55 Lemma 9.3.: Formel von Bartlett ............................................................................................. 56 Lemma 9.4.: Approximative Verteilung von ˆ ( h ) .................................................................. 57 -4- Abstract Anhand der Homepage des Institutes für Statistik wird eine statistische Analyse der InternetZugriffe durchgeführt. Die Daten umfassen den Zeitraum vom 04.01.98 bis 31.12.99.Die primären Untersuchungsmerkmale sind die Anzahl der Zugriffe und die Anzahl der Anwendersitzungen. Die Verteilungen der Variablen (Anzahl der Zugriffe pro Tag usw.) werden für verschiedene Perioden, für unterschiedliche Benutzerkategorien, nach verschiedenen geographischen Aspekten, für die diversen Webseiten der Homepage beschrieben und statistisch interpretiert. Dies geschieht mittels Kreis-, Säulen-, Balken-, Liniendiagrammen, statistischer Kennzahlen, Histogrammen, Kernschätzern, Scatter-Plots, Boxplotserien, QQ-Plots und Kolmogorov-Smirnov Tests. Die Anzahl der Anwendersitzungen am Tag t wird als Zeitreihe betrachtet. Aufgrund der vorliegenden Wochenschwankung werden saisonale integrierte autoregressive moving average Modelle (saisonale ARIMA-Modelle) an die Zeitreihe angepasst. Mit Hilfe von Anpassungstests werden die geschätzten Modelle getestet. Mit geeigneten Modellen werden Vorhersagen für das 1. Quartal 2000 durchgeführt und anschließend mit den tatsächlichen Daten verglichen. Es zeigt sich, dass ein saisonales ARIMA-Modell die tatsächlichen Daten sehr gut prognostizieren kann. With the Homepage of the Institute of Statistics a statistical analysis of the internet accesses will be made. The data covers the period of time from 04.01.98 to 31.12.99. The primary features are the no. of accesses and the no of user-sessions. The distributions of the variables (no. of accesses per day etc.) will be described and statistically interpreted in different periods of time, for various categories of users, for geographical aspects, for specific websites of the Homepage. This will be made by using circle-, columns-, bars-, lines-diagrams, statistical characteristics, histograms, density lines, scatter-plots, boxplotseries, QQ-Plots and Kolmogorov-Smirnov tests. The no. of user-sessions will be considered as time series. Due to the existing weekly fluctuation seasonal integrated autoregressive moving average models (seasonal ARIMA-models) will be fitted to the time series. The estimated models will be tested by using „Goodness of Fit“-tests. For the 1. quarter 2000 forecasts will be made using suitable models and than compared with the real data. It turns out, that a seasonal ARIMAmodel can prognosticate the real data very good. -5- 1. Einleitung Anhand der Homepage des Institutes für Statistik wird eine statistische Analyse der InternetZugriffe durchgeführt. Die primären Untersuchungsmerkmale sind die Anzahl der Zugriffe und die Anzahl der Anwendersitzungen. Dabei ist unter einer Anwendersitzung eine Folge von Zugriffen eines Benutzers, vom Einstieg in die Homepage (1. Zugriff) bis zum Verlassen der Homepage (letzter Zugriff) zu verstehen. Die Daten wurden aus dem Logfile des Webservers der TU-Graz extrahiert und umfassen den Zeitraum vom 04.01.98 – 31.12.99. Die Verteilungen der Variablen (Anzahl der Zugriffe pro Tag usw.) werden für verschiedene Perioden, für unterschiedliche Benutzerkategorien, nach verschiedenen geographischen Aspekten, für die diversen Webseiten der Homepage beschrieben und statistisch interpretiert. Während des Beobachtungszeitraums wurden 75119 erfolgreiche Zugriffe auf die Homepage registriert. Davon kommen 61158 Zugriffe (81.4 %) von Benutzern, die nicht vom Institut für Statistik stammen. Da sich das Interesse hauptsächlich auf diese „externen“ Zugriffe beschränkt, werden die Zugriffe, die von Rechnern des Institutes für Statistik kommen, in der weiteren Analyse nicht mehr berücksichtigt. Durchschnittlich fanden 89 Zugriffe bzw. 28 Anwendersitzungen pro Tag statt. 52.8 % der Zugriffe (bzw. 28.4 % der Anwendersitzungen) stammen aus Österreich. Die Hauptbenutzer der Homepage sind die Grazer Studentenheime und die Institutionen der TUGraz. Von diesen beiden Gruppen kommen 35.9 % der gesamten Zugriffe (bzw. 16.2 % der Anwendersitzungen). Die begehrteste Webseite der Homepage ist die Seite über die Lehrveranstaltungen mit 20.9 % der Zugriffe. Die begehrteste Einstiegseite (diejenige Seite, auf die Benutzer bei ihrer Anwendersitzung als erstes zugreifen) ist die Seite des IWSM (International Workshop on Statistical Modelling), die sich auch auf der Homepage befindet (31.9 % der Einstiegzugriffe). Der Beobachtungszeitraum wird in zwei getrennte Zeiträume eingeteilt, die 1. Periode vom 04.01.98 bis 21.09.98 und die 2. Periode vom 22.09.98 bis 31.12.99. Bei der 1. Periode handelt es sich um eine Art Anlaufperiode, während der noch keine klare Struktur in den Daten erkennbar ist. Die durchschnittliche Anzahl der Zugriffe bzw. Anwendersitzungen pro Tag liegt mit 22 bzw. 4 auch deutlich unter denen der 2. Periode mit 121 bzw. 40. Die Verteilungen der Anzahl der Zugriffe pro Tag (bzw. Anwendersitzungen pro Tag) für den gesamten Zeitraum und unterschieden für die beiden Perioden werden mittels statistischer Kennzahlen, Histogrammen, Kernschätzern, Boxplots, Kolmogorov-Smirnov Tests und graphischen Vergleichen zwischen den empirischen Verteilungen und den hypothetischen Verteilungen untersucht. Für die Verteilungen der Anzahl der Zugriffe pro Tag der 1. und 2. Periode und der Anzahl der Anwendersitzungen pro Tag der 2. Periode ist die Gammaverteilung ein akzeptables Modell. Demgemäß ist der Versuch, die Daten mittels der Wilson-Hilferty Transformation und der Box-Cox Transformation auf die Normalverteilung zu transformieren, nur bei den entsprechenden Daten, Anzahl der Zugriffe pro Tag der 1. und 2. Periode und Anzahl der Anwendersitzungen pro Tag der 2. Periode, erfolgreich. -6- Die Anzahl der Anwendersitzungen am Tag t wird als Zeitreihe { X t } betrachtet. Diese Analyse wird nur für die 2. Periode durchgeführt. Mögliche saisonale Schwankungen, Trends, Ausreißer und/oder Diskontinuitäten werden mittels Zeitreihenplots und Boxplotserien identifiziert, wobei eine Wochenschwankung (ein 7-Tage-Zyklus) in den Daten festgestellt wird. Aufgrund der vorliegenden Wochenschwankung werden verschiedene Zeitreihenmodelle, sogenannte saisonale integrierte autoregressive moving average Modelle (saisonale ARIMAModelle) an die Daten angepasst. Mit Hilfe verschiedener graphischer Verfahren und diverser Statistiken, wie z. B. Zeitreihenplots, empirischer Autokorrelationsfunktionen, empirischer partieller Autokorrelationsfunktionen und dem Akaike`s Information Criterion (AIC), werden die sogenannten Ordnungsparameter des Modells identifiziert. Anschließend werden mittels Maximum Likelihood Schätzung die verbleibenden Parameter des Modells geschätzt. Mit Hilfe von Anpassungstests wird das geschätzte Modell getestet. Nach Selektieren eines geeigneten Modells werden Vorhersagen für das 1. Quartal 2000 durchgeführt und anschließend mit den tatsächlichen Daten verglichen. Es zeigt sich, dass ein saisonales ARIMA-Modell die tatsächlichen Daten sehr gut prognostizieren kann. Als unterstützende Literatur für die Zeitreihenanalyse werden hauptsächlich die Bücher Introduction to Time Series and Forecasting von Brockwell und Davis (1996), Analyse von Zeitreihen von Chatfield (1982) und der S-Plus 4 Guide to Statistics verwendet. Als Software für die Analyse der Daten und das Modellieren als SARIMA-Modell wird hauptsächlich S-Plus 4.5 verwendet. Kreis-, Säulen- und Balkendiagramme, sowie einige Liniendiagramme werden in MS-Excel erzeugt. Sämtliche Daten sind in einer AccessDatenbank abgelegt. Diverse Fachbegriffe über das Internet, wie Homepage, Server usw., sind im Anhang A zusammengefasst und erklärt. -7- 2. Datenaufbereitung Die Daten wurden aus dem Logfile des Webservers der TU-Graz extrahiert und umfassen den Zeitraum von 04.01.98 – 31.12.99. Der Logfile beinhaltet von jedem erfolgreichen Zugriff auf die Homepage (i) die Benutzer-Adresse des zugreifenden Rechners, (ii) die vom Benutzer abgerufene Webseite, (iii) das Datum des Zugriffs und (iv) die Zugriffszeit auf die Sekunde genau. Tabelle 2.1. zeigt einen Auszug aus dem Logfile. Benutzer-Adresse Webseite Datum Zugriffszeit Fedvzm203.tu-graz.ac.at /stat/home.html 01.11.99 17:37:25 Fedvzm203.tu-graz.ac.at /stat/ 01.11.99 17:37:25 Fedvzm203.tu-graz.ac.at /stat/content.html 01.11.99 17:37:25 Fedvzm203.tu-graz.ac.at /stat/register.html 01.11.99 17:37:31 Fedvzm203.tu-graz.ac.at /stat/diploma.html 01.11.99 17:37:59 Fedvzm203.tu-graz.ac.at /stat/lectures.html 01.11.99 17:38:03 Fedvzm203.tu-graz.ac.at /stat/courses/lec9900.html 01.11.99 17:38:10 Fedvzm203.tu-graz.ac.at /stat/courses/prstat.html 01.11.99 17:38:13 pat.iic.wifi.at /stat/courses/prstat.html 01.11.99 18:04:28 pat.iic.wifi.at /stat/register.html 01.11.99 18:04:49 Fedvzm203.tu-graz.ac.at /stat/guestbook.html 01.11.99 18:05:51 pat.iic.wifi.at /stat/ content.html 01.11.99 18:06:30 ss02.ny.us.ibm.com /stat/stampfer/research.htm 01.11.99 18:32:01 129.27.154.9 /stat/ 01.11.99 18:32:30 bos-spider10b.lycos.com /stat/iwsm/ac.html 01.11.99 18:32:50 129.27.154.9 /stat/guestbook.html 01.11.99 18:32:58 Tabelle 2.1.: Auszug aus dem Logfile Die Benutzer-Adresse kann in Form der IP-Adresse (Internet Protokolladresse) oder in Form der DNS-Adresse (Domain Name System Adresse) vorliegen (siehe Tabelle 2.1.). Die IPAdresse identifiziert einen Rechner, der mit dem Internet verbunden ist. Sie besteht aus durch 4 Punkte getrennte Zahlen zwischen 1 und 255 (z. B. 129.27. 154.9). Da der Mensch sich symbolische Namen besser merken kann als die Nummernkombinationen des Internet Protokolls, gibt es das Domain Name System (DNS), dass IP-Adressen in die entsprechenden DNS-Adressen, und umgekehrt, umwandelt (z. B. 129.27.154.9 fstatpc09.tu-graz.ac.at). Eine gewisse Sequenz von IP-Adressen wird an eine Institution (Unternehmen, Netzbetreiber, Organisation, Universität, ...) vergeben, je nach Größe der Institution (z. B. TU-Graz: 129.27.0.0 bis 129.27.255.255). Die Vergabe der Nummern innerhalb dieser Sequenz ist der Institution, bzw. dem zuständigen Webserver überlassen. Die DNS-Adresse kann grundsätzlich mit dem Aufbau einer Telefonnummer verglichen werden. Nach der Landeskennzahl als oberste Priorität folgt die Ortskennzahl und die Rufnummer. Im Internet werden die einzelnen Ebenen pragmatisch nach ihrer Priorität bezeichnet. Top-Level-Domain, Second-Level-Domain,.... Der Unterschied zwischen diesen beiden Systemen liegt in der Leseweise. Während eine Telefonnummer immer von links nach rechts gelesen wird, werden Domains „von hinten“ gelesen, d.h. die Wertigkeiten werden von links nach rechts größer. Die Top-Level-Domains (TLDs) stehen demnach ganz rechts. -8- Diese Ebenen müssen weltweit koordiniert werden. Von Beginn an wurden dabei 6 große TLDs vorgegeben (siehe Tabelle 2.2.). .com .edu .gov .mil .net .org Unternehmen Bildungseinrichtungen US-Amerikanische Regierung US-Militär Internet Betreiber Organisationen Tabelle 2.2.: Top Level Domains Neben diesem Index hat man auf der obersten Ebene einen zweiten Index etabliert, der allen Ländern der Erde die Möglichkeit einräumt, eine Domain unter ihrem Namen einzurichten. Daher die Domainnamen wie .at, .de, .it, usw. Dieser ist aber nicht zwingend vorgeschrieben, da .com länderübergreifend ist und für weltweit operierende Unternehmen mit Sitz in beispielsweise Österreich angewendet werden kann. Die Kombinationen .com.at, .edu.at, ... sind möglich, die Kombinationen .at.com, .at.edu,... sind nicht möglich. Erfolgt in der zweiten Ebene die nähere Spezifizierung .co. für Company, .ac. für Academy, .or. für Organisation, .gv. für Government, so erfolgt in der dritten Ebene der Hinweis auf die Organisation, das Unternehmen, ...(.tu-graz.ac.at) , sonst in der zweiten Ebene (.lycos.com). Falls die IP-Adresse im Logfile protokolliert wird, muss sie zuerst in die entsprechende DNSAdresse übersetzt werden, um damit weiterarbeiten zu können. Die Übersetzung wird im Internet, auf den Homepages jener internationalen Organisationen gemacht, die Domains und somit IPs verwalten, das sind RIPE (Riseaux IP Europiens, für europäische Domains und IPs zuständig), APNIC (Asia Pacific Network Information Centre) und ARIN (American Registry for Internet Numbers). Für unsere Analyse wird festgelegt, dass nur diejenigen IP-Adressen übersetzt werden, von denen aus mehr als 40 Zugriffe innerhalb des Beobachtungszeitraums stammten. Dabei werden die einzelnen IPs zu größeren Sequenzen zusammengefasst (z. B. von LRZ-München: 141.84.0.0 - 141.84.255.255 stammen 105 Zugriffe). Im Logfile werden chronologisch die Zugriffe auf die verschiedenen Webseiten der Homepage und die dazugehörigen Benutzer protokolliert. Der Einstieg (die erste Seite auf die der Benutzer zugreift) und das Verlassen (die letzte Seite auf die der Benutzer zugreift) der Homepage werden im Logfile nicht erfasst. Definition 2.1.: Anwendersitzung, Einstiegzugriff, Einstiegseite Wenn zwischen zwei Zugriffen mit derselben Benutzeradresse weniger als 30 Minuten liegen, gehören diese beiden Zugriffe zu derselben Anwendersitzung. Der zeitlich gesehen erste Zugriff einer Anwendersitzung ist der Einstiegzugriff. Die erste Webseite auf die während einer Anwendersitzung zugegriffen wird, wird als Einstiegseite bezeichnet. Es ist jedoch unmöglich, das Verlassen der Homepage zeitlich exakt festzustellen, da nur der Zeitpunkt des Zugriffs auf eine Seite, nicht aber der Zeitpunkt des Verlassens einer Seite protokolliert wird. Man kann die letzte Seite, auf die der Benutzer zugreift, definieren, weiß aber nicht, wie lange er sich diese Seite ansieht. Es ist daher auch unmöglich, die exakte Dauer einer Anwendersitzung festzustellen. -9- Aufgrund der Beziehung zwischen den Einstiegzugriffen und den Anwendersitzungen können Zählstatistiken bzgl. Anwendersitzungen aus jenen über die Einstiegzugriffe abgeleitet werden (z. B. Anzahl der Anwendersitzungen). Der folgende Algorithmus, Abfrage für den Einstiegzugriff, wurde verwendet, um die Zeilen im Logfile, die den Einstiegzugriff anzeigen, zu ermitteln. Abfrage für den Einstiegzugriff Datensatz := Zeile aus dem Logfile, n := Anzahl der Datensätze, y := Datensatz y aus dem Logfile, Benutzeradresse(y) := Benutzeradresse des Datensatzes y, Δd(y, x) := Zugriffszeit des Datensatzes y – Zugriffszeit des Datensatzes x, Δd(y,0) , y . For y = 1,....,n x = y – 1 while (true) {if Δd(y, x) > 30 Minuten then {Anwendersitzung = „Einstieg“; break} else if (Benutzeradresse(x) = Benutzeradresse(y)) then {Anwendersitzung = „ “; break} x = x – 1} Next y Innerhalb des Beobachtungszeitraums für die 1. Periode (vom 04.01.98 bis 21.09.98) gibt es Tage, an denen keine Zugriffe im Server-Log protokolliert sind. Das kann entweder daran liegen, dass der Server-Log ausgefallen war, oder dass an diesen Tagen wirklich keine Zugriffe auf die Homepage getätigt wurden. Solche Tage wurden nicht berücksichtigt. Die fehlenden Tage sind: 28.02.98, 03.03.98 – 31.03.98, 04., 10., 11., 12., 19., 30.04.98, 05., 15., 19., 29., 30.07.98, 02., 23., 24., 30.08.98, 06.09.98. -10- 3. Allgemeine Statistiken Nach der Datenaufbereitung wird die Tabelle 3.1. erstellt, die eine allgemeine Übersicht über die Aktivitäten auf dieser Homepage innerhalb des Beobachtungszeitraums bietet. Im folgenden definiere ich die in Tabelle 3.1. und in weiterer Folge vorkommenden Begriffe. Interne Zugriffe sind Zugriffe, die von Rechnern des Institutes für Statistik stammen. Externe Zugriffe sind alle Zugriffe mit Ausnahme der internen Zugriffe. Unter Zugriffen aus Österreich werden Zugriffe von Rechnern in deren DNS-Adresse die Länderdomain at in der Form „*.at“ oder „*.at.*“ vorkommt (* entspricht einer beliebigen Zeichenfolge), subsummiert. Weiters werden die übersetzten IP-Adressen, die eindeutig dem Land Österreich zuzuordnen sind, berücksichtigt. Zugriffe mit unbekannter Herkunft sind Zugriffe von Rechnern, deren IP-Adresse nicht übersetzt wurde. Die internationalen Zugriffe ergeben sich aus den externen Zugriffen abzüglich der Zugriffe aus Österreich und der Zugriffe mit unbekannter Herkunft. Die Begriffe bezüglich der Anwendersitzungen sind entsprechend definiert. Allgemeine Statistiken Gesamt externe Zugriffe 04.01.1998 00:00:00 bis 31.12.1999 24:00:00 Beobachtungszeitraum Anzahl der erfolgreichen Zugriffe Davon interne Zugriffe Davon externe Zugriffe Zugriffe aus Österreich Zugriffe international Zugriffe mit unbekannter Herkunft Anzahl der Anwendersitzungen Davon interne Anwendersitzungen Davon externe Anwendersitzungen Anwendersitzungen aus Österreich Internationale Anwendersitzungen Anwendersitzungen mit unbek. Herkunft in % von gesamt 75119 100.0 % 13961 18.6 % 61158 81.4 % 21821 2263 19558 100.0 % 10.4 % 89.6 % Tabelle 3.1.: Allgemeine Statistiken -11- in % von gesamt 61158 32307 25134 3717 100.0 % 52.8 % 41.1 % 6.1 % 19558 100.0 % 28.4 % 61.3 % 10.3 % In den beiden folgenden Kreisdiagrammen (Abbildung 3.1.) wird das Verhältnis der Anzahl der internen und externen Zugriffe bzw. Anwendersitzungen grafisch dargestellt. Anwendersitzungen Zugriffe interne A. 10.4% interne Z. 18.6% externe Z. 81.4% externe A. 89.6% Abbildung 3.1.: Verhältnis zwischen internen und externen Benutzern Berechnet man den Quotienten zwischen der Anzahl der Zugriffe und der Anzahl der Anwendersitzungen sieht man, dass ein interner Anwender fast doppelt soviel Zugriffe/ Anwendersitzung wie ein externer Anwender hat. Zugriffe/Anwendersitzung: intern extern 6.17 3.13 Da sich das Interesse hauptsächlich auf externe Zugriffe beschränkt, werden in der weiteren Bearbeitung der Daten die internen Zugriffe nicht mehr berücksichtigt. -12- In den nächsten beiden Kreisdiagrammen (Abbildung 3.2.) wird das Verhältnis zwischen Zugriffen bzw. Anwendersitzungen von österreichischen Benutzern, internationalen Benutzern und Benutzern unbekannter Herkunft grafisch dargestellt. Anwendersitzungen nach Region Zugriffe nach Region unbekannt 6.1% internat. 41.1% unbekannt 10.3% Österreich 28.4% Österreich 52.8% internat. 61.3% Abbildung 3.2.: Regionale Verteilung Es wird wieder der Quotient Zugriffe/Anwendersitzung errechnet. Dieser zeigt deutlich auf, dass ein österreichischer Anwender fast dreimal soviel Zugriffe/Anwendersitzung wie ein internationaler (oder unbekannter) Anwender hat. Zugriffe/Anwendersitzung: Österreich international unbekannt -13- 5.82 2.10 1.84 4. Zeitliche Verteilungen Die Zugriffe auf die Homepage werden vom Webserver mit ihrem Entstehungszeitpunkt im Logfile protokolliert. Eine derartige Beobachtungssequenz wird als Zeitreihe bezeichnet. Aus dem Logfile kann durch geeignete Aggregation die Anzahl der Zugriffe bzw. Anwendersitzungen je Zeiteinheit abgeleitet werden. Als Zeiteinheit wird vorerst einmal ein Tag (von 00:00:00 bis 23:59:59) verwendet und es wird die Anzahl der Zugriffe bzw. Anwendersitzungen am i-ten Tag betrachtet. Diese Zeitreihen werden mit Zugriffe/Tag(i) und Anwendersitzungen/Tag(i) bezeichnet, wobei i = 04.01.98,...,31.12.99. In Abbildung 4.1. werden die Zugriffe/Tag(i) bzw. Anwendersitzungen/Tag(i) gegen den Tag i aufgetragen. Anschließend wird auf die Datenpunkte noch ein Glättungsverfahren (LoessGlättung) angewandt. Daraus resultiert dann ein Scatter-Plot mit einer Glättungskurve. 4.1. Erzeugen eines Scatter-Plots in S-Plus 4.5 Im Hauptmenü wählt man Graph ► 2D Plot. Das Insert Graph-Dialogfenster öffnet sich. Dort wählt man: Graph Type: 2D Plot Type: Scatter Plot und bestätigt die Angaben durch Anklicken des OK-Buttons. Das Line/Scatter Plot-Dialogfenster öffnet sich. Auf der Karte Data to Plot wählt man den zu plottenden Datensatz aus: Data Set: Zugriffe x Column(s): Datum y Column(s): Zugriffe.Tag Auf der Karte Line wählt man eine Linienart für die Loessglättung aus. Auf der Karte Symbol wählt man die Art der Datenpunktdarstellung aus. Auf der Karte Smooth/Sort wählt man den Glättungstyp: Smoothing Type: Loess und bestätigt die Eingaben durch Anklicken des OK-Buttons. Die Grafik wird geplottet. Die Berechnungen, die zur Darstellung benötigt werden (z. B. Loess-Glättung), werden in S-Plus automatisch durchgeführt. Die Grafik kann im Grafikfenster noch nachbearbeitet werden. Viele explorative Darstellungsmethoden, wie beispielsweise Boxplots, Histogramme, Dichteschätzer, QQ-Plots, sind ähnlich über das Insert Graph-Dialogfenster zu gestalten. -14- Zugriffe/Tag 400 300 200 100 04.01.98 05.05.98 03.09.98 02.01.99 03.05.99 01.09.99 31.12.99 05.03.98 04.07.98 02.11.98 03.03.99 02.07.99 31.10.99 Datum Anwendersitzungen/Tag 110 90 70 50 30 10 04.01.98 05.05.98 03.09.98 02.01.99 03.05.99 01.09.99 31.12.99 05.03.98 04.07.98 02.11.98 03.03.99 02.07.99 31.10.99 Datum Abbildung 4.1.: Scatter-Plots Man sieht bei beiden Grafiken (Abbildung 4.1.) ab Mitte September 1998 einen deutlichen Anstieg der Anzahl der Zugriffe/Tag bzw. Anwendersitzungen/Tag. -15- Dieser deutliche Anstieg wird auch noch durch eine andere explorative Darstellungsmethode, der Boxplotserie (Abbildung 4.2.), visualisiert. 4.2. Erzeugen einer Boxplotserie in S-Plus 4.5 (Trellis-Grafiken) Man verwendet zur Erzeugung von Boxplotserien Trellis-Grafiken. Mit Trellis-Grafiken kann man multivariate Datensätze visualisieren. Die Grundidee von Trellis besteht darin, mehrdimensionale Datensätze darzustellen, indem man den Datensatz gemäß einer oder mehrerer Variablen ( = Dimensionen) in Gruppen aufteilt und jede dieser Untergruppen in einer üblichen zwei- oder dreidimensionalen Grafik darstellt. Die Erstellung von Trellis-Grafiken wird am Beispiel einer Boxplotserie demonstriert: Erstellen eines Boxplots für die Variable Zugriffe.Tag aus dem Datensatz Zugriffe. Zugriffe/Tag 500 300 100 Man arrangiert den Object Browser und das Grafikfenster so, dass man beide zur Gänze sehen kann und aktiviert im Object Browser die Variable Datum aus dem Datensatz Zugriffe. Man klickt auf das Wort Datum und bewegt die Maus bei gedrückter Maustaste in den Kopfbereich der Grafik. Dieser Bereich wird dann durch ein gestricheltes Rechteck symbolisiert. Lässt man die Maustaste los, dann produziert S-Plus die folgende Trellis-Grafik (Boxplotserie): Datum: 22.01.99 to 12.07.99 Datum: 13.07.99 to 31.12.99 500 Zugriffe.Tag 300 100 Datum: 04.01.98 to 27.07.98 Datum: 28.07.98 to 21.01.99 500 300 100 Die Grafik kann im Grafikfenster noch nachbearbeitet werden. Mit dieser unscheinbaren Aktion hat man S-Plus veranlasst, eine ganze Reihe von Teilschritten automatisch durchzuführen: Zunächst wurde der Datensatz in Untergruppen gemäß der Variable Datum aufgeteilt. Da es sich bei dieser Variable um eine Datumsvariable handelt, bildet S-Plus automatisch verschiedene Klassen mit Zeitintervallen. Wäre die Variable z. B. ein Faktor mit 4 Ausprägungen gewesen, wären genau 4 Untergruppen gebildet worden. Für jede dieser Untergruppen wird nun ein eigener Boxplot angelegt. -16- 04.01.98 bis 15.05.98 16.05.98 bis 21.09.98 22.09.98 bis 28.02.99 01.03.99 bis 31.07.99 01.08.99 bis 31.12.99 500 Zugriffe/Tag 400 300 200 100 0 04.01.98 bis 15.05.98 16.05.98 bis 21.09.98 22.09.98 bis 28.02.99 01.03.99 bis 31.07.99 01.08.99 bis 31.12.99 Anwendersitzungen/Tag 120 100 80 60 40 20 0 Abbildung 4.2.: Boxplotserien Aufgrund der Erkenntnisse aus Abbildung 4.1. und Abbildung 4.2. wird der Beobachtungszeitraum in zwei getrennte Zeiträume unterteilt: 1. Periode: 04.01.98 bis 21.09.98 2. Periode: 22.09.98 bis 31.12.99. Im nächsten Schritt werden die Scatter-Plots aus Abbildung 4.1. etwas genauer analysiert. Abbildung 4.3. beinhaltet einen repräsentativen Ausschnitt des Scatter-Plots aus Abbildung 4.1., wobei zusätzlich eine Verbindungslinie eingezeichnet ist und die Wochentage (Mo, Di, -17- ..., So) an denen die Anzahl der Zugriffe/Tag bzw. Anwendersitzungen/Tag erhoben wurden, teilweise angegeben sind. 1. Periode Fr Zugriffe/Tag 80 Mi Fr Fr So 60 So 40 Do So Mo Mo Do Sa So Fr 20 Mo Sa Mi Sa Mo Do Sa 0 01.05.98 11.05.98 Mo So So Do 21.05.98 31.05.98 10.06.98 Datum 2. Periode 500 Zugriffe/Tag 400 Mo Fr Di 300 Di Mi Mo 200 So Mo So So Di Fr 100 Mo Sa So 0 06.01.99 Sa Sa 16.01.99 Sa So Sa 26.01.99 Do Mi Fr 05.02.99 Fr Sa Fr Sa So 15.02.99 Fr Sa So 25.02.99 Datum Abbildung 4.3.: Scatter-Plots mit Angabe der Wochentage In der 2. Periode gibt es eine größenmäßig annähernd gleichbleibende Wochenschwankung (einen sich wiederholenden 7-Tage-Zyklus) über den gesamten Zeitraum. An fast allen Samstagen und Sonntagen sind wenig Zugriffe, an den anderen Wochentagen sind vermehrte Zugriffe. In der 1. Periode kann man einen derartigen klaren Wochenzyklus nicht feststellen. Dieselbe Aussage ist auch für die Anzahl der Anwendersitzungen/Tag gültig. -18- Die Erkenntnis aus Abbildung 4.3 wird bestätigt, wenn man die Daten bezogen auf die Wochentage (Mo, Di, ..., So) anhand von Boxplotserien betrachtet und sich dazu die empirischen Variationskoeffizienten für jeden Wochentag berechnet (Abbildung 4.4.). , wobei Standardabweichung und Mittelwert der dem Merkmal zugrundeliegenden Verteilung. Der VK gibt also die Streuung relativ zum Mittelwert an. Der empirische Variationskoeffizient (emp. VK) ist ˆ s definiert durch emp. VK = wobei und durch ihre Schätzer s und x ersetzt ˆ x werden. Der Variationskoeffizient (VK) ist definiert durch VK = Boxplotserien: 1 . P e r i o d e 2 . P e r i o d e S o M o D i M i D o F r S a S o M o D i M i D o F r S a 5 0 0 8 0 4 0 0 6 0 3 0 0 4 0 2 0 0 Zugrife/Ta Zugrife/Ta 1 0 0 2 0 1 0 0 0 0 V K : 1 . 0 7 0 . 9 8 0 . 6 6 0 . 7 8 0 . 8 5 0 . 8 0 1 . 2 1 V K 1 , 0 7 0 , 9 8 0 , 6 6 0 , 7 8 0 , 8 5 0 , 8 0 1 , 2 1 V K : 0 . 7 1 0 . 5 4 0 . 5 4 0 . 4 6 0 . 5 1 0 . 5 4 0 . 6 3 V K 1 , 0 7 0 , 9 8 0 , 6 6 0 , 7 8 0 , 8 5 0 , 8 0 1 , 2 1 1 . P e r i o d e 2 . P e r i o d e S o M o D i M i D o F r S a S o M o D i M i D o F r S a 1 2 1 0 0 9 7 5 6 5 0 Anwedrsitzugn/Ta 1 2 5 Anwedrsitzugn/Ta 1 5 3 2 5 0 0 V K : 0 . 6 5 0 . 6 4 0 . 4 9 0 . 4 9 0 . 5 0 0 . 5 4 0 . 8 4 V K 1 , 0 7 0 , 9 8 0 , 6 6 0 , 7 8 0 , 8 5 0 , 8 0 1 , 2 1 V K : 0 . 5 2 0 . 4 5 0 . 3 8 0 . 3 7 0 . 4 5 0 . 5 0 0 . 4 8 V K 1 , 0 7 0 , 9 8 0 , 6 6 0 , 7 8 0 , 8 5 0 , 8 0 1 , 2 1 Abbildung 4.4.: Boxplotserien mit emp. Variationskoeffizienten Betrachtet man die emp. Variationskoeffizienten (VK) in Abbildung 4.4., erkennt man, dass das Merkmal Anwendersitzungen/Wochentag einen geringeren emp. VK als das Merkmal Zugriffe/Wochentag hat. Weiters haben die Daten der 1. Periode deutlich größere emp. VK als die der 2. Periode. -19- 5. Wahrscheinlichkeitsverteilungen Die statistischen Analysemethoden basieren häufig auf der Annahme, dass die zu untersuchenden Daten aus einer Normalverteilung stammen. Die möglichen zugrundeliegenden Wahrscheinlichkeitsverteilungen der Zugriffe/Tag und der Anwendersitzungen/Tag werden mittels statistischer Kennzahlen, Histogrammen, Kernschätzern, Boxplots, Anpassungstests (Kolmogorov-Smirnov Tests) und grafischen Vergleichen zwischen empirischen und hypothetischen Verteilungen in S-Plus ermittelt. Weiters wird versucht, die Daten auf Normalverteilung zu transformieren. 5.1. Statistische Kennzahlen In S-Plus erhält man eine Reihe statistischer Kennzahlen, in dem man im Hauptmenü Statistics ► Data Summaries ► Summary Statistics wählt. Dort gibt man den zu analysierenden Datensatz an und wählt die verschiedenen Statistiken (z. B. arithm. Mittel, Median, Varianz) aus. In Tabelle 5.1. sind einige statistische Kennzahlen des Merkmals Zugriffe/Tag bzw. Anwendersitzungen/Tag für verschiedenen Zeiträumen aufgelistet. Stichprobenanzahl (n) Minimum 1. Quartil Arithm.. Mittel ( x ) Median 3. Quartil Maximum Std. Abweichung (s) Varianz (s²) Schiefe Kurtosis Stichprobenanzahl (n) Minimum 1. Quartil Arithm. Mittel ( x ) Median 3. Quartil Maximum Std. Abweichung (s) Varianz (s²) Schiefe Kurtosis gesamt 1. Periode Zugriffe/Tag Zugriffe/Tag 04.01.98 - 31.12.99 04.01.98 – 21.09.98 687 221 1 1 24.0 8.0 89.0 21.9 70.0 16.0 132.5 29.0 490 93 79.2 19.7 6270.1 387.8 1.3 1.5 2.0 2.0 2. Periode Zugriffe/Tag 22.09.98 - 31.12.99 466 6 66.0 120.8 107.5 160.0 490 76.9 5912.0 1.1 1.9 gesamt 1. Periode Anwenders./Tag Anwenders./Tag 04.01.98 - 31.12.99 04.01.98 - 21.09.98 687 221 1 1 6.0 2.0 28.5 4.3 24.0 4.0 44.0 6.0 118 15 24.1 2.5 578.4 6.5 0.8 1.0 0.2 1.1 Tabelle 5.1.: Statistische Kennzahlen 2. Periode Anwenders./Tag 22.09.98 - 31.12.99 466 3 24.0 40.0 37.0 53.0 118 21.0 440.4 0.8 0.8 -20- 5.2. Histogramme und Kernschätzer Für die Wahl der Klassenanzahl k bei den Histogrammen werden die Faustregeln k 2 n für n < 100 und k 10 log 10 n für n > 100 (n...Stichprobenanzahl) verwendet. Bei den Kernschätzern wurde ein Gaußkern mit einer Fensterbreite h 1.06ˆn ( ˆ = s). 1 5 verwendet In S-Plus erhält man die resultierenden Grafiken ähnlich wie den Scatter-Plot über das Insert Graph-Dialogfenster (siehe Abschnitt 4.1.). Dort wählt man den Punkt Histogram with Density Line. Die Klassenanzahl für das Histogramm, der Kern und die Fensterbreite für den Kernschätzer können optional gewählt werden. Bei der Fensterbreite für den Kernschätzer muss man 4*h angeben. Zugriffe/Tag gesamt k = 28 0.010 h = 23 0.005 Zugriffe/Tag 1. Periode Zugriffe/Tag 2. Periode 0.000 0 k = 23 0.030 60 120 180 240 300 360 420 480 0.006 k = 26 h=7 h = 24 0.003 0.015 0.000 0.000 0 10 20 30 40 50 60 70 80 90 0 Anwendersitzungen/Tag gesamt 0.06 60 120 180 240 300 360 420 480 k = 28 h=7 0.03 Anwendersitzungen/Tag 1. Periode 0.00 0 15 30 45 60 75 Anwendersitzungen/Tag 2. Periode 90 105 k = 15 (nicht 23 0.2 k = 26 0.02 lt. Faustregel, da es h=7 nur 15 Realisierungsmöglichkeiten gibt) h=1 0.1 0.01 0.00 0.0 0 2 4 6 8 10 12 0 14 15 Abbildung 5.1.: Histogramme und Kernschätzer -21- 30 45 60 75 90 105 5.3. Boxplots Die entsprechenden Boxplots sind in Abbildung 5.2. dargestellt. g e s a m t 5 0 0 4 0 0 3 0 0 Zugrife/Ta 2 0 0 1 0 0 0 1 . P e r i o d e 2 . P e r i o d e 8 0 4 0 0 6 0 3 0 0 4 0 2 0 0 Zugrife/Ta 5 0 0 Zugrife/Ta 1 0 0 2 0 1 0 0 0 0 g e s a m t 1 2 5 1 0 0 7 5 Anwedrsitzugn/Ta 5 0 2 5 0 1 . P e r i o d e 2 . P e r i o d e 1 2 5 1 5 1 0 0 1 0 7 5 5 0 Anwedrsitzugn/Ta Anwedrsitzugn/Ta 5 2 5 0 0 Abbildung 5.2.: Boxplots -22- 5.4. Kolmogorov-Smirnov Test auf Normalverteilung Bei Betrachtung der vorigen Grafiken (Abbildung 5.1., Abbildung 5.2.) ist die Normalverteilungsannahme für die Daten der 2. Periode noch am ehesten vertretbar. Die Analyse mittels Kolmogorov-Smirnov (K-S) Test zeigt jedoch deutlich, dass die Normalverteilungsannahme in allen Fällen zweifelhaft ist. Einzig für die Daten Anwendersitzungen/Tag der 2. Periode lehnt der K-S Test, für α < 5.3 % (α ist der Fehler 1. Art), die Normalverteilungsannahme nicht deutlich ab. Die graphischen Vergleiche zwischen den empirischen Verteilungen und den hypothetischen N (ˆ , ˆ 2 ) -Verteilungen bestätigen dies. Dabei werden ̂ = x und ̂ 2 = s 2 für den jeweils betrachteten Zeitraum berechnet. Die Ergebnisse dieser Vergleiche sind in Abbildung 5.3. zu sehen. Zusätzlich sind die Werte ks = Wert der K-S Teststatistik, z = n *ks und p angegeben. Für p gilt: falls p > α wird die Normalverteilung (Nullhypothese) angenommen, falls p < α wird die Normalverteilung abgelehnt. In S-Plus kann Abbildung 5.3. wie folgt realisiert werden. S-Plus Sequenz >attach(Zugriffe) >cdf.compare(Zugriffe.Tag,distribution="normal",mean=mean(Zugriffe.Tag), sd=sqrt(var(Zugriffe.Tag))) #graphischer Vergleich. >ks.gof(Zugriffe.Tag,distribution="normal",mean=mean(Zugriffe.Tag), sd=sqrt(var(Zugriffe.Tag))) #KS-Test. Die Grafik wurde im Grafikfenster noch nachbearbeitet. -23- 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al 100 200 300 400 500 s ol i d D a t e n : Z u g r i f f e / T a g 1 . P e r i o d e k s = 0 . 1 5 , z = 2 . 2 3 p < 0 . 0 0 0 1 20 40 60 80 s ol i d l i ne i s i s 100 200 300 400 500 the empi s ol ir d i c lal i ne d.f. i s 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al s ol i d 10 12 14 s ol i d l i ne l i ne i s empi ri c a D a t e n : A n w e n d e r s i t z u n g e n / T a g 2 . P e r i o d e k s = 0 . 0 6 , z = 1 . 3 5 p = 0 . 0 5 3 0 i s 20 40 60 80 100 120 the empi s ol i d ri c li al ne d.f. i s Abbildung 5.3.: Vergleiche mit N ( ˆ , ˆ ²) -Verteilungen -24- the and E m H pi y r pothes ic al an 0. 0.2 0.4 0.6 0.8 1.0 0. 0.2 0.4 0.6 0.8 1.0 D a t e n : A n w e n d e r s i t z u n g e n / T a g 1 . P e r i o d e k s = 0 . 1 5 , z = 2 . 2 7 p = 0 . 0 0 0 1 8 the H yp 20 40 60 80 100 120 E m pir ic al 6 and D a t e n : A n w e n d e r s i t z u n g e n / T a g g e s a m t k s = 0 . 1 3 , z = 3 . 4 7 p < 0 . 0 0 0 1 0 4 empi ri c D a t e n : Z u g r i f f e / T a g 2 . P e r i o d e k s = 0 . 0 8 , z = 1 . 8 0 p = 0 . 0 0 3 0 l i ne the and E m H pi yr pothes ic al an 0. 0.2 0.4 0.6 0.8 1.0 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al 2 H yp D a t e n : Z u g r i f f e / T a g g e s a m t k s = 0 . 1 3 , z = 3 . 4 9 p < 0 . 0 0 0 1 0 0 and the 5.5. Kolmogorov-Smirnov Test auf Gammaverteilung Ein anderes Verteilungsmodell, dass bei Betrachtung der Dichteschätzer (siehe Abbildungen 5.1., 5.2.) plausibel erscheint, ist die Gammaverteilung (Gam(a, )). Der unbekannte x2 x Parametervektor (a, ) wird dabei mittels Momentenmethode durch â = 2 , ̂ = 2 s s geschätzt. Es resultiert Abbildung 5.4., wobei ̂ lambda. S-Plus Sequenz >attach(Zugriffe) >cdf.compare(Zugriffe.Tag,distribution="gamma",shape=mean(Zugriffe.Tag)^2/ var(Zugriffe.Tag), rate=mean(Zugriffe.Tag)/var(Zugriffe.Tag)) >ks.gof(Zugriffe.Tag,distribution="gamma",shape=mean(Zugriffe.Tag)^2/ var(Zugriffe.Tag), rate=mean(Zugriffe.Tag)/var(Zugriffe.Tag)) 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al 0 100 200 300 400 500 and D a t e n : Z u g r i f f e / T a g 1 . P e r i o d e â = 1 . 2 4 , l a m b d a = 0 . 0 5 6 k s = 0 . 0 4 , z = 0 . 6 3 p = 0 . 8 2 20 40 60 80 H E ym pothes pir ic al iz an ed l i ne i s 0 0. 0.2 0.4 0.6 0.8 1.0 i s the empi ri c al d D a t e n : Z u g r i f f e / T a g 2 . P e r i o d e â = 2 . 4 7 , l a m b d a = 0 . 0 2 0 k s = 0 . 0 4 , z = 0 . 8 5 p = 0 . 4 6 100 200 300 400 500 E m pir ic al l i ne the 0. 0.2 0.4 0.6 0.8 1.0 0. 0.2 0.4 0.6 0.8 1.0 s ol i d s ol i d H y pot D a t e n : Z u g r i f f e / T a g g e s a m t â = 1 . 2 6 , l a m b d a = 0 . 0 1 4 k s = 0 . 0 7 , z = 1 . 8 8 p = 0 . 0 0 1 7 E m pir ic al 0 and and H y pot empi ri c s al ol i d.f. d l i ne i s the D a t e n : A n w e n d e r s i t z u n g e n / T a g g e s a m t â = 1 . 4 0 , l a m b d a = 0 . 0 4 9 k s = 0 . 1 5 , z = 4 . 0 0 p < 0 . 0 0 0 1 0 20 40 60 80 100 120 E m pir ic al and H E ym pothes pir ic al iz an ed D a t e n : A n w e n d e r s i t z u n g e n / T a g 1 . P e r i o d e â = 2 . 8 4 , l a m b d a = 0 . 6 6 2 k s = 0 . 1 0 , z = 1 . 5 5 p = 0 . 0 1 6 2 4 6 8 10 12 14 s ol i d l i ne l i ne 0. 0.2 0.4 0.6 0.8 1.0 0. 0.2 0.4 0.6 0.8 1.0 s ol i d 0 i s the i s the d D a t e n : A n w e n d e r s i t z u n g e n / T a g 2 . P e r i o d e â = 3 . 6 3 , l a m b d a = 0 . 0 9 1 k s = 0 . 0 5 , z = 1 . 0 0 p = 0 . 2 6 20 40 60 80 100 120 empi ri c s al ol i d.f. d l i ne Abbildung 5.4.: Vergleiche mit Gam(â, ̂ )-Verteilungen -25- empi ri c al i s the Für die Daten Zugriffe/Tag der 1. Periode, Zugriffe/Tag der 2. Periode und Anwendersitzungen/Tag der 2. Periode scheint die Gammaverteilung ein adäquates Modell zu sein. 5.6. Wilson-Hilferty Approximation Bei den untransformierten Daten kann man die Normalverteilung nicht annehmen. Man kann jedoch die Gammaverteilung teilweise annehmen (siehe Abbildung 5.4.). Deshalb wählt man den parametrischen Ansatz: 1. Verteilungsmodell ist die Gammaverteilung, X ~ Gam(a, ), a > 0, > 0 mit Dichte f X ( x) a x a 1 exp( x) I (0, ) ( x) . ( a ) 2. Transformation der gammaverteilten Variablen auf die Normalverteilung. Für eine Zufallsvariable X ~ Gam(a, ) gilt (Kotz und Johnson (1983)): 1 1 3 1 X 1 appr. appr . 1 1 3 und a 9a ~ N 0,1 . X ~ N 1 , 1 a 9a 9a 9a Diese Approximation durch die N(0,1)-Verteilung nennt man Wilson-Hilferty Approximation. Um zu zeigen wie gut die Wilson-Hilferty Approximation für eine Gam(a, )-Verteilung ist, vergleicht man die Quantile e , die sich aus der Gam(a, )-Verteilung ergeben mit den rücktransformierten N(0,1)-Quantilen eˆ . Es gilt 1 1 1 1 3 3 , : und Y : X , eˆ : eˆ , : 1 9a 9a a a Y eˆ P( X eˆ ) P (Y eˆ ) P( ) P ( Z z ) , wobei Z ~ N (0,1) und z das α-Quantil der N(0,1)-Verteilung ist. ê ergibt sich aus z eˆ 1 a 3 3 eˆ eˆ z eˆ z . a In Tabelle 5.2. sieht man den Vergleich des exakten Quantils e mit dem approximativen Quantil ê für eine Gam(1.24, 0.056)-Verteilung und für eine Gam(2.47,0.02)-Verteilung. Die Quantile kann man auch mit Abbildung 5.4. (2. und 3. Plot) vergleichen, wobei die Berechnungen der Quantile in S-Plus mit den folgenden Kommandos durchgeführt werden. -26- S-Plus Sequenz a<-1.24 lambda<-0.056 y<-qgamma(c(0.01,0.05,0.1,0.25,0.5,0.75,0.9,0.95,0.99), shape=a, rate=lambda) z<-qnorm(c(0.01,0.05,0.1,0.25,0.5,0.75,0.9,0.95,0.99), mean=0,sd=1) sigma<-sqrt(1/(9*a)) mu<-(1-1/(9*a)) e<-(a/lambda)*((sigma*z+mu)^3) y;e #ausgewählte Quantile der #Gam(1.24,0.056)-Verteilung. #ausgewählte Quantile der #N(0,1)-Verteilung. # eˆ . #Ausgabe der Vektoren. Gam(1.24,0.056)-Verteilung exakt approx. e eˆ α e ê e Gam(2.47,0.02)-Verteilung exakt approx. e eˆ α e ê e 0.01 13.427 12.148 0.095 0.05 27.942 27.505 0.016 0.1 39.401 39.384 0.0004 0.25 65.715 66.111 -0.006 0.5 107.293 107.572 -0.003 0.75 163.801 163.516 0.002 0.9 228.762 228.043 0.003 0.95 274.437 273.767 0.002 0.99 374.509 375.278 -0.002 0.01 0.05 0.1 0.25 0.5 0.75 0.9 0.95 0.99 0.485 1.837 3.333 7.757 16.556 30.565 48.348 61.533 91.684 0.217 1.617 2.237 7.875 16.708 30.472 47.979 61.121 91.853 0.553 0.120 0.029 -0.015 -0.009 0.003 0.008 0.007 -0.002 Tabelle 5.2.: Quantile der Gammaverteilung Die Wilson-Hilferty Approximation ist desto besser je größer a ist (vergleiche Spalten e eˆ e eˆ e eˆ in Tabelle 5.2.). Für a → ∞ gehen die Werte → 0. Für a = 100 ist .95 .95 e e e.95 = 0.0000065. Der Parameter geht nur als Skalierungsparameter in ê und e ein und kann deshalb bei dieser Betrachtung vernachlässigt werden. Im nächsten Schritt wird die Wilson-Hilferty Transformation auf die Daten angewandt. Die transformierten Daten werden wie vorhin (Abbildung 5.3.) in Abbildung 5.5. dargestellt. -27- 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al 1 s ol i d 2 3 l i ne is D a t e n : Z u g r i f f e / T a g 1 . P e r i o d e k s = 0 . 0 5 , z = 0 . 7 8 p = 0 . 5 9 0 1 s ol i d 2 3 l i ne 0. 0.2 0.4 0.6 0.8 1.0 empi ri D a t e n : Z u g r i f f e / T a g 2 . P e r i o d e k s = 0 . 0 3 , z = 0 . 7 3 p = 0 . 6 8 -3 -2 -1 0 i s 1 2 3 the s empi r al i d.f. ol i d li ic ne s the E m pir ic al and H y D a t e n : A n w e n d e r s i t z u n g e n / T a g g e s a m t k s = 0 . 1 0 , z = 2 . 7 5 p < 0 . 0 0 0 1 -3 -2 -1 0 1 s ol i d 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al 0. 0.2 0.4 0.6 0.8 1.0 the and H y pothe E m pi r ic al an 0. 0.2 0.4 0.6 0.8 1.0 0. 0.2 0.4 0.6 0.8 1.0 E m pir ic al -1 H y D a t e n : Z u g r i f f e / T a g g e s a m t k s = 0 . 0 5 , z = 1 . 2 5 p = 0 . 0 7 8 -3 -2 -1 0 -2 and 2 3 l i ne i s the empi ri and E m pi H r y ic pothe al an D a t e n : A n w e n d e r s i t z u n g e n / T a g 2 . P e r i o d e k s = 0 . 0 5 , z = 1 . 0 6 p = 0 . 1 9 D a t e n : A n w e n d e r s i t z u n g e n / T a g 1 . P e r i o d e k s = 0 . 1 1 , z = 1 . 5 7 p = 0 . 0 1 4 -2 -1 0 1 s ol i d 2 3 l i ne -4 i s -2 0 2 the s empi ol i d r li ic ne al i d.f. s the Abbildung 5.5.: Vergleiche mit N ( ˆ , ˆ ²) -Verteilungen, nach Wilson-Hilferty Transformation. Man sieht, dass bei den Daten, bei denen eine Gammaverteilung plausibel war, für die entsprechenden transformierten Daten eine Normalverteilung annehmbar ist. -28- Dies wird durch die QQ-Plots für die transformierten Daten nochmals bestätigt (Abbildung 5.6.). In S-Plus erhält man den QQ-Plot ähnlich wie den Scatter-Plot über das Insert GraphDialogfenster (siehe Abschnitt 4.1.). Dort wählt man den Punkt QQ Normal with Line (y). g e s a m t 4 2 Zugrife/Ta 0 2 4 4 2 1 . P e r i o d e 0 N o r m a l D i s t r i b u t i o n 2 2 . P e r i o d e 2 2 0 0 Zugrife/Ta 4 Zugrife/Ta 4 2 2 4 4 4 4 2 0 N o r m a l D i s t r i b u t i o n 2 4 4 2 0 N o r m a l D i s t r i b u t i o n g e s a m t 2 4 4 2 Anwedrsitzugn/Ta 0 2 4 4 1 . P e r i o d e 2 0 N o r m a l D i s t r i b u t i o n 2 2 2 0 0 2 2 4 4 2 . P e r i o d e Anwedrsitzugn/Ta 4 Anwedrsitzugn/Ta 4 4 4 2 0 N o r m a l D i s t r i b u t i o n 2 4 4 2 0 N o r m a l D i s t r i b u t i o n Abbildung 5.6.: QQ-Plots nach Wilson-Hilferty Transformation -29- 2 4 5.7. Box-Cox Transformation Es wird noch die Möglichkeit der Verwendung eines nichtparametrischen Ansatz, der BoxCox Transformation (Box und Cox (1964)), in Betracht gezogen. Die allgemeine Form der Box-Cox Transformation für y > 0 lautet y 1 y ( ) , log y, falls 0 falls 0, wobei λ den Transformationsparameter bezeichnet. Man nimmt an, dass es einen Wert λ gibt, für den yi ( ) einer Normalverteilung mit konstanter Varianz genügt, d. h. yi ( ) ~ N ( i ( ), ²( )) . Der Schätzer ̂ wird in S-Plus mit dem Befehl boxcox bestimmt. boxcox berechnet die Profile Log-Likelihood Funktion pl ( ) (siehe Friedl – Lineare Modelle (SS 2000)) für verschiedene λ der einfachen Box-Cox Transformation y( ) y , gegeben durch n 2 n n log y y n log ( 1 ) log y i , 0 i 2 i 1 i 1 pl ( ) n n n log log y i log y 2 log y i , 0 2 i 1 i 1 mit y 1 n 1 n y log y , i log yi . n i 1 n i 1 ̂ ergibt sich aus max pl ( ) pl (ˆ ) . Ein approximatives Konfidenzintervall für den Para meter λ beinhaltet all jene Werte von λ, für die pl (ˆ ) pl ( ) 12 12 ;1 , wobei 12 ;1 das (1- )-Quantil der Chi-Quadrat-Verteilung mit einem Freiheitsgrad ist (z. B. 0.95;1 = 3.8415). Die Ergebnisse für ̂ werden in Abbildung 5.7. grafisch dargestellt und in Tabelle 5.3. und Tabelle 5.4. aufgelistet. S-Plus Sequenz >attach(Zugriffe) >library(MASS) >boxcox(Zugriffe.Tag ~ Zugriffe.Tag, Lambda = seq(0, 1, len = 11), plotit = T) #Der Befehl boxcox verlangt ein Modell. #Berechnung und Plot von 11 λ-Werten von 0 bis 1 in 0.1 #Schritten. -30- -502 -50log-Likehd -5048 -5046 Z u g r i f f e / T a g g e s a m t 9 5 % 0 . 2 0 0 . 2 5 0 . 3 0 l a m b d a 0 . 3 5 Z u g r i f f e / T a g 2 . P e r i o d e -398 -397 log-Likehd -396 -395 -394 -187 -186 log-Likehd -185 -184 Z u g r i f f e / T a g 1 . P e r i o d e 9 5 % 0 . 1 0 0 . 1 5 0 . 2 0 0 . 2 5 0 . 3 0 l a m b d a 0 . 3 5 0 . 4 0 0 . 4 0 9 5 % 0 . 2 0 . 3 0 . 4 0 . 5 l a m b d a -4275 -427 log-Likeh-4d273 -427 -4271 -4270 A n w e n d e r s i t z u n g e n / T a g g e s a m t 9 5 % 0 . 2 0 0 . 2 5 0 . 3 0 0 . 3 5 l a m b d a 9 5 % 0 . 0 A n w e n d e r s i t z u n g e n / T a g 2 . P e r i o d e -283 -28 log-Likehd -281 -280 -2819 -781 -780 -7log9-Likehd -78 -7 -76 A n w e n d e r s i t z u n g e n / T a g 1 . P e r i o d e 0 . 1 0 . 2 0 . 3 l a m b d a 0 . 4 0 . 4 0 0 . 5 9 5 % 0 . 3 0 . 4 0 . 5 l a m b d a Abbildung 5.7.: 95%-Konfidenzintervalle für λ -31- 0 . 6 Zusammenfassung der Box-Cox Transformation ˆ Transformiert man die Daten auf y(ˆ ) y , und testet man dann mittels KolmogorovSmirnov Test auf Normalverteilung, folgt der in Tabelle 5.3. und Tabelle 5.4. angeführte Wert für p. Zugriffe/Tag gesamt ̂ = 0.31 pl (ˆ ) -5046.073 95%-Konfidenzintervall für λ = (0.25,0.37) p = 0.058 Zugriffe/Tag 1. Periode ̂ = 0.25 pl (ˆ ) -1183.653 95%-Konfidenzintervall für λ = (0.13,0.36) p = 0.89 Zugriffe/Tag 2. Periode ̂ = 0.35 pl (ˆ ) -3393.958 95%-Konfidenzintervall für λ = (0.24,0.46) p = 0.69 Anwendersitzungen/Tag gesamt ̂ = 0.31 pl (ˆ ) -4269.975 95%-Konfidenzintervall für λ = (0.24,0.38) p < 0.0001 Anwendersitzungen/Tag 1. Periode ̂ = 0.27 pl (ˆ ) -775.899 95%-Konfidenzintervall für λ = (0.08,0.46) p = 0.025 Anwendersitzungen/Tag 2. Periode ̂ = 0.45 pl (ˆ ) -2819.028 95%-Konfidenzintervall für λ = (0.32,0.59) p = 0.55 Tabelle 5.3.: Box-Cox Transformation 1 Transformiert man die Daten derart, dass y ( 0 ) y 0 mit 0 aus dem Konfidenzintervall für , erhält man beispielsweise: Zugriffe/Tag gesamt 0 = 13 pl (0 ) -5046.375 p = 0.078 Zugriffe/Tag 1. Periode 0 = 14 pl (0 ) -1183.653 p = 0.89 Zugriffe/Tag 2. Periode 0 = 13 pl (0 ) -3394.012 p = 0.68 Anwendersitzungen/Tag Anwendersitzungen/Tag Anwendersitzungen/Tag gesamt 1. Periode 2. Periode 1 1 1 0 = 3 0 = 4 0 = 2 pl (0 ) -4270.227 p < 0.0001 pl (0 ) -775.914 p = 0.027 pl (0 ) -2819.267 p = 0.76 Tabelle 5.4.: Box-Cox Transformation 2 Alle sechs Konfidenzintervalle für aus Tabelle 5.3. beinhalten den Wert = 1 3 1 3 . Falls man die Daten zu y transformiert, hat man bis auf die Skalierung eine Wilson-Hilferty Transformation. -32- ˆ Die Abbildung 5.8. zeigt die QQ-Plots für die mittels y(ˆ ) y transformierten Daten. g e s a m t 7 6 5 Zugrife/Ta 4 3 2 1 3 2 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 1 . P e r i o d e 2 . P e r i o d e 3 . 0 8 2 . 5 6 Zugrife/Ta Zugrife/Ta 2 . 0 4 1 . 5 2 1 . 0 3 2 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 3 2 g e s a m t 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 4 3 Anwedrsitzugn/Ta 2 1 3 2 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 1 . P e r i o d e 2 . 0 2 . P e r i o d e 8 1 . 8 6 1 . 6 1 . 4 Anwedrsitzugn/Ta Anwedrsitzugn/Ta 4 1 . 2 2 1 . 0 3 2 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 3 2 1 0 1 N o r m a l D i s t r i b u t i o n 2 3 Abbildung 5.8.: QQ-Plots nach Box-Cox Transformation Vergleicht man diese QQ-Plots mit den QQ-Plots der Daten nach Anwendung der WilsonHilferty Transformation (Abbildung 5.6.), so erkennt man bis auf die Skalierung keinen Unterschied. -33- 6. Benutzer In diesem Abschnitt wird auf die Benutzer der Homepage näher eingegangen. Die Benutzer werden identifiziert und ihre Zugriffe (bzw. Anwendersitzungen) werden aufsummiert. In Abbildung 6.1. werden die Benutzer aufgelistet, von denen mehr als 0.25 % der gesamten Zugriffe (bzw. Anwendersitzungen) stammen. Dazu werden die einzelnen DNS- und IPAdressen in größere (brauchbare) Sequenzen zusammengefasst, z. B. werden 195.34.128.0 195.34.159.255, *.teleweb.at, *.telekabel.at zu Telekabel Wien GmbH zusammengefasst (* entspricht einer beliebigen Zeichenfolge). Die Übersetzung der DNS- und IP-Adressen wird im Internet, auf den Homepages jener internationalen Organisationen gemacht, die Domains und somit IPs verwalten (RIPE, APNIC,ARIN). Die aufgelisteten Benutzer in Abbildung 6.1. machen insgesamt 64.4 % der gesamten Zugriffe (bzw. 51.9 % der gesamten Anwendersitzungen) aus. Anwendersitzungen Zugriffe 7417 Studentenheime in Graz Subzentren der T U-Graz Studentenheime in Graz 6579 ISDN-Anschlüsse der T U-Graz 3249 Deutsche T elekom AG, T elekom Online-Dienste Digital Equipment Corporation 1786 T elekom Austria AG 658 Deutsche T elekom AG, T elekom Online-Dienste 563 Inktomi Corporation 1361 519 Lycos, Inc 1174 IMS INFO media systems Internet Services GmbH 878 Digital Equipment Corporation 2041 NET WAY AG Internet Service Provider 1025 Subzentren der T U-Graz 484 ISDN-Anschlüsse der T U-Graz 1015 467 T elekom Austria AG 417 924 Institut für Mathematik, T U-Graz Exodus Commnications Inc. T U-Wien 900 Exodus Commnications Inc. 871 Universität Wien 714 Inktomi Corporation 690 ISDN-Call-Back-Anschlüsse der T U-Graz 649 T elekabel Wien GmbH 630 University of London Excite, Inc. 358 T U-Wien 598 Proxy- und Webserver T U-Graz 377 358 University of London 536 270 Ludwig-Maximilians-Universität Muenchen 248 Google Inc 244 Endemann Werbeagentur 212 NET WAY AG Internet Service Provider 206 Lycos, Inc 524 Universität Wien 197 AT W Enterprises 492 AT W Enterprises 190 Ludwig-Maximilians-Universität Muenchen 461 Alexa Internet Excite, Inc. 444 Institut für Mathematik, T U-Graz 183 Institut für Geodäsie, T U-Graz 421 ISDN-Call-Back-Anschlüsse der T U-Graz 127 WU-Wien 411 Gruner + Jahr AG & Co 124 123 134 Universität Klagenfurt 392 T elekabel Wien GmbH Google Inc 348 AOL Domain Registration 122 RedIRIS, Spanish National R&D Network 336 RedIRIS, Spanish National R&D Network 120 Northern Light T echnology LLC 296 GT N, PROVIDER 115 Alexa Internet 289 BT Fusion IP Services Platform 112 Hörsäle, T U-Graz 279 Proxy- und Webserver T U-Graz 106 Bauer GmbH, oberland.net 104 WU-Wien 103 Katholieke Universiteit Leuven 272 WIFI der Wirtschaftskammer 271 Openfind, T aiwan 262 Hochschülerschaft, T U-Graz 244 Endemann Werbeagentur 244 Universität Udine 216 Montanuniversitaet Leoben 212 Computer Center 207 ACOnet 205 Johannes Kepler Universitaet Linz 189 Universität Gent 188 Leibniz-Rechenzentrum der Bayerischen Akademie 100 NEC USA, Inc. 74 ACOnet 72 Muscat Limited 69 Universität Innsbruck 67 Universität Klagenfurt 66 Katholieke Universiteit Leuven 65 Hörsäle, T U-Graz 59 Muscat Limited 187 RUBIS incorporated 59 Gruner + Jahr AG \& Co 183 Computer Center 58 BT Fusion IP Services Platform 180 Johannes Kepler Universitaet Linz 57 JOANNEUM RESEARCH 180 Den Kongelige Veterinaer- og Landbohoejskole 56 Leibniz-Rechenzentrum der Bayerischen Akademie 167 JOANNEUM RESEARCH 55 166 Universität Gent Universität Innsbruck 0 1000 2000 3000 4000 5000 6000 7000 8000 50 0 Zugriffe 200 400 600 800 Anwendersitzungen Abbildung 6.1.: Benutzer -34- 1000 1200 Betrachtet man Abbildung 6.1., sieht man, dass der Großteil der Zugriffe (bzw. Anwendersitzungen) von Institutionen der TU-Graz und von Studentenheimen in Graz stammt. Fasst man diese Gruppen zusammen, kommt man auf 21932 Zugriffe (35.9 % der gesamten Zugriffe) bzw. auf 3172 Anwendersitzungen (16.2 % der gesamten Anwendersitzungen). Im nächsten Schritt werden die Länder identifiziert, aus denen die Benutzer stammen. Dies ist nur dann möglich, falls in der DNS-Adresse die Länderdomain vorkommt. Eine Ausnahme bilden die USA, denn *.edu, *.gov, *.mil werden den USA zugerechnet. Weiters werden die übersetzten IP-Adressen, die eindeutig einem Land zuzuordnen sind berücksichtigt. In Abbildung 6.2. werden die Benutzerländer aufgelistet, aus denen mehr als 0.25 % aller Zugriffe (bzw. 0.3 % aller Anwendersitzungen) stammen. Die aufgelisteten Länder machen insgesamt 73 % der gesamten Zugriffe (bzw. 55.4 % der gesamten Anwendersitzungen) aus. Anwendersitzungen Zugriffe 32307 Österreich Österreich USA 1301 USA Italien 1213 United Kingdom United Kingdom Belgien Spanien 641 Frankreich 486 Schweiz 443 Niederlande 433 Dänemark 433 2422 693 539 Italien 1183 644 5552 Deutschland 5586 Deutschland 442 Spanien 280 Frankreich 218 Schweiz 199 Dänemark 195 Niederlande 183 Belgien 175 Kanada 136 Australien 103 Polen 378 Taiwan 291 Polen 95 Kanada 239 Japan 86 Australien 180 Schweden 67 Tschechische Rep. 163 Tschechische Rep. 0 5000 10000 15000 20000 25000 30000 35000 65 0 1000 2000 3000 4000 Anwendersitzungen Zugriffe Abbildung 6.2.: Benutzerländer -35- 5000 6000 Im nächsten Schritt werden die Benutzer in die Kategorien Unternehmen, Organisationen, Bildungseinrichtungen, Internet Betreiber, Regierungen (Militär kommt nicht vor) eingeteilt. Die Einteilungen in die jeweiligen Kategorien sind in Tabelle 6.1. aufgelistet. Dabei ist ein Zugriff einer Kategorie anzurechnen, falls in der DNS-Adresse des Benutzers eine der angeführten Kombination vorkommt. Weiters werden die übersetzten IP-Adressen der Benutzer, die eindeutig einer dieser Kategorien zuzuordnen sind, berücksichtigt. DNS-Adresse (* entspricht einer beliebigen Zeichenfolge, ? entspricht genau einem Zeichen) *.com, *.com.??, .co. *.org, *.org.??, .or. *.edu, *.edu.??., .ac. *.net, *.net.?? *.gov, *.gov.??, .gv. Kategorie Unternehmen Organisationen Bildungseinrichtungen Internet Betreiber Regierungen Tabelle 6.1.: Benutzerkategorien Bei einer Einteilung in diese 5 Kategorien werden 65.5 % aller Zugriffe berücksichtigt, bzw. 58.3 % aller Anwendersitzungen. In Abbildung 6.3. sind die Ergebnisse in einem Diagramm dargestellt. Anwendersitzungen Zugriffe Bildungseinrichtungen Bildungseinrichtungen 27586 (ac) 1461 (edu) Unternehmen Unternehmen 7506 (com) 216 (co) Internet Betreiber 4895 (ac) 3887 (com) Internet Betreiber 2933 224 Regierungen 86 Organisationen 157 Organisationen 79 5000 10000 15000 20000 25000 30000 35000 0 1000 Abbildung 6.3.: Benutzerkategorien -36- 96 (co) 1617 Regierungen 0 747 (edu) 2000 3000 4000 5000 6000 7. Webseiten Die Homepage besteht aus mehreren Webseiten, auf die man entweder direkt zugreifen kann oder mit Hilfe eines Links kommt. Eine Methode zur genauen Bestimmung der Position einer Webseite im Internet ist der Universal Resource Locator (URL). Eine URL-Adresse besteht aus vier Teilen: Protokolltyp (http), Servername (www.cis.tu-graz.ac.at), Verzeichnispfad (/stat/) und Dateiname (guestbook.html). Beispielsweise führt das URL http://www.cis.tu-graz.ac.at/stat/guestbook.html zur Webseite Guestbook der Homepage des Institutes für Statistik. Die einzelnen Webseiten werden zu übergeordneten Ordnern zusammengefasst (z. B. werden die Seiten /stat/iwsm/* zur Webseite IWSM zusammengefasst). Während des Beobachtungszeitraums hat sich die Bezeichnung von einzelnen Webseiten geringfügig verändert. Zur Bearbeitung der Seiten wird eine einheitliche Bezeichnung festgelegt (z. B. werden /stat/books.html und /stat/library/* zu Bibliothek zusammengelegt). Abbildung 7.1. zeigt wie oft (in % aller Zugriffe) auf welche Seiten zugegriffen wird. Angeforderte Seiten Gästebuch 1.5% Bibliothek 6.7% Rest 9.5% Startseite 10.3% Sekretariat 1.2% Lehrveranstaltungen 20.9% Stadlober 5.1% Stampfer 8.2% Vorlesungen 2.7% Friedl 1.6% Anmeldung 1.2% Akad. Personal 2.2% IWSM 19.4% ÖMG 7.9% Diplomarbeiten 1.7% Abbildung 7.1.: angeforderte Seiten Die Kategorie Rest beinhaltet Seiten mit weniger als 1 % der gesamten Zugriffe und die Content-Seite (5.5 %), da diese nur Navigationselemente enthält. -37- Abbildung 7.2. zeigt, wie oft eine Seite als Einstiegseite gezählt wird (in % aller Einstiegzugriffe). Einstiegseiten Gästebuch 1.2% Rest 9.4% Startseite 12.5% Bibliothek 3.2% Stadlober 7.1% Lehrveranstaltungen 16.3% Stampfer 8.1% Friedl 1.7% ÖMG 8.5% IWSM 31.9% Abbildung 7.2.: Einstiegseiten Eigentlich wäre die typische Einstiegseite die Startseite der Homepage (http://www.cistu.graz.ac.at/stat/), man kann aber auch eine URL eingeben, um auf eine bestimmte Seite direkt zuzugreifen. Die (anzahlmäßig) bedeutendste Einstiegseite ist nicht die Startseite, sondern die IWSM-Seite. Die Kategorie Rest beinhaltet Einstiegseiten die weniger als 1 % der gesamten Einstiegzugriffe ausmachen und die Content-Seite (3.2 %). -38- 7.1. Zeitliche Verteilung der Zugriffe auf die Webseiten Abbildungen 7.1. und 7.2. zeigen die begehrtesten Seiten der Homepage auf. Es stellt sich jetzt die Frage nach der zeitlichen Verteilung der Zugriffe auf die Webseiten. Dazu werden im Falle der angeforderten Seiten die sieben begehrtesten Seiten und im Falle der Einstiegseiten die sechs begehrtesten Seiten genauer betrachtet. Als Zeiteinheit wird ein Monat festgelegt. Das heißt, man betrachtet wie oft auf eine Seite j im i-ten Monat (j = Startseite, IWSM, Lehrveranstaltungen, ... , i = 01/98,...,12/99) zugegriffen wird bzw. wie oft ein Einstiegzugriff für eine Seite j registriert wird. Diese Zeitreihen werden mit Zugriffe/Monat(i)/Webseite(j) und Einstiegzugriff/Monat(i)/Webseite(j) bezeichnet. Da man hauptsächlich an der 2. Periode (22.09.98 bis 31.12.99) interessiert ist, betrachtet man nur die Monate 09/98 bis 12/99. In diesem Zeitraum machen die Zugriffe auf die sieben begehrtesten angeforderten Seiten 80.2 % aller Zugriffe aus. In Abbildung 7.3. sind die Zugriffe/Monat(i)/Webseite(j) gegen das Monat i aufgetragen. Angeforderte Seiten 5000 4000 3000 35 % 2000 35 % 49 % 43 % 35 % 29 % 23 % 1000 26 % 25 % 25 % 23 % 27 % 37 % 15 % 18 % 15 % 48 % 34 % 35 % 13 % 30 % 13 % 0 Sep 98 Okt 98 Nov 98 Dez 98 Jan 99 Feb 99 Mrz 99 Apr 99 Mai 99 Jun 99 Jul 99 Aug 99 Sep 99 Okt 99 Nov 99 Dez 99 Startseite Lehrveranstaltungen IWSM Bibliothek ÖMG Stadlober Stampfer gesamt Abbildung 7.3.: zeitliche Verteilung der angeforderten Seiten Die Prozentangaben an den einzelnen Punkten in Abbildung 7.3. geben den Anteil an den gesamten Zugriffen in dem jeweiligen Monat an. -39- In Abbildung 7.4. sind die Einstiegzugriffe/Monat(i)/Webseite(j) gegen das Monat i aufgetragen. Im Zeitraum 09/98 bis 12/99 werden 86.4 % aller Einstiegzugriffe auf die sechs begehrtesten Einstiegseiten getätigt. Einstiegseiten 1800 1600 1400 1200 1000 58 % 800 54 % 48 % 40 % 41 % 42 % 600 39 % 36 % 400 24 % 70 % 200 28 % 27 % 32 % 14 % 20 % 13 % 16 % 11 % 13 % 19 % 22 % 26 % 30 % 16 % 0 Sep 98 Okt 98 Nov 98 Dez 98 Jan 99 Feb 99 Mrz 99 Apr 99 Mai 99 Jun 99 Jul 99 Aug 99 Sep 99 Okt 99 Nov 99 Dez 99 Startseite Lehrveranstaltungen IWSM ÖMG Stadlober Stampfer gesamt Abbildung 7.4.: zeitliche Verteilung der Einstiegseiten Die Prozentangaben an den einzelnen Punkten in Abbildung 7.4. geben den Anteil an den gesamten Einstiegzugriffen in dem jeweiligen Monat an. Die IWSM (International Workshop on Statistical Modelling) Seiten und die ÖMG (Österreichische Mathematische Gesellschaft) Seiten sind gesondert zu behandeln. Sie gehören zwar zur Homepage haben aber einen speziellen Status. Sie beziehen sich auf zeitlich begrenzte Ereignisse (Tagungen). Betrachtet man den Verlauf der IWSM- und ÖMG-Seiten und deren „Begehrtheit“ genauer, erkennt man ihre Sonderstellung. Auch der typische Benutzer dieser Seiten ist ein anderer als bei den anderen Seiten. Wie bereits festgestellt, kommen 21932 Zugriffe (35.9 % der gesamten Zugriffe) von Institutionen der TU-Graz und von Studentenheimen in Graz, jedoch wird von denen lediglich 478 mal (2.2 % von 21932) auf IWSM-Seiten und 564 mal (2.6 % von 21932) auf ÖMG-Seiten zugegriffen. Diese geringe Anzahl an Zugriffen ist vernachlässigbar. -40- Abbildung 7.5. zeigt den zeitlichen Verlauf der Anzahl der Zugriffe/Monat ohne IWSM- und ÖMG-Seiten. 47 % dieser Zugriffe stammen von Institutionen der TU-Graz und von Studentenheimen in Graz. Diese werden ebenfalls in der Grafik berücksichtigt. Externe Zugriffe ohne Zugriffe auf IWSM- und ÖMG-Seiten 6000 5000 4000 3000 2000 1000 0 bis 9/98 Okt 98 Nov 98 Dez 98 Jan 99 Feb 99 Mrz 99 Apr 99 Mai 99 Jun 99 externe Zugriffe ohne IWSM- und ÖMG-Seiten Jul 99 Aug Sep 99 99 Okt 99 Nov 99 Dez 99 TU-Graz, Studentenheime Abbildung 7.5.: zeitliche Verteilung des Benutzers TU-Graz Man erkennt natürlich die starke Abhängigkeit der gesamten Zugriffe/Monat ohne IWSMund ÖMG-Seiten von den Zugriffen/Monat der TU-Graz und Studentenheimen in Graz. Dies wird auch bestätigt durch den hohen emp. Korrelationskoeffizienten (r = 0.89) und dem dazugehörenden Scatter-Plot (Abbildung 7.6.). K o r r e l a t i o n r = 0 . 8 9 2 5 0 0 2 0 0 0 1 5 0 0 1 0 0 0 Zugrife/MonatvTU-GrazundStehimnGraz 5 0 0 0 1 0 0 0 2 0 0 0 3 0 0 0 4 0 0 0 5 0 0 0 e x t e r n e Z u g r i f f e / M o n a t o h n e I W S M u n d Ö M G S e i t e n Abbildung 7.6.: Scatter-Plot mit emp. Korrelationskoeffizienten -41- 8. Tageszeit Zu verschiedenen Tageszeiten wird auch auf die Homepage natürlich auch verschieden oft zugegriffen.Um dies zu verdeutlichen werden die Zugriffe, die während der i-ten Stunde eines Tages j getätigt werden, aufsummiert (i = 1,...24, j = 04.01.98,...,31.12.99). Diese Reihe wird mit Zugriffe/Stunde(i)/Tag(j) bezeichnet. Die Einteilung der Stunden erfolgte nach dem folgenden Schema 1 2 24 von 00:00:00 bis 00:59:59 von 01:00:00 bis 01:59:59 von 23:00:00 bis 23:59:59 In Abbildung 8.1. werden die Zugriffe/Stunde(i)/Tag(j) für den gesamten Zeitraum bzw. die 1. Periode und die 2. Periode über j aufsummiert und gegen die i-te Stunde aufgetragen. Zugriffe/Stunde gesamt 5000 4500 4000 3500 3000 2500 2000 1500 1000 500 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Zugriffe/Std. Zugriffe/Stunde 2. Periode Zugriffe/Stunde 1. Periode 350 5000 300 4500 4000 250 3500 200 150 3000 2500 2000 100 1500 50 1000 500 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Zugriffe/Std. Zugriffe/Std. Abbildung 8.1.: Tageszeitenverläufe Man erkennt 2 unterschiedliche Verläufe. Bei den Zugriffen/Stunde der 1. Periode sind beispielsweise zu den Stunden 3, 7 mehr Zugriffe zu verzeichnen als zu den Stunden 9, 11, 17, 18, 22, 23, 24. Bei den Zugriffen/Stunde der 2. Periode trifft dies nicht zu. Beim Verlauf der gesamten Zugriffe/Stunde überwiegt natürlich der Einfluss der 2. Periode. Hier sieht man schön die niedrigeren Häufigkeiten in den frühen Morgenstunden. -42- 9. Modellanpassung Die folgenden Definitionen, Sätze, Verfahren und Schlussfolgerungen sind hauptsächlich aus den Büchern Introduction to Time Series and Forecasting von Brockwell und Davis (1996), Analyse von Zeitreihen von Chatfield (1982) und aus dem S-Plus 4 Guide to Statistics. Da sich die Daten als Zeitreihe darstellen lassen (siehe Abschnitt 4.), versucht man die Daten an ein stationäres Zeitreihenmodell anzupassen. Für diese spezielle Analyse wird der Datensatz Anwendersitzungen/Tag der 2. Periode herangezogen. Definition 9.1.: Zeitreihe, Zeitreihenprozess Eine Zeitreihe ist eine Abfolge {xt } von Beobachtungen zu bestimmten Zeitpunkten t S . Falls S diskret ist spricht man von einer diskreten Zeitreihe, ist S ein reelles Intervall spricht man von einer stetigen Zeitreihe. Wir fassen eine Zeitreihe als Realisation eines Zeitreihenprozesses { X t }, t S , auf. In der Folge werden ausschließlich diskrete Zeitreihen mit S = ℤ = {..., 2,1,0,1,2,...} betrachtet. 9.1. Allgemeines Verfahren Vorab wird ein allgemeines Verfahren zur Analyse von Zeitreihen aufgezeigt, um einen Überblick über die wichtigsten Schritte, auf die in den folgenden Seiten eingegangen wird, zu bekommen. Zuerst wird die Zeitreihe geplottet und geprüft, ob sie (a) einen erkennbaren Trend, (b) eine saisonale Komponente, (c) deutlich Veränderungen in ihrem Verhalten oder (d) Ausreißer enthält. Im Anschluß werden Ausreißer möglicherweise berichtigt, Trend und saisonaler Effekt beseitigt, um eine annähernd stationäre Zeitreihe zu erhalten. Dieses Ziel kann unter Umständen durch Transformation der Daten erreicht werden. Falls es signifikante Abhängigkeiten zwischen den Daten gibt, dann muss man ein komplexeres stationäres Zeitreihenmodell, dass die Abhängigkeitsstruktur der Daten widerspiegelt, finden. Nachdem ein vernünftig erscheinendes Zeitreihenmodell identifiziert wurde, geht man an die Vorhersage zukünftiger Daten. -43- 9.2. Stationärität und Autokorrelationsfunktion Definition 9.2.: Kovarianzfunktion Sei { X t } ein Zeitreihenprozess mit E ( X t2 ) . Die Erwartungswertfunktion von { X t } ist (t ) E ( X t ) . Die Kovarianzfunktion von { X t } ist (r , s) = Cov( X r , X s ) , r, s ℤ. Definition 9.3.: Stationär Der Prozess { X t } ist (schwach) stationär, wenn (i) (t ) unabhängig von t, und (ii) (t h, t ) unabhängig von t ist h ℤ. Strikte Stationärität eines Zeitreihenprozesses { X t } ist durch die Bedingung, dass h, N ℤ, N 0 , die Zufallsvektoren { X 1 ,..., X N } und { X 1 h ,..., X N h } dieselbe Verteilung haben, definiert. Wann immer in der Folge der Begriff stationär benutzt wird, meinen wir damit aber schwach stationär nach Definition 9.3. Im Falle eines stationären Prozesses gilt t, h ℤ (t h, t ) (h) ist unabhängig von t. Die Kovarianz hängt somit nur vom sogenannten Lag h ab. Wir geben darum folgende Definition an. Definition 9.4.: Autokovarianzfunktion und Autokorrelationsfunktion { X t } sei ein stationärer Zeitreihenprozess. Die Autokovarianzfunktion (ACVF) von { X t } ist (h) Cov( X t h , X t ). Die Autokorrelationsfunktion (ACF) von { X t } ist (t h, t ) (h) . ( h) (t , t ) (0) Die ACF und ACVF eines stationären Zeitreihenprozess { X t } haben die folgenden einfach nachzurechnenden Eigenschaften. 1. (0) 1 und (0) Var ( X t ) , 2. (k ) (k ) und (k ) (k ) , 3. (k ) 1 und (k ) (0) . In der Praxis sind die meisten Zeitreihen nicht stationär. Um ein stationäres Modell anpassen zu können, müssen zunächst die nicht stationären Variationsursachen (z. B. ein Trend oder eine Saisonschwankung) aufgezeigt und entfernt werden. Wichtige Eigenschaften einer Zeitreihe werden durch die empirische Autokorrelationsfunktion angezeigt. Sie misst die Korrelation zwischen Beobachtungen bei verschiedenen Lags und verschafft einen Einblick in das Wahrscheinlichkeitsmodell, das diese Daten erzeugt. -44- Definition 9.5.: Empirische Autokorrelationsfunktion (emp. ACF) Seien x1 ,..., x N Beobachtungen eines Zeitreihenprozesses und x 1 N N x t 1 t . Die empirische Autokovarianzfunktion (emp. ACVF) ist N h 1 ˆ (h) ( xt h x )( xt x ), N h N. N t 1 Die empirische Autokorrelationsfunktion (emp. ACF) ist ˆ (h) ˆ (h) , N h N. ˆ (0) Für h 0 ist ˆ (h) approximativ gleich der emp. Kovarianzfunktion der (N – h) Beobachtungspaare ( x1 , x1 h ), ( x2 , x2 h ),..., ( x N h , x N ). Der Unterschied besteht in der Verwendung des Divisors N anstatt N-h und der Subtraktion des gemeinsamen arithmetischen Mittels x von jedem Faktor der Summe. Die Verwendung des Divisors N garantiert, dass die emp. N Kovarianzmatrix ˆ N ˆ (i j )i , j 1 nicht negativ definit ist (siehe Brockwell und Davis, S.18). 9.2.1. Prüfen der Daten mittels empirischer Autokorrelationsfunktion Um die empirische Autokorrelationsfunktion zu interpretieren ist es nützlich, diese über den Lags h aufzutragen. Die Betrachtung dieser Grafik, in der Folge als ACF-Plot bezeichnet, gibt aufschlussreiche Hinweise über die Abhängigkeitsstruktur der Daten. Zunächst sind folgende Eigenschaften zu betrachten. Wenn die Zeitreihe Saisonschwankungen enthält, dann findet man diese auch im ACFPlot mit der gleichen Frequenz wieder. Wenn eine Zeitreihe einen Trend enthält, dann können die Werte der emp. Autokorrelationsfunktion erst für große Lags h klein werden. Wenn eine Zeitreihe einen oder mehrere Ausreißer enthält, kann der ACF-Plot ernstlich beeinflusst sein. Es ist ratsam, diese zu berichtigen. Fundamental für die Interpretation des ACF-Plots sind die Stichprobeneigenschaften von ˆ (h). Als Speziallfall motivieren wir zunächst das folgende Lemma, wobei iid für unabhängig und identisch steht. Lemma 9.1.: Approximative Verteilung von ˆ (h) Für große N ist die emp. ACF ˆ (h) von iid verteilten X 1 ,..., X N mit endlicher Varianz 1 approximativ iid N (0, ) verteilt. N Die Verallgemeinerung von Lemma 9.1. auf lineare Prozesse (z. B. ARMA(p,q)-Modelle) wird später angegeben (siehe Abschnitt 9.4.1., Lemma 9.3.). Mittels Lemma 9.1. können wir 1 die Hypothese H iid , dass X 1 ,..., X N iid N (0, ) verteilt sind, überprüfen. Falls nämlich N -45- x1 ,..., x N Realisationen eines solchen Prozesses sind, sollen ca. 95 % der ˆ (h) innerhalb der 1,96 Grenzen liegen. N Zur Illustration betrachten wir den ACF-Plot für Anwendersitzungen/Tag der 2. Periode. Eine Faustregel besagt, falls von den ersten 40 Werten der emp. ACF mehr als 2 oder 3 Werte außerhalb oder ein Wert weit außerhalb der 95%-Grenzen liegen, dann kann man H iid verwerfen (siehe Brockwell und Davis, S. 34). In S-Plus wird der ACF-Plot mit den 95%-Grenzen mit dem Befehl acf berechnet und geplottet. Die dazugehörigen S-Plus Kommandos lauten wie folgt. S-Plus-Sequenz >attach(ab220998) >Anw <- cts(Anw.Tag, start = dates(„220998“, format = „dmy“, out.format = „d m y“), units = „days“) >acf(Anw,lag.max=40) #Daten Anw. Tag sind im Datenframe ab220998 #abgelegt. #Darstellung als calender time series (cts), #Startdatum: 22.09.98, Enddatum (31.12.99) #ergibt sich automatisch. #emp. ACF Berechnung und Plot bis Lag h = 40. Abbildung 9.1. zeigt den ACF-Plot für Anwendersitzungen/Tag der 2. Periode. Die Werte der emp. ACF befinden sich teilweise außerhalb und teilweise innerhalb der 95 %-Grenzen (gepunktete Linie in Abbildung 9.1.). Man kann somit annehmen, dass es sich um eine nicht stationäre Zeitreihe handelt. Weiters schwanken die emp. ACF-Werte mit einer deutlich erkennbaren Frequenz von 7 Lags. Dies bestätigt die Vermutung von früher, dass die Daten einer Wochenschwankung unterliegen (siehe Abschnitt 4, Abbildung 4.3. und 4.4.). 0. 0.2 0.4 ACF 0.6 0.8 1.0 S eries 0 10 20 30 40 Lag (i n day s) Abbildung 9.1.: ACF-Plot für Anwendersitzungen/Tag der 2. Periode -46- : A 9.3. Stationäre Prozesse Definition 9.6.: White Noise Die Verteilung einer Folge {Z t } von unkorrelierten Zufallsvariablen mit Mittelwert 0 und Varianz ² , d.h. E ( Z t ) 0 , E ( Z t2 ) 2 und E (Z t Z ) 0 für t , bezeichnet man als White Noise Verteilung (weißes Rauschen). Abkürzend werden wir {Z t } ~ WN (0, ²) schreiben. iid Falls {Z t } ~ N (0, ²) , dann spricht man von einem Gauß´schen White Noise Prozess. Falls {Z t } iid verteilt ist mit Mittelwert null und Varianz ² dann schreiben wir {Z t } ~ IID (0, 2 ) und bezeichnen die Verteilung als IID-Noise. Jede IID (0, 2 ) verteilte Folge ist WN (0, ²) verteilt, aber nicht umgekehrt. Wenn {Z t } ~ WN (0, ²) , dann ist {Z t } stationär. Aus Gründen der Einfachheit werden nur Prozesse mit Mittelwert 0 behandelt. Einen solchen Prozess erhält man, in dem man statt { X t } den Prozess { X t } behandelt. Das beeinflusst die ACF nicht. 9.3.1. MA(q)-Prozess Definition 9.7.: MA(q)-Prozess { X t } ist ein Moving Average Prozess der Ordnung q (MA(q)-Prozess), wenn X t Z t 1 Z t 1 2 Z t 2 ... q Z t q , mit {Z t } ~ WN (0, ²) und 1 ,..., q konstant. Für den MA(q)-Prozess gilt 1. E ( X t ) 0, 2. (h) Cov( X t , X t h ) = = Cov( Z t 1 Z t 1 ... q Z t q , Z t h ... q Z t q h ) = hq 0, 2 q h = i i h , h 0,1,..., q, 0 1 i 0 (h), h0 2 , s t da Cov( Z t , Z s ) . st 0, Ein MA(q)-Prozess ist somit stationär. -47- 9.3.2. AR(p)-Prozess Definition 9.8.: AR(p)-Prozess { X t } ist ein autoregressiver Prozess der Ordnung p (AR(p)-Prozess), wenn X t 1 X t 1 2 X t 2 ... p X t p Z t . Dabei ist {Z t } ~ WN (0, ²) , Z t unkorreliert mit X s s t und für i = 1,..., p sind die Konstanten i 1 . 9.3.3. ARMA(p,q)-Prozess Einen Autoregressiven Moving Average Prozess (ARMA-Prozess) erhält man durch Kombination der Gleichungen eines MA-Prozesses und eines AR-Prozesses. Definition 9.9.: ARMA(p,q)-Prozess { X t } ist ein Autoregressiver Moving Average Prozess der Ordnung p und q (ARMA(p,q)-Prozess), wenn { X t } stationär ist und wenn für jedes t gilt X t 1 X t 1 ... p X t p Z t 1 Z t 1 2 Z t 2 ... q Z t q mit {Z t } ~ WN (0, ²) . Der ARMA-Prozess wird oft auch in der Form ( B) X t ( B) Z t geschrieben, wobei B der Backshift-Operator B( X t ) X t 1 und ( B) 1 1 B ... p B p , ( B) 1 1 B ... q B q . Für ( B ) 1 ergibt sich speziell der MA(q)-Prozess, für (B ) = 1 ergibt sich speziell der AR(p)-Prozess. Satz 9.1.: Existenz und Eindeutigkeit Eine stationäre Lösung { X t } der Gleichung aus Definition 9.9. existiert (und ist die einzige stationäre Lösung) dann und nur dann, wenn ( z) 1 1 z ... p z p 0 für alle (komplexen) z 1. Beweis in Brockwell und Davis, S. 82. Definition 9.10.: Kausalität Ein ARMA-Prozess { X t } ist kausal oder eine kausale Funktion von {Z t } , wenn X t in Termen von Z s , s t , ausgedrückt werden kann. -48- Satz 9.2.: Kausalität Ein ARMA(p,q)-Prozess { X t } ist kausal, oder eine kausale Funktion von {Z t } , wenn es Konstanten { j } gibt für die gilt: j 0 j 0 j und X t j Z t j für alle t. Kausalität ist äquivalent zur Bedingung: ( z) 1 1 z ... p z p 0 für alle z 1. Beweis in Brockwell und Davis, S. 83. Definition 9.11.: Invertierbarkeit Ein ARMA-Prozess { X t } ist invertierbar, wenn Z t in Termen von X s , s t , ausgedrückt werden kann. Satz 9.3.: Invertierbarkeit Ein ARMA(p,q)-Prozess { X t } ist invertierbar, wenn es Konstanten { j } gibt für die gilt: j 0 j 0 j und Z t j X t j für alle t. Invertierbarkeit ist äquivalent zur Bedingung: ( z) 1 1 z ... q z q 0 für alle z 1 . Beweis in Brockwell und Davis, S. 84. Wir nehmen in der Folge an, dass ein kausaler ARMA-Prozess { X t } vorliegt. Die Kausa litätsannahme impliziert die Darstellung X t j Z t j (Darstellung von { X t } als MA() j 0 1 ( B) (siehe Brockwell und Davis, S. 82). Multi ( B) pliziert man jede Seite der Gleichung aus Definition 9.9. mit X t k und nimmt die Erwartungswerte, erhält man die Gleichungen (G1) Prozess) mit dem Operator ( B) (k ) 1 (k 1) .... p (k p) 2 k j j , für 0 ≤ k < m, j 0 und (k ) 1 (k 1) .... p (k p) 0 , (G1) für k ≥ m, wobei m = max(p, q + 1), j : 0 für j < 0, 0 : 1, und j : 0 für j q . -49- 9.3.3.1. YULE-WALKER Gleichungen Wir nehmen an, dass ein kausaler AR(p)-Prozess ( ( B ) 1 ) vorliegt. Dies impliziert die 1 Darstellung X t j Z t j mit ( B) . Die Gleichungen (G1) ergeben sich nun zu ( B) j 0 (k ) 1 (k 1) .... p (k p) , für k > 0 und 2 (0) 1 (1) ... p ( p) , und werden als YULE-WALKER Gleichungen bezeichnet. In Matrixschreibweise erhalten wir ( p 1) 1 ( p 2) 2 ( p) ( p 1) ( p 2) (0) p p p p (1) (2) (0) (1) (1) (0) und 2 (0) ( p ) t p . Definition 9.12.: Partielle Autokorrelationsfunktion (PACF) Die partielle Autokorrelationsfunktion (PACF) eines ARMA-Prozesses { X t } ist die Funktion () , festgelegt durch (0) 1 und (h) hh , h 1, wobei hh die letzte Komponente von h h1 h ist, h [ (i j )]ih, j 1 und h [ (1), (2),..., (h)]t . Die PACF eines kausalen AR(p)-Prozesses ist null für Lags h > p (siehe Brockwell und Davis, S. 93). Trägt man die emp. PACF-Werte über den Lags h auf, so bezeichnet man die daraus resultierende Grafik als PACF-Plot. Setzt man in den YULE-WALKER Gleichungen für die (k ) die Werte der empirischen Autokovarianzfunktion ˆ (k ) ein, folgt daraus die Definition für die empirische partielle Autokorrelationsfunktion. -50- Definition 9.13.: Empirische partielle Autokorrelationsfunktion (emp. PACF) Seien x1 ,..., x N Beobachtungen eines Zeitreihenprozesses. Die empirische partielle Autokorrelationsfunktion (emp. PACF) ist die Funktion ˆ () , festgelegt durch ˆ (0) 1 und ˆ (h) ˆ hh , h 1, wobei ̂ hh die letzte Komponente von ˆ h ˆ 1ˆ ist. h h 9.3.4. ARIMA(p,q)-Prozess Da in der Praxis die meisten Zeitreihen nicht stationär sind, sind ARMA-Modelle unpassend. Jedoch können Zeitreihen, die durch Differenzenbilden entstehen, annähernd stationär sein. Besonders geeignet zur Entfernung eines Trends ist, solange Differenzen einer Zeitreihe zu bilden, bis die resultierende Zeitreihe plausibel als Realisation eines stationären Prozesses angesehen werden kann. Bei Daten mit nicht saisonalem Charakter genügt meist Differenzenbilden erster Ordnung ( X t X t 1 ). Deshalb wurde eine Methode entwickelt, die nach dem Differenzenbilden an die transformierten Daten ein ARMA-Modell anpasst. Definition 9.14.: ARIMA(p,d,q)-Prozess Sei d eine nichtnegative ganze Zahl. { X t } ist ein Autoregressiver Integrierter Moving Average Prozess (ARIMA(p, d, q)-Prozess), falls Yt (1 B ) d X t ein kausaler ARMA(p,q)Prozess ist. Definition 9.14. bedeutet, dass für { X t } die Differenzengleichung ( B)(1 B) d X t ( B) Z t gilt mit {Z t } ~ WN (0, ²) und ( z ) 0 für alle z 1. Der Prozess { X t } ist nur dann stationär, wenn d = 0. Für d = 1, 2 resultieren die folgenden Differenzenoperationen d = 1: (1 B) X t X t B( X t ) X t X t 1 d = 2: (1 B) 2 X t (1 2 B B 2 ) X t X t 2 B( X t ) B( B( X t )) X t 2 X t 1 X t 2 . 9.3.5. Saisonaler ARIMA(p,d,q)x(P,D,Q)-Prozess Falls die Daten eine saisonale Komponente mit Periode s enthalten, ist Differenzenbilden der Ordnung s ( xt xt s ) ein bequemer Weg, um die saisonale Komponente zu beseitigen. Das saisonale Verhalten wird durch saisonale autoregressive Operatoren, saisonale moving average Operatoren und saisonale Differenzenoperatoren modelliert. -51- Definition 9.15.: Saisonaler ARIMA(p,d,q)x(P,D,Q)-Prozess Seien d und D nichtnegative ganze Zahlen. { X t } ist ein saisonaler ARIMA(p,d,q)x(P,D,Q)sProzess mit Periode s, falls Yt (1 B) d (1 B s ) D X t ein kausaler ARMA-Prozess ist, definiert durch ( B s ) ( B)Yt ( B s ) ( B) Z t mit {Z t } ~ WN (0, ²) , ( B s ) 1 1 B s ... P B sP , ( B s ) 1 1 B s ... Q B sQ . Dabei heißen 1 ,..., P die saisonalen autoregressiven Koeffizienten, 1 ,..., Q die saisonalen moving average Koeffizienten, und (1 B s ) D ist der saisonale Differenzenoperator. Die Verwendung und Wirkung der saisonalen Operatoren wird anhand des folgenden Beispiels veranschaulicht. Beispiel 9.3.5.1. Angenommen für jeden Tag der Woche wurden 52 Wochen lang Daten gesammelt. Diese können wie folgt tabelliert werden. Woche/Tag 1 X1 1 X8 2 X 15 3 52 X 17*51 2 X2 X9 X 16 X 2 7*51 7 X7 X 14 X 21 X 364 Jede Spalte in dieser Tabelle kann als eigene Zeitreihe angesehen werden. Angenommen jede Spalte dieser sieben Zeitreihen wurde vom selben ARMA(P,Q)-Modell generiert, d.h. für den j-ten Wochentag und für t = 0,...,51 gilt die Gleichung (G2) X j 7 t 1 X j 7 (t 1) ... P X j 7 (t P ) U j 7 t 1U j 7 (t 1) ... QU j 7 (t Q ) , (G2) wobei {U j 7t , t ...,1,0,1,...} ~ WN (0, U2 ) . Da für jeden Wochentag j dasselbe ARMA(P,Q)-Modell angenommen wird, gilt (G2) für jedes j = 1,...,7. Jetzt kann man (G2) in der kompakteren Form ( B 7 ) X t ( B 7 )U t schreiben, wobei ( z ) 1 1 z ... P z P , ( z) 1 1 z ... Q z Q und {U j 7 t , t ...,1,0,1,...} ~ WN (0, U2 ) für jedes j. -52- 9.3.6. Schätzen der Modellparameter eines ARMA(p,q)-Modells In diesem Abschnitt wird gezeigt, wie man die Parameter ( 1 ,..., p ) , ( 1 ,..., q ) und 2 eines ARMA(p,q)-Modells schätzt. 9.3.6.1. Gauß´sche Maximum Likelihood Schätzung Sei { X t } ein Gauß´scher Zeitreihenprozess, d.h für alle (endlichen) Indexmengen { i1 ,..., in , i j ℤ, n 1} ist der Vektor ( X i1 ,..., X in ) normalverteilt. Weiters nehmen wir an, dass E ( X t ) 0 und E ( X i X j ) ist die Autokovarianzfunktion ( j i) von { X t } . Wir setzen X ( X 1 ,..., X N ) t , Xˆ ( Xˆ 1 ,..., Xˆ N ) t mit Xˆ 1 0, Xˆ j E ( X j X j 1 ,..., X 1 ) für j > 1. Schließlich bezeichne E ( XX t ) die (nichtsinguläre!) Kovarianzmatrix von X. Die Likelihood-Funktion von X lautet 1 1 L() exp X t 1 X . N 2 (2 ) det( ) (1) Es kann gezeigt werden, dass 1. X t 1 X ( X Xˆ ) t D( X Xˆ ) mit D diag ( 0 ,..., N 1 ) , wobei j 1 Var ( X j Xˆ j ) ist. Sowohl ( X j Xˆ j ) als auch D sind auf einfache Weise mit dem Innovationsalgorithmus (Brockwell und Davis, S. 71) zu berechnen (deshalb ergibt sich die Umformung der Indizes von j auf j-1, für j = 1,...,N). 2. det( ) det( D) 0 1 ... N 1 . Jetzt ergibt sich (1) zu L ( ) 1 (2 ) N 0 ... N 1 2 1 N ( X j Xˆ j ) exp . 2 j 1 j 1 (2) iid Wir nehmen an, dass { X t } ein ARMA(p,q)-Prozess ist, d.h. ( B) X t ( B) Z t mit {Z t } ~ N (0, ²) . Die Varianzen j haben dann die Gestalt j 2 r j wobei 2 die Varianz des normalverteilten White Noise Prozesses {Z t } bezeichnet und r j ( , ) unabhängig von 2 ist (siehe Brockwell und Davis, S. 157 – 158). Damit folgt aus (2) die Likelihood für einen ARMA(p,q)-Prozess { X t } L( , , ) 2 1 (2 2 ) N r0 ...rN 1 2 1 N ( X j Xˆ j ) exp . 2 2 j 1 r j 1 (3) Aus (3) folgt N 2l ( , , ²) N ln( 2 ) ln r j 1 1 2 j 1 2 N ( X j Xˆ j ) 2 j 1 r j 1 (4) wobei l ( , , ²) = ln L( , , 2 ) die Log-Likelihood-Funktion bezeichnet. -53- Die Maximum Likelihood Schätzer (ˆ1 ,...,ˆ p , ˆ1 ,..., ˆ q , ˆ 2 ) minimieren l ( , , ²) . Leitet man (4) nach ² ab, folgt als Maximum Likelihood Schätzer ˆ 2 S (ˆ , ˆ ) N ( X j Xˆ j ) 2 j 1 r j 1 1 S (ˆ , ˆ ), wobei N , da r j 1 j = 1,...,N nicht von ² abhängt. In (4) ersetzt man ² durch seinen Schätzer. Die Maximum Likelihood Schätzer (ˆ1 ,...,ˆ p , ˆ1 ,..., ˆ q ) sind jene Werte für ( 1 ,..., p , 1 ,..., q ) , welche l ( , ) ln( 1 1 N S ( , )) ln r j 1 N N j 1 (5) minimieren. Auch wenn der Prozess { X t } nicht normalverteilt ist, liefert die Gauß`sche Maximum Likelihood-Funktion konsistente Schätzer der Parameter (Hamilton (1994), S. 126). Die Schätzfehler ( X j Xˆ j ) und ihre Varianzen j 1 , j 1,..., N können auf verschiedene Arten rekursiv berechnet werden (siehe Brockwell und Davis (1996), Hamilton (1994), Ansley (1979), Box und Jenkins (1976), Jones (1980), Kohn und Ansley (1985), Kohn und Ansley (1986)). Eine sogenannte konditionale Log-Likelihood Approximation erhält man, wenn man auf die ersten p Werte der Serie konditioniert, wobei p die Ordnung des autoregressiven Operators ist (S-Plus 4 Guide to Statistics, S. 588 – 594, Hamilton (1994), S. 117 - 132). Diese konditionale Log-Likelihood-Funktion ist 2 ln L( X p 1 ,..., X N X 1 ,..., X p ) 2 ln L( , , ²) ( N p) ln( 2 ) 2 N r j p 1 j 1 1 2 N j p 1 ( X j Xˆ j ) 2 r j 1 (6) . Der Hauptvorteil bei Benützung von (6) ist die Reduktion der Berechnungskomplexität der nichtlinearen Optimierung. Gewöhnlich geht nur wenig Information verloren, wenn man die konditionale Log-Likelihood-Funktion an Stelle der Log-Likelihood-Funktion verwendet. Um saisonale ARIMA-Modelle mittels Gauß`scher Maximum Likelihood Methode zu schätzen verwendet man eine Erweiterung der Schätzung für ARMA-Modelle. Die Likelihood für eine nicht stationäre Zeitreihe erhält man durch Differenzenbilden der Daten und anschließendem Berechnen der Likelihood-Funktion. Die S-Plus Funktion arima.mle passt saisonale ARIMA-Modelle an univariate Zeitreihendaten mit Hilfe der Gauß`schen Maximum Likelihood Methode an, dabei wird die konditionale Form (6) verwendet. Als Startwerte für die Optimierung werden die Parameter 1 ,..., p , 1 ,..., q null gesetzt. Man kann aber auch eigene Startwerte angeben. Man beachte, dass die Funktion arima.mle von einer Zeitreihe mit arithmetischem Mittel = 0 ausgeht. -54- Weiters kann man in der Funktion arima.mle mit ma.trans = True (Default) angeben, ob die MA-Koeffizienten transformiert werden sollen, bevor man sie durch die Optimierung laufen lässt, um die Invertierbarkeit des Modells zu sichern. Dies beruht auf folgender Tatsache: Wenn { X t } ein ARMA-Prozess ist, definiert durch ( B) X t ( B) Z t , wobei ( z ) 0 wenn ~ z 1, dann ist es immer möglich Polynome ~ ( z ), ( z ) und einen neuen WN-Prozess {W } t ~ zu finden, derart, dass ~( B) X t ( B)Wt ein kausaler und invertierbarer ARMA-Prozess ist (siehe Brockwell und Davis, S. 86). 9.3.6.2. YULE-WALKER Schätzer Wenn man in den YULE-WALKER Gleichungen (siehe Abschnitt 9.3.3.1.) die Autokovarianzen (k ) , k = 0,...,p durch die entsprechenden empirischen Autokovarianzen ˆ (k ) ersetzt, erhält man Gleichungen für die sogenannten YULE-WALKER Schätzer ̂ p und ˆ 2 von p und 2 , definiert durch ˆ pˆ p ˆ p und ˆ 2 ˆ (0) (ˆ p ) t ˆ p , wobei ˆ p [ˆ (i j )]ip, j 1 , ˆ p [ˆ1 ,...,ˆ p ]t und ˆ p [ˆ (1), ˆ (2),..., ˆ ( p)]t . Lemma 9.2.: Approximative Verteilung von ̂ p Die YULE-WALKER Schätzer der Koeffizienten 1 ,..., p eines AR(p)-Prozesses haben für große Stichproben approximativ dieselbe Verteilung wie die entsprechenden Maximum Likelihood Schätzer. Für große Stichproben eines AR(p)-Prozesses gilt ˆ p N ( p , n 1 2 p1 ) . Beweis in Brockwell und Davis, S. 137 – 139. In S-Plus werden mit dem Befehl ar.yw AR-Modelle durch Lösen der Gleichungen für die YULE-WALKER Schätzer angepasst. -55- 9.4. Wahl der Ordnung In der Praxis kennt man die wahre Ordnung des Modells, dass die Daten generiert, nicht. Im allgemeinen Fall gibt es kein „wahres“ Modell, in diesem Fall ist das Ziel ein Modell zu finden, dass die Daten optimal repräsentiert. In der Folge werden gebräuchliche Techniken zur Wahl der Ordnungen von ARMA-Modellen eingeführt. Die ersten beiden Techniken beruhen auf der Beurteilung der emp. ACF und der emp. PACF. Die dritte Technik beruht auf dem Vergleich der Log-Likelihood-Funktion mit der Anzahl der geschätzten Parameter (AIC). 9.4.1. Beurteilung der emp. ACF Die Beurteilung der emp. ACF beruht auf den Stichprobeneigenschaften von ˆ (h) . Für einen MA(q)-Prozess ist (h) 0 für h > q (siehe Abschnitt 9.3.1.). Das folgende Lemma wird benötigt um die Stichprobenverteilung des Schätzers ˆ (h) zu definieren. Lemma 9.3.: Formel von Bartlett Für lineare Modelle und insbesondere für ARMA-Modelle ist ˆ h ( ˆ (1),..., ˆ (h)) t für große N approximativ N ( h , N 1W ) verteilt, wobei h ( (1),..., (h)) t und W die Kovarianzmatrix, deren (i,j)-Element durch die Formel von Bartlett, wij { (h i) (h j ) (h i) (h j ) 2 (i) ( j ) ²(h) h 2 (i ) (h) (h j ) 2 ( j ) (h) (h i )}, definiert ist. Aufgrund von Lemma 9.3. weiß man, dass die ˆ (h) für h > q eines MA(q)-Prozesses approximativ normalverteilt sind mit Mittelwert (h) 0 und Varianz N 1[1 2 ²(1) ... 2 ²(q)]. Mit diesem Resultat können wir die Hypothese, dass X 1 ,..., X N aus einem MA(q)Prozess stammen, überprüfen. Falls nämlich x1 ,..., x N Realisationen eines solchen Prozesses sind, fallen annähernd 95 % der ˆ (h) für h > q in den Bereich 1.96 werden häufig die strengeren Grenzen 1.96 N whh . In der Praxis N benutzt. Bei Betrachtung des ACF-Plots mit eingezeichneten 95 %-Grenzen, wird einerseits entschieden, ob der gegebene Datensatz plausibel als MA-Prozess modelliert werden kann, und andererseits erhält man eine vorläufige Schätzung der Ordnung q. Eine geeignete Ordnung q erhält man, indem man denjenigen Lag-Wert im ACF-Plot sucht, ab dem die ˆ (h) nicht mehr signifikant von null verschieden sind. In S-Plus wird die emp. ACF mit den 95%-Grenzen durch den Befehl acf berechnet und 1.96 geplottet. Dabei werden als 95%-Grenzen die Werte benutzt. N -56- 9.4.2. Beurteilung der emp. PACF Die Beurteilung der emp. PACF beruht auf den Stichprobeneigenschaften von ˆ ( h ) (siehe Definition 9.12.). Lemma 9.4.: Approximative Verteilung von ˆ ( h ) Falls { X t } ein kausaler AR(p)-Prozess mit {Z t } ~ WN (0, 2 ) und falls man ein Modell der Ordnung h > p für { X t } mit Hilfe der YULE-WALKER Gleichungen anpasst, dann ist die letzte Komponente, ˆ hh ˆ (h) , des Vektors h approximativ normalverteilt mit Mittelwert 1 null und Varianz . N Beweis in Brockwell und Davis, S. 137 - 139. ˆ hh ˆ (h) ist der Wert der emp. PACF bei Lag h. Wir wissen, dass für einen kausalen AR(p)-Prozess die (h ) für h > p null sind. Mit Lemma 9.4. können wir die Hypothese, dass X 1 ,..., X N aus einem AR(p)-Prozess stammen, überprüfen. Falls nämlich x1 ,..., x N Realisationen eines solchen Prozesses sind, fallen annähernd 95 % der ˆ ( h ) für h > p in den Bereich 1.96 . N Bei Betrachtung des PACF-Plots mit den eingezeichneten 95 %-Grenzen, wird einerseits entschieden, ob der gegebene Datensatz plausibel als AR-Prozess modelliert werden kann und andererseits erhält man eine präliminäre Schätzung der Ordnung p. Eine geeignete Ordnung p erhält man, indem man denjenigen Lag-Wert im PACF-Plot sucht, ab dem die ˆ ( h ) nicht mehr signifikant von null verschieden sind. In S-Plus wird die emp. PACF mit den 95%-Grenzen durch den Befehl acf (type = „partial“) berechnet und geplottet. 9.4.3. Wahl der Ordnungen bei saisonalen ARIMA-Modellen Bei saisonbeeinflussten Daten muss man vernünftige Ordnungswerte für p, d, q, P, D, Q, s auswählen. Die ersten Schritte bei der Identifizierung eines saisonalen ARIMA-Modells ist das Auffinden einer annähernd stationären Folge Yt (1 B) d (1 B s ) D X t . Als nächstes betrachtet man die emp. ACF und emp. PACF von {Yt } an Lags, die ein Vielfaches von s sind, wobei s die Saisonperiode ist, um die Ordnungen P und Q im Modell zu identifizieren (siehe dazu Beispiel 9.3.5.1.). Wenn ̂ (.) die emp. ACF von {Yt } (bzw. ˆ (.) die emp. PACF) ist, dann werden die Ordnungen P, Q so gewählt, dass ˆ (ks) , k = 1, 2,..., (bzw. ˆ (ks) ) vergleichbar mit der ACF (bzw. PACF) eines ARMA(P,Q)-Prozesses ist (siehe Abschnitt 9.4.1. und 9.4.2.). Die Ordnungen p, q werden dann so gewählt, dass ˆ (1),..., ˆ (s 1) (bzw. ˆ (1),..., ˆ ( s 1) ) vergleichbar mit der ACF (bzw. PACF) eines ARMA(p,q)-Prozesses sind. -57- Vom Gesichtspunkt der Vorhersage ist es nicht vorteilhaft die Parameter p, q, P, Q willkürlich groß zu wählen. Anpassen eines Modells mit sehr hoher Ordnung wird allgemein in einer kleinen geschätzten WN-Varianz ̂ ² (White Noise Varianz) resultieren. Wenn man aber das angepasste Modell für eine Vorhersage verwendet, hängt der mittlere quadratische Fehler für den Vorhersagewert nicht nur von der WN-Varianz des angepassten Modells sondern auch von den Fehlern, die bei der Parameterschätzung des Modells entstehen, ab. Diese werden größer für Modelle höherer Ordnung. Für diesen Fall braucht man einen „penalty factor“, der das Anpassen von Modellen mit zu vielen Parametern verhindert. Ein solches Kriterium, das auf einem „penalty factor“ basiert, ist das Akaike`s Information Criterion (Abschnitt 9.4.4). 9.4.4. Akaike`s Information Criterion (AIC) Eine weitere Methode zur Bestimmung der Ordnungen eines ARMA-Modells basiert auf dem Akaike Information Criterion (AIC). Damit vergleicht man die Reduktion der konditionalen Log-Likelihood-Funktion (Abschnitt 9.3.6.1., (6)) mit der Anzahl der angepassten Parameter. Ein geeignetes Modell ist das mit dem niedrigsten AIC-Wert. Das AIC für ARMA Modelle ist definiert durch AIC = 2 log L( X m1 ,..., X N X 1 ,..., X m ) 2r , wobei m p gewählt wird und r p q die Anzahl der geschätzten Parameter ( ˆ 1 ,..., ˆ p , ˆ1 ,..., ˆ q ) ist. Wenn man AIC-Werte für verschiedene Modelle vergleicht, ist es wichtig, die Likelihood auf dieselbe Anzahl von Beobachtungen zu konditionieren, d. h. m ist für alle Modelle gleich. Dadurch kann man Modelle mit einer unterschiedlichen Anzahl von AR-Koeffizienten vergleichen. Beim AIC für saisonale ARIMA-Modelle wird m p d Ps Ds gewählt, um damit Modelle mit einer unterschiedlichen Anzahl von AR- und Differenzenkoeffizienten vergleichen zu können (S-Plus 4 Guide to Statistics, S. 593 und Venables and Ripley (1999), S. 414 – 415). Durch die Beurteilung der emp. ACF und emp. PACF werden geeignet erscheinende Modelle ausgewählt und anschließend diese Modelle auf Basis des AIC verglichen. Eine umfassende Diskussion über das ARIMA-Modellieren wird von Box und Jenkins (1976, 1994) abgehalten. Viele verschiedene Bücher über Zeitreihenanalysen bieten auch einen guten Überblick über das Modellieren von ARIMA-Modellen (siehe Anderson (1971), Brockwell und Davis (1996), Chatfield (1982, 1984), Hamilton (1994)). -58- 9.5. Simulation von ARIMA-Prozessen Um zu zeigen wie schwierig es ist den ACF- und PACF-Plot zu interpretieren und die richtigen Werte für p, P, q, Q auszuwählen, werden Daten von verschiedenen ARIMAProzessen in S-Plus simuliert und anschließend analysiert. Sei { X t } ein AR(1)-Prozess, d.h. X t 1 X t 1 Z t . S-Plus Sequenz >x <- arima.sim(n=458,model=list(ar =.5)) >ts.plot(x) >acf(x,lag.max=40) >acf(x,lag.max=40,type="partial") #simuliert 458 Daten eines ARIMA(1,0,0)-Prozess mit #Koeffizienten 1 = 0.5. #Zeitreihenplot. #emp. ACF Berechnung und Plot bis Lag h = 40. #emp. PACF Berechnung und Plot bis Lag h = 40. -3 -2 -1 0 1 2 3 Zeitreihenplot: 0 100 200 Time 300 400 ACF-Plot: : x : x 0. 0.2 0.4ACF 0.6 0.8 1.0 S eries 0 10 20 30 Lag 40 PACF-Plot: -0.1 0. 0.1 PartilACF 0.2 0.3 0.4 0.5 S eries 0 10 20 30 Lag 40 Abbildung 9.2.: Simulierter AR(1)-Prozess -59- Betrachtet man den ACF-Plot (Abbildung 9.2.) würde ein MA(11)-Modell passen, aufgrund des PACF-Plots (Abbildung 9.2.) würde man ein AR(1)-Modell an die Daten anpassen. Für einen AR-Prozess ist 1 <1. Abbildung 9.3. zeigt die ACF-Plots von vier simulierten Datensätzen eines AR(1)-Prozesses mit 1 = 0.8, 0.3, -0.8, -0.3. 1 = 0.8: 1 = 0.3: : x S eries : 0. 0.2 0.4 ACF 0.6 0.8 1.0 0. 0.2 0.4 ACF 0.6 0.8 1.0 S eries 0 5 10 15 Lag 20 0 1 = -0.8: 5 10 15 Lag 20 1 = -0.3: : x S eries -0.2 0. 0.2 ACF0.4 0.6 0.8 1.0 -0.5 0. ACF 0.5 1.0 S eries 0 5 10 15 Lag 20 0 5 10 15 Lag 20 Abbildung 9.3.: ACF-Plots von simulierten AR(1)-Prozessen mit verschiedenen 1 Man beachte, wie schnell die emp. ACF für 1 = 0.3 abfällt und wie sie das Vorzeichen wechselt, wenn 1 negativ ist (Abbildung 9.3.). Betrachtet man nur den ACF-Plot kann man schwer auf ein AR(1)-Modell schließen. Die emp. PACF`s für diese Daten sind hingegen alle ab Lag 1 nicht mehr signifikant von null verschieden. -60- : Simulation eines ARMA(1,1)-Prozesses mit grafischer Analyse. Sei { X t } ein ARMA(1,1)-Prozess, d.h. X t 1 X t 1 Z t 1 Z t 1 . S-Plus Sequenz >x <- arima.sim(n=458,model=list(ar=.5,ma=-.6) #simuliert 458 Daten eines ARIMA(1,0,1)#Prozess mit Koeffizienten 1 = 0.5, 1 = -0.6. >ts.plot(x) #Zeitreihenplot. >acf(x,lag.max=40) #emp. ACF Berechnung und Plot bis Lag h = 40. >acf(x,lag.max=40,type="partial") #emp. PACF Berechnung und Plot bis Lag h = 40. -4 -2 0 2 4 Zeitreihenplot: 0 100 200 Time 300 400 ACF-Plot: : x : x 0. 0.2 0.4ACF 0.6 0.8 1.0 S eries 0 10 20 30 Lag 40 PACF-Plot: -0.2 0. PartilACF 0.2 0.4 0.6 S eries 0 10 20 30 Lag 40 Abbildung 9.4.: Simulierter ARMA(1,1)-Prozess -61- Auf Grund des PACF-Plots (Abbildung 9.4.) könnte man ein AR(4)-Modell anpassen. Eine derartige Anpassung würde bei den „Goodness of Fit“-Tests (siehe Abschnitt 9.6.) sehr gut abschneiden. Bei der Anpassung eines ARMA(1,1)-Modells weisen die „Goodness of Fit“Tests auch keine wesentlich besseren Werte aus. Ein MA(5)-Modell würde die Daten ebenfalls gut beschreiben. Je niedriger die Ordnung, desto anschaulicher ist natürlich das Modell und bei etwa gleich guter Anpassung somit auch zu bevorzugen. Man sieht aber wie schwierig es ist, ein bestimmtes gut passendes Modell auszuwählen. -62- 9.6. „Goodness of Fit“-Tests Die letzte Stufe bei der Anpassung eines ARIMA Modells besteht im Vergleich der beobachteten Werte mit den entsprechenden geschätzten Werten (siehe Brockwell und Davis, S. 162ff). Die Residuen Ŵt , mit der Notation aus Abschnitt 9.3.6., sind definiert durch ( X t Xˆ t (ˆ , ˆ )) Wˆ t , t 1,..., N . ˆ rt 1 (ˆ , ) Falls X 1 ,..., X N von einem ARMA(p,q)-Prozess mit unbekannten Parametern , , 2 mit Maximum Likelihood Schätzern ˆ , ˆ , ˆ 2 , generiert wurden, dann ist {Wˆ } kein White Noise t Prozess. Trotzdem sollte Ŵt , t = 1,...,N ähnliche Eigenschaften wie die White Noise Folge ( X t Xˆ t ( , )) Wt ( , ) , t 1,..., N rt 1 ( , ) haben. Überdies approximiert Wt den White Noise Term Z t aus Definition 9.9. derart, dass E (Wt ( , ) Z t ) 2 0 für N . Folglich sollten die Eigenschaften der Residuen {Wˆ } t die Eigenschaften von {Z t } widerspiegeln. Insbesondere sollte (i) {Wˆt } approximativ unkorreliert sein, falls {Z t } ~ WN (0, 2 ) ist, (ii) approximativ unabhängig sein, falls {Z t } ~ IID (0, 2 ) ist und (iii) approximativ normalverteilt sein, falls {Z t } ~ N (0, 2 ) ist. Die standardisierten Residuen R̂t erhält man, wenn man Ŵt durch die geschätzten White Wˆ Noise Standardabweichung dividiert, d.h. Rˆ t t . ˆ Die folgenden „Goodness of Fit“ Tests basieren alle auf Eigenschaften der Residuen oder der standardisierten Residuen, unter der Annahme, dass das angepasste Modell korrekt ist und dass {Z t } ~ IID (0, 2 ) . 9.6.1. Graph der standardisierten Residuen Das angepasste Modell ist angemessen, wenn der Graph der standardisierten Residuen {Rˆ t , t 1,..., N} dem Graphen einer White Noise Folge mit Varianz = 1 ähnelt. 9.6.2. Emp. ACF der Residuen Aus Lemma 9.1. wissen wir, dass für große N die ˆ (k ) von iid verteilten Y1 ,..., YN mit 1 endlicher Varianz approximativ iid N (0, ) verteilt sind. Falls die Residuen eine Realisation N 1,96 eines solchen Prozesses sind, fallen daher 95 % der ˆ (k ) in die Grenzen . Dazu N betrachtet man den ACF-Plot der Residuen. Eine Faustregel besagt, falls von den ersten 40 -63- Werten der emp. ACF mehr als 2 oder 3 Werte außerhalb oder ein Wert weit außerhalb der 95%-Grenzen liegen, dann kann man die Hypothese H iid , dass die Residuen eine Realisation der iid verteilten Y1 ,..., YN sind, verwerfen. 9.6.3. Portmanteau-Test Anstatt einzelne ˆ (k ) zu betrachten, verwendet man beim Portmanteau-Test (siehe Brockwell und Davis, S. 34 – 35, S-Plus 4 Guide to Statistics, S. 594 – 595) die Teststatistik h Q N ̂ 2 (k ) . k 1 appr. Wegen h appr. N ˆ (k ) ~ N (0,1) gilt N ˆ 2 (k ) ~ 2h r , wobei r die Anzahl der angepassten k 1 Parameter ist. Ein großer Wert für Q weist darauf hin, dass die emp. ACF-Werte der Daten zu groß sind für die Hypothese H iid . Falls Q 2hr ,1 wird H iid verworfen. Berechnet man die p-Werte des Portmanteau-Test für verschiedene h und trägt sie gegen h auf, erhält man eine sehr aussagekräftige Grafik. 9.6.4. Ljung-Box Test Eine Verbesserung des Portmanteu-Tests ist der Ljung-Box Test bei dem die Teststatistik Q durch h ˆ 2 (k ) QLB N ( N 2) k 1 ( N k ) ersetzt wird. QLB ist eine bessere Approximation an die 2h r -Verteilung. Die S-Plus Funktion arima.diag berechnet und plottet den Graphen der standardisierten Residuen, den ACF-Plot der Residuen und die p-Werte des Portmanteau-Test. Die p-Werte des Portmanteau-Test und nicht - wie im Plot angegeben - die des Ljung-Box Test werden mit der Funktion arima.diag berechnet und geplottet (Venables and Ripley (1999), S. 416). Weiters plottet die Funktion arima.diag den PACF-Plot der Residuen. Optional kann mit lag.max der maximale Lag h für den ACF-Plot angegeben werden und mit gof.lag die maximale Anzahl der zu berechnenden Lags für den Portmanteu-Test. -64- 9.7. Modellanpassung für Anwendersitzungen/Tag der 2. Periode Für die Zeitreihe Anwendersitzungen/Tag der 2. Periode wird versucht ein saisonales ARIMA-Modell zu identifizieren. Da in S-Plus von Zeitreihen mit arithmetischem Mittel null ausgegangen wird, wird vorab von den Daten ihr arithmetisches Mittel subtrahiert. Dadurch verändern sich Eigenschaften der Zeitreihe wie saisonale Schwankungen, Trends, die emp. ACF oder PACF nicht. { X t } bezeichnet in der Folge die Zeitreihe Anwendersitzungen/Tag der 2. Periode abzüglich des arithmetisches Mittels. Jetzt wird versucht für { X t } ein passendes ARIMA(p,d,q)×(P,D,Q)s –Modell zu identifizieren. Wie bereits gesehen, enthält die Zeitreihe { X t } eine saisonale Schwankung aber keinen erkennbaren Trend (siehe Abschnitt 4. Abbildungen 4.1. bis 4.4., Abschnitt 9.2.1. Abbildung 9.1.). Bei saisonbeeinflussten Daten muss man vernünftige Ordnungswerte für p, d, q, P, D, Q, s auswählen. Dazu geht man wie in Abschnitt 9.4.3. erklärt vor. Der erste Schritt bei der Identifizierung eines saisonalen ARIMA-Modells ist das Auffinden einer annähernd stationären Folge Yt (1 B) d (1 B s ) D X t . Da { X t } keinen erkennbaren Trend enthält, wählt man d = 0. Die saisonalen Schwankungen treten mit einer Periode s = 7 auf. Durch Anwendung des Operators (1 B 7 )1 wird die saisonale Schwankung beseitigt, d.h. man wählt d = 0, D = 1, s = 7 und erhält Yt (1 B) 0 (1 B 7 )1 ( X t ) ( X t X t 7 ). Für die Zeitreihe {Yt } werden jetzt der Zeitreihenplot, der ACF-Plot und der PACF-Plot mit den folgenden S-Plus Kommandos erzeugt und in Abbildung 9.5. dargestellt. S-Plus-Sequenz >attach(ab220998) >Anw <- cts(Anw.Tag, start = dates("220998", format = "dmy", out.format = "d m y"), units = "days") >Anwendersitzungenab220998<-Anw-mean(Anw) >diff7<-diff(Anwendersitzungenab220998, 7) >ts.plot(diff7) >acf(diff7,lag.max=40) #Daten Anw.Tag sind im Datenframe #ab220998 abgelegt. #Darstellung der Daten als #calender time series (cts). #arithm. Mittel subtrahiert. # Yt ( X t X t 7 ). #Zeitreihenplot. #emp. ACF Berechnung und Plot bis #Lag h = 40. #emp. PACF Berechnung und Plot bis #Lag h = 40. >acf(diff7,lag.max=40,type="partial") -65- -50 0 50 Zeitreihenplot: 29 09 98 29 12 98 30 03 99 29 06 99 Tim e in days 28 09 99 28 12 99 ACF-Plot: : d : d -0.4 -0.2 0. 0.2 ACF 0.4 0.6 0.8 1.0 Series 0 10 20 30 40 Lag (in days) PACF-Plot: -0.4 -0.2 PartilACF0. 0.2 0.4 Series 0 10 20 30 40 Lag (in days) Abbildung 9.5.: Yt ( X t X t 7 ) -66- Betrachtet man den Zeitreihenplot und den ACF-Plot der Zeitreihe {Yt } in Abbildung 9.5. sieht es so aus, als wäre jegliche saisonale Schwankung entfernt und man kann annehmen, dass {Yt } annähernd stationär ist. Jedoch besteht noch signifikante Abhängigkeit zwischen den transformierten Daten (siehe Abbildung 9.5., ACF-Plot). Deshalb muss man ein komplexeres Zeitreihenmodell, dass die Abhängigkeitsstruktur der Daten widerspiegelt, an die Daten anpassen. Ab einem Lag h ≥ 13 sind die emp. ACF-Werte von {Yt } nicht mehr signifikant von null verschieden (siehe Abbildung 9.5., ACF-Plot, gepunktete Linien: 95%-Grenzen). Das heißt, will man ein MA(q)-Modell an {Yt } anpassen, wäre eine geeignete Schätzung für die Ordnung q = 13 und man passt an { X t } ein ARIMA(0,0,13)x(0,1,0)7-Modell an. Betrachtet man den PACF-Plot in Abbildung 9.5., sieht man, dass die emp. PACF-Werte von {Yt } ab einem Lag h > 23 nicht mehr signifikant von null verschieden sind (gepunktete Linien: 95%-Grenzen). Das heißt, will man ein AR(p)-Modell an {Yt } anpassen, wäre eine geeignete Schätzung für die Ordnung p = 23 und man passt an { X t } ein ARIMA(23,0,0)x (0,1,0)7-Modell an. Will man das saisonale Verhalten zusätzlich durch saisonale autoregressive Operatoren und saisonale moving average Operatoren modellieren, geht man folgendermaßen vor. Man betrachtet den ACF- und PACF-Plot von {Yt } an Lags die ein Vielfaches von s = 7 sind, um die Ordnungen P und Q im Modell zu identifizieren. P und Q werden so gewählt, dass die emp. ACF(s*k)-Werte (bzw. emp. PACF(s*k)-Werte), k = 1,2,..., vergleichbar mit den ACFWerten (bzw. PACF-Werten) eines ARMA(P,Q)-Prozesses sind. Der emp. ACF-Wert bei s*1 = 7 ist groß, d. h. weit außerhalb der 95%-Grenzen (siehe Abbildung 9.5., ACF-Plot), und ab s*2 = 14 sind alle emp. ACF-Werte klein (innerhalb der 95%-Grenzen), das legt einen Term für moving average nahe, der den Saisoneffekt berücksichtigt, und man setzt P = 0, Q = 1. Der emp. PACF-Wert bei s*4 ist knapp außerhalb und ab s*5 innerhalb der 95%-Grenzen (siehe Abbildung 9.5. PACF-Plot), das legt einen Term für saisonale Autoregression von P = 4 nahe (Q = 0). Das heißt, man entscheidet sich entweder für ein saisonales ARIMA-Modell mit Ordnung P = 0 und Q = 1 oder mit Ordnung P = 4 und Q = 0. Die Ordnungen p, q für diese beiden saisonalen ARIMA-Modelle werden dann so gewählt, dass ˆ (1),..., ˆ (s 1) (bzw. ˆ (1),..., ˆ (s 1) ) von {Yt } vergleichbar mit der ACF (bzw. PACF) eines ARMA(p,q)Prozesses sind. Das heißt, man wählt entweder p = 1,...,6 oder q = 1,...,6. Eine geeignete Schätzung wäre aufgrund des ACF- bzw. PACF-Plot p = 1 oder q = 5. Man passt also an { X t } die vier Modelle ARIMA(1,0,0)×(0,1,1)7, ARIMA(1,0,0)×(4,1,0)7, ARIMA(0,0,5)× (0,1,1)7, ARIMA (0,0,5)×(4,1,0)7 an. Im nächsten Schritt werden die oben angeführten saisonalen ARIMA-Modelle an { X t } angepasst und anschließend auf Basis des AIC (siehe Abschnitt 9.4.4.) verglichen. Zusätzlich werden noch einige andere plausibel erscheinende ARIMA(p,0,q)×(P,1,Q)7-Modelle angepasst und verglichen. Die Anpassung erfolgt in S-Plus mit dem Befehl arima.mle. Die Funktion arima.mle passt Zeitreihen mit Hilfe der konditionalen Log-Likelihood-Funktion (siehe Abschnitt 9.3.6.1.) an. -67- Um die AIC-Werte der verschiedenen Modelle vergleichen zu können, muss man auf die gleiche Anzahl m von Beobachtungen konditionieren. Dazu sucht man jenes Modell, bei dem der minimale Wert für m am größten ist und konditioniert alle Modelle auf diesen Wert. Bei den zu vergleichenden Modellen hat das ARIMA(6,0,0)×(4,1,0)7-Modell mit der Darstellungsform (1 1 B 7 ... 4 B 28 )(1 1 B ... 6 B 6 )(1 B 7 )( X t ) Z t den größten minimalen Wert für m, nämlich 28 + 6 + 7 = 41. Somit werden alle anderen zu vergleichenden Modelle ebenfalls auf 41 Beobachtungen konditioniert. In S-Plus wird die Konditionierung mit dem Befehl arime.mle(n.cond=41) realisiert. Die Anpassung eines Modells und die Berechnung des dazugehörenden AIC-Wertes wird in S-Plus mit den folgenden Kommandos durchgeführt. S-Plus Sequenz >attach(ab220998) >Anw <- cts(Anw.Tag, start = dates("220998", format = "dmy", out.format = "d m y"), units = "days") >Anwendersitzungenab220998<-Anw-mean(Anw) >arima1<-arima.mle (Anwendersitzungenab220998, model=list(list(order=c(1,0,0)),list (order=c(0,1,1),period=7)),n.cond=41) >arima1$aic #arithm. Mittel subtrahiert. #Anpassen eines #ARIMA(1,0,0)×(0,1,1)7-Modells mit #Konditionierung auf 41 Beobachtungen. #Ausgabe des AIC-Wert. In Tabelle 9.1. werden die AIC-Werte für 7 Typen von angepassten Modellen, alle konditioniert auf 41 Beobachtungen, angegeben. Die Beurteilung des ACF- und PACF-Plot von {Yt } ergab, dass Modelle der Form ARIMA(p,0,0)×(0,1,1)7 geeignete Modelle sein könnten. Deshalb werden als erstes diese Modelle mit Ordnung p = 1,2,...,9 angepasst. Im nächsten Schritt werden ARIMA(0,0,q)×(0,1,1)7-Modelle mit q = 1,...,9, die ebenso geeignet erschienen angepasst. Der Vergleich der AIC-Werte ergibt als geeignetstes dieser 18 Modelle das ARIMA (3,0,0)×(0,1,1)7. Im nächsten Schritt werden die Ordnungen p und q noch kombiniert. Diese ARIMA(p,0,q)× (0,1,1)7-Modelle sind teilweise in der Tabelle angegeben, jedoch ist keines besser als das ARIMA(3,0,0)×(0,1,1)7-Modell. ARIMA(p,0,q)×(4,1,0)7-Modelle erschienen bei der Beurteilung des ACF- und PACF-Plots von {Yt } auch als geeignet. Beim Vergleich der AIC-Werte schneidet jedoch wiederum das ARIMA(3,0,0)×(0,1,1)7 deutlich besser ab. Diese ARIMA(p,0,q)×(4,1,0)7-Modelle sind auch teilweise in der Tabelle angegeben. Als weitere Modelle sind noch ARIMA(0,0,13)×(0,1,0)7, ARIMA(0,0,15)×(0,1,0)7, ARIMA (22,0,0)×(0,1,0)7, ARIMA(23,0,0)×(0,1,0)7, die auch alle aufgrund der Plots als plausibel erschienen angeführt. Der AIC-Wert des ARIMA(3,0,0)×(0,1,1)7 kann wiederum nicht erreicht werden. -68- Nimmt man an Stelle des Differenzenterms im ARIMA(3,0,0)×(0,1,1)7-Modell einen saisonalen AR-Term ins Modell auf, d.h. ARIMA(3,0,0)×(1,0,1)7, erhält man auch keinen geringeren AIC-Wert. Es wird auch noch versucht, den Differenzenterm und einen saisonalen AR-Term ins Modell aufzunehmen, d.h. ARIMA(3,0,0)×(1,1,1)7, jedoch bleibt das ARIMA (3,0,0)×(0,1,1)7 auf Basis des AIC das geeignetste Modell. Bei unserer Analyse wurden noch mehr als die in der Tabelle angegeben ARIMA-Modelle angepasst und verglichen, doch am Ende entschieden wir uns für das ARIMA(3,0,0)×(0,1,1)7Modell. ARIMA(1,0,0)×(0,1,1)7-Modell ARIMA(2,0,0)×(0,1,1)7-Modell ARIMA(3,0,0)×(0,1,1)7-Modell ARIMA(4,0,0)×(0,1,1)7-Modell ARIMA(p,0,0)×(0,1,1)7-Modelle ARIMA(5,0,0)×(0,1,1)7-Modell ARIMA(6,0,0)×(0,1,1)7-Modell ARIMA(7,0,0)×(0,1,1)7-Modell ARIMA(8,0,0)×(0,1,1)7-Modell ARIMA(9,0,0)×(0,1,1)7-Modell ARIMA(0,0,1)×(0,1,1)7-Modell ARIMA(0,0,2)×(0,1,1)7-Modell ARIMA(0,0,3)×(0,1,1)7-Modell ARIMA(0,0,4)×(0,1,1)7-Modell ARIMA(0,0,q)×(0,1,1)7-Modelle ARIMA(0,0,5)×(0,1,1)7-Modell ARIMA(0,0,6)×(0,1,1)7-Modell ARIMA(0,0,7)×(0,1,1)7-Modell ARIMA(0,0,8)×(0,1,1)7-Modell ARIMA(0,0,9)×(0,1,1)7-Modell ARIMA(1,0,1)×(0,1,1)7-Modell ARIMA(2,0,1)×(0,1,1)7-Modell ARIMA(p,0,q)×(0,1,1)7-Modelle ARIMA(3,0,1)×(0,1,1)7-Modell ARIMA(4,0,1)×(0,1,1)7-Modell ARIMA(2,0,2)×(0,1,1)7-Modell ARIMA(3,0,3)×(0,1,1)7-Modell ARIMA(1,0,0)×(4,1,0)7-Modell ARIMA(2,0,0)×(4,1,0)7-Modell ARIMA(3,0,0)×(4,1,0)7-Modell ARIMA(p,0,q)×(4,1,0)7-Modelle ARIMA(4,0,0)×(4,1,0)7-Modell ARIMA(5,0,0)×(4,1,0)7-Modell ARIMA(6,0,0)×(4,1,0)7-Modell ARIMA(0,0,5)×(4,1,0)7-Modell ARIMA(0,0,q)×(0,1,0)7-Modelle ARIMA(0,0,13)×(0,1,0)7-Modell ARIMA(0,0,15)×(0,1,0)7-Modell ARIMA(p,0,0)×(0,1,0)7-Modelle ARIMA(22,0,0)×(0,1,0)7-Modell ARIMA(23,0,0)×(0,1,0)7-Modell ARIMA(3,0,0)×(1,0,1)7-Modell ARIMA(3,0,0)×(1,1,1)7-Modell Tabelle 9.1.: AIC-Werte für 7 Typen von Modellen -69- 3440,61 3438,08 3417,03 3417,74 3418,68 3419,86 3423,91 3426,09 3426,73 3492,30 3472,95 3462,25 3429,62 3428,09 3429,10 3431,12 3426,99 3427,51 3430,04 3426,11 3418,04 3418,63 3422,30 3420,89 3476,22 3475,98 3460,57 3462,31 3461,35 3463,19 3463,99 3440,95 3437,60 3477,62 3478,17 3422,18 3422,58 Als nächstes werden die Parameterschätzer für das ARIMA(3,0,0)×(0,1,1)7-Modell mit der SPlus Funktion arima.mle berechnet und anschließend die „Goodness of Fit“-Tests mit der Funktion arima.diag berechnet und in Abbildung 9.6. als Diagnoseplots geplottet. Die Realisierung erfolgt mit den folgenden S-Plus Kommandos. S-Plus Sequenz > attach(ab220998) > Anw <- cts(Anw.Tag, start = dates("220998", format = "dmy", out.format = "d m y"), units = "days") >Anwendersitzungenab220998<-Anw-mean(Anw) >arima1<-arima.mle (Anwendersitzungenab220998, model=list(list(order=c(3,0,0)),list (order=c(0,1,1),period=7))) > arima1$aic [1] 3656.81 > arima1$model[[1]]$ar #arithm. Mittel subtrahiert. #Anpassen eines #ARIMA(3,0,0)×(0,1,1)7-Modells. #AIC-Wert (konditioniert auf 10 #Beobachtungen). #Schätzung von i , i 1,2,3 (nicht [1] 0.5338 -0.0188 0.2213 > arima1$model[[2]]$ma [1] 0.9098 #saisonaler Teil). #Schätzung von 1 (saisonaler Teil). # ˆ > arima1$sigma2 [1] 170.19 > arima1$var.coef 2 , Schätzung der Varianz von Z t . #Die Varianz-Kovarianz-Matrix für die autore#gressiven und moving average Koeffizienten. ar(1) ar(2) ar(3) ma(7) ar(1) 0.0021 -0.0012 -0.0002 0.0001 ar(2) -0.0012 0.0027 -0.0011 0.0001 ar(3) -0.0002 -0.0011 0.0022 0.0002 ma(7) 0.0001 0.0001 0.0002 0.0004 > arima1$n.cond [1] 10 > a<-arima.diag(arima1, resid = T, std.resid = T, acf.resid = F, gof.lag = 40,plot= T) >a > acf(a$resid,lag.max = 40) #Konditionierung auf 10 Beobachtungen. #Berechnet die Residuen, die standardisierten #Residuen und die p-Werte des Portmanteau#Tests bis Lag h = 40 und plottet den #Graphen der st. Residuen und die p-Werte #des Portmanteau-Tests, wenn a aufgerufen #wird. #Aufruf von a. #ACF-Plot der Residuen bis Lag h = 40. Das resultierende Modell lautet also (1 - 0.534 B + 0.019 B 2 - 0.221 B 3 )(1 - B 7 ) X t = (1 - 0.91 B 7 ) Z t . -70- A R I M A M o d e l D i a g n o s t i c s : A n w e n d e r s i t z u n g e n a b 2 2 0 9 9 8 -4 -2 0 2 4 6 P l o t o f S t a n d a r d i z e d R e s i d u a l s 2 2 0 9 9 82 4 1 2 9 82 7 0 3 9 92 8 0 6 9 92 9 0 9 9 93 1 1 2 9 9 0. 0.2 p-value 0.4 0.6 P v a l u e s o f L j u n g B o x C h i S q u a r e d S t a t i s t i c s 1 0 2 0 3 0 4 0 L a g A C F 0. 0.2 0.4 ACF 0.6 0.8 1.0 A C F P l o t o f R e s i d u a l s 0 1 0 2 0 L a g 3 0 4 0 Abbildung 9.6.: Diagnoseplots für ARIMA(3,0,0)×(0,1,1)7-Modell Die Diagnoseplots in Abbildung 9.6. widersprechen nicht der Hypothese, dass die Residuen Realisationen einer iid verteilten Folge sind. -71- Als Startwerte für die Optimierung werden die AR- und MA- Parameter null gesetzt. Da lokale Maxima bei der Optimierung gefunden werden könnten, ist es sinnvoll mehrere Startwerte zu verwenden. Setzt man beispielsweise den Startwert für 1 0.5 , dann sieht die S-Plus Sequenz folgendermaßen aus. S-Plus Sequenz > arima1<-arima.mle(Anwendersitzungenab220998, model=list(list(order=c(3,0,0),ar=c(-0.5,0,0)), list(order=c(0,1,1),period=7))) > arima1$model[[1]]$ar [1] 0.5335 -0.0137 0.2268 > arima1$model[[2]]$ma [1] 0.9231 Die Optimierungsroutine hat wiederum (mit geringen Abweichungen zu vorher) die gleichen Maxima gefunden. Auffallend ist, dass der geschätzte AR-Parameter 2 0.01 annähernd null ist. Deshalb wird versucht ein Modell anzupassen, bei dem dieser Parameter null gesetzt wird. Dies kann in S-Plus folgendermaßen realisiert werden. S-Plus Sequenz >arima1 <- arima.mle(Anwendersitzungenab220998, model = list(list(order = c(3, 0, 0), ar = c(0, 0, 0), ar.opt = c(T, F, T)), list(order = c(0, 1, 1), period = 7))) > arima1$model[[1]]$ar [1] 0.5254 0.0000000 0.2185 > arima1$model[[2]]$ma [1] 0.9125 Durch das Setzen des Parameters 2 0 und Wahl des Startvektors (0,0,0) erhält man folgendes Modell: (1 - 0.525 B - 0.218 B 3 )(1 - B 7 ) X t = (1 - 0.916 B 7 ) Z t oder in anderer Notation ( X t X t 7 ) 0.525( X t 1 X t 8 ) 0.218( X t 3 X t 10 ) Z t 0.916Z t 7 . Die entsprechenden Diagnoseplots für dieses Modell sind in Abbildung 9.7. dargestellt. -72- A R I M A M o d e l D i a g n o s t i c s : A n w e n d e r s i t z u n g e n a b 2 2 0 9 9 8 -4 -2 0 2 4 6 P l o t o f S t a n d a r d i z e d R e s i d u a l s 2 2 0 9 9 82 4 1 2 9 82 7 0 3 9 92 8 0 6 9 92 9 0 9 9 93 1 1 2 9 9 0. 0.2 0.4 ACF 0.6 0.8 1.0 0. 0.2 p-value 0.4 0.6 P v a l u e s o f L j u n g B o x C h i S q u a r e d S t a t i s t i c s 1 0 2 0 3 0 4 0 L a g ACF A C F P l o t o f R e s i d u a l s 0 1 0 2 0 L a g 3 0 4 0 Abbildung 9.7.: Diagnoseplots für ARIMA(3,0,0)×(0,1,1)7-Modell mit 2 0 Beim Vergleich der Diagnoseplots der beiden Modelle ARIMA(3,0,0)×(0,1,1)7 und ARIMA (3,0,0)×(0,1,1)7 mit 2 0 (siehe Abbildung 9.6. und 9.7.) erkennt man keine wesentlichen Unterschiede. Man könnte sagen, die beiden Modelle passen die Daten annähernd gleich gut an. Da man beim ARIMA(3,0,0)×(0,1,1)7-Modell mit 2 0 einen Parameter weniger hat, ist dieses Modell zu bevorzugen. -73- Geeignete Modelle höherer Ordnung könnten bei den „Goodness of Fit“-Tests besser abschneiden als Modelle mit vergleichsweise niedrigerer Ordnung. Jedoch sind mehr Parameter zu schätzen und dies resultiert bei einer Vorhersage in größeren Vorhersagefehlern (siehe Abschnitt 9.4.). Zur Illustration wird ein ARIMA(0,0,15)×(0,1,0)7-Modell angepasst. Dies ergibt einen zur Anzahl der geschätzten Parameter relativ geringen AIC-Wert (siehe Tabelle 9.1.) Die Diagnoseplots sind in Abbildung 9.8. dargestellt. S-Plus Sequenz >arima1 <- arima.mle(Anwendersitzungenab220998, model = list(list(order = c(0, 0, 15)), list(order = c(0, 1, 0), period = 7))) > arima1$model[[1]]$ma [1] -0.4802 -0.2274 -0.3019 -0.2991 -0.1588 -0.1025 [7] 0.7062 0.2537 0.1440 0.2040 0.2650 0.1485 [13] 0.0946 0.0989 0.1544 #Schätzung von i , i 1,...,15 (nicht #saisonaler Teil). # ˆ , Schätzung der Varianz von 2 > arima1$sigma2 Zt . [1] 170.90 > a<-arima.diag(arima1, resid = T, std.resid = T, acf.resid = F, gof.lag = 40,plot= T) >a > acf(a$resid,lag.max = 40) A R I M A M o d e l D i a g n o s t i c s : A n w e n d e r s i t z u n g e n a b 2 2 0 9 9 8 -4 -2 0 2 4 6 P l o t o f S t a n d a r d i z e d R e s i d u a l s 2 2 0 9 9 82 4 1 2 9 82 7 0 3 9 92 8 0 6 9 92 9 0 9 9 93 1 1 2 9 9 0. 0.2 0.4p-value 0.6 0.8 P v a l u e s o f L j u n g B o x C h i S q u a r e d S t a t i s t i c s 2 0 2 5 3 0 3 5 4 0 L a g ACF 0. 0.2 0.4 ACF 0.6 0.8 1.0 A C F P l o t o f R e s i d u a l s 0 1 0 2 0 L a g 3 0 4 0 Abbildung 9.8.: Diagnoseplots für ARIMA(0,0,15)×(0,1,0)7-Modell -74- 9.8. Vorhersage Hat man ein geeignetes ARIMA-Modell gefunden, lassen sich leicht Vorhersagewerte berechnen. X t bzw. Z t werden für t = 1,..,N rekursiv geschätzt und anschließend werden mit den geschätzten Werten und dem geschätzten Modell Vorhersagewerte berechnet (siehe Brockwell und Davis, S. 197 – 199 und S. 206 – 207). 9.8.1. Prognoseintervall für vorhergesagte Werte iid Unter der Annahme {Z t } ~ N (0, 2 ) ist der Vorhersagefehler X N h Xˆ N h approximativ N (0, 2 (h)) verteilt. Dabei ist 2 (h) die Varianz des Vorhersagefehlers im h-ten Vorhersageschritt. Bezeichne z1 / 2 das ( 1 / 2 )-Quantil der N(0,1)-Verteilung, dann ist X̂ N h z1 / 2ˆ (h) ein approximatives Prognoseintervall für X N h zum Niveau 1 (z. B. 95%Grenzen: ( Xˆ 1.96ˆ (h) ). N h 9.8.2. Vorhersage für das 1. Quartal 2000 Als nächstes wird eine Vorhersage mit dem ARIMA(3,0,0)×(0,1,1)7-Modell mit 2 0 (siehe S. 71) für das 1. Quartal 2000 durchgeführt. Die Vorhersage wird mit den tatsächlichen Daten des 1. Quartals 2000 verglichen. Die S-Plus Funktion arima.forecast erzeugt Vorhersagen mit dem angegebenen ARIMAModell für eine univariate Zeitreihe. Die Vorhersage wird als Zeitreihe mit den vergangenen Daten und den Daten des 1. Quartals 2000 in Abbildung 9.9 geplottet. Die Vorhersage wird in S-Plus mit den folgenden Kommandos realisiert. S-Plus Sequenz >attach(ab220998) >Anw <- cts(Anw.Tag, start = dates("220998", format = "dmy",out.format = "d m y"), units = "days") >Anwneu <- cts(Anwneu, start = dates("311299", format = "dmy",out.format = "d m y")+1, units = "days") >Anwendersitzungenab220998<-Anw-mean(Anw) >arima1<-arima.mle(Anwendersitzungenab220998, model= list(list(order = c(3, 0, 0), ar = c(0,0,0), ar.opt = c(T, F, T)),list(order=c(0,1,1),period=7))) >A.fore <- arima.forecast(Anwendersitzungenab220998, n=91, model=arima1$model) >A.fore$mean <- A.fore$mean + mean(Anw) >An.fore<- cts(A.fore$mean, start = dates("311299",format = "dmy", out.format= "d m y")+1,units = "days") >ts.plot(Anw, Anwneu, An.fore, An.fore + 1.96*A.fore$std.err, An.fore – 1.96*A.fore$std.err) #Daten der 2. Periode. #Daten des 1. Quartals 2000. #arithm. Mittel subtrahiert. #Anpassen eines #ARIMA(3,0,0)×(0,1,1)7-Modell #mit 2 0 . #Vorhersage von n = 91 Werten (1. #Quartal) mit dem obigen Modell. #arithm. Mittel von Anw zu den #vorhergesagten Werten addiert. #Startdatum der Vorhersagewerte: #31.12.99 + 1 Tag. #Plot der Zeitreihe: Anw, Anwneu, #An.fore, An.fore ± 1.96*Schätzer für #Standardabweichung von A.fore. -75- 0 25 Anwedrsitzugn/Ta 50 75 10 t a t s ä c h l i c h e D a t e n v o r h e r g e s a g t e D a t e n 9 5 % K o n f i d e n z i n t e r v a l l 2 2 1 1 9 9 2 2 1 2 9 9 2 2 0 1 0 0 2 1 0 2 0 0 2 2 0 3 0 0 T i m e i n d a y s Abbildung 9.9.: Vorhersage mit ARIMA(3,0,0)×(0,1,1)7-Modell 0 25 Anwedrsitzugn/Ta 50 75 10 t a t s ä c h l i c h e D a t e n T i m e i n d a y s v o r h e r g e s a g t e D a t e n 9 5 % K o n f i d e n z i n t e r v a l l 2 2 1 1 9 9 2 2 1 2 9 9 2 2 0 1 0 0 2 1 0 2 0 0 2 2 0 3 0 0 T i m e i n d a y s Abbildung 9.10.: Vorhersage mit ARIMA(0,0,15)×(0,1,0)7-Modell T i m e i n d a y s T i m e i n d a y s -76- Am 1. Jänner 2000 waren null Anwendersitzungen zu verzeichnen. Wahrscheinlich war der Server aufgrund des Y2K-Problems (Jahr-2000-Problems) vorsichtshalber nicht in Betrieb. Macht man eine Vorhersage mit dem ARIMA(0,15,0)×(0,1,0)7-Modell resultiert daraus Abbildung 9.10. Vergleicht man die Vorhersagewerte, die mittels ARIMA(3,0,0)×(0,1,1)7 geschätzt werden, mit den Werten, die mittels ARIMA(0,0,15)×(0,1,0)7 geschätzt werden, so unterscheiden sich diese nicht wesentlich. Der Grund dafür ist, dass die Variation des systematischen Teils der Zeitreihe, die Saisonschwankung, dominiert und deshalb die Wirksamkeit des saisonalen ARIMA-Modells hauptsächlich bedingt ist durch das anfängliche Differenzenbilden und nicht durch das folgende Anpassen eines ARMA-Modells an die transformierte Zeitreihe. Der tatsächliche Vorhersagefehler kann mit der Quadratwurzel der gewichteten Summe der 1 91 ( X N i Xˆ N i ) 2 , beschrieben werden. Im Falle der Vorher91 i 1 sage mit dem ARIMA(3,0,0)×(0,1,1)7-Modell ergibt das einen Wert von 12.25, im Falle der Vorhersage mit dem ARIMA(0,0,15)×(0,1,0)7-Modell liegt der Wert bei 12.95. Abweichungsquadrate, Die tatsächlichen Vorhersagefehler kann man auch durch den Plot der Vorhersagefehler darstellen, bei dem ( X N i Xˆ N i ) gegen i geplottet wird. Der Plot der Vorhersagefehler wird in S-Plus mit den folgenden Kommandos realisiert und in Abbildung 9.11. bzw. Abbildung 9.12. dargestellt. S-Plus Sequenz > attach(Vorhersagedaten) > Differenzen<-cts(original-geschaetzmit3,start = dates("311299", format = "dmy", out.format = "d m y")+1, units = "days") ts.plot(Differenzen, type = "p") #original und vorhergesagte Werte sind in neuem #Datenframe Vorhersagedaten abgelegt. #original minus geschätzte Werte als Zeitreihe #dargestellt. #Zeitreihenplot in Punktedarstellung. Die Varianz der geschätzten Vorhersagefehler steigt mit zunehmendem h (Zeitfaktor der Vorhersage) beim ARIMA(0,0,15)×(0,1,0)7 schneller als beim ARIMA(3,0,0)×(0,1,1)7Modell an, da mehr Parameter zu schätzen sind (siehe Abbildung 9.9., Abbildung 9.10.). Vergleicht man die Daten Anwendersitzungen/Tag der 2. Periode, Anwendersitzungen/Tag des 1. Quartals 2000 und die geschätzten Vorhersagewerte bezogen auf die Wochentage (Mo, Di, ..., So) anhand von Boxplotserien, sieht man, dass wiederum die Vorhersage mittels ARIMA(3,0,0)×(0,1,1)7-Modell die Struktur der Daten besser widerspiegelt. Die Boxplotserien sind in Abbildung 9.13. dargestellt. Man beachte, dass der Interquartile-Range (IQR) der vorhergesagten Werte einen ziemlich kleinen Bereich abdeckt, da ab einem gewissen Zeitpunkt die folgenden vorhergesagten Werte identisch sind. Da das ARIMA(0,0,15)×(0,1,0)7-Modell trotz der größeren Anzahl an Koeffizienten die tatsächlichen Daten etwas schlechter schätzt als das ARIMA(3,0,0)×(0,1,1)7-Modell ist das ARIMA(3,0,0)×(0,1,1)7 dem ARIMA(0,15,0)×(0,1,0)7 eindeutig vorzuziehen. -77- -20 AbweichungvodeOrignalte 0 20 40 A R I M A ( 3 , 0 , 0 ) x ( 0 , 1 , 1 ) M o d e l l 7 0 1 0 1 0 0 1 9 0 1 0 0 0 6 0 2 0 0 2 4 0 2 0 0 1 3 0 3 0 0 3 1 0 3 0 0 T i m e i n d a y s Abbildung 9.11.: Plot der Vorhersagefehler beim ARIMA(3,0,0)×(0,1,1)7-Modell -20 AbweichungvodeOrignalte 0 20 40 A R I M A ( 0 , 0 , 1 5 ) x ( 0 , 1 , 0 ) M o d e l l 7 0 1 0 1 0 0 1 9 0 1 0 0 0 6 0 2 0 0 2 4 0 2 0 0 1 3 0 3 0 0 3 1 0 3 0 0 T i m e i n d a y s Abbildung 9.12.: Plot der Vorhersagefehler beim ARIMA(0,0,15)×(0,1,0)7-Modell -78- 2. Periode Mo Di Mi 1. Quartal 2000 Do Fr So Sa 120 120 100 100 Anwendersitzungen/Tag Anwendersitzungen/Tag So 80 60 40 20 Vorhersage mit ARIMA(3,0,0)x(0,1,1) 7-Modell 80 60 40 20 Mo Di Mi Do Fr Mi Do Fr Sa 80 60 40 20 Vorhersage mit ARIMA(0,15,0)x(0,1,0) 7-Modell Sa So geschätzte Anwendersitzungen/Tag geschätzte Anwendersitzungen/Tag So 100 Di 0 0 120 Mo Mo 120 100 80 60 40 20 0 0 Abbildung 9.13.: Boxplotserien -79- Di Mi Do Fr Sa Anhang A Die folgende Liste enthält Definitionen zu Fachausdrücken, die in diesem Bericht sowie auch allgemein im Internet benutzt werden. Benutzeradresse Die DNS-Adresse bzw. die IP-Adresse des Rechners eines Benutzers. Browser Ein Programm, das zum Einsehen von HTML-Dokumenten benutzt wird (z.B. NetScape, Mosaic, Microsoft Explorer, etc.). DNS Abkürzung für Domain Name System; ist ein Dienst, der numerische IP-Adressen in die entsprechenden DNS-Adressen (und umgekehrt) umwandelt. DNS-Adresse Die Adresse (Identifikation) des Rechners, der mit dem Internet verbunden ist. FTP Abkürzung für File Transfer Protocol; ist eine Standardmethode zum Übertragen von Dateien über das Internet. GIF Abkürzung für Graphics Interchange Format; ist ein grafisches Dateiformat, das häufig in HTML-Dokumenten benutzt wird. Homepage Dokument im Internet, gewidmet einem bestimmten Unternehmen, einer Institution usw. HTML Abkürzung für Hyper Text Markup Language; wird zum Schreiben von Dokumenten im World Wide Web benutzt. HTML-Dokument bzw. -Seite Ein Dokument bzw. eine Seite, die im HTML Format geschrieben ist. HTTP Abkürzung für Hyper Text Transport Protocol; ist eine Standardmethode zur Übertragung von Daten zwischen einem Webserver und einem Browser. Internet Internationales Computernetz, das eine Kommunikation und eine Datenübertragung zwischen den Rechnern, die mit dem Netz verbunden sind, ermöglicht. IP-Adresse Abkürzung für Internet Protokolladresse; numerische Identifikation eines Rechners, der mit dem Internet verbunden ist. JPEG Abkürzung für Joint Photographic Expert Group; ist ein grafisches Dateiformat zum Speichern einer Grafik in digitaler Form. Link Ein Link ist ein Verweis auf das URL einer Webseite. Plattform Das Betriebssystem (z.B. Windows 98, Windows NT etc.), das vom Benutzer verwendet wird. Protokoll Eine definierte Methode zum Austausch von Daten über das Internet. -80- Suchsystem Eine Webseite, die aus einer Datenbank besteht, die Informationen zum Auffinden anderer Webseiten im Internet enthält. Server (Webserver) Ein Rechner, der Informationen für Internet-Benutzer bereitstellt. Logfile Die Aktivitäten auf einem Webserver werden protokolliert und in einem Logfile gespeichert. Spider Ein automatisiertes Programm, das das Internet durchsucht. URL Abkürzung für Universal Resource Locator; ist eine Methode zur genauen Bestimmung eines Ortes im Internet. Das URL http://www.cis.tu-graz.ac.at/stat/ guestbook.html führt zur Webseite Gästebuch der Homepage des Institutes für Statistik. Wie das vorstehende Beispiel zeigt, besteht ein URL aus vier Teilen: Protokolltyp (HTTP), Servername (cis.tu-graz.ac.at), Verzeichnispfad /stat/ und Dateiname (guestbook.html). Web (WWW, World Wide Web) Ein Netz für HTML-Dokumente im Internet, die miteinander verknüpft sind und in Servern auf der ganzen Welt verteilt sind. Webseite bzw. Seite Eine Seite im Internet, die HTML-Dokumente enthält, die Benutzer unter Verwendung eines Browsers einsehen können. Zugriff Eine Aktion auf dem Webserver, wie z.B. das Einsehen einer Webseite durch einen Benutzer oder das Herunterladen einer Datei. -81- Literaturverzeichnis Anderson, T.W. (1971), The Statistical Analysis of Time Series, John Wiley, New York. Ansley, C. F. (1979), An algorithm for the exact likelihood of a mixed autoregressive-moving average process, Biometrika 66, 59–65. Box, G. E. P. and Cox, D. R. (1964), An analysis of transformations (with discussion), J. R. Stat. Soc. B, 26, 211 – 252. Box, G. E. P. and Jenkins, G. M. (1976), Time Series Analysis: Forecasting and Control, Revised Edition, Holden-Day, Oakland, CA. Box, G. E. P. and Jenkins, G. M. and Reinsel, G. C. (1994), Time Series Analysis: Forecasting and Control, 3rd ed., Prentice-Hall, Englewood Cliff. Brockwell, P. J. and Davis, R. A. (1996), Introduction to Time Series and Forecasting, Springer-Verlag, New York. Chatfield, C. (1982), Analyse von Zeitreihen: Eine Einführung , 2te Aufl. ,dt. Übersetzung, Chapman and Hall, London. Chatfield, C. (1984), The Analysis of Time Series: An Introduction, 3rd ed, Chapman and Hall, London. Friedl, H. (2000), Lineare Modelle, Skriptum, Institut für Statistik, TU-Graz. Hamilton, J. D. (1994), Time Series Analysis, Princeton University Press, Princeton. Jones, R. H. (1980), Maximum likelihood fitting of ARMA models to time series with missing observations, Technometrics 22, 389 – 395. Kohn, R. and Ansley, C. F. (1985), Efficient estimation and prediction in time series regression models, Biometrika, 72, 694 – 697. Kohn, R. and Ansley, C. F. (1986), Estimation, prediction, and interpolation for ARIMA models with missing data, Journal of the American Statistical Association, 81, 751 – 761. Kotz, S. and Johnson, N. L. (1983), Encyclopedia of Statistical Sciences, 3, 292 – 295. Scheffner, A. und Krahnke, T. (1998), S-Plus 4.0 unter Windows: Einführung und Leitfaden, Internat. Thompson Publ., Bonn. S-Plus 4 (1997), Guide to Statistics, Math Soft Inc., Seattle, Washington. Venables, W. N. and Ripley, B. D. (1999), Modern Applied Statistics with S-Plus, 3rd ed., Springer-Verlag, New York. -82-