Friday, April 30, 2010

Collaborative filtering depending on time

Here i would like just to report about very interesting paper i read this weak. Collaborative Filtering with Temporal Dynamic shows the approach to catch the changes about customer preferences and items over a time in order to do appropriate suggestions about future preferences. Here are my thoughts how the approach can be adopted for learning environments where customers are learners and items are learner objects or other environment actors.

Firstly i would like to mention what I've learnt from the paper
  • concept drifting - temporal changes in user behaviour or item behaviour. In the scope of learning communities learners changes their preferences, ways of knowledge, favorite activities within a time. Not only learners, but learning objects may change: a lectures notes are rewritten, the collaboration environment is changed.
  • three approaches that solves the concept drift problem exist:
  1. instance selection - don't pay attention to irrelevant data. In this case the data considered in a particular time-frame.
  2. instance weighting instances get weights according to its relevance.
  3. ensemble learning - the list of predictors exists and the more successful predictors get higher weights
In the paper the ideas of two last approaches are utilized but some other biases as well are considered.

Even, according to instance weighting the past events loose their influences, the preferences of users still dependent on their past. The parts of learners profiles are changing every day but there are some points that are stable on each of us: liking to read, understanding the information presented by video better then by audio, preferences to avoid formulas.

In ensemble learning only a fraction of behaviour is considered, e.g. preferences during preparing for an exam or collaborating with student colleagues. For each user a set of fractions is needed to be considered. Considering a huge number of learners such a generation of the sets is a complicated task.

Yehuda Koren proposed the solution that considers item bias, user bias, global average and user interaction. Afterwards, the time components was added.

How it can be applied in learning? - To be continued