On November 19, 2009, Clint Adams wrote: > On Fri, Nov 20, 2009 at 12:36:56AM +0100, Maciej Łoziński wrote: > > What is the state of the recommendation/stats engine of > > libre.fm? I made a quick look at the code, and haven't > > noticed anything in subject. Is anyone > > coding/designing/thinking of it at the time? > > A couple people have mentioned it, but we haven't seen any > code. > > > But I get the feeling that entire project has lost his > > momentum. I hope there's someone familiar with the site > > design, that I could discuss my ideas with. Or at least > > someone that could commit my code to repository and run it on > > server ;-) > > You could create momentum by working on this.
Hello. I really don't need more interruptions in my attempt to find work as a professional engineer in Materials Science and Engineering (I have Autism, finding work is difficult), but diversions are often useful to allow the subconcious to work on a problem in peace. You aren't asking about playing music randomly, but I will start there. If you ask 20 people about how they define random plays of music, you will probably get somewhere between 10 and 20 different definitions. And all of them are correct. What Last.fm seems to do, is to look at correlations between songs "owned" by different people. To be imprecise, if someone has some particular hard rock song in their inventory, what is the probability that they also have some opera of Vivaldi. If we look at how people want to listen to music, their listening habits are seldom that simple. You can find people who enjoy both hard rock and classical, but if they decide to listen to hard rock, they do not want to have their playlist suddenly jump into classical. To consider text, some people are interested in constructing "random text". Perhaps a good example for more complicated text construction is Lorem Ipsum. We can observe correlations between people's complete libraries, which I believe (with no proof) is what Last.fm does. We could look at the time series of songs that people listen to: what is the probability that a person wants to listen to classical music within N different songs? If N is small, there is a small probability that that they might want to listen to a classical song. We could construct listening recommendations based upon N=1 (next song to be listened to), N=2 (1 song after the next song), and so on. We could look at these correlations when restricted to certain tags (we don't consider the probability of listening to Alice Cooper N songs after listening to Vivaldi). Most people think the idea of making suggestions is simple and obvious. If you were to question N people as to what they specifically are looking for, I would expect that you are going to find something like sqrt(N) different definitions. And all of them are correct. The above is handwaving theory. If we look at music statistics from the music business over the last N years, we run into problems. If you listen to TOP-40, you will (almost?) never run across a country/western song. If you look at music sales statistics, there is an overlap between Top-40 and Country/Western. A concious decision has been made by the TOP-40 people to ignore anythign having to do with Country/Western. And many people that listen to TOP-40 music insist that they HATE Country/Western! Even if they have never listened to a single Country/Western song in their life. Not every song in Country/Western is about driving a John Deere tractor. How does a recommendation algorithm deal with irrational rejections, such as ALL Country/Western songs are to be rejected? Sorry, no solutions. I have done statistics a long time, and I have thought about how one plays music "at random". Take care. Gord _______________________________________________ Libre-fm mailing list [email protected] http://lists.autonomo.us/mailman/listinfo/libre-fm
