1. A method for categorizing contacts, comprising: generating a quality of experience (QoE) vector space for each of one or more contacts associated with a user; monitoring multiple communications between the user and each of the one or more contacts; collecting one or more physiological signals from the user during each of the multiple monitored communications; classifying each of the multiple monitored communications into multiple predetermined classifications; updating the QoE vector space for each of the one or more contacts based on the collected physiological signals; categorizing the one or more contacts into multiple contact groups in accordance with the updated QoE vector spaces, the categorizing including: randomly selecting multiple QoE vector spaces, from the updated QoE vector spaces, as multiple centers, computing a distance value between each unselected QoE vector space and each of the multiple centers, clustering each unselected QoE vector space to one of the multiple centers that corresponds to a minimum one of the computed distance values to form the multiple contact groups, calculating a new center for each of the multiple contact groups, calculating a mean square value for each of the multiple contact groups, reverting to the computing of the distance value if the calculated mean square value is larger than a predetermined mean square value, and validating the categorizing if the calculated mean square value is less than or equal to the predetermined mean square value; and sorting the categorized contact groups based on the updated QoE vector spaces.
7. The method of claim 1 , wherein each of the multiple predetermined classifications is associated with one or more topical terms.