Network-based data mining techniques such as graph mining, (social) network analysis, link prediction and graph clustering form an important foundation for data science applications in computer science, computational social science, and the life sciences. They help to detect patterns in large data sets that capture dyadic relations between pairs of genes, species, humans, or documents and they have improved our understanding of complex networks.

While the potential of analysing graph or network representations of relational data is undisputed, we increasingly have access to data on networks that contain more than just dyadic relations. Consider, e.g., data on user click streams in the Web, time-stamped social networks, gene regulatory pathways, or time-stamped financial transactions. These are examples for time-resolved or sequential data that not only tell us who is related to whom but also when and in which order relations occur. Recent works have exposed that the timing and ordering of relations in such data can introduce higher-order, non-dyadic dependencies that are not captured by state-of-the-art graph representations. This oversimplification questions the validity of graph mining techniques in time series data and poses a threat for interdisciplinary applications of network analytics.

To address this challenge, researchers have developed advanced graph modelling and representation techniques based on higher- and variable-order Markov models, which enable us to model non-Markovian characteristics in time series data on networks. Introducing this exciting research field, the goal of this tutorial is to give an overview of cutting-edge higher-order data analytics techniques. Key takeaways for attendees will be (i) a solid understanding of higher-order network modelling and representation learning techniques, (ii) hands-on experience with state-of-the-art higher-order network analytics and visualisation packages, and (iii) a clear demonstration of the benefits of higher-order data analytics in real-world time series data on technical, social, and ecological systems.

A detailed summary of the topics, literature, and tools covered in this hands-on tutorial can be found in the tutorial paper.

When and where

The tutorial will take place on Wednesday August 22, 2018 from 08:30 - 17:10 in ICC Capital Suite Room 2+3+4 of the ExCel London, 1 Western Gateway, Royal Victoria Dock, London, E16 1FR.

Prerequisites

Participants should bring a laptop with a python 3.x environment. See setup instructions. Some basic prior exposure to python is beneficial. In the first session of the tutorial we will give a brief introduction to interactive data science with python, jupyter notebook, and VS Code.

Schedule

The tutorial consists of three separate blocks, in which we give an overview of three different software frameworks for higher-order network analysis.

Block I: Higher-Order Network Analytics with pathpy

Session: Introduction to Higher-Order Network Analytics

08:30 - 09:30

Tutor: Ingo Scholtes, Data Analytics Group, University of Zurich

Welcome Note and Tutorial Overview

Intro: Higher-Order Network Analytics for Time Series Data (30 min) | slides

Live Coding (30 min)

Unit Topic Tasks Solution
1.1 A Primer to Data Science with python, jupyter, git and VS Code (10 min) .py N/A
1.2 Analysis and Visualisation of Path Data in pathpy (20 min) .py, .ipynb .py .ipynb .html

KDD Coffee break

09:30 - 10:00

Session: Multi-order Representation Learning

10:00 - 12:00

Tutor: Ingo Scholtes, Data Analytics Group, University of Zurich

Live Coding (120 min)

Unit Topic Tasks Solution
1.3 Fitting and Visualising Higher-order Network Models (20 min) .py, .ipynb .py .ipynb .html
1.4 Time-stamped Network Analysis in pathpy (20 min) .py, .ipynb .py .ipynb .html
1.5 Exploration: Higher-order Analysis of real-world data (20 min) .py, .ipynb N/A
1.6 Multi-order Representation Learning (20 min) .py, .ipynb .py .ipynb .html
1.7 Optimal Higher-order Analytics for Temporal Data (20 min) .py, .ipynb .py .ipynb .html
1.8 Exploration: Multi-order Analysis of Time-stamped Social Networks (20 min) .py, .ipynb N/A

KDD Lunch break

12:00 - 13:30

Block II: Introduction to Higher-Order Graph Clustering with Infomap

Session: Introduction to Flow Compression

13:30 - 15:30

Tutor: Daniel Edler, Umeå University

Intro: Flow Compression with the MapEquation (45 minutes) | Slides

Live Coding (75 min)

Unit Topic Notebook Live Solution
2.1 Introduction to Infomap .py, .ipynb .py
2.2 Explore flight path data with Infomap and interactive visualisations .py, .ipynb .py

KDD Coffee break

15:30 - 16:00

Session: Higher-order Graph Clustering and Visualisation

16:00 - 17:00

Tutor: Daniel Edler, Umeå University

Intro: Higher-order flows (15 minutes) | Slides

Live Coding (60 min)

Unit Topic Notebook Live Solution
2.3 Introduction to sparse higher-order networks .py, .ipynb .py
2.4 Sparse networks for flight data .py, .ipynb .py

Tutorial Closing

17:00 - 17:10

Block III: Variable-order Analytics with BuildHON/HONVis

Tutor: Nitesh Chawla, University of Notre Dame

Due to unforeseen circumstances, the tutor could not attend KDD’18. This block will thus be a 1 hour virtual self-study session. Participants can find the tutorial material in the gitHub repository.

Intro: Representing variable orders in networks (30 min) | slides website

Live Demo (30 min) | slides video

Data sets

A description of data sets that will be provided to participants, and which will be analysed in the tutorial is available here.

Setting up the environment

Hands-on sessions will be completed in python. A detailed description on how to set up the environment can be found in the setup instructions.