1. A computer-implemented method comprising: receiving position information describing a position of each respective device of a plurality of devices; receiving contextual information items that are associated with the positions of the plurality of devices, the received contextual information items related to usage of each of the plurality of devices; determining, for a subject location within a premises, a usage pattern of the plurality of devices when the plurality of devices are at the subject location, the usage pattern determined based on the received contextual information items of the plurality of devices and describes usage of telephony or data services via a device; determining, at a server, a label for the subject location for the subject location based on: the determined usage pattern of the plurality of devices, applying one or more contextual information items of the contextual information items to each of a plurality of machine learning models that are each associated with different subject locations and at least one of the plurality of machine learning models is associated with the subject location, and each of the plurality of machine learning models output respective likelihoods that their respective subject locations are associated with the determined label, selecting the subject location associated with the highest likelihood, and determining the label for the subject location based on the selecting; and storing the label for the subject location in a memory.