5 comments

[ 2.9 ms ] story [ 18.8 ms ] thread
Well thats a clickbait title... its nowhere near 10 lines
It compiles and runs fine with g++, but when I try Microsoft's cl.exe version 19.00 I get messages such as

xneural.cpp(22): error C2398: Element '1': conversion from 'double' to 'float' requires a narrowing conversion

referring to the code

  vector<float> X {
  	5.1, 3.5, 1.4, 0.2,
  	4.9, 3.0, 1.4, 0.2,
  	6.2, 3.4, 5.4, 2.3,
  	5.9, 3.0, 5.1, 1.8
  };
If I replace <float> with <double> the code compiles and runs with cl.exe.
Or transform the numbers to floats, i.e., "5.1" -> "5.1f".
> The core component of the code, the learning algorithm, is only 10 lines

AKA gradient descent in 10 lines of C++

A neural network in 10 lines of C++ code... Plus another 200 lines of C++ code.

AKA: My "lines of code" count is super tiny if I don't include function definitions!