Automatic age estimation is the process of using a computer to predict the age of a person automatically based on a given facial image. While this problem has numerous real-world applications, the high variability of aging patterns and the sparsity of available data present challenges for model training. Here, instead of training one global aging function, we train an individual function for each person by a multi-task learning approach so that the variety of human aging processes can be modelled. To deal with the sparsity of training data, we propose a similarity measure for clustering the aging functions. During the testing stage, which involves a new person with no data used for model training, we propose a feature-based similarity measure for characterizing the test case. We conduct simulation experiments on the FG-NET and MORPH databases and compared our method with other state-of-the-art methods.