Patent attributes
Recipes are hierarchically clustered into groups based on features of the recipes. Candidate clusters with a threshold number of clustered recipes having at least one feature in common are found by traversing the hierarchy. A plurality of clusters is selected for display to a user from among the candidates based on an objective function that considers the relevancy of the cluster as well as diversity of the clusters. A plurality of recipes within each selected cluster is selected for display to a user from among the recipes within the cluster based on an objective function that considers the quality of the recipe as well as the diversity of the recipes within the cluster. At least one feature that all of the recipes in a respective cluster have in common is used to generate a name for the cluster.