Jednotka 11 / 11

Reprodukovatelnost a projekt End-to-End: Kombinace všeho

zisky:

  • Schopnost zajistit reprodukovatelnost se čtyřmi pilíři (fixace seed, verzování dat, zmrazení médií, monitorování experimentu) a dosáhnout stejného výsledku při opakování stejného běhu
  • Schopnost kombinovat všechny zastávky modulu (metriky, data, model, komponenty LLM, hodnocení, férovost, bezpečnost, distribuce, monitorování) v end-to-end řetězci
  • Schopnost ověřit, že kritické rozhodnutí zůstává na člověku při každém zastavení, a dokumentovat projekt auditovatelným způsobem

Nejzákeřnějším selháním projektu ML není krach; "Znovu nedosáhneme stejného výsledku." Pokud dnes nemůžete reprodukovat skóre modelu, který jste uvedli do výroby před třemi měsíci, ve skutečnosti tento model neovládáte. V této závěrečné jednotce prohlubujeme reprodukovatelnost: schopnost spolehlivě získat stejný výsledek se stejnými vstupy a kombinovat celý modul v end-to-end projektové disciplíně.

Proč je reprodukovatelnost obtížná

V běžném softwaru dává stejný kód stejný výstup. V ML existuje mnohem více proměnných, které určují výsledek:

  • Náhodnost: Přesouvání dat, inicializace váhy, dělení dat – to vše závisí na náhodnosti.
  • Data: Stejný kód vytváří jiný model s různou verzí dat.
  • Prostředí: Verze knihovny, hardware (CPU/GPU), dokonce i operační systém může změnit výsledek.
  • Skrytý případ: Neuložený hyperparametr, krok ručního předběžného zpracování, nepoznamenaný výběr.

Reprodukovatelnost není „příjemné mít“, ale vědecký a technický imperativ. Výsledek, který nelze reprodukovat, je tvrzení, které nelze prokázat.

Čtyři pilíře reprodukovatelnosti

1. Opravte náhodnost. Nastavte všechna náhodná semena na jedno místo: rozdělení dat, inicializace modelu, míchání dat. Fixed seed je základem záruky "stejný výsledek, když opakujete stejný běh".

2. Verze dat. Zaznamenejte, s jakou verzí dat byl každý experiment proveden (verze dat v jednotce 2). „Nejnovější údaje“ jsou vágní; "datová verze v3, hash abc123" je přesná.

3. Zmrazte médium. Připněte všechny závislosti na jejich přesné verze (např. přesné verze jako numpy==1.26.4 v souboru požadavků.txt nebo obrázek kontejneru). „Nejnovější verze“ jednou všechno rozbije.

4. Sledujte vše (sledování experimentů). Automaticky ukládat pro každý experiment: verzi kódu (git commit), datovou verzi, všechny hyperparametry, metriky a výstupní struktury. Nástroje pro sledování experimentů jako MLflow, Weights & Biases to dělají systematicky. Bez registrace zůstává nezodpovězena otázka „které nastavení bylo nejlepší“.

Pozor: "Budu si pamatovat později" je nejdražší omyl. O dva týdny později si nebudete pamatovat, které semeno, která data, který hyperparametr jste použili. Automatické sledování eliminuje závislost na paměti.

Slabý přístup / Silný přístup

Slabý: "Našel jsem nejlepší model, je na notebooku, myslím, že jeho skóre bylo 89%."

Strong: "Spusťte #147 v nástroji pro sledování experimentu: git commit a3f9c, datová verze v3 (hash abc123), seed 42, všechny hyperparametry zaregistrovány, test PR-AUC 0,887. Když znovu spustím stejný příkaz, dostanu stejný výsledek kousek po kousku. Model závisí na tomto spuštění v registru."

Rozdíl: v silném přístupu není výsledek založen na paměti, ale na pevném a monitorovaném řetězci. Každý může pokaždé dosáhnout stejného výsledku.

End-to-end projekt: kombinace modulu

Nyní spojme celý modul do jediného projektového toku. Skutečný systém ML prochází těmito zastávkami a každá zastávka navazuje na předchozí:

  1. Definice problému: Co řešíme, jak měřit úspěch (jednotka 3: správná metrika, obchodní kontext). Metrika a práh jsou jasné od začátku.
  2. Datový kanál: Shromažďování, ověřování, čištění, dělení bez úniků, verzování (jednotka 2).
  3. Vývoj modelu: Školení, srovnání základní linie, křížová validace, hard seed (jednotka 3 + tato jednotka).
  4. Komponenty LLM (pokud jsou použitelné): RAG (jednotka 4) a/nebo činidla (jednotka 5); v případě potřeby jemné doladění (jednotka 6).
  5. Hodnocení: eval cluster s okrajovými a bezpečnostními pouzdry, vícevrstvé eval v LLM systémech (jednotka 8).
  6. Audit spravedlnosti a etiky: Analýza podskupin, modelová karta, vysvětlitelnost (jednotka 10).
  7. Bezpečnostní audit: Rychlá injekce, soukromí, dodavatelský řetězec (jednotka 9).
  8. Distribuce: Balení, postupná distribuce, rollback, registr modelů (jednotka 7).
  9. Monitorování: Třívrstvé monitorování, driftové alarmy (jednotka 8).
  10. Reprodukovatelnost: Seed, datová verze, média a sledování experimentů v celém řetězci (tato jednotka).

V tomto toku je AI akcelerátorem a generátorem plánů na každé zastávce; ale výběr metrik, rozhodnutí o datech, prioritizace spravedlnosti, práh nasazení a schválení vydání – zásadní rozhodnutí zůstávají na člověku. To je podstata modulu.

Dokumentace: Budoucnost vám poděkuje

Dobrý ML projekt dokumentuje sám sebe. Minimálně by mělo být napsáno následující: kritéria problému a úspěšnosti, zdroj a verze dat, výběr a zdůvodnění modelu, výsledky hodnocení (včetně podskupin), známá omezení a rizika, postup nasazení a vyhledávání, plán monitorování. Tento dokument je nejlepším přítelem osoby (možná jste to vy), která se po šesti měsících vrátí do projektu.

tři mini pouzdra

Případ 1 – Prohraný výsledek. Inženýr vycvičil skvělý model, ale neopravil semeno a neuložil datovou verzi. Když odešel z práce, nikdo nemohl reprodukovat tento výsledek; model se stal „legendou černé skříňky“ a nakonec byl postaven od nuly. Týdny byly promarněné. Poučení: nereprodukovatelný výsledek je neexistující výsledek.

Případ 2 – Zhroucení prostředí. Jeden tým neopravil závislosti. Když byla knihovna automaticky aktualizována, výstupy modelu se tiše změnily a výroba byla přerušena. Najít problém trvalo dny. Když byly závislosti zmrazeny a kontejnerizovány s definitivními verzemi, problém se již nevyskytl. Ponaučení: zmrazit životní prostředí.

Případ 3 – Síla monitorování. Tým automaticky monitoroval každý experiment. O tři měsíce později během regulačního auditu odpověděli na otázku "s jakými daty, s jakým nastavením, jaký výkon to v jakých skupinách dosáhlo?" s úplným záznamem během několika minut. Kontrola proběhla hladce. Ponaučení: monitorování je nástroj dodržování předpisů, nikoli pouze technický.

Kopírovatelné šablony

Proveďte kontrolu reprodukovatelnosti tohoto projektu ML.- Jsou všechna semena náhodnosti pevná (rozdělit, inicializovat, zamíchat)?- Jsou data verzována?- Jsou závislosti zmrazeny na přesné verze?- Je každý experiment (potvrzení kódu, data, hyperparametr, metrika) sledován? Napište konkrétní kroky, jak jej opravit pro každý chybějící sloupec. Struktura projektu: [popis]

Vytvořte kostru plánu pro tento komplexní projekt ML. Problém: [popis] Zakryjte následující zastávky a označte, kde je na každé zastávce rozhodnutí ČLOVĚKA: problém/metrika, potrubí, model, (RAG/agent/jemné doladění?), hodnocení, spravedlnost, bezpečnost, distribuce, monitorování, reprodukovatelnost. Napište hlavní riziko a ověřovací krok pro každou zastávku.

