Preheat the oven to 350 F.
Peel the sweet potatoes and cut them into chunks. Put the chunks of sweet potato in a large saucepan and cover with water. Add 1 teaspoon of salt and place the pan over high heat. Bring the potatoes to a boil. Reduce the heat to medium-low and cover the pan. Cook the sweet potatoes for about 20 minutes, or until very tender. Drain and mash.
In a large bowl, combine the mashed sweet potatoes, granulated sugar, 1/4 cup of melted butter, egg, coconut, milk, and vanilla; stir to blend thoroughly.
Pour the sweet potato filling into a buttered 1 1/2-quart casserole dish.
In another bowl, combine the light brown sugar, pecans, flour, 3 tablespoons of butter, and salt, mix until crumbly. Sprinkle the mixture over the filling.
Bake the casserole for 30 minutes.