Like someone else said, I just have a contact called "Junk" that goes straight to VM for all calls I feel are junk. They typically don't leave messages so it's not a problem, but once in a while I'll have my VM icon show up without any ringing.
I think either Whitepages or 800notes has an app for identifying junk. If it's 800notes, that would probably be worthwhile since they do a good job of ID'ing junk based on user reports.
I use 800notes to ID calls at work (then block them with my phone zapper software). Presumably, the app would work by automatically blocking all calls after a certain amount of people hit a 'this is spam' button, and maybe the a real person from the app verifies it, since I've seen annoying, but not spam, calls get tagged as spam.