All Projects â†’ sjvasquez â†’ Web Traffic Forecasting

sjvasquez / Web Traffic Forecasting

Kaggle | Web Traffic Forecasting 📈

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Web Traffic Forecasting

gpu accelerated forecasting modeltime gluonts
GPU-Accelerated Deep Learning for Time Series using Modeltime GluonTS (Learning Lab 53). Event sponsors: Saturn Cloud, NVIDIA, & Business Science.
Stars: ✭ 20 (-96.64%)
Mutual labels:  time-series, forecasting
tsfeatures
Calculates various features from time series data. Python implementation of the R package tsfeatures.
Stars: ✭ 87 (-85.4%)
Mutual labels:  time-series, forecasting
time-series-autoencoder
📈 PyTorch dual-attention LSTM-autoencoder for multivariate Time Series 📈
Stars: ✭ 198 (-66.78%)
Mutual labels:  time-series, forecasting
modeltime.resample
Resampling Tools for Time Series Forecasting with Modeltime
Stars: ✭ 12 (-97.99%)
Mutual labels:  time-series, forecasting
Atspy
AtsPy: Automated Time Series Models in Python (by @firmai)
Stars: ✭ 340 (-42.95%)
Mutual labels:  time-series, forecasting
modeltime.gluonts
GluonTS Deep Learning with Modeltime
Stars: ✭ 31 (-94.8%)
Mutual labels:  time-series, forecasting
TSForecasting
This repository contains the implementations related to the experiments of a set of publicly available datasets that are used in the time series forecasting research space.
Stars: ✭ 53 (-91.11%)
Mutual labels:  time-series, forecasting
ewstools
Python package for early warning signals (EWS) of bifurcations in time series data.
Stars: ✭ 29 (-95.13%)
Mutual labels:  time-series, forecasting
Luminaire
Luminaire is a python package that provides ML driven solutions for monitoring time series data.
Stars: ✭ 316 (-46.98%)
Mutual labels:  time-series, forecasting
Pyaf
PyAF is an Open Source Python library for Automatic Time Series Forecasting built on top of popular pydata modules.
Stars: ✭ 289 (-51.51%)
Mutual labels:  time-series, forecasting
forecasting models
An overview of univariate time series forecasting models with sample code.
Stars: ✭ 39 (-93.46%)
Mutual labels:  time-series, forecasting
Flow Forecast
Deep learning PyTorch library for time series forecasting, classification, and anomaly detection (originally for flood forecasting).
Stars: ✭ 368 (-38.26%)
Mutual labels:  time-series, forecasting
mlforecast
Scalable machine 🤖 learning for time series forecasting.
Stars: ✭ 96 (-83.89%)
Mutual labels:  time-series, forecasting
ts-forecasting-ensemble
CentOS based Docker container for Time Series Analysis and Modeling.
Stars: ✭ 19 (-96.81%)
Mutual labels:  time-series, forecasting
modeltime.ensemble
Time Series Ensemble Forecasting
Stars: ✭ 65 (-89.09%)
Mutual labels:  time-series, forecasting
magi
📈 high level wrapper for parallel univariate time series forecasting 📉
Stars: ✭ 17 (-97.15%)
Mutual labels:  time-series, forecasting
notebooks
Code examples for pyFTS
Stars: ✭ 40 (-93.29%)
Mutual labels:  time-series, forecasting
SCINet
Forecast time series and stock prices with SCINet
Stars: ✭ 28 (-95.3%)
Mutual labels:  time-series, forecasting
Merlion
Merlion: A Machine Learning Framework for Time Series Intelligence
Stars: ✭ 2,368 (+297.32%)
Mutual labels:  time-series, forecasting
Timetk
A toolkit for working with time series in R
Stars: ✭ 371 (-37.75%)
Mutual labels:  time-series, forecasting

Web Traffic Forecasting

My solution for the Web Traffic Forecasting competition hosted on Kaggle.

The Task

The training dataset consists of approximately 145k time series. Each of these time series represents a number of daily views of a different Wikipedia article, starting from July 1st, 2015 up until September 10th, 2017. The goal is to forecast the daily views between September 13th, 2017 and November 13th, 2017 for each article in the dataset. The name of the article as well as the type of traffic (all, mobile, desktop, spider) is given for each article.

The evaluation metric is symmetric mean absolute percentage error (SMAPE).

The Approach

A single neural network was used to model all 145k time series. The model architecture is similar to WaveNet, consisting of a stack of dilated causal convolutions, as demonstrated in the diagram below.

A few modifications were made to adapt the model to generate coherent predictions for the entire forecast horizon (64 days). WaveNet was trained using next step prediction, so errors can accumulate as the model generates long sequences in the absence of conditioning information. To remedy this, we trained the model to minimize the loss when unraveled for 64 steps. We adopt a sequence to sequence approach where the encoder and decoder do not share parameters. This allows the decoder to handle the accumulating noise when generating long sequences.

Below are some sample forecasts to demonstrate some of the patterns that the network can capture. The forecasted values are in yellow, and the ground truth values (not used in training or validation) are shown in grey. The y-axis is log transformed.

Requirements

12 GB GPU (recommended), Python 2.7

Python packages:

  • numpy==1.13.1
  • pandas==0.19.2
  • scikit-learn==0.18.1
  • tensorflow==1.3.0
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].