Since spammers don't usually highlight the fact that their mail is unwanted, unsolicited ads, SpamAssassin has to try to work it out -- and it's not always easy to do. And it's only a computer program, so it does get it wrong sometimes -- even humans do.
We use a huge database of mail traffic, and analyse the hit rates of each rule to maintain quality and try to ensure that they only hit spam (as much as possible, at least). Rules that hit non-spam get very low scores.
Tip: examine exactly which rules were triggered. Take careful note of the _points_ listed beside each rule name -- low-scoring rules do not make much of a difference; it's the ones with high scores that need to be avoided.
If you are the mail sender, this may help: AvoidingFpsForSenders