I think this is a great use case for some algorithm to help you combine tags ( by recognizing synonyms/plurals, text summarization, crowd-spurcing, something else?). Then it could keep you "on the rails" when tagging and periodically ask if you want to combine tags that seem similar.
Perhaps, but after even just a few relatively short attempts to start organizing some of my files with tags I don't think this would be sufficient. I found the meaning of tags frequently started to drift. What I cared about and why just wasn't that consistent. Never mind being consistent with hair-splitting judgement calls in categorization.
And the more you tag, the more difficult it is to fix. Either you retag everything to fit the new standard or you accept that trying to retrieve things by tag will return some weird set defined by the intersection of your changing definition over time and the time at which you applied the tag.
I don't doubt a more structured and principled approach would help, but I found it just ended up soaking up tons of time, and thought, without actually providing much back.