Attention Streams

Attention Streams

Attention Streams (AS) helps you to visualise and understand your interests while you perform your online activities. By storing attention tags, AS enables the retrieval of information that might interest you given your current activity. AS uses a Greasemonkey script and bookmarklet that tracks your interests as you navigate the web. Currently, the system store your short term activities and long term activities.

preview1 preview1

Attention Based Realtime Recommendations

Attention Streams (AS) can be described as a semantic realtime attention tracker. Contrary to usual interest extraction approaches, AS analyses your interests as you navigate between pages. This process is totally transparent to the user since the tracking engine runs as a page background process. AS relies on the OpenCalais API for extracting Attention Tags as you browse the web. The system detects if you are interested in a page and automatically enriches your profile with the fetched tags. Each tag is associated with an attention rate that increases or decreases in realtime.

Attention Streams provides a simple application that uses these tags for querying different online services in realtime given your most important attentions streams. The application enables the user to discover new information based on its interests. Contrary to the existing recommendation services, AS can discovers content that fits the full user context based on his location and attention. AS does not rely on generic interests for finding recommendation but on the evolving interests of the user. As a consequence, AS is providing highly contextual and ambient recommendations that can be used for supporting the user activity. The passive recommendations minimize the explicit user interaction with the system thus avoiding the user distraction: the user can just check the system if he needs specific information since it is always updated with his current activity.

preview1

How does it Work ?

The Greasemonkey script extract social tags from the pages you visit and merge back the information to the page itself using RDFa. Then, this information may be used for applying filtering techniques within the page given the user attention tags.

The extracted tags are merged to the a FOAF profile hosted on the application server using the APML RDF Ontology. As the user update his profile, the attention tags values increase or decrease for matching the increases and decreases in his interests. Currently, there is two tag lists differentiating the long therm tags and short term tags.

The retrieved tags enable the adaptation of a user interface by matching the user's tag and the tags within the interface. For instance, it becomes possible to hide irrelevant tagged information or highlight/extend the information that seems to be interesting the user.

In a similar fashion, it is possible to give real-time information recommendations based on the user activity tags. For example, it is possible to retrieve bookmarks, or news that might interest the user right now.

Currently, Attention Streams is divided in two application. The first one is a Greasemonkey script that tracks your current activity. The second application analyses in realtime the attention tags provided by the Greasemonkey script and the current user location for providing relevant realtime information suggestions from streaming sources such as twitter. The recomendation system enables the user to "star" items within its current context. While staring an item, the user store a bookmark within the HTML5 Storage facility (a future version will enable remote bookmark storage). The bookmarks appears in the headline section when the user experiences the same attention later on (i.e. the same Attention Tags. More informations are available in the "Installation" section).

preview1

The Attention Streams Architecture and applications are written using the Sparks Framework for the client side and Ruby on Rails for the server side. The semantic models are hosted on a dedicated Open Virtuoso server using RDF. These models are currently using the APML and FOAF Ontologies. FOAF models the user profile while APML describes his current attention. After the creation of his profile, a user can install a Greasemonkey script that operates on any public web document12. The script fetch the user attention model using tags retrieved from Open Calais3. Then, the script send the extracted tags to the Attention Streams Server for processing. When the server receives new Attention Tags, it performs some internal tasks in order to increase or decrease the user Attention Tags using some heuristics4. The recommendation application fetch the user Attention Model periodically from the server and his current location using HTML5 geolocation features5. After getting the user model, the system performs different tasks6: 1) The most important tags and previous bookmarks (bookmarks are currently stored within the HTML5 database) are extracted from the current Attention Model and displayed accordingly; 2) RSS suggestion are fetched from Google and displayed; 3) If the user location is available, the location is accessed and local events displayed using the Upcoming API; 4) Tweets and events are extracted periodically for displaying useful tweets updates according to his Attention Model.

Installation

Before starting, it is highly recommended to install Greasemonkey since it provides a better user experience compared to the bookmarklet. After the installation, the user must create a user profile. If the user is using the application on a desktop computer, he can transform the application to a desktop one using Mozilla Prism (he can also use Fluid on a mac). The interface of the application is using jQTouch so it can be transformed to a native iPhone application (the application works also very well on Android).

After creating a profile, the system gives three different links. The first one is a link to the user personal Greasmonkey script. The second one links to the user personal recommendation application (it is recommended to install it using Mozilla Prism* if you are on a desktop computer or to add the bookmark to the application launcher on iPhone.). Finally the last one is a bookmarklet that can be used as a replacement of the Greasemonkey script. However, the bookmarklet needs to be applied manually to each pages while the Greasmonkey script works automatically.

Before starting using the recommendation system the user must add some attention tags to his APML profile. In order to do it, the Greasemonkey script must be installed and Greasmonkey activated. By simply going on a public web page, the Attention Stream script will extract the attention tags from the current page (please note, that the tags are extracted 20 seconds after the page loading process). It is important to note that some pages does not allow the tag extraction such as Google. The user may also access the tags of the external link of a page by clicking on the small character situated after each external link. If the user clicked on it, the character turns green and the user can access the tags of the linked page and decides to add them directly to his profile by clicking on the plus button.

preview1

The user can start using recommendations by starting his personal recommendation application. The application returns realtime tweets4, local events6 and RSS recommendations3 based on his current attention1 and location5. Each tweet suggestion may be bookmarked using the star button4. The bookmarked items will be displayed later on when the a similar attention occurs2.

The AS recommendation application of the author of the application can also be tested for viewing how the recommendation application works.

*It seems that Mozilla Prism does not support Geolocalisation. By using Prism, you will not be able to access event suggestions.

Functionalities

The Recommendation System can be used either on a mobile device, or through a Web Browser. Alternatively, an application can be created using the Web page and Mozilla Prism.

The application has been tested on Mozilla Firefox and Safari (it may not work perfectly on other Web Browsers.).

  • Attention Tags extraction using Open Calais.
  • Attention Based Tweets extraction using Twitter.
  • Events Suggestion using Upcoming. (local suggestions)
  • RSS Suggestions using Google.
  • Attention Tag Preview (Greasemonkey Plugin).
  • Mobile Interface using jQTouch.
  • Experimental Local Bookmarking using HTML5.

Outgoing Work

Curently, the number of recommendations provided by the recommendation system are limited to few services. Despite being realtime and relatively accurate, it is necessary to expend the number of recommendations. Currently, the following extensions are being developed and should be released soon:

  • Attention Based Contact Suggestion(Based on attention tags matching).
  • RSS Temporary subscriptions.
  • Realtime Statistics about the attention (top tags, attention graph...)
  • Cloud Bookmarking.
  • Attention Streams RSS Feed.

Authors

Attention Streams is developed by Gregoire Burel at the Oak Group at the University Of Sheffield.

Sparks is developed by Gregoire Burel & Elizabeth Cano.

This project is supported by the EU project WeKnowIt (ICT-215453).