--- a +++ b/combinedDeepLearningActiveContour/functions/initializeParameters.m @@ -0,0 +1,17 @@ +function theta = initializeParameters(hiddenSize, visibleSize) + +%% Initialize parameters randomly based on layer sizes. +r = sqrt(6) / sqrt(hiddenSize+visibleSize+1); % we'll choose weights uniformly from the interval [-r, r] +W1 = rand(hiddenSize, visibleSize) * 2 * r - r; +W2 = rand(visibleSize, hiddenSize) * 2 * r - r; + +b1 = zeros(hiddenSize, 1); +b2 = zeros(visibleSize, 1); + +% Convert weights and bias gradients to the vector form. +% This step will "unroll" (flatten and concatenate together) all +% your parameters into a vector, which can then be used with minFunc. +theta = [W1(:) ; W2(:) ; b1(:) ; b2(:)]; + +end +