Correct, we generally say that the output of a neuron is a = g(Wx + b) where g is the activation function (sigmoid, tanh, ReLU, ...).
Explanation :
Correct, remember that a np.dot(a, b) has shape (number of rows of a, number of columns of b). The sizes match because :
"number of columns of a = 150 = number of rows of b"
Explanation :
A is correct
Explanation :
Explanation :
Indeed! In numpy the "*" operator indicates element-wise multiplication. It is different from "np.dot()". If you would try "c = np.dot(a,b)" you would get c.shape = (4, 2).
Explanation :
Yes! This is broadcasting. b (column vector) is copied 3 times so that it can be summed to each column of a.