<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Getting music recommendations and ltering newsfeeds from FOAF descriptions</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Oscar Celma</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Miquel Ram rez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Perfecto Herrera</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Music Technology Group, Universitat Pompeu Fabra</institution>
          ,
          <addr-line>Barelona</addr-line>
          ,
          <country country="ES">SPAIN</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This document proposes to use the Friend of a Friend (FOAF) de nition to recommend music depending on user's musical tastes and to lter music-related newsfeeds. One of the goals of the project is to explore music content discovery, based on both user pro ling |FOAF descriptions| and content-based descriptions |extracted from the audio itself.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>The World Wide Web has become the host and distribution channel of a broad
variety of digital multimedia assets. Although the Internet infrastructure allows
simple, straight-forward acquisition, the value of these resources su ers from a
lack of powerful content management, retrieval and visualization tools. Music
content is no exception: although there is a sizeable amount of text-based
information about music (album reviews, artist biographies, etc.) this information
is hardly associated to the objects they refer to, that is music pieces. Music
is an important vehicle for telling other people something relevant about our
personality, history, etc.</p>
      <p>In the context of the Semantic Web, there is a clear interest to create a Web of
machine-readable homepages describing people, the links between them and the
things they create and do. The FOAF (Friend Of A Friend ) project1 provides
conventions and a language \to tell" a machine the sort of things a user says
about herself in her homepage. FOAF is based on the RDF/XML2 vocabulary.
We can foresee that using user's FOAF pro le would allow a system to better
understand user musical needs.</p>
      <p>The main goal of SIMAC3 project is doing research on semantic descriptors
of music contents, in order to use them, by means of a set of prototypes, for
providing song collection exploration, retrieval and recommendation services. These
services are meant for \home" users, music content producers and distributors
and academic users. One special feature is that these descriptions are composed
by semantic descriptors. Music will be tagged using a language close to the
user's own way of describing its contents |moving the focus from low-level to
higher-level (i.e. semantic) descriptions.</p>
      <sec id="sec-1-1">
        <title>1 http://www.foaf-project.org 2 http://www.w3.org/RDF 3 http://www.semanticaudio.org</title>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>Recommender Systems are software applications whose purpose is to deliver
information to people that \needs" it. Put this way, one cannot tell the di erence
between a Recommender System and a Search Engine |both software types
share the same purpose: to select objects (or items) from a repository whose
features were found to satisfy the querying user's needs.</p>
      <p>However, there exist two subtle but meaningful di erences between \Search
Engines" and \Recommender Systems". The rst of these di erences lies in the
design intention, or better said: the wording of the problem to address when
designing the system. Is that \information need" related to solving a contingent
situation, or is that need something periodic or steady? The second one is also
another design intention di erence which lies in the use of two di erent words to
describe the system: does it retrieve information from a relatively static
repository of information? Or does it lter objects embedded in an incoming stream
of information?</p>
      <p>
        The \Recommender System" term emerged as a logical evolution of the
research of information retrieval (IR) systems. This evolutive main feature was
the emphasis put on the \query" concept de nition and representation.
Recommender Systems were initially thought as information ltering systems, whose
technological framework baseline stemmed from information retrieval systems
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. This then, e ectively implies that a Recommender System is an inherently
dual purpose application: the user pro ling of steady information needs might
be used to better understand and attend immediate, unforeseen needs.
      </p>
      <p>There are two main approaches to recommend items to users: collaborative
ltering and content-based ltering. Next section explains the di erences
between both approximations.
2.1</p>
      <sec id="sec-2-1">
        <title>Collaborative ltering versus Content-based ltering</title>
        <p>
          Collaborative ltering consists of making use of feedback from users to improve
