# What is weights in perceptron

I am just diving into machine learning and started with learning artificial neural networks. So on learning about perceptron I stucked on wording "weights". Is it rate of how much input item matched? Please explain me what is weights in perceptron.

Using this picture I found online, you can see that the perceptron creates $y$ which is just the weighted sum of the inputs multiplied by an activation function (in the image it's a step function). So the weights are just scalar values that you multiple each input by before adding them and applying the nonlinear activation function i.e. $w_1$ and $w_2$ in the image.

So putting it all together, if we have inputs $x_1$ and $x_2$ which produce a known output $y$ then a perceptron using activation function $A$ can be written as

$$y' = \sum{A(x_i * w_i)}$$

The values of these weights are what get trained in the perceptron in such a way as to minimise some error metric between $y$ and $y'$

Imagine you have two nodes in a perceptron: node A and node B. These nodes are connected: A projects a connection to B:

A -------------> B


So let's say A has an activation value of 0.5. The weight determines how much that value is changed before it gets to B. So let's say the weight is 4.

        x4
A -------------> B
0.5              ?


So basically, to calculate how much B gets from A, we multiply the value of A with its corresponding weight: 0.5 x 4 = 2.

        x4
A -------------> B
0.5              2


So B gets a value of 2 from A :)