Enhet 4 / 11

Eksperimentell dataanalyse og kurvetilpasning

Gevinster:

  • Evne til å tilpasse eksperimentelle data med curve_fit ved å velge modellen fra fysikk og rapportere parameterne med deres usikkerheter
  • Evne til ærlig å vurdere passformskvaliteten ved å undersøke rester og unngå overtilpasning
  • Evne til å sjekke den fysiske plausibiliteten til parametrene som er funnet og skille en "god" passform fra en "fysisk korrekt" passform

Fysikk avhenger til syvende og sist av eksperimentering. Uansett hvor elegant en teori er, hvis den ikke stemmer overens med målte data, er den ugyldig. Kurvetilpasning ligger i hjertet av å jobbe med eksperimentelle data: å tilpasse en modell forutsagt av teori (en linje, en eksponentiell, en oscillasjon) til de støyende målepunktene du har på best mulig måte og finne parametrene til modellen (helning, konstant, frekvens). I denne enheten lærer du hvordan du bruker kunstig intelligens (AI) i eksperimentdataanalyse, hvordan du setter opp kurvetilpasning riktig, og – mest kritisk – hvordan du kan se forskjellen mellom en passform som «ser bra ut» og «å være fysisk korrekt». Standardverktøyet er scipy.optimize.curve_fit (SciPy-funksjon som tilpasser en modellfunksjon til dataene).

Logikken til kurvetilpasning og rollen til AI

Kurvetilpasning gjør dette: du velger en modellfunksjon (f.eks. y = a·x + b), og algoritmen finner verdiene til a og b som passer til dataene med minst feil. AI er rask til å kode riktig modellfunksjon, sette opp curve_fit-kallet og visualisere resultatet. Men to kritiske avgjørelser er dine: (1) Hvilken modell er fysisk riktig? (2) Er kvaliteten på passformen virkelig god? AI kan også passe et 10.-ordens polynom til dataene og tegne en kurve som ser nesten perfekt ut - men dette ville være fysisk meningsløs overfitting.

fysisk hendelse

forventet modell

Fant parameter

konstant hastighet bevegelse

y = a·x + b

skråning = hastighet

radioaktivt forfall

N = N₀·e^(−λt)

λ = henfallskonstant

vårutgivelse

x = A·cos(ωt + φ)

ω = vinkelfrekvens

Ohms lov

V = R·I

R = motstand (helling)

fritt fall

y = ½·g·t²

g = gravitasjonsakselerasjon

Trinn for trinn: tilpasse en ærlig kurve

1. Velg modellen fra fysikk, ikke fra data. Bestem først hvilken fysisk lov arrangementet må følge. Å velge en modell ved å se på dataene og velge "hvilken passer godt" er å prøve å få fysikken til å passe til dataene - farlig.

2. Legg inn data og usikkerhet. Sammen med målepunktene, skriv også inn målefeilen (sigma-parameter) for hvert punkt, hvis noen. Dette er nødvendig for nøyaktig beregning av tilpasning og parameterusikkerhet.

3. Les parameterne og deres usikkerheter. curve_fit returnerer både parameterverdier og deres usikkerheter utledet fra kovariansmatrisen. Å rapportere en parameter uten dens usikkerhet er ufullstendig: å si "g = 9,7 ± 0,3 m/s²" er mye mer informativt enn bare å si "9,7".

4. Vurder passformen med rester. Residualet er avviket til hvert målepunkt fra modellen. Tilfeldig fordeling av rester er et tegn på god passform; en systematisk kurve (f.eks. alt på ett sted over modellen) indikerer at modellen er feil.

5. Sjekk fysisk rimelighet. Finnes g-verdien i størrelsesorden 9,8 eller 50? Gikk en motstand negativ? Fysisk umulige parametere indikerer et problem, selv om passformen «ser bra ut».

Tips: Ikke bedøm kvaliteten på passformen ved å stole utelukkende på synet. Plott alltid restene på en egen graf. I en god passform sprer restene seg som støy rundt null; Ved dårlig passform vises et synlig mønster (bølge, helling, U-form). Dette mønsteret er det ærligste tegnet på at modellen din er fysisk mangelfull.

tre minisaker

Tilfelle 1 — Overfittingsfellen. En student monterte et AI-foreslått 7. grads polynom til 8 datapunkter; kurven gikk gjennom alle punktene og så "perfekt ut". Men mellom de to punktene svingte kurven absurd. Studenten vendte seg til fysikk: det var et lineært forhold. Når han tilpasset en enkel linje, fikk parametrene fysisk betydning; polynomet av høyere orden hadde nettopp husket støyen.

Sak 2 — Usikkerhet glemt. En forsker fant og rapporterte gravitasjonsakselerasjonen g = 9,73 med koden skrevet av YZ. Rådgiveren hans spurte om usikkerheten. Forskeren brukte ikke curve_fits kovariansutgang; Når den ble beregnet, viste usikkerheten seg å være ±0,4, noe som betyr at resultatet stemte overens med standardverdien på 9,81. Uten tvetydighet kan resultatet feiltolkes som "avviker fra 9,81".