the quality of material presented to users. Obtaining feedback can be explicit
or implicit. Explicit feedback comes in the form of user ratings or annotations,
whereas implicit feedback can be extracted from user's habits. One of the main
caveats of this approach is the fact that the only way to recommend brand new
items is that some user has to previously rate or review that item. are some
examples that succeed based on this approach. For instance, Amazon is a good
illustration system [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
        </p>
        <p>On the other hand, content-based ltering tries to extract useful
information |from the items of the user's collection| that could be useful to represent
user's needs. This approach solves the limitation of collaborative ltering as it
can recommend new items (even before not knowing anything from that item),
by comparing the actual set of user's items and calculating the distance with
some sort of similariy measure. In the music eld, to extract musical
semantics from the raw audio and computing similarities between music pieces is a
challenging one. Traditional music similarity measures use low-level |mainly
timbre-based| features. We belive that adding cultural metadata terms to such
a similarity measure can help to get better results.
2.2</p>
      </sec>
      <sec id="sec-2-2">
        <title>Music recommendation systems</title>
        <p>
          The main goal of a music recommendation system is to propose interesting and
unknown music artists (and their available tracks |if possible|) to the
enduser, based on her musical taste. But musical taste and music preferences are
a ected by several factors, even demographic and personality traits. Then,
combining music preferences and personal aspects |such as: age, gender, origin,
occupation, musical education, etc.| could improve music recommendations
[
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>Moreover, a music recommendation system should be able to get new music
dynamically, as it should recommend new items to the user once in a while.
In this sense, there is a lot of free available (in terms of licensing) music on
Internet, performed by \unknown" artists that can suit perfectly for new
recommendations. Nowadays, music websites are noticing the user about new releases
or artist's related news, mostly in the form of RSS feeds. iTunes Music Store4
o ers the possibility to subscribe to its New Music Tuesdays system, via email.
This service issues one email message every week with exclusives, live session
recordings, remixes, celebrity playlists, and unreleased tracks from their artists.
iTunes provides, as well, an RSS (version 2.0) feed generator5, with an hourly
updated period, that publishes new releases as they are made available. A music
recommendation system should take advantage of these publishing services, as
well as integrate it into the system, to lter and recommend new music to the
user.</p>
        <p>Most of the current music recommenders are based on collaborative
ltering approach, or an hybrid version including clustering and users' communities
Examples of such systems are: Audioscrobbler6, iRate7, Goombah Emergent
Music8 and inDiscover9. The basic idea of a music recommender system based on
collaborative ltering is to keep track of which artists a user listens |through
WinAmp or XMMS plugins|, to in order to nding other users with similar
tastes and, nally, recommending similar artists to the user, according on these
similar listeners' taste. But, digital music collections can be huge (thousands
of les), and very heterogeneous. Thus, this approach to recommend music can
generate some \silly" (or obvious) answers.</p>
        <p>The main goal of our prototype system is to recommend, to discover and to
explore music content; based on both user pro ling |via FOAF descriptions|
and content-based descriptions |extracted from the audio itself.</p>
        <sec id="sec-2-2-1">
          <title>4 http://www.apple.com/itunes</title>
          <p>5 http://phobos.apple.com/WebObjects/MZSearch.woa/wo/0.1
6 http://www.audioscrobbler.com
7 http://irate.sourceforge.net
8 http://goombah.emergentmusic.com/
9 http://www.indiscover.net/</p>
          <p>The system is composed by two main components. The rst component is the
music recommender, while the second is the (music related) newsfeeds ltering.
Both components are based on user's FOAF pro le (example 3.1 shows a possible
input le10). Example 3.1 Next sections explains each component of the system.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>System overview</title>
      <sec id="sec-3-1">
        <title>Music recommender</title>
        <p>Music recommendations are done through the following steps:
1. Get interests from user's FOAF pro le
2. Detect artists and bands
3. Access to Music repository and select related artists, from artists
encountered in the user's FOAF pro le
4. Rate results by relevance
10 A real example extracted from http://www.livejournal.com, only changing user's
name</p>
        <p>The prototype reads an input FOAF pro le |that is, an RDF le|, and
extracts user's interests. Then queries to a music repository to detect whether the
interest is a music artist (or a band) and selects similar artists to the ones found.
To get artists' similarities, a focused web crawled has been implemented to look
for relationships between artists (such as: related with, in uenced by, followers
of, etc.). This web crawler has gathered information from several music
portals, such as: allmusic.com, mp3.com and msn.music.com, as well as some sites
that contains information (and audio) from \unknown" artists: magnatune.org,
garageband.com and vitaminic.com. All these information has been stored into
our music repository.</p>
        <p>Moreover, a music similarity distance is used to recommend tracks that are
similar to tracks composed or played by artists found in the FOAF pro le. Tracks
are ltered to the user depending on automatically extracted music content
descriptions. These descriptions are composed by a certain number of quanti
cable measures taken directly from the track samples ([4], [5]). Currently, we are
considering (i) ryhthm descriptors: tempo (beats per minute), meter (binary
or ternary) and danceability, (ii) tonal descriptors: tonality, mode and tonality
strength, and (iii) timbre descriptors: global loudness and several low-level
timbre descriptors. These audio descriptions are evaluated according to a preference
model derived from the analysis of users' listening patterns. Euclidean distance
|from the instances of the user's model and the potential recommended tracks|
is computed to determine whether an incoming track is likely to be listened by
the user.</p>
        <p>Based on the FOAF example (see example 3.1), the prototype detects the
following artists from the user's pro le: Dogs d'Amour, Social Distortion, The
Mis ts and The Pogues. Starting from these artists, the system searches for
similar artists and artists in uenced by them, and scores them in terms of counting
artist occurrences. If there are any tracks in the music repository from artists in
the FOAF pro le, it computes the similarity and gets the most signi cant similar
tracks from other artists. Figure 2 shows the ouput recommended artists.</p>
        <p>To our knowledge, nowadays it does not exist any system that recommends
items to a user, based on her FOAF pro le. There is the FilmTrust system11
which is a part of a research study to understand how social preferences might
help web sites present information to users in a more useful way. The system
collects user reviews and ratings about movies, and holds it into the user's FOAF
pro le. Although it has not yet implemented a recommendation system, it
includes a rating algorithm for lms based on a trust-based algorithm [6].
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Music related news ltering</title>
        <p>Filtering news based on user's pro le is another issue related with recommender
