1. A method of automatically creating a hierarchical storyline, the method comprising: receiving a plurality of labelled contextual slices derived from contextual data of a user, each labelled contextual slice comprising a time range, a location, and a contextual label indicating a semantic description of the labelled contextual slice, wherein receiving the plurality of labelled contextual slices comprises: receiving a plurality of contextual slices derived from associated context data collected from a plurality of observation sources, each contextual slice is bound by the time range at the location; and for each of the plurality of contextual slices: identifying a set of candidate labels based on context data associated with the contextual slice, the candidate labels each comprising semantic data describing context data associated with the contextual slice, the semantic data selected from a group consisting of venue geography boundary, venue name, venue type, and venue activity name, venue activity location, venue activity popularity and calendar event; ranking the set of candidate labels by likelihood based on a proximity threshold to the venue geography boundary and ordered by the venue activity popularity, the proximity threshold from the centroid location of the venue geography boundary; and applying one or more of the candidate labels to the contextual slice to make one of the plurality of labelled contextual slices; retrieving, from a storage, a contextual pattern specifying a sequence of contextual labels, wherein the sequence includes a plurality of contextual labels with semantic descriptions that when aggregated correspond to a common semantic description; searching the received labelled contextual slices for a temporally contiguous group of contextual slices having the sequence of contextual labels specified by the pattern; identifying, by a processor, the temporally contiguous group of contextual slices as a matching group responsive to the temporally contiguous group of contextual slices having the sequence of contextual labels specified by the pattern and rank; ordering the matching group of labelled contextual slices by rank; grouping the matching group of labelled contextual slices having at least a minimum threshold rank based on visit year; and applying the common semantic description to the ranked matching group of labelled contextual slices as the user's storyline.
1. A method of automatically creating a hierarchical storyline, the method comprising: receiving a plurality of labelled contextual slices derived from contextual data of a user, each labelled contextual slice comprising a time range, a location, and a contextual label indicating a semantic description of the labelled contextual slice, wherein receiving the plurality of labelled contextual slices comprises: receiving a plurality of contextual slices derived from associated context data collected from a plurality of observation sources, each contextual slice is bound by the time range at the location; and for each of the plurality of contextual slices: identifying a set of candidate labels based on context data associated with the contextual slice, the candidate labels each comprising semantic data describing context data associated with the contextual slice, the semantic data selected from a group consisting of venue geography boundary, venue name, venue type, and venue activity name, venue activity location, venue activity popularity and calendar event; ranking the set of candidate labels by likelihood based on a proximity threshold to the venue geography boundary and ordered by the venue activity popularity, the proximity threshold from the centroid location of the venue geography boundary; and applying one or more of the candidate labels to the contextual slice to make one of the plurality of labelled contextual slices; retrieving, from a storage, a contextual pattern specifying a sequence of contextual labels, wherein the sequence includes a plurality of contextual labels with semantic descriptions that when aggregated correspond to a common semantic description; searching the received labelled contextual slices for a temporally contiguous group of contextual slices having the sequence of contextual labels specified by the pattern; identifying, by a processor, the temporally contiguous group of contextual slices as a matching group responsive to the temporally contiguous group of contextual slices having the sequence of contextual labels specified by the pattern and rank; ordering the matching group of labelled contextual slices by rank; grouping the matching group of labelled contextual slices having at least a minimum threshold rank based on visit year; and applying the common semantic description to the ranked matching group of labelled contextual slices as the user's storyline. 6. The method of claim 1 , wherein associating the matching group with the group label comprises: obtaining a label template associated with the contextual pattern, the label template specifying one or more contextual categories; identifying, from contextual labels of the matching group of labelled contextual slices, a contextual label describing at least a threshold proportion of the matching group of labelled contextual slices, the identified contextual label in one of the one or more contextual categories in the label template; and generating the group label by using the identified contextual label in the pattern template.