Preheat oven to 425 degrees. Toss sweet potatoes in 3 tablespoons of oil and 1/2 teaspoon of salt. Arrange them on a sheet pan. If the potatoes are crowded, divide them between 2 pans. Place potatoes in the oven and roast for 30 minutes, tossing every 10 to 15 minutes. Remove from the oven. In a large pot over medium heat, sauté the onion and apple seasoned with a pinch of salt until the onion is translucent and the apple is slightly soft, about 5 to 6 minutes. Add the ginger and garlic. Saute for about a minute more then add the roasted sweet potaoes. Add all the spices and the salt then pour in broth. Bring to a boil then reduce heat and simmer for 30 minutes. Use an immersion blender to purée the soup. If you don't have an immersion blender, transfer the soup, carefully, to a food processor or blender. Serve soup hot, topped with toasted coconut flakes and toasted, sliced almonds.