I have had success with the challenge question plugin. I manually create the questions that a bot couldn't figure out. Such as, "what sport uses a basket and an orange rubber ball?" I don't use math problems or common phrases.
I have yet to have bot spam from it. Had a couple people manually spam, but it's easy to clear those out quickly compared to the bots flooding comments with spam.