I used a triac in my homebrew fan speed control. The fan was a 'squirrel cage' type (mounted on a wood stove). The type is important. As I understand it, most fans cannot be speed-controlled by a triac, with their rpm dependent on the frequency of the AC supply.
If you simply limit power (as with a triac), the normal fan tries to spin at full frequency. When you continue to reduce power, there comes a point where it doesn't spin at all. I guess that's when you get only the humming noise.
Ceiling fans are a different animal. You may be able to control one of those with your pic.