Preheat the oven to 350 F and line a muffin tin with paper liners.
In a medium bowl, whisk together the flour, baking soda, baking powder, ½ teaspoon of salt, cinnamon, ginger, and nutmeg.
In another large bowl, combine the granulated sugar, brown sugar, oil, 1 ½ teaspoons of vanilla, and milk. Add the eggs one at a time until well combined.
Gradually add the dry ingredients to the wet ingredients. Fold in the carrot and walnuts.
Divide the batter between the cupcake liners, about ⅓ cup in each, or ¾ full.
Bake the cupcakes for 20 to 25 minutes, until a toothpick inserted comes out clean. Let them cool for 5 minutes before transferring to a wire rack to cool completely.
For the frosting, beat together the cream cheese and butter until smooth and creamy. Add ½ teaspoon of vanilla and ¼ teaspoon of salt, and beat for another 1 to 2 minutes.
Gradually add in the powdered sugar until your desired consistency is reached. Frost the cooled cupcakes and decorate with more chopped walnuts, if desired.
Serve the cupcakes immediately, or store them in the refrigerator for up to 5 days.