1. A method of identifying locations of interest to a user via a mobile communication device associated with the user, the method comprising: collecting data at the mobile communication device for each of a plurality of geographic positions to generate a location data set, the data for each of the plurality of geographic positions including one or more features associated with at least one of environmental data and user behavior data collected at the geographic position; extracting from the location data set at least one feature that distinguishes the data associated with a first subset of the geographic positions from the data associated with a second distinct subset of the geographic positions; clustering the location data set to generate a plurality of distinct clusters of data and associated geographic positions therefrom based on the extracted at least one feature; and assigning a label to each of the plurality of distinct clusters.