My solution to the same problem was to let the Baysian filter do its job. Save your spam in a folder (instead of deleting it) and when you have several hundreds teach SpamAssassin how to deal with it.
From the console you can type:
sa-learn --ham /home/e-smith/files/users/[your-user-name]/Maildir/cur/*
sa-learn --spam /home/e-smith/files/users/[your-user-name]/Mail/junkmail/cur/*
If you save real mail in other folders, you could also teach SA about those emails. If you make a mistake with a folder or a few mails just rescan them with the right rule and they will be recategorized.
Once the Baysian filter has something to work with, it works like magic. I receive lots of mail which is only sorted as junkmail due to the 5.4 points from the filter. Excellent.

I have also made a small cronjob which scans a number of folders daily but that's just because I'm lazy.
/Jens