GAMMA FACET: nowe podejście do uniwersalnych wyjaśnień Modele uczenia maszynowego

(Konstantin Hemker)

Autorzy: Jan Ittner, Konstantin Hemker & Malo Grisard

Szybki postęp w technologiach sztucznej inteligencji (AI) zapewnia nam stale- ewoluujący zestaw narzędzi do analizy nawet najbardziej złożonych problemów i procesów biznesowych w świecie rzeczywistym. Najnowocześniejsze algorytmy uczenia maszynowego pozwalają decydentom dokładnie przewidywać krytyczne dla biznesu wyniki, takie jak koszty, szybkość, jakość lub wydajność. Jednak najczęściej prawdziwa wartość biznesowa sztucznej inteligencji polega nie tylko na przewidywaniu wyników (którzy klienci prawdopodobnie anulują umowę?), Ale na wyjaśnianiu i optymalizacja tych wyników (co musimy zrobić, aby zatrzymać wartościowych klientów?).

Ponadto gotowość menedżera do zaakceptowania wykorzystania uczenia maszynowego do częstego podejmowania codziennych decyzji opiera się na zaufaniu do algorytmu, co z kolei wymaga zrozumienia, w jaki sposób model sztucznej inteligencji dokonuje prognoz i decyzji. Potrzeba wyjaśnienia modeli AI stanie się jeszcze ważniejsza, gdy firmy będą rozwijać większą świadomość etycznej sztucznej inteligencji i starać się projektować modele AI zdolne do bezstronnego, bezpiecznego i odpowiedzialnego podejmowania decyzji.

Wykorzystanie teorii gier kooperacyjnych do wyjaśnienia wkładu funkcji

Sztuczna inteligencja do wyjaśnienia przez człowieka odnotowała w ostatnich latach ogromne postępy, zwłaszcza wraz z pojawieniem się Shapley Additive Explanations (SHAP), jednoczącej teorii i algorytmu wykorzystującego teorię gier kooperacyjnych wyjaśnić indywidualne przewidywania modelu uczenia maszynowego. To, co czyni SHAP tak atrakcyjnym, to fakt, że pomimo jego zaawansowanych matematycznych podstaw, wyniki są intuicyjne nawet dla ogółu odbiorców.

SHAP określa ilościowo udział wszystkich zmiennych modelu w każdym przewidywanym wyniku. Na przykład, możemy użyć modelu, aby przewidzieć ryzyko wystąpienia cukrzycy u pacjenta, na podstawie takich zmiennych, jak waga, wiek i nawyki związane z ćwiczeniami. Model może nam powiedzieć, że ryzyko wynosi 67%. SHAP pójdzie dalej, mówiąc nam na przykład, że wiek pacjentki zwiększa ryzyko cukrzycy o 5%, podczas gdy jej waga zmniejsza je o 2%.

Wyjaśniająca rola inspekcji modeli i eksperymentów wirtualnych

SHAP oferuje bardzo przydatne sposoby wyjaśniania indywidualnych przewidywań. Jednak do niedawna dostępne były tylko ograniczone środki do wyjaśnienia modelu jako całości – do ogólnego wyjaśnienia, w jaki sposób zmienne działają i oddziałują na siebie w celu uzyskania prognoz. GAMMA FACET przedstawia nowe, holistyczne podejście do wyjaśniania modeli uczenia maszynowego. Robi to z dwóch punktów widzenia: po pierwsze, wykorzystuje nowo opracowany algorytm inspekcji modelu do wyjaśnienia, w jaki sposób zmienne modelu predykcyjnego współpracują ze sobą w celu przewidywania wyników poprzez identyfikację wzorców w wyjaśnieniach wielu indywidualnych prognoz. Na przykład GAMMA FACET może stwierdzić, że wagę i masę ciała należy brać pod uwagę łącznie, aby ocenić ryzyko cukrzycy, podczas gdy wskaźnik masy ciała i stosunek wzrostu do talii mogą być wymienne. Po drugie, stosuje podejście symulacyjne, aby określić w „wirtualnych eksperymentach”, w jaki sposób systematyczne zmiany kluczowych czynników wpływają na przewidywane wyniki, takie jak wpływ wieku na ryzyko cukrzycy w całej populacji pacjentów.

Studium przypadku: zapobieganie awariom w odwiertach

