Interpretovatelnost modelů

Tento článek popisuje metody, které můžete použít k interpretaci modelu ve službě Azure Machine Učení.

Důležité

S vydáním řídicího panelu Zodpovědné AI, který zahrnuje interpretovatelnost modelů, doporučujeme migrovat do nového prostředí, protože starší řídicí panel interpretovatelnosti modelu SDK v1 verze Preview už nebude aktivně zachován.

Proč je pro ladění modelů důležité interpretovatelnost modelu

Když používáte modely strojového učení způsobem, který ovlivňuje životy lidí, je důležité pochopit, co má vliv na chování modelů. Interpretovatelnost pomáhá zodpovědět otázky ve scénářích, jako jsou:

  • Ladění modelu: Proč můj model udělal tuto chybu? Jak můžu svůj model vylepšit?
  • Spolupráce na lidské umělé inteligenci: Jak můžu pochopit a důvěřovat rozhodnutí modelu?
  • Dodržování právních předpisů: Vyhovuje můj model právním požadavkům?

Komponenta interpretovatelnosti řídicího panelu Zodpovědné umělé inteligence přispívá k "diagnostice" fáze pracovního postupu životního cyklu modelu generováním popisů predikcí modelu strojového učení, které jsou srozumitelné pro člověka. Poskytuje více zobrazení chování modelu:

  • Globální vysvětlení: Jaké funkce mají například vliv na celkové chování modelu přidělování úvěrů?
  • Místní vysvětlení: Proč byla například žádost o půjčku zákazníka schválena nebo odmítnuta?

Můžete také sledovat vysvětlení modelu pro vybranou kohortu jako podskupinu datových bodů. Tento přístup je cenný, když například posuzujete nestrannost v předpovědích modelu pro jednotlivce v konkrétní demografické skupině. Karta Místní vysvětlení této komponenty také představuje úplnou vizualizaci dat, která je skvělá pro obecné ohlédnutí dat a pohled na rozdíly mezi správnými a nesprávnými předpověďmi každé kohorty.

Schopnosti této komponenty jsou založeny balíčkem InterpretML , který generuje vysvětlení modelu.

Interpretovatelnost použijte v případě, že potřebujete:

  • Zjistěte, jak důvěryhodné jsou předpovědi systému AI tím, že pochopíte, jaké funkce jsou pro predikce nejdůležitější.
  • Přistupte k ladění modelu tak, že ho nejprve pochopíte a zjistíte, jestli model používá funkce, které jsou v pořádku, nebo jen falešné korelace.
  • Odkryjte potenciální zdroje nespravedlivosti tím, že pochopíte, jestli model vychází z předpovědí na citlivých funkcích nebo na funkcích, které s nimi vysoce korelují.
  • Vytvořte důvěru uživatelů v rozhodování o modelu generováním místních vysvětlení, která ilustrují jejich výsledky.
  • Dokončete regulační audit systému AI, který ověřuje modely a monitoruje dopad rozhodnutí modelu na člověka.

Jak interpretovat model

Ve strojovém učení jsou funkce datovými poli, která používáte k predikci cílového datového bodu. Například k predikci úvěrového rizika můžete použít datová pole pro věk, velikost účtu a věk účtu. Tady jsou funkce věku, velikosti účtu a věku účtu. Důležitost funkce vám říká, jak každé datové pole ovlivňuje predikce modelu. I když například můžete v předpovědi výrazně používat věk, velikost účtu a věk účtu nemusí významně ovlivnit hodnoty predikce. Díky tomuto procesu můžou datoví vědci vysvětlit výsledné předpovědi způsoby, které zúčastněným stranám poskytnou přehled o nejdůležitějších funkcích modelu.

Pomocí tříd a metod na řídicím panelu Zodpovědné AI a pomocí sady SDK v2 a rozhraní příkazového řádku v2 můžete:

  • Vysvětlit predikci modelu generováním hodnot důležitosti funkcí pro celý model (globální vysvětlení) nebo jednotlivých datových bodů (místní vysvětlení).
  • Dosažení interpretovatelnosti modelů u skutečných datových sad ve velkém měřítku
  • Pomocí interaktivního řídicího panelu vizualizace můžete zjistit vzory v datech a jeho vysvětlení v době trénování.

