Technické reference k algoritmu logistické regrese microsoftu

Platí pro: SQL Server 2019 a starší služby Analysis Services Azure Analysis Services Fabric/ Power BI Premium

Důležité

Dolování dat bylo v SQL Serveru 2017 Analysis Services zastaralé a nyní ukončeno ve službě SQL Server 2022 Analysis Services. Dokumentace se neaktualizuje pro zastaralé a ukončené funkce. Další informace najdete v tématu Zpětná kompatibilita služby Analysis Services.

Algoritmus logistické regrese microsoftu je varianta algoritmu Microsoft Neural Network, kde je parametr HIDDEN_NODE_RATIO nastaven na hodnotu 0. Toto nastavení vytvoří model neurální sítě, který neobsahuje skrytou vrstvu, a proto je ekvivalentní logistické regresi.

Implementace algoritmu logistické regrese Společnosti Microsoft

Předpokládejme, že předvídatelný sloupec obsahuje pouze dva stavy, ale přesto chcete provést regresní analýzu, která se vztahuje ke vstupním sloupcům s pravděpodobností, že předvídatelný sloupec bude obsahovat konkrétní stav. Následující diagram znázorňuje výsledky, které získáte, pokud přiřadíte 1 a 0 stavům předvídatelného sloupce, vypočítáte pravděpodobnost, že sloupec bude obsahovat určitý stav, a provede lineární regresi vůči vstupní proměnné.

Špatně modelovaná data pomocí lineární regrese

Osa x obsahuje hodnoty vstupního sloupce. Osa y obsahuje pravděpodobnosti, že předpovězený sloupec bude ve stavu buď jednoho, nebo druhého. Problém s tím spočívá v tom, že lineární regrese neomezuje sloupec tak, aby byl mezi 0 a 1, i když se jedná o maximální a minimální hodnoty sloupce. Způsob, jak tento problém vyřešit, je provést logistickou regresi. Místo vytvoření přímky vytvoří logistická regresní analýza křivku ve tvaru S, která obsahuje maximální a minimální omezení. Následující diagram například znázorňuje výsledky, které dosáhnete, když provedete logistickou regresi se stejnými daty jako v předchozím příkladu.

Data modelovaná pomocí logistické regrese

Všimněte si, že křivka nikdy nepřesáhne 1 nebo pod 0. Logistickou regresi můžete použít k popisu důležitých vstupních sloupců při určování stavu předvídatelného sloupce.

Výběr funkcí

Výběr funkcí se automaticky používá všemi algoritmy dolování dat Analysis Services ke zlepšení analýzy a snížení zatížení zpracování. Metoda použitá pro výběr funkcí v logistickém regresním modelu závisí na datovém typu atributu. Vzhledem k tomu, že logistická regrese je založená na algoritmu Microsoft Neural Network, používá podmnožinu metod výběru funkcí, které se vztahují na neurální sítě. Další informace najdete v tématu Výběr funkcí (dolování dat).

Bodovací vstupy

Skórování v kontextu modelu neurální sítě nebo modelu logistické regrese znamená proces převodu datových hodnot na sadu hodnot, které používají stejnou skálu, a proto je možné je vzájemně porovnat. Předpokládejme například, že vstupy pro příjem jsou v rozsahu od 0 do 100 000, zatímco vstupy pro [Počet dětí] jsou od 0 do 5. Tento proces převodu umožňuje porovnat důležitost každého vstupu bez ohledu na rozdíl v hodnotách.

Pro každý stav, který se zobrazí v trénovací sadě, model vygeneruje vstup. Pro diskrétní nebo diskretizované vstupy se vytvoří další vstup, který představuje chybějící stav, pokud se v trénovací sadě zobrazí aspoň jednou. Pro průběžné vstupy se vytvoří nejvýše dva vstupní uzly: jeden pro chybějící hodnoty, pokud se nachází v trénovacích datech, a jeden vstup pro všechny existující nebo nenulové hodnoty. Každý vstup se škáluje na číselný formát pomocí metody normalizace skóre z , (x - μ)\StdDev.

Během normalizace skóre z se získá střední hodnota (μ) a směrodatná odchylka z celé trénovací sady.

Souvislé hodnoty

Hodnota je přítomna: (X - μ)/σ (X je skutečná hodnota, která se kóduje)

Hodnota chybí: - μ/σ (záporná mu dělená sigma)

Diskrétní hodnoty

μ = p (předchozí pravděpodobnost stavu)

Směrodatná odchylka = sqrt(p\(1-p))

Hodnota je přítomna: \(1 - μ)/σ (Jedna minus μ děleno σ)

Hodnota není k dispozici: (- μ)/σ (záporné μ dělené σ)

Principy logistických regresních koeficientů

Ve statistické literaturě existují různé metody pro provádění logistické regrese, ale důležitou součástí všech metod je posouzení shody modelu. Byly navrženy různé statistiky dobrého přizpůsobení, mezi nimi pravděpodobnostní poměry a kovariantní vzory. Diskuse o tom, jak měřit přizpůsobení modelu, je nad rámec tohoto tématu; Můžete však načíst hodnotu koeficientů v modelu a použít je k návrhu vlastních měr přizpůsobení.

Poznámka:

Koeficienty vytvořené jako součást logistického regresního modelu nepředstavují poměry pravděpodobností a neměly by být interpretovány jako takové.