Najlepszym sposobem zbadania tych koncepcji jest wykorzystanie rzeczywistego przykładu . Wiercenie studni wodnej jest bardzo niebezpieczne i kosztowne. Koszty takiego wiercenia zależą od czasu potrzebnego na ukończenie odwiertu, aby rozpocząć pompowanie z niego wody. Aby zmniejszyć te koszty, wiertacze są zwykle zachęcani do wiercenia w szybszym tempie – mierzonym jako Współczynnik penetracji (ROP). W zależności od właściwości gleby stawki dzienne mogą wynosić od 30 000 do 250 000 USD. Jest jednak pewien kompromis: szybsze wiercenie zwiększa ryzyko incydentów, takich jak zapadnięcie się formacji lub infiltracja gazu. Zbudujemy zatem model uczenia maszynowego, aby zrozumieć wpływ prędkości wiercenia na ryzyko incydentu w kontekście innych czynników ryzyka.

Dla jasności w tym przykładzie używamy uproszczonego zbioru danych . Zbiór danych zawiera 500 obserwacji, z których każdy wiersz przedstawia operację wiercenia z przeszłości, wraz ze wskaźnikiem binarnym, czy podczas operacji wydarzył się incydent związany z wierceniem.

Na podstawie obecnych i przeszłych warunków pracy można użyć algorytmu predykcyjnego do ostrzeżenia operatora wiercenia o wysokie ryzyko wypadku. Operatorzy mieliby wówczas możliwość dostosowania parametrów wiercenia. Jednak często nie wystarczy wiedzieć, kiedy podjąć działanie.Operator musi również zrozumieć, dlaczego występują incydenty i jakie są optymalne warunki wiercenia, które równoważą koszt wiercenia z kosztem potencjalnego incydentu. GAMMA FACET może pomóc w dostarczeniu przydatnych informacji.

scikit-learn i Modelowanie

Aby stworzyć podstawę naszego możliwego do wyjaśnienia modelu uczenia maszynowego, musimy najpierw zbudować potok modelowy, który pozwoli nam prześledzić wszystkie dane wyjściowe modelu z powrotem do początkowych danych wejściowych, we wszystkich krokach transformacji i szkolenia.

GAMMA FACET jest zaprojektowany w oparciu o scikit-learn, de facto branżowy standard uczenia maszynowego w Pythonie. scikit-learn oferuje szeroki zakres algorytmów regresji i klasyfikacji. Oferuje również uniwersalne podejście do tworzenia potoków uczenia maszynowego, łącząc wstępne przetwarzanie danych z rzeczywistym dopasowaniem modelu w jednym zintegrowanym przepływie pracy.

FACET ulepsza scikit-learning na trzy podstawowe sposoby :

  1. Kompleksowa identyfikowalność funkcji : Podczas tworzenia natywnego scikit-learn wokół numpy i produkuje wszystkie wyjścia jako tablice numeryczne, FACET zapewnia ulepszone wersje ponad 150 transformatorów, regresorów i klasyfikatorów scikit-learning, które dostarczają wszystkie wyjścia jako ramki danych pandy. Ponadto FACET zawiera atrybuty do odwzorowywania nazw cech pochodnych z powrotem na cechy, z których one pochodzą. To mapowanie jest niezbędne, jeśli nazwy funkcji mają być określane w dalszej części potoku uczenia maszynowego.
  2. Ulepszone tworzenie potoków : FACET wprowadza dodatkowe dwuetapowe klasy potoku, które zawierają jeden krok przetwarzania wstępnego (który sam może być potokiem) i krok ucznia. Z naszego doświadczenia wynika, że ​​ten pozornie niewielki dodatek prowadzi do znacznie bardziej zwięzłego i czytelnego kodu potokowego.
  3. Ulepszona walidacja : FACET wprowadza weryfikatory krzyżowe dla kilku wariantów ładowania początkowego, techniki statystycznej, która jest szczególnie istotna w kontekście możliwości symulacyjnych FACET.

Wracając do przykładu wiercenia, oto jak możemy może utworzyć potok przy użyciu obsługi FACET do śledzenia funkcji:

Jak widać na tym fragmencie kodu, powyższy potok wygląda prawie dokładnie tak samo, jak potok zbudowany przy użyciu czystego scikit-learn . Zwróć jednak uwagę, że importujemy wszystkie potoki, transformatory i estymatory z pakietu sklearndf FACET-a oraz że wszystkie nazwy znanych klas scikit-learn mają Sufiks „DF”. Zwróć także uwagę na specjalny ClassifierPipelineDF, jeden z ulepszonych potoków FACET, obejmujący jeden opcjonalny krok przetwarzania wstępnego, wraz z kolejnym krokiem uczestnika, który gwarantuje, że będzie klasyfikatorem. Jak widać na wyjściu, wynikiem wstępnego przetwarzania jest ramka danych, która zachowuje wszystkie nazwy funkcji.

Następnie chcemy dostroić hiperparametry naszego modelu za pomocą funkcji FACET LearnerRanker. LeanerRanker działa podobnie do wyszukiwarki sieci scikit-learn , ale znacznie ułatwia konkurowanie ze sobą kilku typów modeli, zamiast optymalizować hiper- parametry jednego modelu:

Objaśnienia modelu: co powoduje incydenty?

Mamy teraz dostrojony i wyszkolony model, który przewiduje ryzyko incydentu podczas naszych operacji wiertniczych. Chcemy jednak być bardziej proaktywni niż tylko wdrażanie modelu i reagowanie ad hoc na przewidywane ryzyko. Zamiast tego chcemy wiedzieć, czego nauczył się model o tym, dlaczego i kiedy zdarzają się incydenty. Chcemy, aby model pomógł nam zrozumieć, w jaki sposób możemy systematycznie zmieniać sposób, w jaki obsługujemy nasze maszyny wiertnicze, aby zmniejszyć ryzyko incydentu.

FACET podchodzi do wyjaśniania modelu jako kombinacji dwóch metod:

  1. Wyjaśnienie globalnych interakcji funkcji : Ta metoda informuje nas, czego nauczył się model o tym, jak funkcje wnoszą swój wkład zarówno indywidualnie, jak i zbiorowo do wyników. FACET wprowadza nowy algorytm, który dla każdej pary cech określa ilościowo synergię, redundancję i niezależność (więcej szczegółów poniżej). Algorytm ten jest oparty na rozkładzie wektorów SHAP , matematycznej strukturze, którą opracowaliśmy w celu wyjaśnienia modelu globalnego i którą szczegółowo opiszemy w kolejnej publikacji.
  2. Symulacje oparte na modelu : Ta metoda pozwala nam określić, w jaki sposób systematyczne zmiany funkcji pomogą osiągnąć pożądany rezultat, w tym przypadku w celu zminimalizowania ryzyka awarii wiertła. Osiągamy ten wynik, tworząc syntetyczne próbki dla zakresu wartości, a następnie wykorzystując model do oceny zmian przewidywanego ryzyka. Jak zobaczysz poniżej, zrozumienie globalnych interakcji funkcji (tj. Metoda 1) jest niezbędnym krokiem do upewnienia się, że nasze symulacje są prawidłowe w rzeczywistych warunkach.

W naszym przykładzie wiercenia , Klasa LearnerInspector FACET zawiera przegląd interakcji funkcji poprzez obliczanie parami synergii i redundancji :

Redundancja i synergia macierz

Rezultatem są dwie macierze, które dla dowolnej pary cech określają procentowo stopień synergii oraz redundancja między tymi dwiema cechami.

Synergia

Synergia to stopień, w jakim model łączy informacje z jednej cechy z drugą, aby przewidzieć cel. Na przykład załóżmy, że przewidujemy zdrowie układu sercowo-naczyniowego na podstawie wieku i płci, a dopasowany model obejmuje złożoną interakcję między nimi. Oznacza to, że te dwie cechy są synergistyczne w przewidywaniu zdrowia sercowo-naczyniowego. Ponadto obie funkcje są ważne dla modelu, a usunięcie jednej z nich znacząco wpłynie na wydajność. Załóżmy, że wiek jest ważniejszą cechą niż płeć, więc wiek ma większy wpływ na połączone prognozy niż płeć. Ten asymetryczny wkład oznacza, że ​​synergia (wiek, płeć) jest mniejsza niż synergia (płeć, wiek). Aby pomyśleć o tym w inny sposób, wyobraź sobie, że prognoza jest współrzędną, do której próbujesz dotrzeć. Od punktu wyjścia wiek przybliża cię do tego punktu niż płeć, jednak potrzebujesz obu, aby się tam dostać. Synergia odzwierciedla fakt, że płeć uzyskuje większą pomoc z wieku (większa synergia z perspektywy płci) niż wiek z płci (mniejsza synergia z perspektywy wieku), aby osiągnąć prognozę.

