Some forums have a policy that new users' first 5 posts or so have to be approved by a mod before showing up. This may mean a lot of work for the mods though so a user based approval might be a better idea.
You could have a forum called spam or initiation (so that new users don't feel bad) and then all posts made by a new user go there. When that user gets 3 positive votes, his posts get unblocked from the spam forum. Otherwise the user's posts just stay in there and are deleted within a few days and obviously, it's only people with > 100 or so post count that can vote to unblock.
This means AI doesn't need to even ban spammers because they won't be able to post anywhere anyway. Unfortunately it still means someone has to browse through the spam to rescue the newbies.
Originally Posted by segovius
I think Hardeehar's (?) suggestion of a 'report spam' button is a winner - preferably with a 5 vote auto deletion
The red exclamation mark is meant for this but it's not very clear that's what it does. A deletion would also have to have a post count limit on who could vote or someone could easily register 5 accounts and go around deleting everyone's posts.