I honestly think Michigan wasn't mentally prepared for the game and its particular setup. Minnesota is always getting up for Michigan home games. It's not their local rivalry but it's a huge huge game for them, whereas for Michigan it's just a Big Ten game.
Add the fact it's a night game, crowd pumped up on Halloween, emotional coach retiring factor. Michigan coming off a heartbreaking loss they could stew on for 2 weeks.
I hope Harbaugh learned a lesson here because you can't go on the road into a conference/rivalry night game and expect "business as usual". Michigan isn't so great and Minnesota isn't so bad for it to work out like that.