Machine Learning and MP3s
dan moore writes "Students at Caltech and Harvard have developed a system that analyzes playlists and learns people's listening patterns. It then channels its knowledge into generating streams of music that the people themselves would like to listen to. Intuitive, accurate, and finally someone has done it. Check out the website to get one of the available plugins. Another interesting approach to digital music."
Wonder what it'll make of the fact I just load them all up and then select the random play option? :)
Get your own free personal location tracker
For other programs that do this already, look for RoboDJ or AudioScrobbler. Lots of others exist.
Yet none get the job done right.
follow me on Twitter: http://twitter.com/moeffju
from their download page:
"Who wants Synapse?
Listeners of the MP3. Students. Elevator operators. Makers of other media players. Programmers. Gangsters. Punks. Nerds. Really big nerds. Even ones from Yemen. Yeah, plenty of those. Competitors. Winners. People who exercise to Rocky music. Will Deringer. Audiophiles. Revolutionaries. Even Canadians. Quality people. Gastroenterologists. Bums. Lots of bums. Evil geniuses. Classics professors. Chinese people. Wine connoiseurs. Businessmen. Rabbis. Dew drinkers. Sherpas. Dictators. Professional servants. People with special powers. People who come through in the clutch. You. "
I like them!
Fleur de Sel
I know my listening habits aren't what I want them to be, per se...my playlist is either the songs I'be pre-assembled onto a mix of some kind, or else entire CDs, half the songs of which I don't care about that much, but I'm too lazy.
I guess it could learn something from my mixes. But overall, this sounds like a much less useful technology than those previous "find out what other people who really like this song listen to" programs...firefly was one I think, way back in the day? Sort of like Amazon's "people who bought this CD also bought..." but on a per-song basis.
SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
I remember whenever that joyous time of the month would roll around, my ex-girlfriend would start listening to a lot more typically "chick" songs, right before she actually started menstruating.
I started working on a similar Winamp plugin to kind of give me a heads up, but then I figured I'd just see the used tampons in the trash...
Analysis of past choices is nice... but ultimately it will fail to play what I REALLY want to hear because it doesn't predict moods.
This type of system of past trait analysis has failed before, hasn't it???
There is already something like this out there, that uses loads of cool independant and smaller label stuff as well as some massive label stuff..
.sig :)
Check out Last.FM, they are very good. I've found a load of new artists from there. It is all stream based (128kbps) and they have a massive flash development section starting for open source goodness.
There's also the (all open source) Audioscrobbler project.. see my
RJ
Last.fm - join the social music revolution
We have begun to release a series of plugins that will expand the Brain's functionality to other major media players.
Analysis indicates that I am 99.9% likely to want to see ZhAng Ziyi in a plastic raincoat going down on Jennifer Lopez in ripped SCUBA gear (or the reverse, I'm not picky.) Now, if "the Brain" can FIND such porn for me instead of just making playlists, I might get some use out of it! Teach the damn thing to know when the women are fat and skanky so it won't download lousy porn, and I'll be sold.
Seriously:
There is of course the question of our definition of self, and how it might evolve as computers become more sophisticated. The distinction between the self and the environment, when our nervous systems are physical processes influenced by and dependent on "external" factors, is fundamentally artificial.
When I use a hammer, a tool for doing physical work, it becomes like a part of me.
When I use a computer, a tool for doing intellectual work, should I regard it any differently?
The music I listen to has fundamental impact on my mood, on my posture, on my creativity and critical evaluation of ideas. If I am continuously communicating with my computer regarding my taste in music, and if my computer continuously responds by playing music, it becomes difficult to draw a meaningful distinction between my computer, which is a device, and my self, which does the thinking.
OH GOOD LORD I'M RUNNING WINDOWS XP! GET IT OUT OF MY BRAIN!
ka-blowie!
NO CARRIER
The good and new comes from no quarter where it is looked for, and is always something different from what is expected.
Wow, was I surprised to wake up and find this on the main page of slashdot ;) This program originally written by two classmates senior project at Phillips Exeter Academy last spring. I remember playing around with an early version of it as well as checking out the web page (it hasn't really changed).
It appears as if one year and many cases of beer later, a lot of the kinks have been worked out. This program is great if you use it frequently enough for it to learn your preferences, or if you have a lot of downloaded music with malformed names that need correcting.
I would much rather see it as a plugin because otherwise I miss out on using my favorite software stereo expander and other DSP plugins.
-bcollier06
Another 'cutting edge playlist technology" would certainly be iTunes 'smart playlists.' You can match any number of criteria, including: genre, my rating, play count, artist contains *, and year to make sick and incredibly easy playlists. Oh and live updating, perfect for running a PlayCount: Zero and then having it add new unplayed tracks as you listen. At first I didnt notice it but after tinkering around I now wonder what I ever did before (but then again I get that feeling alot using apple products).
Check it out: http://www.apple.com/itunes/smartplaylists.html
---- The real Slashdot is still here. You just have to browse at -1 to read the comments.
Personally my listening tastes are based on much more than what type, genre, or style of music. Most songs that make it onto my playlists are because a close friend recommends it, and that song will always (for better or worse) bring out memories of that person.
*That* would be imposibile to substitute with a learning machine.
I also think for a lot of people, they like a song because it's already familiar (they've subconsiously heard it in a store or a few dozen TV ads), and suddenly hit that point where they like that song and actively persue it. Unless the machine learning system were somehow able to track everything the person heard, It couldn't substite this either.
_______
2B1ASK1
Does their logic system fail (or degrade) gracefully?
My tastes in music are varied wildly, and I often will select a small set of my MP3s based on mood; will this system be able to determine that when I code I like to listen to classical but when playing games, alternative music is the thing? Or will it just play it all at once, unaware of the correlative patterns that would link the timing of music selection -- just mashing everything together into one massive playlist? (Given that nothing, not even time of day, can help determine what I want to hear, I have some serious doubts their system can handle my preferences as well as I do.)
Truly "smart" programs often aren't really; the defining line I draw is how well they handle pathological cases. For example, have your dictation software transcribe the following sentence: "The village yeoman, Hugh, hewed two yews to use in the upcoming archery contest". I'm not guaranteeing it will choke, but it sure won't be pleased with you, despite the grammatical perfection of the sentence. However, any human hearing that will immediately make sense of it. Unsurprisingly, it is the simple algorythms (like naieve Bayesian statistics for spam filtering) that seem to best manage the complexity of real life while still failing gracefully.
Do you like Japanese imports?
There is a Nordic string quartet that plays metal songs like Metallica, etc.
http://www.spitfirerecords.com/Apocalyptica.htm
They rock, classically.
WWJD? JWRTFM!
I think the difference here is that it allows the listeners to choose what they want to listen to. As opposed to allowing the RIAA to justify it's promoting 10 artists who fit the 'hit profile' matching yesterday's 'stars'...
Mind you, i haven't been able to get Synapse running on my machine since first hearing about it near the start of the year (under XP, despite emailing the Synapse site for help, and after two reinstalls for non-connected problems) so i'll just stick with Foobar and Winamp 2...
Has anybody seen Antitrust?
yes, unfortunately.
This intelligent mp3 playback stuff seems like a really good idea to me; learning algorithms can be astonishingly effective, and even if it only when I hit "next track" halfway through a song it would help. However, I'm still looking for an mp3 player I like. I really like iTunes, but it's not perfect because I only have OSX on my laptop (Linux my desktops, where I want mp3 playback most).
Stuff I like about iTunes:
- The integrated management software, and how if I fancy listening to a particular artist/album, I just type their name in a little box to get realtime filtering
- It doesn't look like ass
- Neato en-mass ID3 tag editing options
- Fantastic visualistaions
- Neat metadata (last played, ratings, etc)
All I really want is a Linux player to do all this too. XMMS is small and neat but the playlist feels like a clumsy management interface after iTunes. GQMpeg seems fiddly, and xtunes is ugly. Can anyone suggest alternatives?Other features I want my mp3 player to have, but which I've never seen done:
You win again, gravity!
Here's a short version of what I want to hear: "Something that challenges my tastes."
Mostly, I listen to Radio 1190, the CU Boulder station. I'd say that I enjoy about 1 song in 4. I keep listening because I find out about local bands that I'd never hear, I hear indie bands (not just bands running on the "indie" branch of a major label) and I get DJs who love what they do. (here's where I give mad props to Milkman Dan)
What's your spiffy MP3-scanning-neural-network-plugin going to do with me, eh?
--
Seems like Adam D'Angelo is also the coder of buddyzoo . Anyone know if he has a homepage?
I am not sure about this but there seems to be a certain marketing push behind the project. The description of whos supposed to download it is hilarious. But all the machine learning stuff is hidden behind buzzwords. Why do they not put up a description of the algorithm or at least about its rational. I am involved in machine learning myself and most of my colleagues are extremely careful when using words like "the brain". And there is a usually a strong anticorrelation between the quality of work and the use of such buzzwords.
Googlefight "Slashdot Troll" against "BSD is dying" 303:229. BSD thus cant die.
that would be funny to have a website like this saying that your plugin would help them find music that they really like.
and then no matter what they listen to, it just always recommends Kenny Loggins songs.
If I had more free time and didn't already have a backlog of projects that I want to work on, I'd totally do that.
There are some odd things afoot now, in the Villa Straylight.
last.fm might be for you then.
Last.fm - join the social music revolution
You know you're too damn lazy when your computer has to decide what music you like and when to play it for you.
Business \Busi"ness\, n.;
A scam in which all people involved perceive as beneficial...
So now the RIAA can use this technology to say what you *would* have stolen, and add another fine with a lot of 0s =)
Why is this insightful?
If you don't run Windows, then you're not going to be able to run 100% of Windows software- there's just no way around it with things as they are.
Either suck it up and wait, or don't complain that you have to install Winamp to use a plugin specifically made for Winamp.
I like (and run) Linux as much as the next guy, but making comments like that as soon as software is released causes people to appear incredibly ungrateful. Cut the kids some slack, i'm sure your XMMS plugin will be done soon.
That is, say I have all my music appropriate tagged for artist, year, and music type (say through MusicBrainz or something similar). Maybe each track has it's own classification for those CDs that have 'various artists' or that the artist goes into a number of different styles, or whatever. You also have tracks from some CDs that are meant to be played without a break between them ("Dark Side of the Moon" for example has a couple of tracks like this).
Now, what I'd LIKE to do is to have my mp3 player look at the current song, then using a combination of random factors and some expert knowledge to select the next song to play as to have a nice subtle shift in music tone. Right now, the random feature in most music players could easily put up a grunge track right after a classic track, then into some 60s rock. This is not necessarily wrong, but it's a bit drastic.
I've considered a way to build up a finite state machine of the various musical types as typically defined by the MP3 ID tags, such that each type is a state, and you can only effectively move to very related types in the FSM. (A random factor with possibly some weighting would be used to determine which state to go to: if you are currently at "80s Synthpop", you have a good chance to go to "70s Pop" or "90s Pop" and a slight chance to move to "Electronica", for example). Such a FSM would need a lot of community suggestions, and maybe the end result would require some net-lookup table as to get the current FSM status.
So the program as I see it would look at this FSM, the artist, and other details (again, if there's a song that should follow it, it gets higher weighing), the program generates a weighted list of tracks to go to next, hits the RNG, and pulls out the next track. At which point it repeats itself. Various aspects, such as the weighting on the genre, artist, or play order, could be included. Additionally, the FSM should allow for a "completely unrelated" jump to a different genre that's not necessarily related to the current one, but with some chance as set by the user. Thus, with this program in play, if you have a good select of CD tracks, you can have the playlist progress slowly through genres, thus not having massive mood changes during the playlist, unless you have set it up as such.
I know there are programs that can generated weighted playlists from your input , such as LongPlayer, but this only looks at your ratings, and doesn't try to do anything tricky on the list otherwise.
Mind you, the way current MP3 players work, this would most likely be done by generating a playlist from your current song selection, which you then feed to winamp or whatever. A plugin that does this dynamically would be best, but I don't think a lot of these mp3 players have that type of ability builtin, and instead, you have programs like LongPlayer that call out to WinAmp to only play the song, LPlayer doing the playlist selection.
Does anyone know if such projects exist yet, or is this even something the community would be interested in?
"Pinky, you've left the lens cap of your mind on again." - P&TB
"I can see my house from here!" - ST:
Seems interesting, but there are problems which I don't see being overcome.
Say you spend most of your time playing Unreal Tournament 2003 with winamp in the background, and so this software learns that you like ripping violent music about 90% of the time.
Then you bring home the aforementioned Chinese girl and you put on some soft guitar music and just and things are becoming interesting, the song ends, and the idiot "Brain" decides a little Rob Zombie is just what you need, based off past experience.
Half the time I don't know myself what I want to listen to...It's too closely linked to my mood to be modeled in a purely statistical manner unless my mood levels out because of some wierdness (i.e. I smoke a lot of pot so I listen to a lot of Grateful Dead, or my significant other dumps me and I listen to really depressing breakup music for a month.) Otherwise, I'm going to be oscillating all day between different types of music, so something which may please me in the morning may get skipped bigtime by the afternoon.
But even THAT isn't reliable; I could be mellow, listening to mellow stuff on Friday morning, then WHAM! Major programming meltdown at a big client! I have to mobilize my tired brain cells with brain crushing rock/metal! A reversal of my otherwise "normal" progression from violent to mellow during the course of the day, which itself is often severly affected by how much I have to deal with my boss.
I don't see how such a thing could be truly accurate unless it has the facility to somehow read my mood. I can think of several ways to do this, but I doubt blush reflex scanners, heart rate/ekg monitors, voice stress monitors, or neural feedback chips are included with the software.
I'm not sure I'd want it to be accurate anyway. Seems like it would be too easy to get lulled into a pattern, with no new input. Kind of stale. Unless it can read a new song and figure out, statistically whether or not I would like it, which sounds more like a Turing test than anything else. Maybe worse; my S.O. can't figure out what the hell I like, so if a computer COULD, well, I'd probably finally be able to write off the opposite sex.
I'm not holding my breath.
ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
I typiclly stream my mp3 to multiple computers in the house.. a client server version of this software would be very usefull.. as to have a central stat list to recall.. of couse a linux version of the server side would be a must
I think i'll pass on this ;)
I can go from Slayer to Yanni to Pink Floyd to Iron Maiden to Brian Eno to David Bowie in the span of about 15 minutes.
I have a WinAmp plugin installed that detects if my mood ever moves to "Yanni". If it does, my computer then kicks me square in the nuts.
Viv
Gmail invites for ip
Perhaps we could parcel out the grammer/spelling nazi functions into focused solutions.
Somebody has obviously already taken then/than (which is a known high runner) as their special calling.
So, if you always wanted to be a spelling/grammer nazi, but didn't have time to police ALL of Slashdot, get involved in the new paradigm: focused spelling/grammer nazi activism!
Act fast before the cool ones are taken:
* there/their
* to/too/two
* you/your/you're
and the ever popular:
* it/its/it's
Hurry! Some other spelling/grammer nazi may take your choice!
No, I don't trust in god. He'll have to pay up front, like everybody else.
I want to offer the following information about the project. The majority of development effort went into building the Brain. The Synapse player is just something we threw together to get the most from the Brain's functionality. We will probably never port Synapse to other systems since more than enough players already exist. Synapse does work under Wine though. We do have plans to bring the Brain to other systems, and we've begun by writing a plugin for Winamp 2.x, which you can get here. An XMMS plugin is coming soon, and then hopefully there will be one for iTunes in the near future.
And a note about privacy. None of your musical listening data will be available to anyone other than you. We hope to use massive amounts of data to aid in analysis, but your individual data will never be seen by anyone else.
I downloaded and installed Synapse. Damn thing scanned all my local and network shares for files, giving me no option to manually specify. Since I have lots of drives, this took a good ten minutes.
What's worse, the app stayed on top of all my other apps, smack in the middle of my primary monitor, with no way to move it. So, I had to work on my secondary while it chugged away.
Ok, fine. Told it where the MP3s were, and it imported all the song info. I believe I was allowed to move this window, although I can't totally remember.
Fired it up. Black on dark blue background. Um, tough to read to say the least. Switched to the 'playlist' screen and tried dragging n dropping an m3u playlist into the screen, a la winamp. No dice, wouldn't load.
Ok, can't find any place to manually add files without exploring the little music database it built. Open the database tree and, holy crap, what a piece of shit. I wanted to listen to Linkin Park's Meteora CD, so I scroll waay down to linkin park, and expand the tree. Ugh. Flat file listings, by song name. Crap. Can't find Meteora.
Now, I know that this is kind of a different MP3 player, and I had every intention of RTFMing before really using it, but come on. It should at least be intuitive enough for me to be able to load some songs without having to read the instructions.
I closed Synamps and fired Winamp 3 up. Maybe I'll go back and try it out again, but I'm not as interested as I was when I started.
Why in Gods Name do they need to open up TCP port 8541 to give me control over my own songlists when winamp is sitting there staring me in the face?
.dll in my plugins directory and manually delete it. Only "Black Jesus" knows where else this thing installed itself in my system.
The uninstall did NOT work. I had to find the
I felt SO stupid for spending time on this. "Brain" is either some very bad engineering or it's a latent trojan.