The core loop of supervised learning is: make a prediction, compare it to the label, compute a loss (how wrong you were), and adjust parameters to reduce that loss. This cycle repeats millions or billions of times during training. The math behind the adjustment is gradient descent — computing how much each parameter contributed to the error and nudging it in the direction that reduces the error.
Pre-training an LLM is technically a form of self-supervised learning (the labels are generated from the data itself — the "label" for each position is just the next token in the text). But fine-tuning and RLHF both use supervised signals: human-written example responses, or human preference rankings between model outputs. When you fine-tune a model on customer support conversations, you're doing supervised learning with the support agent's responses as labels.
The catch with supervised learning is that you need labeled data, and labels are expensive. Every medical image needs a radiologist to annotate it. Every support conversation needs a quality rating. This is why techniques like self-supervised learning (letting the model generate its own labels from unlabeled data) and semi-supervised learning (using a small labeled set to bootstrap labels for a larger unlabeled set) are so important — they reduce the labeling bottleneck that limits pure supervised approaches.