Suchá definice nám říká, že interpretovatelnost modelu je schopnost schvalovat a interpretovat rozhodování prediktivního modelu, tak aby byla umožněna transparentnost v rozhodovacím procesu. Řečeno prostě, lidé chtějí být u kormidla a rozhodují se rádi sami. AI modulům nechtějí jen slepě věřit jako kouzelné černé skříňce ze které padají předpovědi. Chtějí i jasné a pochopitelné zdůvodnění, proč se model rozhodl právě tak. Zkrátka samostatnou ale nečitelnou umělou inteligenci pomalu ale jistě nahrazuje pochopitelná „rozšířená inteligence“. Dnes si představíme tři nejlepší knihovny, které nám s tímto mohou pomoci.
Všechny tři knihovny jsem o víkendu důkladně testoval a rozchodil v Colabu, takže pokud budete mít problém stačí napsat. Na obrázku je vítězný model Titaniku studentů z Ječné ze skupiny TMT vylepšený o knihovnu ELI5. Obrázek zdůvodňuje proč si model „myslí“, že se pasažér 10 z testovacího datasetu nepřežije. Je to hlavně ze 3 důvodů:
1) je to muž (sex=1)
2) většina lidí na Titaniku nepřežila (BIAS)
3) koupil si lístek do třetí třídy (Pclass=3).
Jeho šance naopak lehce zvedá to, že:
1) mu 22 let(Age=22)
2) nalodil se v dobrém přístavu (Embarked=2).
A nyní už ke knihovnám:
1. LIME (Limetka)
LIME (Local Interpretable Model-agnostic Explanations čili Lokální interpretovatelná modelová agnostická vysvětlení) nám může důvěryhodným způsobem vysvětlovat předpovědi složitých modelů, a to tak, že jej pro daný případ zjednoduší do interpretovatelného modelu. Limetka je schopna vysvětlit jakýkoliv model pomocí dvou nebo více tříd. V současné době LIME podporuje dva typy vstupů tabulková a textová data.
2. SHAP
SHAP (SHapley Additive exPlanations)
Je sjednocená pythonová knihovna, která vysvětluje výstup jakéhokoliv modelu strojového učení. Spojuje v sobě teorii her s vysvětlením. Sjednocuje několik předchozích metod a představuje konzistentní a lokálně přesnou metodu přiřazování feature založenou na očekávání.
3. ELI5
ELI5 umožňuje vizualizovat a ladit různé modely strojového učení pomocí unifikovaného API. Tato knihovna pomáhá ladit klasifikátory strojového učení a vysvětlit jejich předpovědi. Poskytuje podporu například pro sci-kit, XGBoost, LightGBM, CatBoost atd. Tato knihovna také implementuje několik algoritmů pro kontrolu černobílých modelů, jako je TextExplainer, který umožňuje vysvětlit předpovědi jakéhokoli textového klasifikátoru pomocí algoritmu LIME a metody Permutace, která může být použita pro výpočet důležitosti featur a pro odhady black boxů.
Zdroje:
Lime: https://github.com/marcotcr/lime
Shap: https://github.com/slundberg/shap
Eli 5: https://github.com/TeamHG-Memex/eli5
Volně podle: https://www.analyticsindiamag.com/4-python-libraries-for-g…/