Pomocí tříd a metod v sadě SDK v1 můžete:

  • Vysvětlit predikci modelu generováním hodnot důležitosti funkcí pro celý model nebo jednotlivé datové body
  • Během trénování a odvozování dosáhnete interpretovatelnosti modelů u reálných datových sad ve velkém měřítku.
  • Pomocí interaktivního řídicího panelu vizualizace můžete zjistit vzory v datech a jeho vysvětlení v době trénování.

Poznámka:

Třídy interpretovatelnosti modelů jsou zpřístupněny prostřednictvím balíčku SDK v1. Další informace naleznete v tématu Instalace balíčků SDK pro Azure Machine Učení a azureml.interpret.

Podporované techniky interpretace modelu

Řídicí panel Zodpovědné AI a azureml-interpret použití technik interpretovatelnosti, které byly vyvinuty v interpretační komunitě, opensourcový balíček Pythonu pro trénování interpretovatelných modelů a pomáhá vysvětlit neprůkladné systémy AI. Neprůzorné modely jsou ty, pro které nemáme žádné informace o jejich vnitřních činnostech.

Interpret-Community slouží jako hostitel pro následující podporované vysvětlení a v současné době podporuje techniky interpretovatelnosti uvedené v dalších částech.

Podporováno v řídicím panelu Zodpovědné AI v sadě Python SDK v2 a CLI v2

Technika interpretace Popis Typ
Mimic Explainer (Globální náhradník) + strom SHAP Mimic Explainer je založen na myšlence trénování globálních náhradních modelů na napodobování neprůpažných modelů. Globální náhradní model je vnitřně interpretovatelný model, který je natrénovaný tak, aby co nejpřesněji odhadoval predikce libovolného neprůmyslného modelu.

Datoví vědci můžou náhradní model interpretovat tak, aby vytáhli závěry o neprůhlhlým modelu. Řídicí panel zodpovědné umělé inteligence používá lightGBM (LGBMExplainableModel) spárovaný s vysvětlením stromu SHAP (SHapley Additive exPlanations), což je konkrétní vysvětlení stromů a souborů stromů. Kombinace stromu LightGBM a SHAP poskytuje globální a místní vysvětlení modelů strojového učení nezávislé na modelu.
Nezávislá na modelu

Podporované techniky interpretace modelu pro textové modely

Technika interpretace Popis Typ Textový úkol
Text SHAP SHAP (SHapley Additive exPlanations) je oblíbená metoda vysvětlení hlubokých neurálních sítí, která poskytuje přehled o příspěvku jednotlivých vstupních funkcí k dané predikci. Vychází z konceptu hodnot Shapley, což je metoda přiřazování kreditu jednotlivým hráčům v kooperativní hře. SHAP tento koncept aplikuje na vstupní funkce neurální sítě tím, že vypočítá průměrný příspěvek každé funkce k výstupu modelu ve všech možných kombinacích funkcí. V případě textu se SHAP rozdělí na slova hierarchickým způsobem a považuje každé slovo nebo token za funkci. Tím se vytvoří sada hodnot přisuzování, které kvantifikují důležitost každého slova nebo tokenu pro danou předpověď. Poslední mapa přisuzování je generována vizualizací těchto hodnot jako heat mapa nad původním textovým dokumentem. SHAP je modelově nezávislá metoda a dá se použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, RNN a transformátorů. Kromě toho poskytuje několik žádoucích vlastností, jako je konzistence, přesnost a nestrannost, což představuje spolehlivou a interpretovatelnou techniku pro pochopení rozhodovacího procesu modelu. Nezávislá na modelu Klasifikace více tříd textu, klasifikace více popisků textu

Podporované techniky interpretace modelů pro modely obrázků

