You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

LinearRegression.md 1.1 kB

1234567891011121314151617181920212223242526272829303132
  1. # Chapter. Linear Regression
  2. ```csharp
  3. // Prepare training Data
  4. var train_X = np.array(3.3f, 4.4f, 5.5f, 6.71f, 6.93f, 4.168f, 9.779f, 6.182f, 7.59f, 2.167f, 7.042f, 10.791f, 5.313f, 7.997f, 5.654f, 9.27f, 3.1f);
  5. var train_Y = np.array(1.7f, 2.76f, 2.09f, 3.19f, 1.694f, 1.573f, 3.366f, 2.596f, 2.53f, 1.221f, 2.827f, 3.465f, 1.65f, 2.904f, 2.42f, 2.94f, 1.3f);
  6. var n_samples = train_X.shape[0];
  7. ```
  8. ```csharp
  9. // tf Graph Input
  10. var X = tf.placeholder(tf.float32);
  11. var Y = tf.placeholder(tf.float32);
  12. // Set model weights
  13. // We can set a fixed init value in order to debug
  14. // var rnd1 = rng.randn<float>();
  15. // var rnd2 = rng.randn<float>();
  16. var W = tf.Variable(-0.06f, name: "weight");
  17. var b = tf.Variable(-0.73f, name: "bias");
  18. // Construct a linear model
  19. var pred = tf.add(tf.multiply(X, W), b);
  20. // Mean squared error
  21. var cost = tf.reduce_sum(tf.pow(pred - Y, 2.0f)) / (2.0f * n_samples);
  22. // Gradient descent
  23. // Note, minimize() knows to modify W and b because Variable objects are trainable=True by default
  24. var optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost);
  25. ```

tensorflow框架的.NET版本,提供了丰富的特性和API,可以借此很方便地在.NET平台下搭建深度学习训练与推理流程。