Vytvořte šablonu technické dokumentace pro tento projekt. Sekce: problém+kritéria úspěšnosti, data (zdroj+verze), výběr modelů+zdůvodnění, hodnocení (včetně podskupin), známé limity+rizika, nasazení+rollback, plán monitorování. Zadejte pole, která mají být vyplněna pro každou sekci, jako otázky.

Zkontrolujte nastavení monitorování experimentu: Ukládá se automaticky při každém spuštění: potvrzení git, verze dat/hash, všechny hyperparametry, všechny metriky, prostředí (verze knihovny)? Dostanu stejný výsledek, když znovu spustím stejný běh? Nastavení: [popis]. Vyjmenujte nedostatky a opravy.

Tabulka sloupců reprodukovatelnosti

sloupec

Co je opraveno

Příklad vozidla

nahodilost

všechna semena

nastavení osiva

Data

Verze dat/hash

DVC

prostředí

Knihovní verze

PIN požadavků, Docker

Sledování

Kód+data+nastavení+metrika

MLflow, W&B

Časté chyby

  • Nefixování semene. Výsledek nelze opakovat.
  • Datová verze se neukládá. "S jakými údaji?" zůstává nezodpovězeno.
  • Ne mrazivé závislosti. Aktualizace tiše vše rozbije.
  • Ponechání experimentů paměti. O dva týdny později si nic nepamatuje.
  • Ponechání zásadních rozhodnutí na umělé inteligenci. Rozhodnutí o metrikách, spravedlnosti a distribuci by měla zůstat na lidech.
  • Odložení dokumentace. Budoucí tým (a vy) zaplatíte cenu.

V souhrnu

Reprodukovatelnost je znakem seriózního ML inženýrství: nereprodukovatelný výsledek je neprokazatelné tvrzení. Dodává se se čtyřmi sloupci – oprava náhodnosti, data verze, zmrazení prostředí, sledování každého experimentu. End-to-end projekt kombinuje všechny body tohoto modulu (metrika, data, model, komponenty LLM, hodnocení, spravedlnost, bezpečnost, distribuce, monitorování) v propojeném řetězci; Umělá inteligence je akcelerátorem na každém kroku, ale zásadní rozhodnutí zůstávají na člověku. Vše zdokumentujte – pro budoucí tým a audity. Tato disciplína je rámcem, který podporuje vše, co se v rámci modulu naučíte.

Aplikační úkol

Zkontrolujte projekt ML se čtyřmi pilíři reprodukovatelnosti: jsou semena neměnná, jsou data verzována, je prostředí zmrazeno, jsou experimenty sledovány? Opravte všechny chybějící sloupce a dokažte, že můžete spustit stejný běh dvakrát a získat stejný výsledek. Poté vytiskněte celý průběh projektu (10 zastávek) na jednu stránku a na každé zastávce označte „kde je lidské rozhodnutí“. Nakonec napište krátký návrh technické dokumentace.

kontrolní seznam

  • [ ] Všechna semena náhodnosti opravena.
  • [ ] Verze dat/hash se zaznamenává s každým experimentem.
  • [ ] Závislosti jsou zmrazeny na pevné verze (pin/kontejner).
  • [ ] Každý experiment je automaticky monitorován (kód+data+nastavení+metrika).
  • [ ] Když opakuji stejný běh, dostanu stejný výsledek.
  • [ ] Ověřil jsem a zdokumentoval, že kritická rozhodnutí v toku end-to-end dělají lidé.

Modulová zkouška

1. Jaký je jako inženýr ML nejlepší přístup při umisťování umělé inteligence do pracovního postupu?

  • A) AI je akcelerátor v podnicích s nízkým rizikem; Zásadní rozhodnutí, jako jsou metriky, data a produkce, zůstávají ověřena a ponechána na člověku ✔
  • B) Dokud AI výstupy vypadají dobře, není potřeba ověřování
  • C) Přenechání rozhodnutí o uvedení modelu do výroby na umělé inteligenci šetří čas.
  • D) Umělá inteligence je užitečná pouze pro psaní textu, s daty a modelovou prací nemá nic společného

