The TaskTracer system allows knowledge workers to define a set of activities that characterize their desktop work. It then associates with each user-defined activity the set of resources that the user accesses when performing that activity. In order to correctly associate resources with activities and provide useful activity-related services to the user, the system needs to know the current activity of the user at all times. It is often convenient for the user to explicitly declare which activity he/she is working on.But frequently the user forgets to do this. TaskTracer applies machine learning methods to detect undeclared activity switches and predict the correct activity of the user. This paper presents TaskPredictor2, a complete redesign of the activity predictor in TaskTracer and its notification user interface. TaskPredictor2 applies a novel online learning algorithm that is able to incorporate a richer set of features than our previous predictors. We prove an error bound for the algorithm and present experimental results that show improved accuracy and a 180-fold speedup on real user data. The user interface supports negotiated interruption and makes it easy for the user to correct both the predicted time of the task switch and the predicted activity.


  title = {Detecting and correcting user activity switches: algorithms and interfaces},
  author = {Shen, Jianqiang and Irvine, Jed and Bao, Xinlong and Goodman, Michael and Kolibaba, Stephen and Tran, Anh and Carl, Fredric and Kirschner, Brenton and Stumpf, Simone and Dietterich, Thomas G},
  booktitle = {Proceedings of the 14th international conference on Intelligent user interfaces},
  pages = {117--126},
  year = {2009},
  organization = {ACM}