Technika interpretace Popis Typ Úloha zpracování obrazu
Vision SHAP SHAP (SHapley Additive exPlanations) je oblíbená metoda vysvětlení hlubokých neurálních sítí, která poskytuje přehled o příspěvku jednotlivých vstupních funkcí k dané predikci. Vychází z konceptu hodnot Shapley, což je metoda přiřazování kreditu jednotlivým hráčům v kooperativní hře. SHAP tento koncept aplikuje na vstupní funkce neurální sítě tím, že vypočítá průměrný příspěvek každé funkce k výstupu modelu ve všech možných kombinacích funkcí. Pro konkrétní vizi se SHAP rozdělí na obrázek hierarchickým způsobem a považuje superpixelové oblasti obrázku za každou funkci. Výsledkem je sada hodnot přisuzování, které kvantifikují důležitost každého superpixelu nebo oblasti obrázku pro danou předpověď. Konečná mapa přisuzování se generuje vizualizací těchto hodnot jako heat mapy. SHAP je modelově nezávislá metoda a dá se použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, RNN a transformátorů. Kromě toho poskytuje několik žádoucích vlastností, jako je konzistence, přesnost a nestrannost, což představuje spolehlivou a interpretovatelnou techniku pro pochopení rozhodovacího procesu modelu. Nezávislá na modelu Klasifikace více tříd obrázků, klasifikace více popisků obrázků
Backprop s asistencí Backprop s asistencí je oblíbená metoda vysvětlení hlubokých neurálních sítí, která poskytuje přehledy o naučených reprezentacích modelu. Vygeneruje vizualizaci vstupních funkcí, které aktivují konkrétní neuron v modelu tím, že výpočet přechodu výstupu s ohledem na vstupní obrázek. Na rozdíl od jiných metod založených na gradientech se backpropproppropguje pouze prostřednictvím kladných přechodů a používá upravenou aktivační funkci ReLU k zajištění toho, aby negativní přechody neovlivnily vizualizaci. Výsledkem je interpretovatelná mapa s vysokou mírou rozlišení, která zvýrazní nejdůležitější funkce vstupního obrázku pro danou předpověď. Backprop s asistencí lze použít k vysvětlení široké škály modelů hlubokého učení, včetně konvolučních neurálních sítí (CNN), rekurentních neurálních sítí (RNN) a transformátorů. AutoML Klasifikace více tříd obrázků, klasifikace více popisků obrázků
GradCAM s asistencí GradCAM je oblíbená metoda vysvětlení hlubokých neurálních sítí, která poskytuje přehledy o naučených reprezentacích modelu. Vygeneruje vizualizaci vstupních funkcí, které přispívají nejvíce do konkrétní výstupní třídy kombinací přístupu založeného na přechodu řízené zpětného šíření s lokalizačním přístupem GradCAM. Konkrétně vypočítá přechody výstupní třídy s ohledem na mapy funkcí poslední konvoluční vrstvy v síti a pak vyváže každou mapu funkcí podle důležitosti jeho aktivace pro danou třídu. Tím se vytvoří heat mapa s vysokým rozlišením, která zvýrazní nejvýraznější oblasti vstupního obrázku pro danou výstupní třídu. GradCAM s asistencí lze použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, RNN a transformátorů. Kromě toho začleněním řízené zpětného šíření zajišťuje, aby vizualizace byla smysluplná a interpretovatelná, aby nedocházelo k nechutným aktivacím a negativním příspěvkům. AutoML Klasifikace více tříd obrázků, klasifikace více popisků obrázků
Integrované přechody Integrované přechody jsou oblíbenou metodou vysvětlení hlubokých neurálních sítí, která poskytuje přehled o příspěvku jednotlivých vstupních funkcí k dané predikci. Vypočítá integrál přechodu výstupní třídy s ohledem na vstupní obrázek podél rovné cesty mezi základním obrázkem a skutečným vstupním obrázkem. Tato cesta je obvykle zvolena jako lineární interpolace mezi dvěma obrázky, přičemž základní hodnota je neutrální obrázek, který nemá žádné odlišení. Integrací přechodu podél této cesty poskytuje integrované přechody míru, jak každá vstupní funkce přispívá k predikci, což umožňuje vygenerovat mapu přiřazení. Tato mapa zvýrazňuje nej vlivnější vstupní funkce a dá se použít k získání přehledu o rozhodovacím procesu modelu. Integrované přechody je možné použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, sítí RNN a transformátorů. Navíc jde o teoreticky uzemněnou techniku, která splňuje sadu žádoucích vlastností, jako je citlivost, invariance implementace a úplnost. AutoML Klasifikace více tříd obrázků, klasifikace více popisků obrázků
XRAI XRAI je nová metoda saliency založená na oblastech založená na integrovaných přechodech (IG). Obrázek pře segmentuje a iterativním způsobem testuje důležitost jednotlivých oblastí a vynucuje menší oblasti do větších segmentů na základě skóre přisuzování. Tato strategie přináší vysoce kvalitní úzce vázané oblasti saliency, které mají vyšší výkon než stávající techniky saliency. XRAI lze použít s libovolným modelem založeným na DNN, pokud existuje způsob, jak seskupit vstupní funkce do segmentů prostřednictvím určité metriky podobnosti. AutoML Klasifikace více tříd obrázků, klasifikace více popisků obrázků
D-RISE D-RISE je modelově nezávislá metoda pro vytváření vizuálních vysvětlení předpovědí modelů rozpoznávání objektů. Díky účtování lokalizačních i kategorizačních aspektů detekce objektů může D-RISE vytvářet mapy saliency, které zvýrazňují části obrázku, které nejvíce přispívají k predikci detektoru. Na rozdíl od přechodových metod je D-RISE obecnější a nepotřebuje přístup k vnitřnímu fungování detektoru objektů; vyžaduje přístup pouze ke vstupům a výstupům modelu. Metodu lze použít u jednofázových detektorů (například YOLOv3), dvoufázových detektorů (například Faster-RCNN) a Vision Transformers (například DETR, OWL-ViT).
D-Rise poskytuje mapu sliency vytvořením náhodných masek vstupního obrázku a odešle ji do detektoru objektů s náhodnými maskami vstupního obrázku. Posouzením změny skóre detektoru objektů agreguje všechny detekce s každou maskou a vytvoří konečnou mapu sliency.
Nezávislá na modelu Rozpoznávání objektů

