Interpretovatelnost modelů

Tento článek popisuje metody, které můžete použít pro interpretovatelnost modelu ve službě Azure Machine Learning.

Důležité

S vydáním řídicího panelu Odpovědné AI, který zahrnuje interpretovatelnost modelu, doporučujeme migrovat na nové prostředí, protože starší řídicí panel interpretability modelu SDK verze 1 verze 1 se už nebude aktivně udržovat.

Proč je při ladění modelu důležitá interpretovatelnost modelu

Když používáte modely strojového učení způsobem, který ovlivňuje životy lidí, je velmi důležité pochopit, co ovlivňuje chování modelů. Interpretovatelnost pomáhá odpovídat na 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 člověka s AI: Jak můžu pochopit rozhodnutí modelu a důvěřovat mu?
  • Dodržování právních předpisů: Splňuje můj model zákonné požadavky?

Komponenta interpretovatelnosti řídicího panelu Odpovědné AI přispívá k fázi diagnostiky pracovního postupu životního cyklu modelu tím, že generuje srozumitelný popis predikcí modelu strojového učení. Poskytuje několik zobrazení chování modelu:

  • Globální vysvětlení: Jaké funkce například ovlivňují celkové chování modelu alokace úvěrů?
  • Místní vysvětlení: Například proč byla žádost o půjčku zákazníka schválena nebo zamítnuta?

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

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

Interpretovatelnost použijte v případech, kdy potřebujete:

  • Zjistěte, jak důvěryhodné jsou predikce vašeho systému AI, tím, že zjistíte, jaké funkce jsou pro předpovědi nejdůležitější.
  • Přistupte k ladění modelu tak, že ho nejprve pochopíte a určíte, jestli model používá funkce, které jsou v pořádku, nebo pouze falešné korelace.
  • Odhalte potenciální zdroje neférnosti tím, že zjistíte, jestli model vychází z předpovědí na citlivých funkcích, nebo na funkcích, které s nimi vysoce korelují.
  • Vygenerujte místní vysvětlení, která ilustrují jejich výsledky, a vybudujte důvěru uživatelů v rozhodování modelu.
  • Proveďte regulační audit systému AI, abyste ověřili modely a monitorovali dopad rozhodnutí o modelech na lidi.

Jak interpretovat model

Ve strojovém učení jsou funkce datová pole, 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 funkcemi věk, velikost účtu a věk účtu. Důležitost funkce vám řekne, jak jednotlivá datová pole ovlivňují předpovědi modelu. I když například v predikci často používáte věk, velikost účtu a věk účtu nemusí významně ovlivnit hodnoty předpovědi. 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 poskytují přehled o nejdůležitějších funkcích modelu.

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

  • Vysvětlujte 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 modelu na reálných datových sadách ve velkém měřítku
  • Pomocí interaktivního řídicího panelu vizualizace můžete v době trénování objevovat vzory v datech a jejich vysvětlení.

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

  • Vysvětlujte predikci modelu generováním hodnot důležitosti funkcí pro celý model nebo jednotlivé datové body.
  • Dosažení interpretovatelnosti modelu na reálných datových sadách ve velkém měřítku během trénování a odvozování.
  • Pomocí interaktivního řídicího panelu vizualizace můžete v době trénování objevovat vzory v datech a jejich vysvětlení.

Poznámka

Třídy interpretovatelnosti modelu jsou k dispozici prostřednictvím balíčku SADY SDK verze 1. Další informace najdete v tématech Instalace balíčků SDK pro Azure Machine Learning a azureml.interpret.

Podporované techniky interpretovatelnosti modelu

Na řídicím panelu Odpovědné AI využijte azureml-interpret techniky interpretovatelnosti, které byly vyvinuty v opensourcovém balíčku Pythonu Interpret-Community pro trénování interpretovatelných modelů a pomáhají vysvětlovat neprůchožné systémy AI. Neprůsvné modely jsou ty, u kterých nemáme žádné informace o jejich interním fungování.

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

