social web music
DESCRIPTION
Slides for the Poolcasting Web Radio and MySpace Robot presentation at Last.fm offices in London, April 2009TRANSCRIPT
IIIA - CSIC
Takingpeople
back into social Web music
Claudio Baccigalupo – April 2009
Timeline and motivation
Poolcasting Web Radio (30’)
MySpace Robot (15’)
Q&A and Demo (15’)
“!e beauty of the Internet is that it connects people. !e value is in the other people. If we start to believe that the Internet itself is an entity that has something to say, we’re
devaluing those people and making ourselves into idiots.”
– Jaron Lanier (Computer scientist, composer, visual artist)
A social music experience
“Share” a radio channel?
Authoritative Web Radios
Personalised Recommenders
“Share” a radio channel?
Authoritative Web Radios
Personalised Recommenders
“Share” a radio channel?
Authoritative Web Radios
Group-customised Web radio channels
POOLCASTING WEB RADIO
What is Poolcasting?
A Poolcasting radio channel
Listeners can play music
Listeners can create public channels
Participants contribute with own music
Listeners can meet other listeners
Listeners influence the music played
How to satisfy a group of listeners?
Variety
the same song or songs by the same artist should not be
repeated closely on a channel
How to satisfy a group of listeners?
Variety
the same song or songs by the same artist should not be
repeated closely on a channel
Smoothness
each song should be musically associated with the previous
song played in the channel
Customisation
each song should match the musical preferences of the
current listeners
How to satisfy a group of listeners?
Variety
the same song or songs by the same artist should not be
repeated closely on a channel
Smoothness
each song should be musically associated with the previous
song played in the channel
Customisation
each song should match the musical preferences of the
current listeners
How to satisfy a group of listeners?
Variety
the same song or songs by the same artist should not be
repeated closely on a channel
Smoothness
each song should be musically associated with the previous
song played in the channel
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
Customisation
each song should match the musical preferences of the
current listeners
Smoothness
each song should be musically associated with the previous
song played in the channel
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
How to fulfil the required properties?
Variety
exclude from the channel any recently played song or artist
How to fulfil the required properties?
How to automatically acquire knowledge about musical associations?
Customisation
each song should match the musical preferences of the
current listeners
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
Variety
exclude from the channel any recently played song or artist
Smoothness
which songs and artists are “musically associated”?
Knowledge about musical associations
Poolcasting extracts this knowledge from a set of 993,825 playlists compiled by the users of MusicStrands
Playlists are sequences of songs ordered according to musical, social and cultural criteria that are not discoverable with acoustic-based analysis
!e more the playlists where two songs or artists co-occur, the smaller the distance at which they occur, and the smaller the number of playlists where only one of the two occurs, the higher their musical association
DRG layout of co-occurrences of songs in a set of 993,825 MusicStrands playlists
Knowledge about musical associations
DRG layout of co-occurrences of songs in a set of 106,144 Last.fm playlists
Knowledge about musical associations
Top associated songs for Smoke on the Water (Deep Purple):
Top associated artists for ABBA:
Similar artists for ABBA (Last.fm):
Similar artists for ABBA (All Music Guide):
Space Truckin’ (VV.AA.) Cold Metal (Iggy Pop) Iron Man (Black Sabbath) China Groove (!e
Doobie Brothers) Crossroads (E. Clapton) Sunshine of your love (Cream) Wild !ing (J. Hendrix)
Knowledge about musical associations
Agnetha Fältskog A-Teens Chic Gloria Gaynor !e 5th Dimension Andy Gibb
Agnetha Fältskog Frida Boney M. Bee Gees Olivia Newton-John Baccara
Ace of Base Gemini Maywood Bananarama Lisa Stans"eld Gary Wright Roxette
Customisation
each song should match the musical preferences of the
current listeners
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
How to fulfil the required properties?
Variety
exclude from the channel any recently played song or artist
Smoothness
which songs and artists are “musically associated”?
How to fulfil the required properties?
How to automatically acquire knowledge about the musical preferences of the listeners?
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
Variety
exclude from the channel any recently played song or artist
Smoothness
which songs and artists are “musically associated”?
Customisation
which songs and artists the audience would like to hear?
Knowledge about musical preferences
Explicit preferences for songs played or scheduled on a radio channel can be stated using the Web interface
Knowledge about musical preferences
Implicit preferences of participants for songs in their shared libraries can be inferred combining rating and play count
Fairness
all the listeners of a channel should equally have an
enjoyable music experience
How to fulfil the required properties?
Variety
exclude from the channel any recently played song or artist
Smoothness
which songs and artists are “musically associated”?
Customisation
which songs and artists the audience would like to hear?
How to aggregate multiple preferences over time and satisfy all the listeners of a channel?
Variety
exclude from the channel any recently played song or artist
Smoothness
which songs and artists are “musically associated”?
Customisation
which songs and artists the audience would like to hear?
Fairness
how to create a musical sequence that everyone likes?
The music selection algorithm
Shared Libraries Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)
?
The music selection algorithm
Shared Libraries Music Pool Channel Pool (Rock) Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)
?
The music selection algorithm
Shared Libraries Music Pool Channel Pool (Rock) Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)
?
Retrieve candidate songs musically associated
with the last song played
Musical preferencesBest ranked candidate
among current listeners
The music selection algorithm
Shared Libraries Music Pool Channel Pool (Rock) Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)Retrieve candidate songs
musically associated with the last song played
!ree listeners have diverging individual preferences over which song to play after Woman in Chains (Tears For Fears)
Preference aggregation
-0.6
possible candidates
0
0.8
0.2
0.2
0.2
0.4
0.6
1
0.4
0
-1
aggregatedpreferences
?
?
?
?
!ree listeners have diverging individual preferences over which song to play after Woman in Chains (Tears For Fears)
Preference aggregation
-0.6
possible candidates
0
0.8
0.2
0.2
0.2
0.4
0.6
1
0.4
0
-1
aggregatedpreferences
?
?
?
?
To avoid misery, candidate songs that any listener “dislikes” automatically get the lowest group preference degree
Preference aggregation
-0.6
possible candidates
0
0.8
0.2
0.2
0.2
0.4
0.6
1
0.4
0
-1
aggregatedpreferences
?
?
?
-1
To avoid misery, candidate songs that any listener “dislikes” automatically get the lowest group preference degree
Preference aggregation
-0.6
possible candidates
0
0.8
0.2
0.2
0.2
0.4
0.6
1
0.4
0
-1
aggregatedpreferences
?
?
?
-1
To ensure fairness, the group preference for the remaining candidates equals to the average of the individual preferences
Preference aggregation
-0.6
possible candidates
0
0.8
0.2 0.6 -1
aggregatedpreferences
0.2
0.2
0.4
-1
0.2 1
0.2
0.4
0.4
0
!e highest ranked song is selected to be played next, leaving some listeners more satis"ed than others
Preference aggregation
possible candidates
0.8
aggregatedpreferences
0.2
0.2
0.4
-1
0.4 0
!e highest ranked song is selected to be played next, leaving some listeners more satis"ed than others
Preference aggregation
✓
possible candidates
0.8
aggregatedpreferences
0.2
0.2
0.4
-1
0.4 0
very satis!ed
quite satis!ed
not satis!ed
To achieve fairness in the long run, the preferences of less satis"ed listeners have more in#uence to select the next song
Preference aggregation
1
successive possible
candidates
0
0.6
-0.8
0.3
0.9
0.4
0.3
0.6
0.2
-0.1
-1
aggregatedpreferences
?
?
?
?
Scalability of satisfaction
Scalability of satisfaction
Musical preferences Best ranked candidate among current listeners
The music selection algorithm
Shared Libraries Music Pool Channel Pool (Rock) Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)
?
Retrieve candidate songs musically associated
with the last song played
Individual satisfactions
Musical preferences Best ranked candidate among current listeners
The music selection algorithm
Shared Libraries Music Pool Channel Pool (Rock) Rock Channel
Participants
Everybody Knows(Leonard Cohen)
…
You’re in the air (R.E.M.)
Woman in Chains(Tears For Fears)Retrieve candidate songs
musically associated with the last song played Missing
(Calexico)
Individual satisfactions
The Poolcasting architecture
Participant ParticipantPersonal LibraryMediaPlayer
I N T E R N E T
share library
list ofshared songs
ratings andplay counts
PREFERENCES
MUSIC POOL
availablesongs
Library Parser
MUSICAL ASSOCIATIONSplaylists
CURRENT LISTENERS
CHANNELS
Streaming Server
Stream Generator
list oflisteners
audio signal
OGG stream(256 Kbps)
MP3 stream(64 Kbps)
metadata
rate songs
Song Scheduler
Web Interface
knowledge toschedule
create channel
uploadsong
Database
In favour of the “long tail” of music
Each channel plays a group-customised ordered sequence of songs, adapting in real time to the taste of a changing audience without any e#ort by the listeners
Channels play di$erent songs at di#erent times depending on which libraries are shared and which persons are listening
Whole libraries are exploited, not just the “top of the iceberg”, while musical associations tend to favour uncommon songs, enabling people to discover or re-discover music
!e selection process is able to satisfy an heterogeneous group up, but only under a threshold number of listeners
The future of Poolcasting
MYSPACE ROBOT
Friends as associated musicians
Identifying the most associated artists
Identifying the most associated artists
Expanding the tree of friends
MilesDavis
JohnnyCash
5,123 friends2,123 in common
HankMobley
StanGetz
ColemanHawkins
BobDylan Miles Davis has
27,973 friends
藤田俊亮
Expanding the tree of friends
MilesDavis
JohnnyCash
JakobDylan
Bob Dylan has 189,037 friends,824 shared with Miles Davis
5,123 friends2,123 in common
HankMobley
StanGetz
ColemanHawkins
BobDylan
MattCosta
SherylCrow
藤田俊亮
Expanding the tree of friends
MilesDavis
JohnnyCash
Coleman Hawkins has 261 friends,115 shared with Miles Davis
5,123 friends2,123 in common
HankMobley
StanGetz
ColemanHawkins
BobDylan
CharlieParker
QuincyJones
藤田俊亮
Counting shared connections
MilesDavis
JohnnyCash
5,123 friends2,123 in common
HankMobley
StanGetz
ColemanHawkins
BobDylan
824 common friends (0%)
115 common friends (44%)
2,120 common friends (14%)17 common friends (30%)
44 common friends (31%)
286 common friends (0%)
藤田俊亮
Comparing with Last.fm similar artists
Comparing with Last.fm similar artists
Evaluating music discovery
Q&A AND DEMO
http://www.iiia.csic.es/~claudio
http://github.com/claudiob