Podporováno v sadě Python SDK v1

Technika interpretace Popis Typ
Vysvětlení stromu SHAP Algoritmus SHAP Tree Explainer, který se zaměřuje na polynomický, časově rychlý algoritmus odhadu hodnot SHAP, který je specifický pro stromy a soubory stromů. Specifické pro model
Hloubkové vysvětlení SHAP Na základě vysvětlení SHAP je Deep Explainer "vysokorychlostní aproximovací algoritmus pro hodnoty SHAP v modelech hlubokého učení, který vychází z připojení k DeepLIFT popsanému v dokumentu SHAP NIPS. Podporují se modely TensorFlow a modely Keras používající back-end TensorFlow (existuje také předběžná podpora pro PyTorch)." Specifické pro model
SHAP Linear Explainer ShaP Linear Explainer vypočítá hodnoty SHAP pro lineární model, volitelně počítá korelace mezi funkcemi. Specifické pro model
Vysvětlení jádra SHAP Funkce SHAP Kernel Explainer používá speciálně váženou místní lineární regresi k odhadu hodnot SHAP pro libovolný model. Nezávislá na modelu
Mimic Explainer (globální náhradník) Mimic Explainer je založen na myšlence trénování globálních náhradních modelů na napodobování neprůpažných modelů. Globální náhradní model je vnitřně interpretovatelný model, který je natrénovaný tak, aby co nejpřesněji odhadoval predikce libovolného neprůmyslného modelu . Datoví vědci můžou náhradní model interpretovat tak, aby vytáhli závěry o neprůhlhlým modelu. Jako náhradní model můžete použít jeden z následujících interpretovatelných modelů: LightGBM (LGBMExplainableModel), Lineární regrese (LinearExplainableModel), Model SGDExplainableModel (SGDExplainableModel) nebo Decision Tree (DecisionTreeExplainableModel). Nezávislá na modelu
Vysvětlení důležitosti funkce permutace Permutation Feature Importance (PFI) je technika, která slouží k vysvětlení klasifikačních a regresních modelů inspirovaných dokumentem Náhodných doménových struktur Breimana (viz část 10). Na vysoké úrovni je způsob, jakým funguje, náhodným náhodném prohazování jedné funkce pro celou datovou sadu a výpočtu množství změn metrik výkonu, které zajímá. Čím větší je změna, tím důležitější je tato funkce. PFI může vysvětlit celkové chování jakéhokoli podkladového modelu , ale nevysvětluje jednotlivé předpovědi. Nezávislá na modelu

