Frizz is normally caused by static electricity. Dry air makes it worse, because the surface conductivity to drain the charge away is lower.
Your problem sounds like something else. The cross section of your hair is not round, or symmetric, so it has different curvature for different humidity values. It may also have twist, which varies as a function of humidity. That would also cause it to move out of place.
The energy, or driving force here is the "energy of hydration." Water absorption and adsorption occurs with an energy release. It takes energy to drive the water off.
Sounds reasonable.
My hair is a very effective humidity barometer. Individual strands make perfect coils.
Why do some of them twist clockwise and some counter clockwise?