How is Walpurgisnacht's appearance predicted? We know that throughout the series the Puella Magi can only search for witches and don't actually know where they will appear ahead of time (Mami named places she searched and had to trace the witch with her Soul Gem), unless they get lucky and find a grief seed of a newborn witch (like the one Madoka and Sayaka found at the hospital).

Homura was able to know where Walpurgisnacht would appeared because she had prior knowledge from coming from the future.

However, in the first timeline, Mami knew Walpurgisnacht was coming and was training Madoka in preparation for the battle. Is it explained how she or Madoka knew?
As a matter of fact, Kyoko asked Homura the same question regarding Walpurgisnacht's appearance, to which Homura responds with a single word:


  Statistics.


Well... I think you can take Akemi Homura's word for it. She has experienced so many timelines, planning and fighting the Walpurgisnacht witch, gradually learning more and more about it every time.

I suppose she's done a lot of data analytics about the witch with all the information she has collected throughout the timelines! Graphs, annotated sketches of the Walpurgisnacht witch and maps of Mitakihara city feature at Homura's residence. Also note that among the timelines shown, all of them place the fight scene of magical girls vs the Walpurgisnacht witch in one of the lakes/water bodies of Mitakihara city. 

Here's Homura indicating the location of the witch...



Edit:

I would suggest that Mami knew about Walpurgis in the first timeline of episode 10 only because Kyubey said so. After all, the Incubators do plant grief seeds across the city, which hatch into witches. In fact, I wouldn't be surprised if the Walpurgisnacht was the work of the Incubators. In all their advanced technology and magic, the Incubators may even fabricate grief seeds which has the essence of an agglomerate of regular witches...