Skip to content

Instantly share code, notes, and snippets.

@ImadDabbura
Created September 20, 2018 15:26
Show Gist options
  • Save ImadDabbura/4332cd2ae4847ed65f26dea098e4a0e7 to your computer and use it in GitHub Desktop.
Save ImadDabbura/4332cd2ae4847ed65f26dea098e4a0e7 to your computer and use it in GitHub Desktop.
def initialize_parameters_zeros(layers_dims):
np.random.seed(1)
parameters = {}
L = len(layers_dims)
for l in range(1, L):
parameters["W" + str(l)] = np.zeros(
(layers_dims[l], layers_dims[l - 1]))
parameters["b" + str(l)] = np.zeros((layers_dims[l], 1))
return parameters
def initialize_parameters_random(layers_dims):
np.random.seed(1)
parameters = {}
L = len(layers_dims)
for l in range(1, L):
parameters["W" + str(l)] = np.random.randn(
layers_dims[l], layers_dims[l - 1]) * 10
parameters["b" + str(l)] = np.zeros((layers_dims[l], 1))
return parameters
def initialize_parameters_he_xavier(layers_dims, initialization_method="he"):
np.random.seed(1)
parameters = {}
L = len(layers_dims)
if initialization_method == "he":
for l in range(1, L):
parameters["W" + str(l)] = np.random.randn(
layers_dims[l],
layers_dims[l - 1]) * np.sqrt(2 / layers_dims[l - 1])
parameters["b" + str(l)] = np.zeros((layers_dims[l], 1))
elif initialization_method == "xavier":
for l in range(1, L):
parameters["W" + str(l)] = np.random.randn(
layers_dims[l],
layers_dims[l - 1]) * np.sqrt(1 / layers_dims[l - 1])
parameters["b" + str(l)] = np.zeros((layers_dims[l], 1))
return parameters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment