Ez az egység diagnózis, nem új elméleti fejezet: a hallgató a saját
programozói előismeretét méri fel kézi számpéldán és egy kis laboron. Az
előfeltétel az 1.3. Adatfelosztás és a megfigyelési
egység fogalomkészlete: train/validation/test, scene_id
mint megfigyelési egység, csoportos split és adatszivárgás. A cél az,
hogy a hallgató az első változatát rögzítse, és a hibák alapján célzott
alapozó egységet válasszon a későbbi fejezetekből.
Induló kérdés. Adott a vektor. Mekkora az euklideszi hossza, és mi a mértékegysége, ha a komponensek pixelben adottak? Előzetes becslés nélkül írja le a válaszát; a diagnózisnak éppen ez a nyers első változat a tárgya.
Vektor. A -dimenziós valós vektor ; oszlopvektorként írjuk az absztrakt képletekben (JELOLESEK.md). Az euklideszi norma
A norma csak akkor fizikailag értelmes, ha a komponenseknek közös mértékegysége van: ha minden , akkor . A GlyphLab intenzitásvektorainál a komponensek dimenzió nélküli értékek, tehát a norma is dimenzió nélküli.
Függvény. Az hozzárendelés egy definíciós tartomány minden eleméhez egy értéket rendel. A bemenet egységét , a kimenetét jelöli; a kettő általában különbözik. Az affin kifejezésnél, ha és az eredmény pixelben értendő, akkor az eredmény egysége , a konstans egysége is , a együttható egysége pedig .
Átlag. Az valós minta átlaga
A reduction explicit: az összegzés mind az elemet fedi, az osztás -nel történik. Az üres minta () átlaga nem értelmes. A mértékegység azonos a minta egységével: .
Deriváltintuíció. A differenciahányados
a és közötti szelő meredeksége. A derivált ennek határértéke mellett; a formális definíciót és a láncszabályt a 4.1. Függvény, határérték és derivált építi fel. Itt csak az intuíciót mérjük. A szimmetrikus változat
gyakran jobb numerikus közelítés; ezt használjuk majd a gradiensellenőrzésben is. A mértékegység .
Tensor. A tensor többdimenziós számrendezés; a könyv
főútján a képbatch
,
NCHW sorrendben: batch, csatorna, magasság, szélesség. A dimenziók
darabszámok, ezért dimenzió nélküliek. Az elemszám a dimenziók szorzata.
Például
elemszáma
;
a dtype (például float32) a tárolás pontosságát
rögzíti.
Seed. A pszeudovéletlen generátor egy seedből (magból) egy sorozatot állít elő. A seed mértékegysége nincs, általában nemnegatív egész. Ugyanaz a seed csak ugyanazon algoritmus, verzió és kiértékelési sorrend mellett ígér azonos sorozatot; a seed önmagában nem hordozhatósági garancia (D02, D09).
Futásazonosító. A futásazonosító (, run id) egy konkrét kísérleti végrehajtást címkéző karakterlánc. Nem azonos a seeddel: a seed egy generátor bemenete, a futásazonosító a napló kulcsa, amely a seed, az adatverzió, a kódverzió és az időbélyeg mellé kerül. A kettő felcserélése megnehezíti annak megállapítását, hogy két eltérő eredmény közül melyik tartozik ugyanahhoz a beállításhoz.
A levezetési kötelezettség: minden jelre, tartományra és mértékegységre kiterjedő specifikációt adunk három feladatra.
F-A: vektornorma. Jelek: , , . Tartomány: a komponensek közös egysége ; itt , tehát . Számítás: .
F-B: átlag. Jelek: , , . Tartomány: az értékek pixelintenzitások, dimenzió nélküliek. Számítás: , dimenzió nélkül.
F-C: differenciahányados. Jelek: , , , . Tartomány: idő (), hossz (). Dimenziósan helyesen alakban írjuk, ahol ; így , és . Az írásmód ennek rövidítése: a másodpercben, a méterben vett numerikus érték. Számítás: a lenti lemma adja minden -ra; -nél az eredmény .
Lemma (másodfokú eset). Ha és , akkor minden esetén.
Bizonyítás. A definícióból:
Az első egyenlőség a definíció, a második a binomiális kifejtés, a harmadik az összevonás, a negyedik a feltétel melletti egyszerűsítés.
Ellenpélda a tétel határára. A lemma nem áll harmadfokú függvényre: ha , akkor , ami esetén nem egyenlő a deriválttal. A határátmenet az, amit a későbbi kalkulusfejezet formalizál; a lemma tehát a másodfokú alak következménye, nem általános simasági állítás.
Az F-A, F-B, F-C feladatokat kézzel ellenőrizzük. F-A: . F-B: . F-C: . Az alakellenőrzés: a norma és az átlag skalár; a differenciahányados egysége az elvárt .
A tensorfeladat: elemszáma , egész szám, dimenzió nélkül. A seed-feladat nem numerikus, hanem a labor naplójába mentett indoklás.
A labor megoldja az öt rövid feladatot, elmenti az első változatot,
és rögzíti a választott alapozó egységet. Munkakönyvtár: a kurzusprojekt
gyökere; a napló a lab_n004/ könyvtárba kerül. A futás
CPU-n, float64 numerikus ellenőrzéssel történik; a labor
nem generál véletlent, a GlyphLab generáló seedje
()
csak a napló szerződésrovatában szerepel.
#!/usr/bin/env python3
"""n004 diagnosztikai labor: elso valtozat mentese es naplo."""
import argparse
import hashlib
import json
import os
import sys
from datetime import datetime, timezone
EXPECTED = {
"norm": {"value": 5.0, "tol": 1e-6},
"function": {"value": 5.0, "tol": 1e-6},
"mean": {"value": 3.0, "tol": 1e-6},
"derivative": {"value": 4.0, "tol": 1e-5},
"tensor_elements": {"value": 1152, "exact": True},
}
def main() -> int:
ap = argparse.ArgumentParser()
ap.add_argument("--answers", nargs=5, type=float, required=True,
help="sorrend: vektornorma, f(3), atlag, "
"szimmetrikus differenciahanyados, tensor-elemszam")
ap.add_argument("--basis", required=True,
help="valasztott celzott alapozo egyseg, pl. n009")
ap.add_argument("--seed-note", required=True,
help="magyarazat: miert nem eleg a seed onmagaban")
ap.add_argument("--output-dir", default="lab_n004")
args = ap.parse_args()
os.makedirs(args.output_dir, exist_ok=True)
log_path = os.path.join(args.output_dir, "log.json")
if os.path.exists(log_path):
print(f"Hiba: {log_path} mar letezik. "
"A naplo append-only; ne ird felul az elso valtozatot.")
return 2
tensor_float = args.answers[4]
if abs(tensor_float - round(tensor_float)) > 1e-9:
print("Hiba: a tensor-elemszam egesz szam legyen.")
return 2
answers = {
"norm": args.answers[0],
"function": args.answers[1],
"mean": args.answers[2],
"derivative": args.answers[3],
"tensor_elements": int(round(tensor_float)),
}
results = []
for key, spec in EXPECTED.items():
got = answers[key]
if spec.get("exact"):
err = abs(got - spec["value"])
ok = got == spec["value"]
else:
err = abs(got - spec["value"])
ok = err <= spec["tol"]
results.append({
"task": key,
"expected": spec["value"],
"got": got,
"error": err,
"ok": ok,
"tolerance": spec.get("tol", 0),
})
now = datetime.now(timezone.utc).isoformat()
material = now + json.dumps(answers, sort_keys=True)
run_id = ("run-" + now.replace(":", "").replace("-", "")[:14]
+ "-" + hashlib.sha256(material.encode()).hexdigest()[:8])
record = {
"unit": "n004",
"run_id": run_id,
"timestamp": now,
"device": "cpu",
"dtype": "float64 numerikus ellenorzes; tensor-elemszam int",
"glyphlab_seed_note":
"glyphlab generalo seed 20261020; ez a labor nem general veletlent",
"diagnosis_not_grading": True,
"answers": answers,
"results": results,
"all_ok": all(r["ok"] for r in results),
"chosen_basis_unit": args.basis,
"seed_note": args.seed_note,
"first_version_kept": True,
}
with open(log_path, "w", encoding="utf-8") as fh:
json.dump(record, fh, ensure_ascii=False, indent=2)
print("run_id:", run_id)
print("log:", log_path)
print("results:")
for r in results:
print(f" {r['task']:>15s}: ok={r['ok']}, error={r['error']:.3g}")
print("all_ok:", record["all_ok"])
print("chosen_basis_unit:", args.basis)
return 0 if record["all_ok"] else 1
if __name__ == "__main__":
sys.exit(main())Futtatási parancs, ha a hallgató mind az öt feladatot helyesen oldotta meg, és például a vektoros alapozást választja:
python n004_diagnosis.py --answers 5 5 3 4 1152 --basis n009 \
--seed-note "A seed csak a generator kezdoallapota; ugyanaz a seed \
mas NumPy-verzioban vagy mas algoritmussal eltero sorozatot adhat."A következő kimenet számított/demonstrációs példa, nem e könyv írása során futtatott mérés:
run_id: run-20261020T120000-4f2b81c3
log: lab_n004/log.json
results:
norm: ok=True, error=0
function: ok=True, error=0
mean: ok=True, error=0
derivative: ok=True, error=0
tensor_elements: ok=True, error=0
all_ok: True
chosen_basis_unit: n009
Ha a fájl már létezik, a script exit code 2-vel megáll,
és nem írja felül az első változatot. Ez a napló
append-only/első-változat elve: a fejlődést csak úgy lehet később mérni,
ha a diagnózis nyers állapota rögzítve marad. Az eredményértelmezés a
hibás feladatokhoz kötött:
| Hibás feladat | Javasolt első alapozó egység |
|---|---|
| norm | 3.1. Vektor, norma és skalárszorzat |
| function | 3.2. Mátrixszorzás és affín réteg vagy 4.1. Függvény, határérték és derivált |
| mean / tensor_elements | 2.1. Python, NumPy és tenzoralak |
| derivative | 4.1. Függvény, határérték és derivált |
A választás nem büntetés, hanem útvonaltervezés: aki a differenciahányadost eltéveszti, annak érdemes a kalkulusfejezetnél lassabban haladnia, de a diagnózis ettől nem minősíti a kurzusbeli kilátásait.
F1 (fogalmi, nehézség 1). Magyarázza el a seed és a futásazonosító különbségét, és adjon egy konkrét helyzetet, amelyben ugyanaz a seed két környezetben eltérő sorozatot adhat. Átadandó: a két definíció saját szavakkal, egy helyzet és egy mondat arról, hogy a naplóban miért kell mindkettő.
F2 (levezetési, nehézség 1). Számítsa ki az függvény pontjához tartozó szimmetrikus differenciahányadost mellett. Adja meg minden lépését, az eredmény mértékegységét és a , illetve együttható mértékegységét, ha és . Átadandó: a teljes levezetés és a mértékegység-ellenőrzés.
F3 (implementációs, nehézség 2). Írjon
Python-függvényt, amely egy valós lista euklideszi normáját és átlagát
számítja; üres listára a függvény ValueError-t dobjon.
Átadandó: teljes kód, három teszteset
(,
,
üres lista) és a tolerancia.
F4 (hibakeresési, nehézség 2). Az alábbi függvény hibás:
def mean(x):
return sum(x) / (len(x) - 1)Lokalizálja a hibát, adja meg a következményét egy egyelemű és egy kételemű bemeneten, javítsa, és ellenőrizze a javítást teszttel. Átadandó: ok, következmény, javított kód, teszteredmény.
F5 (kísérleti/transzfer, nehézség 3). Tervezze meg
egy GlyphLab-osztályozó kísérlet naplójának rovatszerkezetét JSON-ban. A
terv tartalmazza a run id-t, seedet, adatverziót, a
scene_id szerinti csoportos split ellenőrzését, a
választási protokollt (best checkpoint val loss alapján) és a záróteszt
helyét. Indokolja, miért nem a test metrika alapján választ modellt.
Átadandó: séma, kitöltési szabály és az érvényességi korlát egy
bekezdésben.
F1. A seed a pszeudovéletlen generátor bemenő
kezdőállapota; a futásazonosító a kísérleti napló egy rekordját címkéző
egyedi karakterlánc. Helyzet: np.random.seed(42) és
np.random.default_rng(42) más algoritmus miatt eltérő
sorozatot ad; ugyanígy PyTorch CPU és CUDA kernelváltozata is eltérhet.
A naplóban a seed önmagában nem azonosítja a futást, mert a kódverzió
vagy az adatverzió változása mellett ugyanaz a seed más eredményhez
tartozhat; a run id ezért a teljes beállítás címkéje.
F2. A szimmetrikus hányados:
Kiszámítva: , és . Így
Alternatív algebra: az alakra a lemma mintájára adódik, mert a másodfokú tag szimmetrikus hányadosa , a lineáris tagé pedig . -nél az eredmény . A mértékegység . Dimenziósan a pontos alak, ahol és : a két együttható egysége különböző, mert mindkét tagnak méterben kell lennie. Ennek megfelelően , ahol mindkét tag egysége . Az alakellenőrzés: a hányados skalár, az egység a számlálóé osztva a nevezőével.
F3.
import math
def vector_norm(v):
return math.sqrt(sum(x * x for x in v))
def mean(v):
if len(v) == 0:
raise ValueError("ures tombnek nincs atlaga")
return sum(v) / len(v)
# Tesztek
assert abs(vector_norm([3.0, 4.0]) - 5.0) < 1e-12
assert abs(mean([1.0, 3.0, 5.0]) - 3.0) < 1e-12
try:
mean([])
except ValueError:
pass
else:
raise AssertionError("ures tomb nem dobott ValueErrort")A tolerancia , mert ezek a műveletek float64-ben pontosan reprezentálhatók. Az üres lista a szélsőeset: az átlag definíciója -re érvényes, ezért a hibadobás a specifikáció része.
F4. Hiba: a nevező
,
nem
.
Következmény:
esetén nullával osztás (ZeroDivisionError);
esetén az eredmény a helyes átlag kétszerese, mert
a
kétszerese. Javítás: a nevező legyen len(x). Ellenőrző
teszt:
def mean_fixed(x):
return sum(x) / len(x)
assert mean_fixed([2.0]) == 2.0
assert abs(mean_fixed([1.0, 3.0]) - 2.0) < 1e-12A javított függvény a szélsőesetet is helyesen kezeli; a hiba a korrigálatlan változatban a definíció szerinti normálási konstans tévesztése volt.
F5. Egy lehetséges séma:
{
"run_id": "run-20261020T...-abcd1234",
"question": "GlyphLab orientation baseline",
"data_version": "1.0, seed 20261020",
"split_check": "grouped by scene_id; train 240 / val 60 / test 60",
"seed": 42,
"model": "kesobbi fejezetben rogzitendo",
"protocol": "best checkpoint val loss alapjan; final test egyszer",
"metric": "accuracy",
"raw_results": "TODO"
}Indoklás: ha a modellválasztás a test metrika alapján történne, a test halmaz a választási folyamat részévé válna, és a mért pontosság adaptív túlillesztést tartalmazna. A val halmaz a kiválasztásé, a test a rögzített protokoll végén egyszeri értékelésé. A GlyphLab érvényességi korlátja: a generált alakzatokon mért eredmény nem természetes képi benchmark és nem termelési validáció.
A diagnózist gyakran hivatalos felvételiként vagy végleges készségminősítésként értelmezik. Ez tévedés. Ha egy hallgató a differenciahányadost például értéknek számolja, az nem azt jelenti, hogy a kurzusból kizárt, hanem azt, hogy a határérték-intuíciót a 4.1. Függvény, határérték és derivált egységnél kell elmélyítenie. Ellenpélda a minősítő értelmezésre: két hallgató azonos hibát követ el, de az egyik korábban még soha nem látott deriváltat, a másik pedig elfelejtette; a hibapontszám nem különbözteti meg őket, a kurzus viszont mindkettőjüknek felépíti a hiányzó lépést. A diagnózis egyetlen érvényes következménye a célzott alapozó egység kiválasztása, nem a hallgató osztályozása.
Ellenőrizze: (1) az átlag mértékegysége miért egyezik az adatéval;
(2) a
-es
lemma melyik lépése használja a
feltételt; (3) a run id és a seed közül melyiket írjuk a generátornak
szánt bemenetként. Válaszok: (1) mert az összeg mértékegysége az adaté,
az
osztó dimenzió nélküli; (2) a
egyszerűsítése; (3) a seedet. Visszahívás az 1.3.
Adatfelosztás és a megfigyelési egység alfejezetből: a GlyphLabban a
független egység a scene_id, ezért a napló
split_check rovata azt igazolja, hogy egy jelenet minden
nézete ugyanabba a splitbe került; a képszintű felosztás körülbelül 90
szabálytalan jelenetet okozhatott volna.
Ez a szakasz a könyv egészére érvényes, központi szabályokat adja meg. A tíz ellenőrző pont (4.4. I. ellenőrző pont: matematika és kód megfelelése, 8.4. II. ellenőrző pont: korrekt tanulási állítás, …, 40.4. X. ellenőrző pont: önálló neurális modell és bizonyíték) ezeket nem ismétli, csak a saját eltérését rögzíti.
A főút. A könyv tíz, egyenként négy fejezetből álló blokkra tagolódik; minden blokk a negyedik fejezete utolsó alfejezetében lévő ellenőrző ponttal zárul. A munkaterhelés tervezési becslés, nem mért érték: alfejezetenként 2–4 óra olvasás, feladat és labor, ellenőrző pontonként 6–10 óra.
Az előfeltételek a blokkok közti kötelező sorrendet adja: a 9. blokk a 8.-tól függetlenül is elkezdhető, ha a 6. és 7. blokk PASS; minden más blokk az előzőre épül.
Közös rubrika (0–4). Minden ellenőrző pontot öt dimenzióban értékelünk: (D1) matematikai helyesség, (D2) kód és futtathatóság, (D3) adat- és mérési protokoll (split, megfigyelési egység, tesztfegyelem), (D4) bizonyíték és nyomon követhetőség (napló, seed, verzió, hash, forrás), (D5) az állítás és korlátai (az állítás nem lép túl a bizonyítékon). Szintek: 0 hiányzik; 1 hibás; 2 lényegében helyes, de hiányosan ellenőrzött; 3 helyes és ellenőrzött; 4 helyes, ellenőrzött, és új helyzetre is indokoltan alkalmazott. A rubrika belső lektori eszköz, nem hivatalos osztályzat.
PASS-szabály. Továbbléphet, ha (a) az ellenőrző pont
laborjának minden assert-je és toleranciaellenőrzése a
saját futtatásában átmegy, (b) mind az öt dimenzió legalább 3, és (c) a
riport csak ténylegesen lefuttatott kód kimenetét közli. Közös
riportszabály: a riport a 36.4. IX.
ellenőrző pont: lektorálható modellállítás hat komponensét
tartalmazza (bizonyítás, forrásnyom, kód, futási jegyzék, páros
eredmény, korlátok); a futási jegyzék a seedet, a csomag- és
eszközverziót és a bemeneti fájlok SHA-256 lenyomatát rögzíti.
Visszautak. Ha egy ellenőrzés elbukik, a hibatípushoz tartozó alfejezetet kell újra feldolgozni: a feladatait megoldani, a laborját újrafuttatni, majd az ellenőrző pontot megismételni.
shape mismatch, váratlan broadcast,
rossz Linear bemenet: 2.1.
Python, NumPy és tenzoralak tenzoralak, 3.2.
Mátrixszorzás és affín réteg mátrixszorzás, 14.1. Stride, padding, dilation és outputméret
outputméret, 14.2. Több bemeneti és kimeneti
csatorna csatornák.nan, inf,
,
túlcsordulás: 2.2. Lebegőpont és stabil
elemi számítás lebegőpont, 7.4. Numerikus
stabilitás és jelentésmegőrző implementáció stabil veszteség.Ha ugyanaz a dimenzió két egymást követő kísérletben is 3 alatt marad, a blokk első fejezetétől kell visszalépni.
A folyószöveg a többi alfejezetre fejezet.alfejezet
számmal hivatkozik (például 4.3. Jacobi-mátrix,
láncszabály és VJP). Az nNNN azonosító technikai kulcs:
ez a forrásfájl neve (chapters/nNNN.md), a hivatkozási
horgony és a laborfájlok előtagja. Az alábbi jegyzék mindkettőt megadja.
A labor rovat a lab/ alatti, a könyvben teljes
egészében közölt laborfájlokat sorolja fel; az adat rovat a
kódblokkokban olvasott GlyphLab-fájlokat (I = images.npy, L
= labels.npy, M = masks.npy, C =
corrupted_test.npy, D = metadata.csv); a
kimenet rovat a kódban szó szerint megnevezett kimeneti
fájlokat. Változóval megadott kimeneti útvonalat a jegyzék nem sorol
fel; ezeket az adott labor szakasza írja le.
n001 Modell, tanulás és
felhasználási szerződésf3_grid_linear.pyn002 Szakmailag megalapozott
modellezési állításokn003 Adatfelosztás és a
megfigyelési egységn004 Tanulási diagnózis és
kísérleti naplón005 Python, NumPy és
tenzoralakn005/lab_batch_mean.pyn006 Lebegőpont és stabil elemi
számításn007 Izolált környezet, notebook
és verzión008 Kis tudományos
szoftverprojektinput.npyn009 Vektor, norma és
skalárszorzatn010 Mátrixszorzás és affín
rétegn011 Vetítés, legkisebb négyzetek
és kondicionáltságn011_lstsq/n011_lstsq.py,
n011_lstsq/least_squares.pyn012 Sajátérték, SVD és spektrális
határn013 Függvény, határérték és
deriváltn014 Parciális derivált és
gradiensn014_grad_demo.pyn015 Jacobi-mátrix, láncszabály és
VJPn015/vjp_lab.py,
n015/f3_solution.pyn016 I. ellenőrző pont: matematika
és kód megfelelésen017 Esemény, feltétel és véletlen
változón018 Várható érték, variancia és
likelihoodn018_likelihood.pyn019 Mintavételi bizonytalanság és
intervallumn020 Függő képek, seedek és
resamplingn021 Objektív, reguláris tag és
gradienslépésn022 Konvexitás és sima
optimalizálási határn023 Sztochasztikus és minibatch
gradiensn024 Momentum és adaptív
optimizálókn024/optim_steps.pyn025 Entrópia, cross-entropy és
KLn025_entropy_lab.pyn026 Softmax és többosztályos
cross-entropyn026/check_ce_grad.pyn027 Bináris, multilabel és
regressziós céln028 Numerikus stabilitás és
jelentésmegőrző implementáción029 Kockázat, mintavétel és
baselinen029_simulation.pyn030 Véges hipotézisosztály
egyenletes korlátjan031 Kapacitás, regularizálás és
modellválasztásn032 II. ellenőrző pont: korrekt
tanulási állításevidence.jsonn033 Neuron és perceptronn033_perceptron/perceptron_lab.pyn034 MLP és nemlinearitásn035 Expresszivitás és
approximációs állításokn036 Aktivációk és
gradiensáramlásn036/activation_gradients.py,
n036/feladat_f3.pyn037 Számítási gráf és lokális
deriváltn038 Affín réteg és aktiváció
backwardn039 Gradiensellenőrzés és
numerikus hibamércen040 Tanítási lépés és tanuló
MLPn041 Tensor és
autograd-életciklusn041/detach_demo.py,
n041/accumulation_demo.py,
n041/check_autograd.py, n041/split_path.py,
n041/lifetime_counterexample.pyn042 nn.Module és
paraméterregisztráción043 Dataset és DataLoader a
split utánn043_dataset.py, n043_check.py; adat:
Dn044 Egy teljes PyTorch tanítási
iteráción044_train_step.pyn045 Tanítás, validáció és
kiértékelési módn046 Checkpoint és
folytathatóságn047 Sanity check és kis mintára
túlillesztésn048 III. ellenőrző pont:
önállóan tanuló kis hálón049 Kép mint diszkrét
többcsatornás jeln049_layout/lab_n049.pymini_images.npzn050 Konvolúció és
cross-correlationn050/check_convs.pyn051 Lokális szűrők és tanult
reprezentáción052 Határkezelés és
frekvenciaintuíción052_boundary_check.py,
n052_lab.pyn053 Stride, padding, dilation és
outputméretn054 Több bemeneti és kimeneti
csatornan055 Paraméterszám, MAC és
aktivációmemórian055/param_mac_check.py,
n055/feladat_f3.pyn056 Csoportos és depthwise
konvolúción057 Súly- és biasgradiensn057/weight_grad_check.pyn058 Inputgradiens és átfedő
recepciós mezőkn058_dx_check.py, n058_f3_1d.pyn059 Transposed convolution mint
adjungáltn060 Független
gradiensellenőrzési protokollgradcheck_protocol.jsonn061 Eltolási equivariance és
invariancen062 Pooling, downsampling és
aliasingn063 Elméleti és effektív
recepciós mezőn064 IV. ellenőrző pont: a
CNN-operátor teljes megértésen064_checkpoint.pyn065 LeNet és a lokális
megosztott reprezentációtiny_lenet_check.py; adat: In066 AlexNet és a kísérleti
kontextusn067 VGG és kis kernelek
kompozíciójan068 Architektúra
összehasonlítása kontrollált keretbenn068/train_compare.pyn069 Reziduális blokk és
identitásútn070 Batch normalization train és
eval módbann071 Pre-activation, kis batch és
alternatív normalizálásn072 Reziduális blokk ablatív
vizsgálatan072_resablation.pyn073 Depthwise separable és
pointwise rétegn073_lab.py, n073_f3.pyn074 MobileNet és inverted
residualn074/inverted_residual_demo.pyn075 EfficientNet és
architektúraskálázásn075/n075_scale_bench.pyn076 ConvNeXt és a
recept/architektúra elválasztásan077 Feature extractor és új
fejn077/manual_check.py,
n077/head_swap_lab.py; adat: ILDn078 Finomhangolás és tanulási
rátan079 Preprocessing, domain shift
és súlylicencpreprocess_check.py,
check_preprocessing.py,
preprocess_normalize.py; adat: Iimages_norm.npyn080 V. ellenőrző pont: indokolt
CNN-választásn080_residual_check.py,
n080_decision_check.pyn081 Inicializálás és
varianciaterjedésn081_mini_scale.py,
n081_init_scale.pyn082 Learning rate és
ütemezésn082_schedule_compare.py; adat: ILDn083 Dropout, súlyregularizálás
és augmentáción084 Osztályarány, súlyozás és
céleloszlásf3_weighted_ce.py; adat: ILDn085 Adateredet, címke és
csoportos splitn086 Címkemegőrző
transzformációkn087 Zajos és hiányos címken088 Augmentációs kísérlet és
domainváltozásaugment_experiment.pyn089 Confusion matrix és
aggregálási konvencióeval_preds.npzn090 Kalibráció és döntési
küszöbn091 Páros összehasonlítás és
csoportszintű intervallumscene_interval.py; adat: Dtest_preds.npyn092 Hibaszeletek és alkalmazási
határn093 Tanulási görbe és
hibadiagnózisn093_diagnose.py; adat: ILDn094 CPU/GPU profiling és helyes
időmérésmeasure_report.jsonn095 Mixed precision és nagyobb
batchn096 VI. ellenőrző pont:
megbízható CNN-trainingn096_checkpoint.py, check_best.py;
adat: ILCDrunlog.jsonn097 Teljes képosztályozó
adatfolyammodel_def.py, train_classifier.py,
infer.py; adat: ILDn098 Multilabel és hierarchikus
céln099 Kis adat és feature-alapú
baselinen100 Nyílt halmaz és ismeretlen
inputrejection_rule.pyn101 Dobozkoordináta, IoU és
lokalizációs lossn101_lab.py; adat: MDn102 Egy- és kétlépcsős
detektorn103 NMS, confidence és APn103_nms_lab.py, n103_map.pyn104 Detektálási pipeline és
hibaelemzésn105 Pixelszintű klasszifikáció
és FCNn106 U-Net, encoder–decoder és
skipn107 Dice, IoU és aggregálásn108 Instance mask és összetett
feladatn109 Embedding, távolság és
normalizálásembedding_exact.py,
extract_embeddings.pyn110 Sziámi és triplet céln110_triplet_lab.pyn111 Retrieval-értékelés és
adatfelosztásretrieval_report.pyn112 VII. ellenőrző pont: CNN
alkalmazási szerződésn112_dotpair/retrieval_eval.pyn113 Lineáris és nemlineáris
autoencodern114 Denoising és korrupciós
modelln115 Regularizált latent
reprezentáción115_latent_probe.pyn116 Anomáliapontszám
rekonstrukcióbólscore_hand_check.py,
anomaly_lab.pyanomaly_report.jsonn117 Pretext és downstream
feladatn118 Kontrasztív cél és
temperaturen118/nt_xent_pairs.pyn119 Negatív nélküli módszerek és
collapsen120 Önfelügyelt kísérlet korrekt
összevetésen121 VAE és variációs alsó
korlátn122 GAN mint minimax
probléman123 Diffúziós zajmodell és
CNN-denoisern124 Generatív felhasználás és
értékelésn125 Szekvenciamodell és változó
hosszn126 Scaled dot-product
attentionn126/n126_attention.pyn127 Vision Transformer és hibrid
felhasználásn128 VIII. ellenőrző pont: célhoz
illő neurális modelln129 Inference-szerződés és
modellcsomagcontrol_input.npy, manifest.json,
reference_logits.npyn130 Batch és kis
szolgáltatásn131 torch.export és ONNXn132 Üzemeltetés, drift és késő
címken132/monitor_demo.py,
n132/rollback_policy.py, n132/test_schema.py,
n132/test_join.pyn133 Mért késleltetés, throughput
és memórialatency_results.jsonn134 Kvantálás és
hibatovábbterjedésn135 Pruning és struktúran135_prune_lab.pyn136 Teacher–student
desztilláción136_distill/soft_target_example.py,
n136_distill/train_distill.py,
n136_distill/manual_kd.py; adat: ILn137 Saliency és Grad-CAMn137_gradcam.pyn138 Magyarázat sanity
checkn138_sanity_check.pyn139 Perturbáció és adversarial
példan139/manual_fgsm.py,
n139/fgsm_demo.pyn140 Korlátok, eredet és döntési
felelősségn141 Állításból kísérleti
tervn142 Ismétlések és
eredménybizonytalanságn143 Szakirodalmi reprodukció és
attribúción144 IX. ellenőrző pont:
lektorálható modellállításn145 Operátorspecifikáció és kézi
referencian146 Backward és ellenőrzési
lefedettségn147 Linearitás, adjungált és
határfeltételn147_operator_report.pyn148 Rétegből kis
tanulómodelln149 Adat, split és előzetes
protokollprotocol_check.py; adat: ILMCDprotocol_n149.jsonn150 Modell, training és best
checkpointglyph_models.py, train_small_cnn.py,
run_project2.pyn151 Végső teszt és páros
korrupcióeval_test.py; adat: ILCDn151_logits_clean.npy,
n151_pred_clean.npy, n151_pred_corrupt.npy,
n151_report.json, n151_test_index.npyn152 Mentett modellből független
inferencepackage_project2.py,
PROJECTII/models.py,
PROJECTII/inference.pymodel_card.json, test_indices.npy,
test_reference.npzn153 Feladat- és annotációs
döntésproject3/annotation_spec.pyn154 Encoder–decoder vagy
lokalizációs fejproject3/segmentation_head.py,
project3/train_seg.py; adat: IMDseg_train_log.jsonn155 Geometriai kontroll és
metrikaproject3/n155_geom_control.py; adat: MDcontrol_pred.npy, control_target.npy,
n155_control_report.jsonn156 Alkalmazási riport és
átadásproject3/export_delivery.py,
project3/report_audit.py; adat: ICDmanifest.json, model_card.jsonn157 Összetett levezetési
vizsgan158 Kísérleti és hibakeresési
vizsgan159 Tudományos kézirat és
forrásauditn160 X. ellenőrző pont: önálló
neurális modell és bizonyítékn160_thickness.py; adat: IDinference_contract.json,
test_predictions.npzAz 1.4. Tanulási diagnózis és kísérleti napló diagnózis nem osztályozó vizsga, hanem az alapozó útvonal kiválasztását segítő első mérés. A vektor normája csak közös komponens-egység mellett értelmes; az átlag egysége az adaté; a differenciahányados egysége . A másodfokú szimmetrikus hányadosa pontosan , amit algebrailag igazoltunk; harmadfokú esetre a lemma nem áll, és a határértéket a 4.1. Függvény, határérték és derivált formalizálja. A tensor alakja dimenzió nélküli, dtype-ja a tárolást rögzíti. A seed a generátor kezdőállapota, a futásazonosító a napló kulcsa; a kettő nem felcserélhető. A labor az első változatot append-only JSON-ba menti, és a hibák alapján célzott alapozó egységet választ.
Következő alkalmazás. A 2.1.
Python, NumPy és tenzoralak egység a tenzoralak és a NumPy-műveletek
pontos kezelését vezeti be; ha a diagnózis a mean vagy
tensor_elements feladatban hibát mutatott, ez az első
célzott alapozó.
Források