User Modelling seminar Jonathan Foss Dana Al-Qudah What is needed for UM? • User Model – Personal information (e.g. age?, culture?)? – Location? – Knowledge? – Browsing History? • Information needs to be collected somehow Populating a UM • Explicit – through user intervention • Implicit – through agents that passively monitor user activities Build a User Model in Protégé Build a user model based on the features you have studied in the module in Protégé. It should represent at least user knowledge, cognitive properties, goals and plans, moods and emotions, preferences. Representing UMs • No fixed standards for storing UM • Can represent observations – The user has visited the page ‘Coventry’ 5 times… • Can also represent contain inferences – e.g. …therefore the user probably has an interest in Coventry UMs within Education • UMs could also be used within educational websites – Remember what the user has learnt • e.g. don’t attempt to teach trigonometry before they’ve understood Pythagoras – People have different learning styles • e.g. some people prefer to watch video lectures – others prefer books… Learning Styles • Felder Solomon: ILS • Check your LS at: http://www.engr.ncsu.edu/learningstyles/ilsweb. html (read: http://www4.ncsu.edu/unity/lockers/users/f/feld er/public/ILSpage.html • Where do you think you are on Kolb’s scale? • What about field dependent/independent, impulsive/reflective; introvert/extrovert; high/low fear of failure; etc. ? How Social Networks collect information… • Explicit – User clicks the Like Button – User clicks the Google +1 button • Implicit – Behaviour within the social network – Maybe just visiting a web page? How does it know who my friends are? Facebook must know I’ve visited the Warwick Page Facebook Like Button • “If you’re logged in to Facebook and visit a website with the Like button or another social plugin, your browser sends us information about your visit. It’s important to note that Facebook isn't retrieving this information. Since the Like button is a little piece of Facebook embedded on another website, the browser is sending information about the request to load Facebook content on that page. • We record some of this information for a limited amount of time to help show you a personalized experience on that site and to improve our products. For example, when you go to a website with a Like button, we need to know who you are in order to show you what your Facebook friends have liked on that site. The data we receive includes your user ID, the website you're visiting, the date and time and other browser-related information.” – from http://www.facebook.com/help/186325668085084 User Models for Web Personalisation The Amazon website is embedded in an iframe – the iframe has referrers from Chortle The iframe can read my Amazon cookie - Amazon therefore knows I’m on Chortle, and could use this information to recommend Comedy to me next time Exercise • Have a look at some of the websites you’ve been to recently • What type of user modelling have you experienced on them? – Explicit/implicit; static/dynamic/long-term – How did they know these things? (info collection?) • What websites do they communicate with? – Hint: FireBug or Chrome’s ‘Inspect Element’ have tools to help you… Feedback What did you find? Keyword profiles • Bag of words – Vector representation doesn’t consider the ordering of words in a document – John is quicker than Mary and Mary is quicker than John have the same vectors Keyword Profiles Compare “The University of Warwick is not in Warwick!” “Coventry has two Universities, Warwick and Coventry” “Warwick is near Leamington” Tokenize and Remove Punctuation 0 1 2 3 4 5 6 7 The University of Warwick is not in Warwick Coventry has two Universities Warwick and Coventry Warwick is near Leamington Keyword Profiles Tokenize and Remove Punctuation 0 1 2 3 4 5 6 7 The University of Warwick is not in Warwick Coventry has two Universities Warwick and Coventry Warwick is near Leamington Stem words and remove Stop Words 0 1 2 Universit Warwick Warwick Coventry Universit Warwick Warwick Leamington 3 Coventry Example Rule-based model Pseudo-algorithm: Initialise number_of_clicks; learning_style = unknown; If number_of_clicks on video > 3 learning_style = visual If number of _clicks on text > 3 learning style = textual User behaviour: Clicks 2 times on video, 2 times on text, then again 2 times on video, 2 times on text, etc. Discuss what effect the algorithm above has on the expected learning style of the user; discuss issues with this approach; Propose corrections to the algorithm to alleviate the issues.