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.
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. 2. The non-transitory machine-readable medium of claim 1 , wherein the instructions cause the processor to carry out a process further comprising: determining if one or more explicit conditions applies to each target attribute, and when an explicit condition is determined to apply to a given target attribute, the instructions cause the processor to carry out a process further comprising: defining a bucket for each explicit condition of each given target attribute; storing attribute data for each road segment from each driving session into a corresponding bucket; and determining and storing a conditional variant model for each bucket from attribute values computed or assigned from merged attribute data stored in each bucket.