1. A non-transitory machine-readable storage medium encoded with instructions that, when executed by one or more processors, cause the processor to carry out a process for generating one or more attribute models learned from a user's driving preferences, the process comprising: receiving attribute data for a set of driving sessions for a user, wherein attribute data for each driving session includes measurements relevant to one or more target attributes, wherein each driving session is defined in terms of one or more road segments of one or more roads traversed by the user during the set of driving sessions; applying attribute estimation rules to the attribute data to compute an attribute value for each target attribute along each road segment traversed at least once in the driving sessions; assigning a default attribute value for one or more unseen road segments of the one or more roads identified in each driving session, wherein unseen road segments correspond to road segments not yet traversed by the user during any one of the driving sessions; determining and storing an attribute model comprising attribute values computed or assigned for each road segment of the one or more roads traversed by the user during the set of driving sessions; and accessing the attribute model to generate directions for use in navigation.