Popis: Umělá inteligence je výkonný akcelerátor pro nízkorizikové, snadno ověřitelné úlohy, jako je kód, přehledy dat a dokumenty; Odpovědnost za rozhodnutí ovlivňující peníze, důvěrnost a právní odpovědnost, jako je výběr metrických údajů, jejichž data jsou součástí školení a uvedení modelu do výroby, však leží na kvalifikovaném inženýrovi a týmu. Každý výstup by neměl být používán bez ověření.

2. Proč je ověření schématu umístěno na začátek datového kanálu?

  • A) Protože přímo zvyšuje přesnost modelu
  • B) Protože to dělá verzování dat zbytečným
  • C) Protože zachycuje poškozená data v nejbližším a nejlevnějším místě a zabraňuje jejich úniku do dalších kroků ✔
  • D) Protože to eliminuje potřebu označování

Vysvětlení: Čím dříve jsou poškozená data zachycena, tím levnější je jejich oprava. Ověření schématu zabraňuje tichému úniku poškozených dat do školení nebo výroby odmítnutím dat mimo očekávaný typ a rozsah na začátku řádku (např. 100x posun ceny se změnou jednotky); Stejná chyba zachycená ve výrobě je mnohonásobně dražší.

3. Jaký je správný přístup při rozdělování dat na trénování a testování v problému zahrnujícím čas (časové řady)?

  • A) Použití náhodného rozdělení, protože je to vždy nejspravedlivější metoda
  • B) Použití dočasného rozdělení: předcházejte únikům školením s minulostí a testováním v budoucnosti ✔
  • C) Využití všech dat pro trénink i testování
  • D) Začlenění testovacích dat do škálovacích parametrů před tréninkem

Vysvětlení: Náhodné rozdělení na časových řadách dává modelu výhodu 'budoucnosti', ke které ve výrobě nikdy nedojde, a uměle navyšuje metriky (časový únik). Správné je časové rozdělení: trénovat s minulostí, testovat v budoucnosti. To měří skutečný výkon, který jej udržuje ve výrobě.

4. Proč je přesnost zavádějící v modelu odhalování podvodů s pozitivní třídou 1,5 %?

  • A) Protože přesnost je u nevyvážených dat vždy nízká
  • B) Protože přesnost lze použít pouze na regresní problémy
  • C) Protože výpočet přesnosti vyžaduje hodně výpočetního výkonu
  • D) I mizerný model, který předpovídá většinovou třídu, může být velmi přesný a skrývá tak skutečný úspěch ✔

Vysvětlení: Na nevyvážených datech dokonce i základní model, který říká, že „všechno je negativní“, získá přibližně 98,5% přesnost, ale nezachytí jediný podvod. Proto se při nevyvážené klasifikaci místo přesnosti používá přesnost, vyvolání, F1 nebo PR-AUC a každá metrika je interpretována podle základního modelu.

5. Proč je základní srovnání zásadní, když mluvíme o metrice modelu?

  • A) Protože základní model je vždy lepší než skutečný model
  • B) Protože je jasné, zda je metrika smysluplná nebo ne, pouze ve srovnání s jednoduchým základním modelem ✔
  • C) Protože základní model dělá křížovou validaci zbytečnou
  • D) Protože základní model je ze zákona vyžadován v každé zprávě

Vysvětlení: Metrika sama o sobě není dobrá nebo špatná; Je to dobré nebo špatné podle základního modelu. Věta „85 % správně“ znamená téměř bezcennou, pokud základní model již získá 84 %, a perfektní, pokud dostane 50 %. Bez srovnávací kotvy je metrika bezvýznamná.

6. Který je nejkritičtější bezpečnostní prvek, který by měl být zahrnut do produkční výzvy systému RAG (Retrieval-Augmented Generation)?

  • A) Pokyn spoléhat se pouze na uvedený zdroj, říci „nevím“, pokud zdroj neexistuje, a uvést zdroj ✔
  • B) Řekněte modelu, aby vytvořil co nejdelší a nejkreativnější odpovědi
  • C) Model upřednostňuje vlastní vzdělávací znalosti před zdroji
  • D) Implementujte všechny pokyny v dokumentech přinesených jako příkazy