Podpora na řídicím panelu odpovědné AI v sadě Python SDK verze 2 a rozhraní příkazového řádku v2

Technika interpretovatelnosti Popis Typ
Mimic Explainer (Global Náhradní) + STROM SHAP Mimic Explainer je založen na myšlence trénování globálních náhradních modelů, aby napodobily modely neprůchožných rámečků. Globální náhradní model je vnitřně interpretovatelný model, který je vytrénovaný tak, aby co nejpřesněji odhadl predikce jakéhokoli neprůsporného modelu.

Datoví vědci mohou interpretovat náhradní model a vyvozovat závěry o modelu neprůhlhlých rámečků. Řídicí panel Odpovědné AI používá LightGBM (LGBMExplainableModel) ve spojení se stromovým vysvětlením SHAP (SHapley Additive exPlanations), který je specifickým vysvětlením pro stromy a skupiny stromů. Kombinace lightGBM a stromu SHAP poskytuje globální a místní vysvětlení modelů strojového učení, která jsou nezávislá na modelu.
Nezávislá na modelu

Podporované techniky interpretovatelnosti modelů pro textové modely

Technika interpretovatelnosti Popis Typ Text – úloha
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. Je založen na konceptu Shapley hodnoty, což je metoda přiřazování kreditu jednotlivým hráčům v kooperativní hře. SHAP používá tento koncept 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 napříč všemi možnými kombinacemi funkcí. Konkrétně pro text shap rozděluje slova hierarchicky a každé slovo nebo token považuje za funkci. Tím se vytvoří sada hodnot přiřazení, které kvantifikují důležitost každého slova nebo tokenu pro danou predikci. Konečná atribuční mapa se vygeneruje vizualizací těchto hodnot jako heat mapy nad původním textovým dokumentem. SHAP je metoda nezávislá na modelu a dá se použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, sítí RNN a transformátorů. Kromě toho poskytuje několik žádoucích vlastností, jako je konzistence, přesnost a nestrannost, což z něj činí spolehlivou a interpretovatelnou techniku pro pochopení rozhodovacího procesu modelu. Model Agnostic Klasifikace textu s více třídami, klasifikace textu s více popisky

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

