Semantics-enabled Transfer Learning for Mobility Analytics: a SoBigData TNA experience

Marta Sabou, Information & Software Engineering Group, Technische Universität Wien
A well-known drawback of supervised machine learning approaches is their dependence on training data, which is often very expensive to acquire. Transfer learning is an increasingly popular approach for overcoming the need for acquiring expensive training data in cases when supervised learning algorithms are applied across sufficiently similar domains or cases. In a nutshell, transfer learning methods allow the adaptation of models learned for one case (e.g., for classifying images of cats) to similar cases (e.g., for classifying images of dogs). A recent SoBigData TNA visit has focused on the topic of transfer learning of mobility analytics algorithms by making use of Semantic Web data.  The visit took place at the KDDLab of CNR Pisa and primarily involved work by Dr. Roberto Trasarti of the host institute and Dr. Marta Sabou (TU Wien), as a visitor. 
The research group in Pisa
The problem: Mobility analytics algorithms have a wide range of applications in Smart Cities, which are investigated as advanced cyber-physical social systems (CPSS) as part of the CitySPIN project lead by Dr. Sabou. The focus of the visit was tailored to a particular aspect of mobility analytics, namely activity recognition in mobility data. Activity recognition refers to assigning a label to a movement based on its characteristics [1]. For example, given a raw movement trace (such as that collected from GPS traces), the goal is to segment this trace in locations and movement segments between those and assign to each segment of this trace a suitable label that reflects the activity that the individual was undertaking during that movement segment. Such labels can, for example, reflect the purpose of motion, e.g., going home, going to work, shopping, leisure trips, picking up children etc. From the perspective of CPSS, such annotations of human activities are valuable for understanding the social component of CPSS and its behaviour patterns, which, on its turn will contribute to better adapting and coordinating the CPSS.
CNR Pisa has performed work on activity recognition in mobility data [1]. They learned a classification model (the ABC Classifier) which, given a raw trajectory, can classify segments of these trajectories in terms of the purpose of the journey (e.g., home, work, shopping). The classifier was trained on manually annotated GPS data from the city of Pisa and had a good performance, yet its application to raw GPS data from Florence lead to suboptimal performance. Obviously, Pisa and Florence are cities with diverse characteristics which lead to different mobility behaviour patterns. 
The question: In this context, the goal of the visit was to investigate the following questions: Is it possible to identify cities similar to Pisa on which the activity recognition algorithm would have a good performance? Could transfer learning perform better when applied to cities that are “similar” to the city on which the model was originally trained? How to use socio-demographic features of cities to enable transfer learning of mobility analytics algorithms?
The method: The visit focused on investigating these questions by taking an approach where semantic data from the Linked Open Data (LOD) cloud was collected about cities (e.g., geospatial features, statistical indicators about population etc) and used to cluster similar cities. Accordingly, the applied method encompassed the following steps:
  1. City feature collection: Collect potential city characteristics/features from linked open data sources and also considering recommendations from the literature on those features that most likely have an influence on individual mobility. City features were collected from the Linked Open Data site of the Italian National Statistics Institute (ISTAT) and included: geospatial features (city surface, min and max altitude) and socio-demographic features related to the population of the cities. In particular, this dataset provides census data from 2011 for a variety of statistical indicators such as those related to their population (in terms of number, gender, age, occupation, education, number of foreign citizens).
  2. City features preparation and selection: The features extracted are normalized and a correlation analysis is performed in order to select the maximum set of them which are not inter-correlated.
  3. Clustering of cities: Cluster cities based on these characteristics. Particularly interesting is the cluster of cities similar to Pisa. Our hypothesis is that the adaptation of the ABC Classifier to these similar cities will be more successful.
  4. City features versus mobility statistics: An analysis to detect how the mobility statistics extracted from GPS traces vary across the various clusters. From the original mobility dataset, for each city, we extracted statistical information (trip length, duration, speed) about the incoming, outgoing journeys as well as journeys inside the city. The goal was to analyze the differences between the distribution of values for all cities along these dimensions and that of certain clusters. This analysis step is currently ongoing.
  5. Running and evaluating the ABC Classifier: Run the classifier on cities from the cluster of similar cities to Pisa as well as different cities from Pisa, and compare performance. The assumption is that performance will depend on how similar the cities are. Performance can in a first instance be estimated if the distribution of activity types is similar to that expected from the experiments on data from Pisa. Any large variations indicate a low performance.

The main output was the creation of a dataset of 522 Italian cities and their features extracted from LOD cloud (this dataset is made available in the SoBigData catalogue). This dataset was also used to perform an initial clustering of cities, as per step 3 above. We relied on the support of the KNIME tool (see clustering workflow attached). We used k-Means Clustering (number of clusters 10, then 20) and manually inspected the results. We found that population size is one of the key differentiating features leading to clusters with very small (904) or large (271,767) populations. Within cities with a similar population, the clustering often distinguishes between those with big/small surface. In the various clustering experiments, Pisa and Florence are always in different clusters.

Results and Conclusions:
The major result of this visit consists in an approach to semantics-supported transfer learning for mobility analytics algorithms. We investigated this concept in a concrete case (that of the ABC classifier and with data about city features) leading to the following concrete results:

  • A dataset of city characteristics extracted from linked open data;
  • An Experiment for city-clustering.

The overall conclusion is that semantic data (such as linked open data) is promising to support transfer learning in general, although this hypothesis still needs to be proved in future work which will be performed beyond the visit to investigate the performance of the activity recognition in cities classified as similar to Pisa. More broadly, this approach should be further investigated for other mobility algorithms as well as in other domains.

[1] S. Rinzivillo, L. Gabrielli, M. Nanni, L. Pappalardo, D. Pedreschi and F. Giannotti, "The purpose of motion: Learning activities from Individual Mobility Networks," 2014 International Conference on Data Science and Advanced Analytics (DSAA), Shanghai, 2014, pp. 312-318.

Posted by beatrice.rapisa...