Skip to content

Instantly share code, notes, and snippets.

@sbugrov
Created July 20, 2017 05:34
Show Gist options
  • Save sbugrov/ca7dda4b53f8f5e6e367209054c02aa1 to your computer and use it in GitHub Desktop.
Save sbugrov/ca7dda4b53f8f5e6e367209054c02aa1 to your computer and use it in GitHub Desktop.
int main(int argc, const char * argv[]) {
for (unsigned i = 0; i != 10000; ++i) {
vector<float> layer_1 = sigmoid(dot(X, W0, 4, 2, 4 ) );
vector<float> layer_2 = sigmoid(dot(layer_1, W1, 4, 4, 1 ) );
vector<float> layer_2_delta = (y - layer_2) * sigmoid_d(layer_2);
vector<float> layer_1_delta = dot(layer_2_delta, transpose( &W1[0], 4, 1 ), 4, 1, 4) * sigmoid_d(layer_1);
W1 = W1 + dot(transpose( &layer_1[0], 4, 4 ), layer_2_delta, 4, 4, 1);
W0 = W0 + dot(transpose( &X[0], 4, 2 ), layer_1_delta, 2, 4, 4);
};
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment