More heads might get you more generalization, and I suggest you try it out, but there’s a chance it will not yield better results.
For example (true story)
I’ve created a model that uses 4 heads and adding more heads actually degraded the accuracy, tested both in pytorch implementation and in another implementation (that adds more parameters for more heads).
Also reducing heads hurts accuracy, so 4 is the magic number for my model and data.
Num heads is a parameter that you need to explore that fits best to the problem you try to solve.
Roy