Koeficienty pro každý uzel v grafu modelu představují vážený součet vstupů do daného uzlu. V logistickém regresním modelu je skrytá vrstva prázdná; proto existuje pouze jedna sada koeficientů, která je uložena ve výstupních uzlech. Hodnoty koeficientů můžete načíst pomocí následujícího dotazu:

SELECT FLATTENED [NODE_UNIQUE NAME],  
(SELECT ATTRIBUTE_NAME< ATTRIBUTE_VALUE  
FROM NODE_DISTRIBUTION) AS t  
FROM <model name>.CONTENT  
WHERE NODE_TYPE = 23  

Pro každou výstupní hodnotu tento dotaz vrátí koeficienty a ID, které odkazuje zpět na související vstupní uzel. Vrátí také řádek, který obsahuje hodnotu výstupu a průsečíku. Každý vstup X má vlastní koeficient (Ci), ale vnořená tabulka obsahuje také "volný" koeficient (Co), vypočítaný podle následujícího vzorce:

F(X) = X1*C1 + X2*C2 + ... +Xn*Cn + X0

Aktivace: exp(F(X)) / (1 + exp(F(X)) )

Další informace najdete v tématu Příklady dotazů modelu logistické regrese.

Přizpůsobení algoritmu logistické regrese

Algoritmus logistické regrese Společnosti Microsoft podporuje několik parametrů, které ovlivňují chování, výkon a přesnost výsledného modelu dolování. Chování modelu můžete také upravit nastavením příznaků modelování u sloupců použitých jako vstup.

Nastavení parametrů algoritmu

Následující tabulka popisuje parametry, které lze použít s algoritmem logistické regrese Microsoftu.

PERCENTO_PRO_ODLOŽENÍ
Určuje procento případů v trénovacích datech použitých k výpočtu chyby blokování. HOLDOUT_PERCENTAGE se používá jako součást kritérií zastavení při trénování modelu dolování.

Výchozí hodnota je 30.

HOLDOUT_SEED
Určuje číslo, které se má použít k začátečnímu osazení pseudonáhodného generátoru při náhodném určení vyčleněných dat. Pokud je HOLDOUT_SEED nastavena na hodnotu 0, algoritmus vygeneruje počáteční hodnotu na základě názvu modelu dolování, aby zajistil, že obsah modelu zůstane během opětovného zpracování stejný.

Výchozí hodnota je 0.

MAXIMUM_INPUT_ATTRIBUTES
Definuje počet vstupních atributů, které může algoritmus zpracovat, než vyvolá výběr funkce. Nastavením této hodnoty na hodnotu 0 vypnete výběr funkcí.

Výchozí hodnota je 255.

MAXIMUM_OUTPUT_ATTRIBUTES
Definuje počet výstupních atributů, které může algoritmus zpracovat předtím, než vyvolá výběr funkce. Nastavením této hodnoty na hodnotu 0 vypnete výběr funkcí.

Výchozí hodnota je 255.

MAXIMUM_STATES
Určuje maximální počet stavů atributů, které algoritmus podporuje. Pokud je počet stavů, které má atribut, větší než maximální počet stavů, algoritmus použije nejoblíbenější stavy atributu a ignoruje zbývající stavy.

Výchozí hodnota je 100.

SAMPLE_SIZE
Určuje počet případů, které se mají použít k trénování modelu. Poskytovatel algoritmu používá buď toto číslo, nebo procento celkového počtu případů, které nejsou zahrnuté v procentech blokování, jak je specifikováno parametrem HOLDOUT_PERCENTAGE, podle toho, která hodnota je menší.

Jinými slovy, pokud je HOLDOUT_PERCENTAGE nastavena na hodnotu 30, algoritmus použije hodnotu tohoto parametru nebo hodnotu, která se rovná 70 procentům celkového počtu případů, podle toho, co je menší.

Výchozí hodnota je 1 0000.

Příznaky modelování

Následující příznaky modelování jsou podporovány pro použití s algoritmem Logistické regrese Microsoftu.

NESMÍ BÝT NULL
Označuje, že sloupec nemůže obsahovat hodnotu null. Pokud služba Analysis Services během trénování modelu narazí na hodnotu null, dojde k chybě.

Platí pro sloupce struktury dolování.

MODEL_EXISTENCE_ONLY
Znamená, že se sloupec bude považovat za dva možné stavy: Chybějící a Existující. Hodnota null chybí.

Platí pro sloupec modelu dolování.

Požadavky

Model logistické regrese musí obsahovat klíčový sloupec, vstupní sloupce a alespoň jeden předvídatelný sloupec.

Vstupní a předvídatelné sloupce

Algoritmus logistické regrese společnosti Microsoft podporuje konkrétní typy obsahu vstupního sloupce, předvídatelné typy obsahu sloupců a příznaky modelování uvedené v následující tabulce. Další informace o tom, co typy obsahu znamenají při použití v modelu dolování, naleznete v tématu Typy obsahu (Dolování dat).

Sloupec Typy obsahu
Vstupní atribut Průběžný, diskrétní, diskretizovaný, klíč, tabulka
Předvídatelný atribut Průběžný, diskrétní, diskretizovaný

Viz také

Algoritmus logistické regrese Microsoftu
Příklady dotazů modelu lineární regrese
Obsah modelu dolování pro logistické regresní modely (Analysis Services – Dolování dat)
Algoritmus neurální sítě Microsoftu