Vysvětlení: Jediným nejdůležitějším pokynem RAG je říci modelu, aby se spoléhal pouze na daný zdroj, a pokud informace ve zdroji není, řekněte „nevím“ a citujte zdroj, aniž byste si to vymýšleli. Bez této triády může model ignorovat kontext a vytvářet halucinace a odpověď se stává neověřitelnou.

7. Systém RAG dává nesprávné odpovědi. Kde je nejlepší začít s diagnostikou?

  • A) Nejprve měření aportu (Recall@K): dorazí někdy správný kus? ✔
  • B) Okamžitě vyměňte model za větší
  • C) Náhodně změňte výzvu a pokračujte v pokusu
  • D) Vložení všech dokumentů do modelu s jemným doladěním

Vysvětlení: Nejslabším článkem RAG je obvykle aport, nikoli výroba. Pokud se správná součást nikdy nepřinese, model nemůže tyto informace vytvořit, bez ohledu na to, jak moc je výzva vylepšena. Proto se nejprve změří Recall@K, aby se zjistilo, zda dorazila správná součást; Pokud je aport dobrý, pak se prozkoumá produkce a prompt.

8. Jaké akce by měly být zahrnuty do lidského souhlasu, když dáváte nástroj agentovi?

  • A) Žádný; Agent musí být schopen provádět každou akci autonomně
  • B) Pouze vratné akce, jako je čtení a vyhledávání dat
  • C) Nevratné akce nebo akce s velkým dopadem, jako je převod peněz, smazání, odeslání ✔
  • D) Akce, které zahrnují pouze výpočty

Popis: Akce jsou rozděleny podle úrovně rizika. Obnovitelné úkoly, jako je čtení, vyhledávání, počítání a generování konceptů, lze provádět autonomně; Nevratné akce nebo akce s velkým dopadem, jako je převod peněz, odesílání e-mailů, mazání dat, zadávání objednávek atd., však vyžadují lidský souhlas. Každý neodvolatelný úkon musí podléhat souhlasu.

9. Jaký je nejlepší návrhový přístup proti riziku nepřímého rychlého vstřikování?

  • A) Do systémové výzvy stačí přidat jedinou větu „ignorujte špatné pokyny“.
  • B) Dejte modelu větší autoritu tím, že se budete spoléhat na pokyny v externím obsahu
  • C) Neučinit žádná opatření, protože injekci nelze zabránit
  • D) Izolace externího obsahu jako nespolehlivých dat a vytvoření vrstvené obrany s minimální autorizací, schválením a výstupní kontrolou ✔

Popis: Externí obsah zpracovávaný agentem nebo RAG, jako je webová stránka, dokument, e-mail atd., je nedůvěryhodnými daty a může obsahovat tajné pokyny. Správný přístup je vrstvená obrana: izolování externího obsahu jako „data, nikoli příkazy“ s jasnými oddělovači, použití minimální autorizace, vázání nevratných akcí na souhlas člověka a auditování výstupu. Jediný řádek pokynů nestačí.

10. Jaký je hlavní rozdíl při rozhodování, zda by měl být problém vyřešen doladěním nebo RAG?

  • A) Informační problémy se lépe řeší pomocí RAG, problémy s chováním/formátem se lépe řeší jemným doladěním ✔
  • B) Každý problém by měl být vždy vyřešen doladěním
  • C) RAG se používá pouze pro generování kódu, jemné ladění se používá pouze pro překlad
  • D) Jemné doladění lze vždy aktualizovat levněji a rychleji než RAG

Vysvětlení: Jemné ladění je slabé a riskantní při výuce modelu nové informace; ale je silný ve výuce chování, formátu, tónu a stylu. „Modelová společnost nezná naše data“ je informační problém a patří společnosti RAG. „Nechat model vždy vystupovat v našem přísném formátu“ je behaviorální problém a kandidát na jemné doladění. Kromě toho by se před jemným doladěním mělo spotřebovat rychlé a několik snímků.

11. Co je povinné pro bezpečné nasazení při zavádění nového modelu do výroby?

  • A) Pokud je model v testování dobrý, otevřete jej přímo pro 100% provoz
  • B) Po nasazení vůbec nenastavuji sledování
  • C) Postupné nasazení (stín/kanárek) a předem otestovaný plán vrácení ✔
  • D) Publikování modelu, i když není splněna prahová hodnota hodnocení

