A method for managing a context model associated with a mobile device, the method implemented by the mobile device and comprising: obtaining first data points associated with a first data stream assigned to one or more first data sources; assigning ones of the first data points to respective clusters of a set of clusters such that each cluster is respectively assigned ones of the first data points that exhibit a threshold amount of similarity with each other and are associated with times within a threshold amount of each other; compiling statistics associated with features and inferences corresponding to the first data stream or one or more other data streams assigned to respective other data sources; and assigning context labels to the set of clusters based on the statistics associated with the features and the inferences wherein each cluster corresponds to a respective context label; and further comprising performing a context inference based on the context model, the performing the context inference comprising: retrieving the context model, wherein the context model is generated using the first data points temporally grouped into the respective clusters of the set of clusters and the context labels assigned to the set of clusters; obtaining second data points associated with a second data stream assigned to one or more second data sources; determining at least one cluster of the context model that is representative of the second data points; and selecting an output context label associated with the at least one determined cluster; and providing the output context label to one or more applications associated with the mobile device; and wherein the selecting comprises: directing collection of additional data from the one or more second data sources; and selecting the output context label based on the additional data collected from the one or more second data sources in response to the directing. obtaining first data points associated with a first data stream assigned to one or more first data sources; assigning ones of the first data points to respective clusters of a set of clusters such that each cluster is respectively assigned ones of the first data points that exhibit a threshold amount of similarity with each other and are associated with times within a threshold amount of each other; compiling statistics associated with features and inferences corresponding to the first data stream or one or more other data streams assigned to respective other data sources; and assigning context labels to the set of clusters based on the statistics associated with the features and the inferences wherein each cluster corresponds to a respective context label; and further comprising performing a context inference based on the context model, the performing the context inference comprising: retrieving the context model, wherein the context model is generated using the first data points temporally grouped into the respective clusters of the set of clusters and the context labels assigned to the set of clusters; obtaining second data points associated with a second data stream assigned to one or more second data sources; determining at least one cluster of the context model that is representative of the second data points; and selecting an output context label associated with the at least one determined cluster; and retrieving the context model, wherein the context model is generated using the first data points temporally grouped into the respective clusters of the set of clusters and the context labels assigned to the set of clusters; obtaining second data points associated with a second data stream assigned to one or more second data sources; determining at least one cluster of the context model that is representative of the second data points; and selecting an output context label associated with the at least one determined cluster; and providing the output context label to one or more applications associated with the mobile device; and wherein the selecting comprises: directing collection of additional data from the one or more second data sources; and selecting the output context label based on the additional data collected from the one or more second data sources in response to the directing. directing collection of additional data from the one or more second data sources; and selecting the output context label based on the additional data collected from the one or more second data sources in response to the directing.