Abstract. Cognitive psychology works have shown that the cognitive representation of categories is based on a typicality notion: all objects of a category do not have the same representativeness, some are more characteristic or more typical than others, and better exemplify their category. Categories are then defined in terms of prototypes, i.e. in terms of their most typical elements. Furthermore, these works showed that an object is all the more typical of its category as it shares many features with the other members of the category and few features with the members of other categories.In this paper, we propose to profit from these principles in a machine learning framework: a formalization of the previous cognitive notions is presented, leading to a prototype building method that makes it possible to characterize data sets taking into account both common and discriminative features. Algorithms exploiting these prototypes to perform tasks such as classification or clustering are then presented.The formalization is based on the computation of typicality degrees that measure the representativeness of each data point. These typicality degrees are then exploited to define fuzzy prototypes: in adequacy with human-like description of categories, we consider a prototype as an intrinsically imprecise notion. The fuzzy logic framework makes it possible to model sets with unsharp boundaries or vague and approximate concepts, and appears most appropriate to model prototypes.We then exploit the computed typicality degrees and the built fuzzy prototypes to perform machine learning tasks such as classification and clustering. We present several algorithms, justifying in each case the chosen parameters. We illustrate the results obtained on several data sets corresponding both to crisp and fuzzy data.