Technika interpretovatelnosti Popis Typ Úkol pro zpracování obrazu
Shap vision 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. Je založen na konceptu Shapley hodnoty, což je metoda přiřazování kreditu jednotlivým hráčům v kooperativní hře. SHAP používá tento koncept 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 napříč všemi možnými kombinacemi funkcí. Konkrétně v případě obrazu shap rozdělí obrázek hierarchicky a považuje superpixelové oblasti obrázku za každou funkci. Tím se vytvoří sada hodnot přiřazení, které kvantifikují důležitost každého superpixelu nebo oblasti obrázku pro danou predikci. Konečná mapa atribuce se vygeneruje vizualizací těchto hodnot jako heatmapy. SHAP je metoda nezávislá na modelu a dá se použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, sítí RNN a transformátorů. Kromě toho poskytuje několik žádoucích vlastností, jako je konzistence, přesnost a nestrannost, což z něj činí spolehlivou a interpretovatelnou techniku pro pochopení rozhodovacího procesu modelu. Model Agnostic Image Multi-class Classification, Image Multi-label Classification
Backprop s asistencí Backprop s asistencí je oblíbená metoda vysvětlení hlubokých neurálních sítí, která poskytuje přehled o naučených reprezentacích modelu. Vygeneruje vizualizaci vstupních funkcí, které aktivují konkrétní neuron v modelu pomocí výpočtu přechodu výstupu vzhledem ke vstupnímu obrázku. Na rozdíl od jiných metod založených na gradientu se backprop s asistencí vrací pouze přes pozitivní přechody a používá upravenou aktivační funkci ReLU, která zajistí, že negativní přechody nebudou ovlivňovat vizualizaci. Výsledkem je interpretovatelná mapa saliency s vysokým rozlišením, která zvýrazní nejdůležitější funkce vstupního obrázku pro danou predikci. 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 Image Multi-class Classification, Image Multi-label Classification
Průvodce gradCAM Guided GradCAM je oblíbená metoda vysvětlení pro hluboké neurální sítě, která poskytuje přehled o naučených reprezentacích modelu. Generuje vizualizaci vstupních funkcí, které nejvíce přispívají ke konkrétní výstupní třídě, tím, že kombinuje přístup založený na gradientu řízené zpětného šíření s lokalizačním přístupem GradCAM. Konkrétně vypočítá gradienty výstupní třídy s ohledem na mapy funkcí poslední konvoluční vrstvy v síti a poté váže každou mapu funkcí podle důležitosti její aktivace pro danou třídu. Tím se vytvoří heat mapa s vysokým rozlišením, která zvýrazní nejrozšířenější oblasti vstupního obrázku pro danou výstupní třídu. Průvodce 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á a aby se zabránilo nechybným aktivacím a negativním příspěvkům. AutoML Image Multi-class Classification, Image Multi-label Classification
Integrované přechody Integrované přechody jsou oblíbenou metodou vysvětlení pro hluboké neurální 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 vzhledem ke vstupnímu obrázku podél přímé 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é hlavní znaky. Díky integraci přechodu podél této cesty poskytuje integrované přechody měřítko toho, jak jednotlivé vstupní funkce přispívají k předpovědi, což umožňuje vygenerovat mapu atribuce. Tato mapa zvýrazňuje nejvlivnější vstupní funkce a dá se použít k získání přehledu o rozhodovacím procesu modelu. Integrované přechody lze použít k vysvětlení široké škály modelů hlubokého učení, včetně sítí CNN, RNN a transformátorů. Navíc se jedná o teoreticky uzemněnou techniku, která splňuje sadu žádoucích vlastností, jako je citlivost, invariance implementace a úplnost. AutoML Image Multi-class Classification, Image Multi-label Classification
XRAI XRAI je nová metoda saliency založená na oblastech založená na integrovaných gradientech (IG). Pře segmentuje image a iterativně testuje důležitost každé oblasti a na základě skóre přisuzování sjede menší oblasti do větších segmentů. Tato strategie přináší vysoce kvalitní a úzce ohraničené oblasti sci-ency, které převýšují stávající techniky kázalosti. XRAI je možné použít s libovolným modelem založeným na DNN, pokud existuje způsob, jak seskupit vstupní funkce do segmentů prostřednictvím metriky podobnosti. AutoML Image Multi-class Classification, Image Multi-label Classification
D-RISE D-RISE je modelově nezávislá metoda pro vytváření vizuálních vysvětlení pro předpovědi modelů detekce objektů. S využitím aspektů lokalizace a kategorizace detekce objektů může D-RISE vytvářet mapy sliency, které zvýrazňují části obrázku, které nejvíce přispívají k predikci detektoru. Na rozdíl od gradientních metod je D-RISE obecnější a nepotřebuje přístup k vnitřní činnosti detektoru objektů; vyžaduje přístup pouze ke vstupům a výstupům modelu. Metodu lze použít u jednostupňových detektorů (například YOLOv3), dvoustupňových detektorů (například Faster-RCNN) a Vision Transformers (například DETR, OWL-ViT).
D-Rise poskytuje mapu přehlednosti vytvořením náhodných masek vstupního obrázku a odešle ji detektoru objektů s náhodnými maskami vstupního obrázku. Vyhodnocením změny skóre detektoru objektů agreguje všechny detekce s každou maskou a vytvoří konečnou mapu přehlednosti.
Nezávislé na modelu Detekce objektů

Podporováno v sadě Python SDK v1

Technika interpretovatelnosti Popis Typ
Vysvětlení stromu SHAP The SHAP Tree Explainer, který se zaměřuje na polynomický, časově rychlý algoritmus SHAP pro odhad hodnoty, který je specifický pro stromy a skupiny stromů. Specifické pro model
Hloubkový vysvětlení SHAP Na základě vysvětlení z SHAP, Deep Explainer je "vysokorychlostní aproximace algoritmu pro hodnoty SHAP v modelech hlubokého učení, který staví na spojení s DeepLIFT popsané 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
Lineární vysvětlení SHAP Lineární vysvětlení SHAP vypočítá hodnoty SHAP pro lineární model a volitelně počítá korelace mezi funkcemi. Specifické pro model
Vysvětlení jádra SHAP Vysvětlení jádra SHAP 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áhrada) Mimic Explainer je založen na myšlence trénování globálních náhradních modelů tak, aby napodobily modely neprůchožných rámečků. Globální náhradní model je vnitřně interpretovatelný model, který je vytrénovaný tak, aby co nejpřesněji odhadl predikce jakéhokoli neprůsobního modelu . Datoví vědci mohou interpretovat náhradní model a vyvozovat závěry o modelu neprůhlhlých rámečků. Jako náhradní model můžete použít jeden z následujících interpretovatelných modelů: LightGBM (LGBMExplainableModel), Linear Regression (LinearExplainableModel), Stochastic Gradient Sestup vysvětlitelný model (SGDExplainableModel) nebo Rozhodovací strom (DecisionTreeExplainableModel). Nezávislá na modelu
Vysvětlení důležitosti funkce permutace Pfi (Permutation Feature Importance) je technika používaná k vysvětlení klasifikačních a regresních modelů, která je inspirovaná dokumentem Random Forests ( viz část 10). Obecně to funguje tak, že data náhodně prohazují jednu funkci pro celou datovou sadu a vypočítají, jak moc se změní metrika výkonu, která vás zajímá. Čím větší je změna, tím důležitější je tato funkce. PFI dokáže vysvětlit celkové chování jakéhokoli základního modelu , ale nevysvětlí jednotlivé předpovědi. Nezávislá na modelu

Kromě technik interpretovatelnosti popsaných výše podporujeme další vysvětlující metodu založenou na PROTOKOLU SHAP, která se nazývá Tabulkový explainer. V závislosti na modelu používá tabulkový explainer jeden z podporovaných vysvětlujících metodu SHAP:

  • Tree Explainer for all tree-based model
  • Deep Explainer for deep neural network (DNN) models
  • Lineární vysvětlení pro lineární modely
  • Vysvětlení jádra pro všechny ostatní modely

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

  • Shrnutí inicializační datové sady: Pokud je rychlost vysvětlení nejdůležitější, shrneme inicializační datovou sadu 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áváte velkou sadu vzorků vyhodnocení, ale nepotřebujete je vyhodnotit všechny, můžete nastavit parametr vzorkování na hodnotu , true abyste urychlili výpočet celkového vysvětlení modelu.

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

 Diagram architektury interpretovatelnosti strojového učení

Podporované modely strojového učení

Balíček azureml.interpret sady SDK podporuje modely, které jsou vytrénované pomocí následujících formátů datové sady:

  • 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 poskytnutý, musí implementovat prediktivní funkci predict nebo predict_proba , která je v souladu s konvencí Scikit. Pokud to váš model nepodporuje, můžete ho zabalit do funkce, která vygeneruje stejný výsledek jako predict ve Scikitu nebo predict_proba a použít tuto funkci obálky s vybraným vysvětlením.

Pokud zadáte kanál, funkce explanation předpokládá, že spuštěný skript kanálu vrátí předpověď. Když použijete tuto techniku zabalení, může podporovat modely trénované azureml.interpret prostřednictvím architektur hlubokého učení PyTorch, TensorFlow a Keras a také klasické modely 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ě, funkce sady SDK nebudou kontaktovat žádné služby Azure.

Vysvětlení můžete spustit vzdáleně ve službě Azure Machine Learning Compute a protokolovat informace o vysvětlení do služby Historie spuštění služby Azure Machine Learning. 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