Hoppa till innehållet
AI-grafen
D· AI-utvecklarematematik· ca 45 min· grundläggande — ändras sällan· verifierad 2026-09-20

Andragradsfunktioner

Kunna rita parabler, hitta vertex och lösa andragradsekvationer — formen på en enkel loss-yta.

Öva i Mattegrafen ↗ · Matematik 2cÖva i Mattegrafen ↗ · Metoder för att lösa andragradsekvatione

Förkunskaper

Intuition

f(x)=ax2+bx+cf(x) = ax^2 + bx + c ritar en parabel — en skål.

OmDå
a>0a > 0skålen öppnar uppåt, har ett minimum
a<0a < 0skålen öppnar nedåt, har ett maximum
stort $a
litet $a

Vertex (skålens botten eller topp) ligger vid

x=−b2ax = -\frac{b}{2a}

Den formeln är värd att memorera. Den kommer direkt ur symmetrin: parabeln är spegelsymmetrisk kring en lodrät linje genom vertex, så vertex ligger mitt emellan nollställena.

Varför AI bryr sig: medelkvadratfelet för en linjär modell är en parabel i varje enskild parameter. När du hör att «modellen söker minimum av förlustfunktionen» — det är den här skålen den letar botten i.

Formellt

Nollställen — där f(x)=0f(x) = 0:

x=−b±b2−4ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

Diskriminanten D=b2−4acD = b^2 - 4ac avgör hur många det finns:

DDAntal nollställenGrafen
>0> 0tvåskär x-axeln på två ställen
=0= 0ett (dubbelrot)tangerar x-axeln
<0< 0noll (reella)ligger helt över eller helt under

Kvadratkomplettering skriver om funktionen så att vertex syns direkt:

ax2+bx+c=a(x+b2a)2+c−b24aax^2 + bx + c = a\left(x + \frac{b}{2a}\right)^2 + c - \frac{b^2}{4a}

Det är den formen som gör det uppenbart att minimum är c−b24ac - \frac{b^2}{4a} och nås vid x=−b2ax = -\frac{b}{2a}: kvadraten är alltid ≥ 0, och är noll precis där.

Kopplingen till maskininlärning, konkret. Anpassa y^=wx\hat{y} = wx till data med medelkvadratfel:

L(w)=1n∑i(yi−wxi)2=(1n∑xi2)⏟aw2−(2n∑xiyi)⏟−bw+1n∑yi2⏟cL(w) = \frac{1}{n}\sum_i (y_i - w x_i)^2 = \underbrace{\left(\tfrac{1}{n}\sum x_i^2\right)}_{a} w^2 - \underbrace{\left(\tfrac{2}{n}\sum x_i y_i\right)}_{-b} w + \underbrace{\tfrac{1}{n}\sum y_i^2}_{c}

Det är en parabel i ww, med a>0a > 0. Minimum ligger vid w∗=−b2a=∑xiyi∑xi2w^* = -\frac{b}{2a} = \frac{\sum x_i y_i}{\sum x_i^2} — och det är exakt den lösning minsta kvadratmetoden ger.

Därför är «konvex förlust» något man vill ha: en skål har en botten, och gradientnedstigning kan inte fastna någon annanstans.

Kod

import numpy as np

def vertex(a, b, c):
    x = -b / (2 * a)
    return x, a * x ** 2 + b * x + c

def nollstallen(a, b, c):
    D = b ** 2 - 4 * a * c
    if D < 0:
        return []
    if D == 0:
        return [-b / (2 * a)]
    r = D ** 0.5
    return [(-b - r) / (2 * a), (-b + r) / (2 * a)]

print(vertex(1, -4, 3))         # (2.0, -1.0)
print(nollstallen(1, -4, 3))    # [1.0, 3.0]  — vertex ligger mitt emellan
print(nollstallen(1, 2, 5))     # []          — D = 4 - 20 < 0

# Förlustfunktionen för y = w·x ÄR en parabel i w
x = np.array([1.0, 2.0, 3.0, 4.0])
y = np.array([2.1, 3.9, 6.2, 7.8])

def L(w):
    return float(np.mean((y - w * x) ** 2))

a = float(np.mean(x ** 2))
b = float(-2 * np.mean(x * y))
c = float(np.mean(y ** 2))
w_stjarna = -b / (2 * a)
print(round(w_stjarna, 4), round(L(w_stjarna), 5))     # 1.99 0.02425

# Samma svar som minsta kvadratmetoden ger direkt
print(round(float(np.sum(x * y) / np.sum(x ** 2)), 4))  # 1.99

# Och parabeln är verkligen en skål: alla andra w är sämre
for w in (1.5, 1.9, w_stjarna, 2.1, 2.5):
    print(f"  w={w:.4f}  L={L(w):.5f}")
#   w=1.5000  L=1.82500
#   w=1.9000  L=0.08500
#   w=1.9900  L=0.02425   ← botten
#   w=2.1000  L=0.11500
#   w=2.5000  L=1.97500

De sista raderna är hela poängen: att träna en linjär modell är att hitta botten på en parabel, och för just den här modellen kan man räkna ut svaret direkt i stället för att leta.

Behärskning innebär

  • Ritar en parabel och hittar dess vertex
  • Löser andragradsekvationer
  • Kopplar parabelns form till en loss-yta

Logga in för att göra övningarna och bygga upp din behärskning.

Källor

Alla källor och licenser