Tilfelle 3 - Rester viste feilen. En lærer passet en rett linje inn i et kjøleeksperiment, og det virket rimelig. Men da han plottet utklippene, dukket det opp et tydelig buet mønster. Det som faktisk skjedde var en eksponentiell avkjøling. Når han brukte riktig modell (eksponentiell), ble residualene tilfeldige og tilpasningen ble fysisk meningsfull.

Fire kopierbare maler

1) Tilpasning med fysisk modell:

Skriv en kurvetilpasningskode som passer den fysiske modellen = [modellfunksjon] til følgende eksperimentelle data ([x- og y-verdier, i enheter]). Skriv ut parametrene og 1-sigma-usikkerhetene avledet fra kovariansen. Plott dataene, den tilpassede kurven og residualene på en SEPARAT graf. Jeg gjorde modellvalget fra fysikk; du bare bruker det.

2) Kvalitetsvurdering:

Legg til kode som evaluerer kvaliteten på tilpasningen nedenfor: plott residualene, beregn et mål som kjikvadrat eller R², og kommenter skriftlig om det er et systematisk mønster i residualene. Fit kode: [her]

3) Modellsammenligning:

Skriv kode som passer og sammenligner to forskjellige fysiske modeller med samme data: [modell A] og [modell B]. Vis parameterne, usikkerhetene og gjenværende mønstrene for begge. Det er opp til meg å bestemme hvilken som er FYSISK mer egnet; Bare presenter de to side ved side. Husk å unngå overmontering.

4) Usikkerhetsrapportering:

Legg til kode som skriver ut hver parameter av følgende passform med passende antall signifikante sifre i formatet "verdi ± usikkerhet (enhet)". Tilpass hvis en parameter har en fysisk umulig verdi (f.eks. negativ masse). Kode: [her]

Svak forespørsel / Sterk forespørsel

Svak: "Finn kurven som passer best til disse dataene."
Konklusjon: AI kan gi en "perfekt" men fysisk meningsløs tilpasning til et høyordens polynom; usikkerhet og ikke mer.
Strong: "Skriv en curve_fit-kode som passer til den radioaktive henfallsmodellen N = N₀·e^(−λt) til disse (t, N) dataene. Skriv ut λ og N₀ og deres usikkerheter. Plott residualene i en egen graf og kommenter om det er et systematisk mønster. Advar hvis λ er negativ."
Resultat: Fysisk modell, usikre parametere, restkontroll og plausibilitetskontroll.

Vanlige feil

  • Velge modell fra dataene. Å velge den "beste tilpasningen" i stedet for den fysiske loven tvinger fysikken til å tilpasse dataene og fører til overtilpasning.
  • Rapporterer ikke usikkerhet. En parameterverdi uten usikkerhet er vitenskapelig ufullstendig; Hvorvidt to resultater er kompatible eller ikke kan bare forstås gjennom usikkerhet.
  • Ikke riper på restene. Å erklære samsvar "god" ved å se på øyet skjuler systematiske avvik.
  • Overvurder det signifikante sifferet. Å skrive g = 9,73418 ± 0,4 er en falsk presisjon; Usikkerhet avgjør hvor mange sifre som er signifikante.
  • Omgå fysisk rimelighet. Ignorerer umulige konsekvenser som negativ motstand eller 50 m/s² tyngdekraft.
OBS: Bare fordi en kurve passer dataene godt, beviser ikke at den underliggende fysikken er riktig. Med nok ledige parametere kan en "god" kurve passe til alle data. Vitenskapelig integritet krever å velge modellen fra fysikk, rapportere usikkerhet og undersøke restene ærlig. En fin AI-generert grafikk er ingen erstatning for disse kontrollene.

Oppsummert

I eksperimentdataanalyse etablerer AI raskt kurvetilpasningskode og visualisering; men det er fysikerens ansvar å velge den fysiske modellen, nøyaktig rapportere usikkerhet og ærlig vurdere kvaliteten på passformen. En god analyse tar modellen fra fysikk, rapporterer parameterne med deres usikkerheter, undersøker residualene og tester den fysiske plausibiliteten til resultatet. I neste enhet vil vi diskutere dette usikkerhetsbegrepet mer i dybden – målefeil og feilutbredelse.

Søknadsoppgave

Tilpass en fysisk modell til et lite sett med eksperimentelle data du har eller har produsert (for eksempel lengdeperiodemålinger av en pendel eller strømspenningsdata til en motstand). Skriv ut koden med den første malen til AI, kjør den; Les parameterne med deres usikkerhet og plott restene. Sjekk om det er et systematisk mønster i residualene, om parametrene er fysisk rimelige. Skriv ned i 5-6 setninger: var passformen virkelig god, hva sa usikkerheten?

sjekkliste

  • [ ] Jeg valgte modellen fra fysikk, ikke fra data.
  • [ ] Jeg inkluderte måleusikkerhet, hvis noen, i beslaget.
  • [ ] Jeg rapporterte parametrene med deres usikkerhet og passende signifikante siffer.
  • [ ] Jeg plottet restene på en egen graf og så etter systematiske mønstre.
  • [ ] Jeg sjekket at parametrene er fysisk rimelige.
  • [ ] Jeg unngikk overfitting (unødvendig høy frihet).