systems. This kind of system is designed to lter mail, messages from mailing
lists, Internet News articles, newswire stories, etc.</p>
        <p>In our system, the music related news ltering component queries a newsfeeds
system that lters news regarding to related artists found in user's FOAF pro le.
To do so, this component permits to communicate with the PubSub server12,
via the Jabber protocol, and creates an RSS feed with a given query |that
is the user musical preferences found in the FOAF le. PubSub is a matching
service that instantly noti es a user when new content is created that matches
user's subscription. PubSub reads over over 8 million weblogs, more than 50,000
internet newsgroups and all SEC (EDGAR) lings. Jabber13 is an open secure
protocol, an ad-free alternative to consumer instant messaging services like ICQ,
MSN, and Yahoo. Jabber makes use of XML protocols that enable any two
entities on the Internet to exchange messages, presence, and other structured
information in (close to) real time.
11 http://trust.mindswap.org/FilmTrust
12 http://www.pubsub.com
13 http://www.jabber.org</p>
        <p>Once the subscription with PubSub.com has been created, it is possible to
visualize all the music related news for a given user. Each news item has a bar
score that shows how much it is related with user's musical interests. Scoring
is done using the TF/IDF ranking algorithm [7]. TF/IDF ranks documents by
counting the number of ocurrences of user's term query into each document.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Implementation</title>
      <p>The prototype is completely written in PHP. It uses several PHP modules to
implement each subsystem:
{ FOAF: To process RDF les it uses the FOAF class from the Pear
framework (PHP Extension and Application Repository)14. This FOAF class makes
14 http://pear.php.net/
use of the RAP module15, thus is easy to access to the document using the
RDQL language.
{ RSS: Newsfeed processing is done using MagpieRSS16 module. MagpieRSS
is an RSS and Atom parser for PHP.
{ Jabber protocol: To interact with PubSub.com server a PHP class has been
implemented. This class allows to connect to the server, to authenticate,
and to create, retrieve and delete a subscription. This class makes use of
class.jabber.php17 module developed by Nathan Fritz.</p>
      <p>Access to the prototype is available at: http://www.semanticaudio.org/foa
nthe-music
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>We have proposed a system that recommends music and lters music related
news based on a given user's pro le. A system based on FOAF pro les allows
to \understand" a user in two complementary ways; psychological factors |
personality, demographic, socio-economics, situation| and explicit musical
preferences. This system, then, is able to lter and to contextualize users' queries.</p>
      <p>In the music eld context, we expect that using news ltering about music
new releases, artists' interviews, album reviews, etc. can improve a
recommendation system in a dynamic way. Finally, this approach opens a wide range of
possible usages and applications, such as notifying a user the forthcoming gigs
by an artist |playing close to user's location| whose music is similar to user's
musical taste.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>This work is partially funded by SIMAC IST-FP6-507142 European project.
15 http://www.wiwiss.fu-berlin.de/suhl/bizer/rdfapi
16 http://magpierss.sourceforge.net/
17 http://cjphp.net int.net/
4. Gouyon, F. Dixon, S. A Review of Automatic Rhythm Description Systems,
Computer Music Journal, Vol. 29, Issue 1 - Spring 2005
5. Gomez, E. Herrera, P. Estimating The Tonality Of Polyphonic Audio Files:
Cognitive Versus Machine Learning Modelling Strategies, Proceedings of the 5th
International ISMIR 2004 Conference, October 2004. Barcelona, Spain.
6. Golbeck, Jennifer, Bijan Parsia: "Trust Network-Based Filtering of Aggregated
Claims", to appear in the International Journal of Metadata, Semantics, and
Ontologies, 2005.
7. Ricardo Baeza-Yates and Berthier Ribeiro-Neto,: ACM Press, Modern Information
Retrieval, Addison-Wesley, 1999.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Nicholas</surname>
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Belkin</surname>
            and
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Bruce</surname>
          </string-name>
          <article-title>Croft: Information Filtering and Information Retrieval: Two sides of the same coin?</article-title>
          ,
          <source>Communications of the ACM. December</source>
          ,
          <year>1997</year>
          , Volume
          <volume>35</volume>
          , number
          <volume>12</volume>
          , pages
          <fpage>29</fpage>
          -
          <lpage>39</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Greg</given-names>
            <surname>Linden</surname>
          </string-name>
          and
          <string-name>
            <given-names>Brent</given-names>
            <surname>Smith</surname>
          </string-name>
          and Jeremy York: Amazon.com Recommendations:
          <article-title>Item-to-Item Collaborative Filtering</article-title>
          ,
          <source>IEEE Internet Computing</source>
          , Volume
          <volume>4</volume>
          , number 1,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Alexandra</given-names>
            <surname>Uitdenbogerd</surname>
          </string-name>
          and Ron van Schyndel:
          <article-title>A Review of Factors A ecting Music Recommender Success</article-title>
          ,
          <source>ISMIR 3rd International Conference on Music Information Retrieval, October 13-17</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>