Prowadzi to do Ważny punkt: synergia jest naturalnie asymetryczną właściwością informacji globalnej, a dwie oddziałujące ze sobą cechy przyczyniają się do prognozowania modelu. Synergia jest wyrażana procentowo w zakresie od 0% (pełna autonomia) do 100% (pełna synergia). Zwróć uwagę, że cechy synergiczne mogą być całkowicie nieskorelowane i mogą być trudne do wykrycia poprzez regularną analizę eksploracyjną.

Aby zinterpretować macierz synergii, pierwszą cechą w parze jest wiersz („Perspektywa z”), a druga zawiera kolumnę. W naszym przykładzie wiercenia FACET podaje, że „z perspektywy” prędkości obrotowej, 67% informacji jest połączonych z ciężarem wiertła, aby przewidzieć awarię. Wydaje się to rozsądne w kontekście, ponieważ wiercenie zarówno z dużą masą wiertła, jak i dużą rotacją może mieć nieproporcjonalnie duży wpływ na zużycie sprzętu, a więc drastycznie zwiększyć ryzyko incydentu. Zrozumiałe jest, że synergia jest również duża z punktu widzenia ciężaru na wędzidle (61%). To mówi nam, że powinniśmy spojrzeć razem na prędkość obrotową i wagę wędzidła, aby zrozumieć ich wpływ na ryzyko incydentu.

Nadmiarowość

Nadmiarowość to stopień, w jakim cecha w modelu powiela informacje o drugiej funkcji, aby przewidzieć cel. Na przykład załóżmy, że do prognozowania ceny domu mamy rozmiar domu i liczbę sypialni. Te cechy pozwalają na uzyskanie podobnych informacji, ponieważ im więcej sypialni, tym większy dom i prawdopodobnie wyższa średnia cena. Nadmiarowość dla (liczba sypialni, powierzchnia domu) będzie większa niż nadmiarowa dla (wielkość domu, liczba sypialni). Dzieje się tak, ponieważ wielkość domu „wie” więcej o tym, jaka liczba sypialni wpływa na prognozowanie ceny domu, niż na odwrót. Stąd jest większa redundancja z punktu widzenia liczby sypialni. Innym sposobem, aby o tym pomyśleć, jest to, że usunięcie rozmiaru domu będzie bardziej szkodliwe dla wydajności modelu niż usunięcie liczby sypialni, ponieważ rozmiar domu może lepiej zrekompensować brak liczby sypialni. Oznacza to również, że wielkość domu byłaby ważniejsza niż liczba sypialni w modelu.

Ważne jest tutaj to, że podobnie jak synergia, nadmiarowość jest naturalnie asymetryczną właściwością funkcji informacji globalnej. pary mają do przewidywania wyniku. Redundancja jest wyrażana procentowo w zakresie od 0% (pełna niepowtarzalność) do 100% (pełna redundancja). W analizie eksploracyjnej niekoniecznie można dostrzec nadmiarowość, jeśli dwie cechy są redundantne, ale nie są skorelowane liniowo.

Podobnie jak w przypadku synergii, wiersz macierzy to cecha „perspektywa z” w parze cech wiersz-kolumna.W naszym przykładzie wiercenia obserwujemy dwie pary wysoce redundantnych funkcji:

  • Pierwsza nadmiarowa para funkcji to ROP i IROP. Nadmiarowość jest podobna z punktu widzenia każdej cechy (75%), ponieważ jedna jest odwrotnością drugiej, a więc mogą one zastępować się w modelu ryzyka incydentu. Jest to dobry przykład zdolności FACET do wychwytywania nadmiarowości między elementami, nawet jeśli nie są one liniowo skorelowane.
  • Druga para funkcji nadmiarowych to głębokość działania i średnica otworu. Z punktu widzenia średnicy otworu 53% informacji jest dublowanych wraz z głębokością operacji w celu przewidzenia awarii. Intuicyjnie możemy zrozumieć dlaczego, ponieważ głębokość pracy i średnica otworu są ze sobą ściśle powiązane, ponieważ wiertacze używają cieńszych wierteł podczas wiercenia głębiej w ziemi. Powodem, dla którego nadmiarowość (głębokość operacji, średnica otworu) jest nieco mniejsza niż (średnica otworu, głębokość operacji), jest to, że głębokość operacji jest nieco ważniejszą cechą modelu.

