1. A computer-based method of determining a location, comprising: receiving a signal representing an utterance from the user, the utterance specifying a location attribute and a landmark; identifying a set of candidate locations based on the specified location attribute; identifying a set of landmarks based on the specified landmark; generating an associated kernel model for each landmark in the set of landmarks, each kernel model comprising a three-dimensional model centered on a map at the location of a landmark associated with the kernel model; ranking the candidate locations based on kernel model amplitudes at each candidate location, wherein at least one candidate location is associated with multiple kernel models, and wherein the at least one candidate location is ranked based on a sum of the amplitudes of the multiple kernel models at the at least one candidate location; and selecting a location to provide to the user based on the ranked candidate locations.