1. A method of creating a customized recommendation agent for a user, the method comprising: obtaining a plurality of labelled context slices derived from context data associated with a user, each labelled context slice including a time, a location and a user context label specifying at least a place inferred from the location; obtaining place features of places included in the obtained plurality of labelled context slices, the obtained place features relevant to personality traits of the user; identifying, using the plurality of labelled context slices, one or more home areas corresponding to one or more places at which the user has spent a majority of time spanned by the labelled context slices; identifying, from the places included in the plurality of labelled context slices, non-home areas comprising places that do not correspond to a home area; determining a home area statistic and non-home area statistics from the obtained place features, the home area statistic describing place features of the one or more home areas, the non-home area statistics describing place features of the non-home areas; determining, by a processor, a plurality of personality metrics based on the home area statistic and the non-home area statistics, each personality metric quantifying a position of the user on a corresponding one of a plurality of personality trait dimensions, wherein determining the plurality of personality metrics comprises applying a machine learning algorithm to the places to determine the plurality of personality metrics, the machine learning algorithm trained by: obtaining personality scores of each user of a baseline group for the plurality of metrics; obtaining baseline contextual slices for each user of the baseline group, the baseline contextual slices derived from context data associated with the user of the baseline group, the baseline contextual slices including locations and baseline contextual labels specifying places inferred from the locations; and training the machine learning algorithm to predict the personality scores using the baseline contextual labels from the baseline contextual slices obtained for each user; and creating the customized recommendation agent configured to provide a recommendation to the user responsive to the plurality of personality metrics indicating the user is likely to find value in the recommendation.