FACET może stworzyć drugi typ diagramu, który jest bardzo przydatny do oceny relacji synergii lub nadmiarowości, jako hierarchiczny dendrogram grupowania. Należy zwrócić uwagę, że to podejście opiera się na symetrycznym wariancie redundancji (lub synergii), który zapewnia nie tylko uproszczoną perspektywę, ale także odległość cech (1 – metryczna) na potrzeby grupowania. W naszym przykładzie interesuje nas dendrogram redundancji:

Dendrogram nadmiarowości funkcji Faceta

Dendrogram nadmiarowości ujawnia skupiska funkcji nadmiarowych, wskazuje stopień wzajemnej redundancji między cechami w klastrze (dalsze lewe cechy są scalone na dendrogramie, tym silniejsza jest ich redundancja) i za pomocą skali kolorów pokazuje ważność cech dla poszczególnych cech i grup cech.

Nasze dwie pary redundantnych cech są wyraźnie rozpoznawalne na dendrogramie, w tym ich łączne znaczenie. Współczynnik penetracji (ROP) jest wysoce redundantny ze swoją funkcją odwrotną (ZPORR) (> 80% redundancji), a łączne znaczenie obu cech wynosi 36%. Biorąc pod uwagę, że chcemy symulować ROP, usuniemy ZPORR, aby upewnić się, że funkcja, którą symulujemy, ma unikalny wpływ na wynik (bardziej szczegółowe wyjaśnienie przedstawimy w następnej sekcji).

Jest ciekawa obserwacja, gdy generujemy nowy dendrogram redundancji po usunięciu ZPORR i przeuczeniu modelu: Znaczenie cech RPO wzrosło do 35%, co wskazuje, że RPO przyjął rolę dawnego klastra RPO / ZPORR w wyjaśnianiu RPO związany z ryzykiem incydentu.

Dendrogram powiązań nadmiarowych po wyczyszczeniu funkcji

Symulowanie podniesienia funkcji

Po sprawdzeniu modelu, osiągnęliśmy dobre zrozumienie, w jaki sposób model tworzy prognozy i jak predyktory oddziałują ze sobą.

Często te spostrzeżenia prowadzą prosto do pytania „co by było, gdyby”: H Jak możemy systematycznie zmieniać zmienną, na którą ma wpływ, aby poprawić wynik? W naszym przykładzie chcemy zrozumieć, jak zmiany wskaźnika penetracji wpływają na ryzyko incydentu. Z ekonomicznego punktu widzenia operatorzy wierteł będą starali się wiercić tak szybko, jak to możliwe, zachowując bezpieczeństwo i ograniczając liczbę awarii. Podobne pytania dotyczą innych kontekstów biznesowych, w których celem jest obniżenie kosztów, maksymalizacja zysków, zatrzymanie klientów lub, w istocie, optymalizacja dowolnego wyniku biznesowego na podstawie danych.

Podejście symulacyjne FACET wyróżnia jedną funkcję, a następnie uruchamia serię „wirtualnych eksperymentów” dla zakresu wartości, udając dla każdego eksperymentu, że symulowana funkcja zawsze przyjmowała określoną wartość dla każdej obserwacji historycznej.

W tym podejściu kluczowe jest, aby symulowana funkcja była nie jest zbędny z żadną inną funkcją w modelu. Takie postępowanie groziłoby stworzeniem niewykonalnych scenariuszy poprzez dostosowanie wartości jednej funkcji, ale nie jej zbędnego rodzeństwa. Jeśli w naszym przykładzie mielibyśmy symulować ROP dla zakresu wartości, ale zachowalibyśmy IROP w modelu, najprawdopodobniej stworzylibyśmy niewykonalne scenariusze.

Symulacja jest przeprowadzana w dwóch krokach: Po pierwsze, decydujemy, która funkcja ma być zasymulowana i wybieramy jedną z klas partycji FACET-a, aby podzielić zakres wcześniej obserwowanych wartości dla tej funkcji na partycje . Po drugie, uruchamiamy jedną symulację na partycję, za każdym razem ustalając wartość symulowanej funkcji na centralnej wartości partycji we wszystkich obserwacjach.