Kromě technik interpretability popsaných v předchozí části podporujeme další vysvětlující metodu založenou na SHAP, která se nazývá Tabulkový vysvětlení. V závislosti na modelu používá tabulkový explainer jeden z podporovaných vysvětlení SHAP:

  • Tree Explainer pro všechny stromové modely
  • Hloubkové vysvětlení pro modely hluboké neurální sítě (DNN)
  • Lineární vysvětlení lineárních modelů
  • Vysvětlení jádra pro všechny ostatní modely

Tabulkový vysvětlení také výrazně vylepšil funkce a výkon nad přímými vysvětleními SHAP:

  • Shrnutí inicializační datové sady: Když je nejdůležitější rychlost vysvětlení, shrneme datovou sadu inicializace a vygenerujeme malou sadu reprezentativních vzorků. Tento přístup urychluje generování celkových a individuálních hodnot důležitosti funkcí.
  • Vzorkování sady dat vyhodnocení: Pokud předáte velkou sadu zkušebních vzorků, ale nepotřebujete, aby se vyhodnocovaly všechny, můžete parametr vzorkování nastavit tak, aby true se urychlil výpočet celkových vysvětlení modelu.

Následující diagram znázorňuje aktuální strukturu podporovaných vysvětlujících rutin:

 Diagram of Machine Learning Interpretability architecture.

Podporované modely strojového učení

Balíček azureml.interpret sady SDK podporuje modely, které jsou natrénované s následujícími formáty datových sad:

  • numpy.array
  • pandas.DataFrame
  • iml.datatypes.DenseData
  • scipy.sparse.csr_matrix

Funkce vysvětlení přijímají jako vstup modely i kanály. Pokud je model k dispozici, musí implementovat prediktivní funkci predict nebo predict_proba která odpovídá konvenci Scikit. Pokud to váš model nepodporuje, můžete ho zabalit do funkce, která vygeneruje stejný výsledek jako predict nebo predict_proba ve Scikitu, a použít tuto funkci obálky s vybraným vysvětlujíčem.

Pokud zadáte kanál, funkce vysvětlení předpokládá, že spuštěný skript kanálu vrátí předpověď. Při použití této techniky azureml.interpret obtékání může podporovat modely, které jsou natrénované prostřednictvím PyTorch, TensorFlow, architektur hlubokého učení Keras a klasických modelů strojového učení.

Místní a vzdálený cílový výpočetní objekt

Balíček azureml.interpret je navržený tak, aby fungoval s místními i vzdálenými cílovými výpočetními objekty. Pokud balíček spustíte místně, nebudou funkce sady SDK kontaktovat žádné služby Azure.

Vysvětlení můžete spustit vzdáleně na počítači Azure Učení Compute a protokolovat informace o vysvětlení do služby Azure Machine Učení Historie spuštění. Po zaprotokolování těchto informací jsou sestavy a vizualizace z vysvětlení snadno dostupné na studio Azure Machine Learning k analýze.

Další kroky