Get your carpet washer and add the correct amount of carpet cleaner and warm water. Wash up the hair dye as soon as you spill it. You may have to go over the spot a few times. This should get it up all the way.
Mix a cup of hot water with one spoonful of dish soap. Pour it over the hair dye stain. Take a white washcloth (colored washclothes will bleed into the carpet) and lay it on the stain. Press lightly. Wring out the wash rag and repeat. Keep the area wet until all of the hair dye has been transferred to the washcloth.
Use a vinegar water solution to get the hair dye up if the hair dye has a bad smell. Vinegar is a good cleaning agent that removes smells and won't damage your carpet. Use 1/4 cup of vinegar and 3/4 cup of water. Mix and use it to soak the stain. Blot up with a white washcloth.
Use some watered down hydrogen peroxide on the stain. Use half water and half peroxide. Only use this after you have cleaned the area with soap and water without getting up all of the stain. Get a spray bottle to soak the area. Let it work for 5 minutes and then use dry, white washclothes or towels to blot up the peroxide solution.
Dye your Berber carpet back to it's original color if you cannot successfully remove the stain. Take a picture of the color and then by a fabric dye that is close enough to it to pass as the original. Follow the instructions on the fabric dye bottle and dye your hair stain with the fabric dye.