Answers.Body: <p>A &quot;software library&quot; is a codebase that includes many commonly used functions/algorithms, you do not need to write the same function again if you &quot;import&quot; the library.</p>
  <p>In practice, practitioners/researchers don't often code the nitty gritty details of well-used algorithms, they just use existing libraries such as sklearn or TensorFlow that already has an existing implementation.</p>
  <p>In the case of sklearn, ignoring some details, you can create a muti-layer perceptron in this line of code:</p>
  <pre><code>&gt;&gt;&gt; clf = MLPClassifier(activation = 'relu', alpha=1e-5, hidden_layer_sizes((5,2))
  </code></pre>
  <p>...in which <code>clf</code> is an &quot;object&quot; that refers to the neural network, <code>MLPClassifier</code> is a function provided by sklearn that &quot;creates&quot; a neural net depending on the parameters provided.</p>
  <p>In this case, the parameters provided are that the activation function is ReLU, where the network has two layers, with the first having 5 nodes, and the second has 2 nodes.</p>
  <p>All other parameters that are not explicitly provided are set to a default value, in this case, the learning rate, among others.</p>
  <p>It should be noted that this is not complete yet, we still have not completed training. Luckily, this is as simple as:</p>
  <pre><code>&gt;&gt;&gt; clf.fit(X, y)
  </code></pre>
  <p>Where <code>X</code> and <code>y</code> are some array-shaped data/target set.</p>
  <p>I recommend sklearn as i think its more beginner friendly.</p>
  <p><a href="https://scikit-learn.org/stable/getting_started.html" rel="nofollow noreferrer">https://scikit-learn.org/stable/getting_started.html</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-08-19T06:14:38.193Z
Answers.LastActivityDate: 2020-08-21T04:09:26.730Z
Answers.LastEditDate: 2020-08-21T04:09:26.730Z
Answers.UserDisplayName: k.c. sayz 'k.c sayz'
Body: <p>I am curious to know how neural networks are built in practice.
  Are they hand coded using weight matrices, activation functions etc OR are there ways to build the NN by mentioning the number of layers, number of neurons in each layer, activation to be used, etc as parameters?</p>
  <p>Similar question on training, once built is there a ‘fit’ method or does the training need to be hand coded?</p>
  <p>Any reference for understanding these basics will be of great help.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-08-20T10:17:27.883Z
Comments.Text: You know about a "fit" method and you're asking how neural networks are implemented in practice? This is strange because it seems like you are aware of common libraries to build NNs, but, at the same time, you're asking this very basic question. It's not clear to me the purpose of this question then.
Comments.UserDisplayName: nbro
Tags: <neural-networks>
Title: How are neural networks built in practice?
UserDisplayName: S Datta
ThreadText: # How are neural networks built in practice?
  
  (Asked by: username_0 on 2020-08-19)
  
  I am curious to know how neural networks are built in practice.
  Are they hand coded using weight matrices, activation functions etc OR are there ways to build the NN by mentioning the number of layers, number of neurons in each layer, activation to be used, etc as parameters?
  
  Similar question on training, once built is there a ‘fit’ method or does the training need to be hand coded?
  
  Any reference for understanding these basics will be of great help.
  
  **Tags:** neural-networks
  > **Comments:**
  > **username_1**: You know about a "fit" method and you're asking how neural networks are implemented in practice? This is strange because it seems like you are aware of common libraries to build NNs, but, at the same time, you're asking this very basic question. It's not clear to me the purpose of this question then.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2020-08-19. Score: 3
  
  A "software library" is a codebase that includes many commonly used functions/algorithms, you do not need to write the same function again if you "import" the library.
  In practice, practitioners/researchers don't often code the nitty gritty details of well-used algorithms, they just use existing libraries such as sklearn or TensorFlow that already has an existing implementation.
  In the case of sklearn, ignoring some details, you can create a muti-layer perceptron in this line of code:
  >>> clf = MLPClassifier(activation = 'relu', alpha=1e-5, hidden_layer_sizes((5,2))
  
  ...in which clf is an "object" that refers to the neural network, MLPClassifier is a function provided by sklearn that "creates" a neural net depending on the parameters provided.
  In this case, the parameters provided are that the activation function is ReLU, where the network has two layers, with the first having 5 nodes, and the second has 2 nodes.
  All other parameters that are not explicitly provided are set to a default value, in this case, the learning rate, among others.
  It should be noted that this is not complete yet, we still have not completed training. Luckily, this is as simple as:
  >>> clf.fit(X, y)
  
  Where X and y are some array-shaped data/target set.
  I recommend sklearn as i think its more beginner friendly.
  https://scikit-learn.org/stable/getting_started.html
  
  
  ---
  
  