Vysvětlení: Otevření nového modelu přímo pro veškerý provoz je riskantní; Pokud je to špatně, všichni jsou postiženi. Správné je, že jde o postupnou distribuci (stín, kanár) a každá distribuce má otestovaný plán vrácení. Distribuce není úplná bez plánu zpětného získání; Možnost vrátit se k předchozí verzi během několika minut chrání uživatele, když se model ve výrobě chová neočekávaně.

12. Jak může ML model „potichu“ selhat ve výrobě a jaký je způsob, jak to zachytit?

  • A) Model se zhroutí; ukazují to protokoly serveru
  • B) Produkováním chybných předpovědí bez chyb; ✔ Zachycuje provozní, vstupní a výstupní vrstvené monitorování
  • C) Model nemůže nikdy selhat tiše, vždy alarm
  • D) Pouhé sledování latence stačí k zachycení jakékoli degradace

Vysvětlení: Model může selhat jednoduše tím, že vytvoří nesprávné předpovědi bez zhroucení nebo uvedení chyb; Hlavním důvodem je posun dat a posun konceptu. Pouhé sledování provozních metrik (latence, chybovost) nestačí; distribuce vstupů a distribuce výstupu/předpovědi by měla být rovněž monitorována. Vstupní drift poskytuje včasné varování, pokud je skutečný výsledek zpožděn.

13. Jaký princip je zásadní při použití LLM jako soudce k hodnocení systému LLM?

  • A) LLM-rozhodčí má vždy pravdu, ověření člověkem je zbytečné
  • B) Rozhodčí se musí rozhodnout pouze na základě délky odpovědi.
  • C) Při použití rozhodčích by měly být zcela vyřazeny kontroly založené na pravidlech a lidské hodnocení
  • D) Skóre rozhodčích by mělo být kalibrováno se vzorkem označeným člověkem a změřena jeho zkreslení, než jim lze věřit ✔

Popis: LLM-rozhodčí je také model; Může být halucinační, zaujatý (upřednostňuje dlouhé, sebevědomé odpovědi) a nekonzistentní. Proto musí být skóre rozhodčích kalibrováno s lidským značeným vzorkem a jejich systematické zkreslení musí být změřeno před rozhodnutím o výrobě. Neověřený rozhodčí dává falešnou důvěru.

14. Proč je při posuzování zkreslení modelu nedostatečný pohled na celkovou přesnost?

  • A) Celková přesnost je dostatečná, protože vždy odráží výkon nejhorší skupiny
  • B) Celková přesnost samotná je nedostatečná, protože může zakrýt systematické rozdíly (skrytá diskriminace) mezi podskupinami ✔
  • C) Protože přesnost je metrika, která nemá nic společného se zkreslením
  • D) Zkreslení pochází pouze z modelu a nemá nic společného s daty.

Vysvětlení: Celková přesnost může zastírat systematické rozdíly mezi podskupinami. Například, zatímco celková přesnost je 88 %, zapamatování může být 91 % v jedné skupině a 67 % v jiné skupině; Model tuto skupinu systematicky postrádá. Proto by měl být model hodnocen na základě podskupin (demografie/segment) a o tom, která definice spravedlnosti by měla být upřednostněna, by mělo být rozhodnuto se zúčastněnými stranami.

15. Které čtyři věci musí být opraveny dohromady, aby byl výsledek ML reprodukovatelný?

  • A) Pouze název modelu, velikost, cena a datum vydání
  • B) Pouze značka GPU a rychlost internetu
  • C) Pouze konečné skóre přesnosti modelu; zbytek lze uchovat v paměti
  • D) Sledování náhodnosti, verze dat, prostředí (verze závislosti) a experimentu ✔

Popis: Reprodukovatelnosti je dosaženo pomocí čtyř pilířů: oprava zárodků náhodnosti, verzování dat (verze/hash), zmrazení prostředí (přesné verze knihovny/kontejner) a sledování každého experimentu (potvrzení kódu, data, hyperparametr, metrika). Bez tohoto řetězce není možné reprodukovat stejný výsledek; Nereprodukovatelný výsledek je tvrzení, které nelze prokázat.