Clean and devein shrimp on both sides. Bring to a quick boil and drain, then run under cold water to cool and then dry thoroughly with paper toweling and chop into small pieces. Set aside until the batter is made.
In a large mixing bowl, combine the flour, baking powder, milk, eggs, salt, pepper and garlic. Mix thoroughly with a rubber spatula. Add the shrimp, onions, scallions, and celery and mix until all ingredients are well combined.
In a large frying plan, on medium to high heat, add the vegetable oil until the oil is hot. Drop the batter by tablespoons into the oil and cook a couple of minutes, flipping once until golden brown and puffed on both sides, about 6 minutes total.
With a slotted spoon, remove the cakes and place on a tray lined with paper towels to blot off the excess oil. When all the shrimp cakes have been cooked and drained, they can be kept warm in the oven covered with aluminum foil until ready to serve.