Preheat the oven to 400 degrees. Scrub the sweet potatoes, and pierce each one with a fork. Place the potatoes on a baking sheet lined with foil. Bake for about 45 minutes to an hour until they are tender when pierced with a fork.
Once the potatoes are cooked, remove from oven and cool for about 5-10 minutes. Remove the skins and place potatoes in a large mixing bowl. I like to use my stand mixer for this, so I add them to my stand mixer bowl. You can also just use an electric handheld mixer with a large mixing bowl. Beat the sweet potatoes until smooth.
Add the milk, oil, honey, egg, cinnamon, nutmeg, ginger, salt, and vanilla to the bowl with the potatoes. Beat with the mixer until the mixture is smooth.
Grease a 9" x 13" baking dish, and transfer the sweet potato mixture to the dish, spreading it evenly with a spoon.
Reduce the oven temperature to 350 degrees.
Make the pecan topping. Roughly chop the pecans, and combine all the topping ingredients in a separate small or medium-sized mixing bowl, and mix together. Sprinkle topping over the casserole.
Bake at 350 degrees for 40-45 minutes, or until bubbly and beginning to brown around the edges.