5.6.7 · D1Machine Learning (Aerospace Applications)

Foundations — Feedforward network — forward pass

1,930 words9 min readBack to topic

Before you can read a single line of the forward pass note, you need to already own the meaning of a handful of symbols. The parent note uses them; here we build them, one at a time, each from the picture it stands for. If you can pass the checklist at the bottom, the parent note will read like plain English.


1. A number and a list of numbers (the vector )

Start with the simplest object: a single number, like the airspeed . A sensor gives you one number.

But an airplane has many sensors at once — airspeed, throttle, angle-of-attack. Stack those readings into a column, one on top of the other. That stack is a vector. We write it in bold, , to say "this is a whole list, not one number".

Look at the figure. The three numbers become three stacked boxes. That vertical stack is the picture of . The little symbol next to it is read "a list of real numbers" is the whole number line (any decimal, positive or negative), and the superscript counts how many slots the list has. So means "three real numbers stacked".

Subscripts pick a slot. is the number in slot 1, in slot 2. The subscript is a street address inside the list.


2. A grid of numbers (the weight matrix )

Now, the whole point of a neuron is to mix the input numbers — take some of the airspeed, some of the throttle, add them up. "How much of each" is a set of dials called weights.

One neuron reading 3 inputs needs 3 dials. If we have 4 neurons, we need dials. Arrange those dials in a grid: one row per neuron, one column per input. That grid is a matrix, written bold and capital: .

The picture shows a grid. The red entry sits in row 2, column 3. We name it where (the neuron it feeds into) and (the input it comes from). Read the subscripts right-to-left: "from input into neuron ." That ordering feels backwards but it is exactly what makes the matrix multiply work in the next section.


3. Multiplying a matrix by a vector (the core engine)

Here is the one operation the entire forward pass leans on. We have a grid and a list , and we want the mixed result .

The rule, in words: to get the number in output slot , walk along row of the matrix and along the input list at the same time, multiply the pairs, and add them up. That "multiply-pairs-and-add" move is called a dot product.

Follow the red row in the figure. Each dial in that row lines up with one number in the input column. Multiply each pair (red arrows), then sum the three products — that single sum is output slot . Repeat for every row and you have filled the whole output list.

Shape rule (memorise the click). A matrix times a column gives a column. The inner numbers () must match — that is why the matrix has as many columns as the input has slots. When they match, they cancel and leave the outer numbers as the output shape.

Recall Check the shape

is , input is . What shape is the output? Answer ::: — four numbers, one per neuron.


4. Adding a bias (the vector )

A weighted sum can only produce when the inputs are . But a neuron might need to be "already leaning on" or "already leaning off" regardless of input. The bias is that built-in lean: a single number added to each neuron's sum.

So the full mixing step is : mix, then shift. In the picture from section 3, the bias is simply one extra number dropped into each output slot after the dot product.


5. The bending curve (activation )

If all a network ever did was , stacking layers would be pointless — one big grid could do the same job (the parent note proves this collapse). Straight-line mixing can only draw straight relationships. Real aerospace behaviour (stall, shock) is curved. So after every mix we bend the numbers with a nonlinear function (Greek "sigma", lowercase).

The red ReLU curve is dead flat for negative inputs (the neuron "doesn't fire") then rises as a straight line for positives. The black tanh curve flattens at and no matter how huge the input — a natural "confidence saturates" shape. Both are curves, not lines, and that is the whole reason they exist.


6. Layers, and the superscript

The parent note writes , , . The superscript in parentheses is a layer label, not a power. means "the activations of layer 1", never " squared".


How it all feeds the forward pass

feeds next layer

Number and vector x

Matrix vector product

Weight matrix W

Pre-activation z equals Wa plus b

Bias vector b

Dot product and sum

Activation sigma bends z

Layer output a

Layer index ell

Final output y equals a at layer L

Read it top to bottom: numbers become vectors, weights become a matrix, the two meet in a matrix–vector product, bias shifts the result, the activation bends it, and that output becomes the next layer's input — looping until the last layer hands back the prediction .


Equipment checklist

Cover the right side and answer aloud. If any one stumps you, reread its section before opening the parent note.

What does bold mean and what shape does it have?
An ordered column list of numbers (a vector); shape , one slot per input feature.
What does read as?
"A list of real numbers" — is the number line, counts the slots.
In , which index is the destination neuron?
(the row) is the neuron it feeds into; (the column) is the input it comes from.
What shape must have?
— rows = neurons in this layer, columns = inputs from the previous layer.
How do you get output slot of ?
Dot product of row with : multiply matching pairs and sum them.
What does instruct you to do?
Let run 1.., form each product , and add them all up.
Why can't the shapes be arbitrary when multiplying?
The matrix's column count must equal the input's slot count; they cancel, leaving the output shape.
What is the bias for?
A per-neuron shift added after the weighted sum, letting a neuron lean on/off even for zero input.
Why do we apply a nonlinear at all?
Without bending, stacked layers collapse into one straight-line map; curves are needed for nonlinear reality.
What does ReLU do to a negative number?
Flattens it to (the neuron doesn't fire).
Is the in a power?
No — it labels the layer; means "activations of layer 1".
What is ?
The input itself, — so the layer recursion can start uniformly.