Well, if I'm building my tactics around a specific unit type, I need a hero with bonuses for that unit. And if that hero already has a skill that might be completely useless to me, then I'm also losing a valuable slot for something useful. After all, there are only three branches. Warrior, Mage, and Scout – the first two are combat-oriented, and the third is for logistics and scouting. If I decide to devise some super-original tactic focusing on a specific unit and one of the two combat paths, then the lack of a slot can be very annoying.
If you're building a tactic around a particular unit, a specialist in that unit isn't necessary, and against a smart opponent, it's even undesirable due to predictability. Because in Heroes, every unit has a counter.
As for useless perks, that's just subjective. There won't be objectively useless perks. Let's say you don't like Intelligence, but you need a specialist – what's so bad about that? The benefit is balanced by the cost (these subjectively unnecessary perks), which is what makes it more interesting than a hero who is unambiguously good with no possible alternatives. Plus, it's harder to force yourself to use unnecessary perks than necessary ones – and that's a tactical advantage.
Furthermore, many specializations in Heroes 5 are unbalanced, and heroes will be balanced by different starting upgrades and stronger or weaker perks.