First, you have a huge number of nominal categories (1000 classes). If you need a simple answer regardless of dimensionality and complexity, you just need to use one-hot encoding and sigmoid activation function in the last layer for the 1000 neurons there. But you will end up with a huge sparse output matrix.
If you look for an optimized solution and your purpose is to train the model efficiently, I recommend you to use binary encoding to encode the 1000 classes into 10 classes, instead. You can now use 10 sigmoid neurons in the output layer. If the result is one class meaning the absence of other classes because the output should be always one class.