Dlatego w naszym przykładzie symulacja zadaje pytanie: „Co moje średnie ryzyko incydentu wynosiło, czy zawsze ćwiczyłem z X m / s ROP?”ROP jest mierzone jako liczba rzeczywista, więc używamy ContinuousRangePartitioner do utworzenia serii równych wielkości partycji w zakresie wartości historycznie obserwowanych dla ROP. Ważne jest, abyśmy symulowali tylko w historycznie obserwowanym zakresie wartości, ponieważ model został przeszkolony na wartościach z tego zakresu i zwykle nie będzie w stanie wymyślić prawidłowych ekstrapolacji poza zakresem.

Krok 1 symulacji – podzielenie obserwowanych wartości funkcji ROP na segmenty o jednakowej wielkości

Korzystanie najlepszy model, który wcześniej zidentyfikowaliśmy na podstawie LearnerRanker, symulator określa teraz średnie przewidywane ryzyko incydentów dla każdej partycji. FACET obsługuje ładowanie początkowe, umożliwiając nam wielokrotne powtarzanie każdej symulacji na wariacjach modelu wytrenowanego w różnych podzbiorach danych oraz wykorzystanie rozkładu wyników symulacji do ilościowego określenia poziomu zaufania do symulacji.

Krok 2 symulacji – Symulacja wyników dla różnych wartości funkcji ROP

Powyższa wizualizacja pokazuje wpływ ROP na ryzyko incydentu, jednocześnie dając poczucie pewności w symulacji. Oś X przedstawia różne partycje, dla których przeprowadzono symulację. Słupki poniżej osi x pokazują liczbę obserwacji w oryginalnej próbce, które mieszczą się w podziale, wskazując wsparcie, jakie mamy dla każdej symulowanej wartości. (Zwróć uwagę, jak przedział ufności rozszerza się w kierunku marginesów, ponieważ widzimy mniej faktycznie obserwowanych wartości dla tych podziałów). Środkowa rosnąca linia przedstawia medianę przewidywanego ryzyka incydentu dla każdego podziału, podczas gdy linie zewnętrzne przedstawiają 95% przedział ufności wszystkich walidacja oddziela się od naszej prognozy.

Symulacja potwierdza, że ​​prawdopodobieństwo incydentu znacznie wzrasta, gdy zwiększamy ROP. Daje wgląd w poziomy ryzyka funkcjonowania przy szybszym RPO. Widzimy również, że wielokrotnie zdarzało się, że ROP działał na niebezpiecznie wysokim poziomie (> 30 stóp / h), co prowadziło do prawdopodobieństwa wystąpienia powyżej 70%.

Co dalej?

Z biznesowego punktu widzenia uzyskanie odpowiedzi na te pytania typu „co by było, gdyby” było niezwykle cenne w procesie oceny ryzyka i znajdowanie sposobów na usprawnienie obecnych procesów. W naszym przykładzie podróż na tym by się nie skończyła. Opierając się na wynikach symulacji, następnym krokiem mogłoby być przeprowadzenie analizy kosztów i korzyści wiercenia z wolniejszym lub szybszym RPO, aby uzyskać najlepszy kompromis między kosztem wiercenia a ryzykiem finansowym incydentu wiertniczego.

Możesz łatwo zabrać GAMMA FACET na przejażdżkę. Po prostu conda install gamma-facet -c bcg_gamma -c conda-forge i przejrzyj nasze repozytorium GitHub , aby uzyskać dalszą dokumentację i opracowane przykłady.

Podziękowania

Ten pakiet nie byłoby możliwe bez dwóch znakomitych pakietów Pythona do uczenia maszynowego i wyjaśniania modeli:

1. scikit-learn udostępnia uczniom i transformatorom, którzy tworzą podstawowe potoki uczenia maszynowego FACET. Co więcej, zaprojektowaliśmy interfejs API FACET zgodnie z podstawowym paradygmatem dopasowania / transformacji / przewidywania – uczy się on, aby umożliwić naukowcom zajmującym się danymi łatwy start z FACET.

2. Implementacja SHAP autorstwa Scotta Lundberga służy do szacowania wektorów SHAP rozkładanych na synergię wektory nadmiarowości i niezależności.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *