Looks like you are using different masks for tackling the hair separately, which is a good start. When you say there is noise in your hair, do you mean there is heavy film-like grain over it, or do you mean the actual alpha is noisy and chattering? If it’s the alpha matte noisy and chattering, that is because there is too much noise in your image, and you need to de-noise it before pulling the key. If this softens detail more than you’d like, you can use the alpha as a track matte on a non-denoised version after keying it.
If you have $99 to spare, I highly recommend Neat Video. It is the absolute best denoiser out there.
https://www.neatvideo.com/
If your noise in the hair is just film-like visible grain, it’s probably because of spill suppression. Keylight is sometimes very aggressive with spill suppression. The green noise in your image thus gets suppressed down to pure black, even if the surrounding noise isn’t pure black. This causes excessive suppresion, and Keylight is notorious for this. If you twril down Screen Matte under the Keylight controls, you will see a drop down called “Replace Method” By default this is “Soft Colour” try switching it to “Hard Colour” to see if this gets rid of noise.
As others have mentioned, Key Correct comes with nice tools for dealing with tricky problems. You may find this useful. You will notice that when using Primatte, it’s very difficult to get rid of green spill, because Primatte is harsh in it’s despill methods, and actually adds magenta to compensate it. This is the incorrect method for professional spill suppression. That said…
Recently I released a plug-in which I co-developed with a buddy of mine, called Spill Slayer, which Steve Brame posted above. Because I oversaw its development, I promise you that it is bar none the best Spill Suppression tool ever made for Adobe After Effects. That is not just me trying to sell it to you, that is a fact. The entire reason I developed it was because I found the tools in AE already lacking, and I wanted it for myself. I made it as an internal project, and then after many requests, made it public.
You can look at it here…
https://aescripts.com/spill-slayer/
Please answer my questions above, and perhaps we can help you further. Thanks.