How do activation functions help neural networks learn complex patterns from data? What are the differences between ReLU and Sigmoid functions, and where are they commonly used? How can the choice of activation function affect training speed, gradient behavior, and model performance?