Implement a simple neural network in Python.
Asked in the technical interview stage. Implement a fully connected network with one hidden layer to classify binary examples. Use sigmoid activation, batch gradient descent, and backpropagation.
def train_neural_network(X, y, hidden_size, epochs, learning_rate):
X is an n x d list of numeric feature vectors, and y contains binary labels. Return a list of predicted labels after training. Initialize weights deterministically so results are reproducible.
def train_neural_network(X, y, hidden_size, epochs, learning_rate):