Articles

sigmoidní funkce

co je sigmoidní funkce?

sigmoidní funkce je matematická funkce, která má charakteristickou křivku ve tvaru písmene S. Existuje řada běžných sigmoidních funkcí, jako je logistická funkce, hyperbolická tečna a arctangent

. Ve strojovém učení se termín

sigmoidní funkce obvykle používá ke specifickému označení logistické funkce, nazývané také logistická sigmoidní funkce.

Všechny sigmoid funkce mají tu vlastnost, že jsou mapy celé číslo linky v malém rozsahu, například mezi 0 a 1, nebo -1 a 1, takže jedno použití sigmoidní funkce je převést na reálné hodnoty do jedné, která může být interpretována jako pravděpodobnost.

Jeden z nejvíce široce používá sigmoidní funkce je logistická funkce, která přiřazuje každé reálné hodnotě rozsahu (0, 1). Všimněte si charakteristického tvaru S, který dal sigmoidním funkcím jejich jméno (z řeckého písmene sigma).

sigmoidní funkce se staly populární v hlubokém učení, protože mohou být použity jako aktivační funkce v umělé neuronové síti. Inspirovali se aktivačním potenciálem v biologických neuronových sítích.

sigmoidní funkce jsou také užitečné pro mnoho aplikací strojového učení, kde je třeba převést reálné číslo na pravděpodobnost. Sigmoidní funkce umístěná jako poslední vrstva modelu strojového učení může sloužit k převodu výstupu modelu na skóre pravděpodobnosti, se kterým lze snáze pracovat a interpretovat.

sigmoidní funkce jsou důležitou součástí logistického regresního modelu. Logistická regrese je modifikace lineární regrese pro klasifikaci dvou tříd a převádí jeden nebo více reálných vstupů na Pravděpodobnost, jako je pravděpodobnost, že zákazník zakoupí produkt. Konečná fáze logistického regresního modelu je často nastavena na logistickou funkci, která umožňuje modelu výstup pravděpodobnosti.

vzorec sigmoidní funkce

všechny sigmoidní funkce jsou monotónní a mají první derivaci ve tvaru zvonu. Existuje několik sigmoidních funkcí a některé z nejznámějších jsou uvedeny níže.

tři nejběžnější sigmoidní funkce: logistická funkce, hyperbolická tečna a arctangent. Všechny mají stejný základní tvar S.

vzorec logistické sigmoidní funkce

jednou z nejběžnějších sigmoidních funkcí je logistická sigmoidní funkce. Toto je často označováno jako sigmoidní funkce v oblasti strojového učení. Logistická sigmoidní funkce je definována následovně:

Matematické definice logistický sigmoid funkce, společné sigmoidní funkci,

logistická funkce má žádnou skutečnou hodnotou vstupů a výstupů hodnotu mezi nulou a jedničkou.

vzorec hyperbolické tečné funkce

Další běžnou sigmoidní funkcí je hyperbolická funkce. To mapuje jakýkoli reálný vstup do rozsahu mezi -1 a 1.

Matematické definice hyperbolický tangens

Funkce Arkustangens Vzorec

třetí alternativu sigmoid funkce arkustangens, která je inverzní funkce tangens.

arkustangens funkce

arkustangens funkce přiřazuje každé reálné hodnotě vstupního rozsahu −π/2 do π/2.

v níže uvedených grafech vidíme jak tečnou křivku, známou trigonometrickou funkci, tak arctangent, jeho inverzní:

Výpočet Sigmoid Funkce

Příklad Výpočtu Logistický Sigmoid Funkce

Užívání logistický sigmoid funkce, můžeme vypočítat hodnotu funkce na několik klíčových bodů k pochopení funkce formuláře.

při x = 0 se logistické sigmoidní funkce vyhodnotí na:

Toto je užitečné pro výklad esovité jako pravděpodobnost, že v modelu logistické regrese, protože to ukazuje, že nulové vstupní výsledky ve výstupní 0,5, což znamená stejné pravděpodobnosti obou tříd.

při x = 1 najdeme o něco větší hodnotu:

a X = 5 se hodnota sigmoidní funkce velmi blíží 1.

Ve skutečnosti, v limitu x tendenci k nekonečnu, sigmoid funkce konverguje k 1 a k -1 v případě záporné nekonečno, ale derivace funkce nikdy dosáhne nuly. Jedná se o velmi užitečné vlastnosti sigmoidní funkce, protože má sklon k limitu, ale vždy má nenulový gradient.

příklad výpočtu hyperbolické tečné funkce

podobně můžeme vypočítat hodnotu funkce tanh v těchto klíčových bodech. Spíše než být soustředěn kolem 0,5, funkce tanh je soustředěna na 0.

Na 1, tanh funkce se zvýšil relativně mnohem rychleji než logistické funkce:

A konečně, do 5, tanh funkce má konvergované mnohem blíže k 1, do 5 desetinných míst:

Ve skutečnosti, jak hyperbolický tangens a arkustangens funkce konvergovat rychleji než logistický sigmoid funkce.

příklad výpočtu funkce Arctangent

můžeme vyhodnotit funkci arctangent ve stejných bodech, abychom zjistili, kde konverguje:

Všimněte si, že na rozdíl od dalších dvou sigmoidní funkce je uvedeno výše, arkustangens konverguje k π/2, spíše než 1. Navíc arctangent konverguje pomaleji, protože při x = 5 není ani blízko své konečné hodnotě. Pouze poměrně velkými čísly, jako je x = 5000, se arctangent dostane velmi blízko π / 2.

souhrn tří sigmoidních funkcí

můžeme porovnat klíčové vlastnosti tří sigmoidních funkcí uvedených výše v tabulce:

Sigmoid function Logistic function tanh arctan
Value in the limit x →-∞ 0 -1 -π/2
Value at x = 0 0.5 0 0
Value in the limit x →∞ 1 1 π/2
Converges Fast Very fast Very slow

Sigmoid Function vs. ReLU

V moderní umělé neuronové sítě, to je běžné vidět v místě esovité funkce, usměrňovač, také známý jako usměrněné lineární jednotky, nebo ReLU, se používá jako aktivační funkce. V ReLU je definována jako:

Definice usměrňovač aktivace funkce

Graf funkce ReLU

ReLU funkce má několik hlavních výhod oproti sigmoid funkce v neuronové síti. Hlavní výhodou je, že funkce ReLU je velmi rychlá. Kromě toho, aktivační potenciál v biologické neuronové sítě není nadále měnit pro záporné vstupy, takže ReLU se zdá blíže k biologické skutečnosti, pokud cílem je, aby napodobit biologické systémy.

navíc pro kladné x

má funkce ReLU konstantní gradient 1, zatímco sigmoidní funkce má gradient, který rychle konverguje k 0. Tato vlastnost způsobuje, že neuronové sítě s aktivačními funkcemi sigmoidu se pomalu trénují. Tento jev je znám jako problém mizejícího gradientu. Výběr ReLU jako aktivační funkce zmírňuje tento problém, protože gradient ReLU je vždy 1 pro kladné,

x, a tak proces učení nebude zpomalen gradient stále malé.

Nicméně, žádné gradient pro záporná x může představovat podobný problém, známý jako nulový gradient problém, ale to je možné kompenzovat to přidáním malé lineární výraz v x dát ReLU funkce nenulový sklon ve všech bodech.

aplikace sigmoidní funkce

logistická sigmoidní funkce v logistické regresi

klíčovou oblastí strojového učení, kde je sigmoidní funkce nezbytná, je logistický regresní model. Logistický regresní model se používá k odhadu pravděpodobnosti binární události, jako je dead vs alive, sick vs well, podvodná vs čestná transakce atd. Vypíše hodnotu pravděpodobnosti mezi 0 a 1.

V logistické regrese, logistické sigmoidní funkce je vhodné, aby soubor dat, kde nezávislá proměnná(y) může mít skutečnou hodnotu, a závislá proměnná je buď 0 nebo 1.

představme si například datovou sadu měření a diagnóz nádorů. Naším cílem je předpovědět pravděpodobnost šíření nádoru vzhledem k jeho velikosti v centimetrech.

Některé měření rozměry nádoru a výsledky

Kreslení celý dataset, máme obecný trend, že čím větší je nádor, tím pravděpodobnější je, aby se rozšířily, i když je jasné překrytí obou tříd v rozmezí 2,5 cm do 3,5 cm:

pozemku o nádor výsledky versus rozměry nádoru

Pomocí logistické regrese, můžeme model nádoru stav y (0 nebo 1) jako funkce velikosti nádoru x pomocí logistický sigmoid vzorec:

kde potřebujeme najít optimální hodnoty m a b, které nám umožní přesunout a roztáhnout sigmoidní křivky tak, aby odpovídala data.

V tomto případě, montáž sigmoid křivka nám dává tyto hodnoty:

můžeme dát tyto hodnoty zpět do sigmoidea vzorec a pozemku křivky:

To znamená, že, například, vzhledem nádor o velikosti 3cm, naše logistické regrese modelu předpovědět pravděpodobnost tohoto nádoru se šíří jako:

intuitivně to dává smysl. V původních datech vidíme, že nádory kolem 3 cm jsou více či méně rovnoměrně rozděleny mezi obě třídy.

uvažujme nádor o velikosti 6 cm. Všechny nádory v původní dataset o velikosti 4 cm nebo větší se rozšířila, takže jsme očekávali, že náš model by se vrátit na vysokou pravděpodobnost, že se nádor šíří:

model má vrátili pravděpodobnost velmi blízko k 1, což naznačuje, je téměř jisté, že y = 1.

to ukazuje, jak sigmoidní funkce, a zejména logistická funkce, jsou extrémně silné pro modelování pravděpodobnosti.

proč se logistická funkce používá v logistické regresi a ne v jiné sigmoidní funkci?

důvodem, proč se logistická funkce používá v logistické regresi, a žádná z dalších sigmoidních variant, není jen skutečnost, že pohodlně vrací hodnoty mezi 0 a 1. Logistická regrese je odvozena z předpokladu, že data v obou třídách jsou normálně distribuována.

představme si, že nerozšířené nádory a rozšiřující se nádory sledují normální distribuci. Non-šíření nádorů jsou obvykle distribuována s tím 1.84 cm a směrodatná odchylka 1 cm, a šíření nádorů jsou obvykle distribuována s tím 4.3 cm, také s směrodatná odchylka 1 cm. Můžeme vykreslit obě funkce hustoty pravděpodobnosti obou těchto normálních rozdělení:

V každém bodě můžeme vypočítat poměr pravděpodobnosti dvou distribucí, což je funkce hustoty pravděpodobnosti šíření nádorů děleno součtem obou funkcí hustoty pravděpodobnosti (non-šíření + šíření nádorů):

Kreslení šance poměr jako funkci x, můžeme vidět, že výsledek je původní logistický sigmoid křivka.

důvod, že logistická funkce je vybrán pro logistické regrese je vzhledem k předpokladu jsme modelování dvě třídy, které jsou oba distribuovány normálně, a logistické funkce přirozeně vzniká z poměru normální funkcí hustoty pravděpodobnosti.

sigmoidní funkce jako aktivační funkce v umělých neuronových sítích

umělá neuronová síť se skládá z několika vrstev funkcí, vrstvených na sebe:

dopřednou neuronovou síť s dvěma skrytými vrstvami,

Každá vrstva obvykle obsahuje nějaké závaží a předsudky a funkce, jako malé lineární regrese. Klíčovou součástí vrstev je také aktivační funkce.

Vzorce pro první skrytou vrstvu dopřednou neuronovou síť, s hmotností označeny W a předsudky o b a aktivační funkce g.

Pokud by však každá vrstva v neuronové síti obsahovala pouze závaží a zkreslení, ale žádnou aktivační funkci, celá síť by byla ekvivalentní jediné lineární kombinaci závaží a zkreslení. Jinými slovy, vzorec pro neuronovou síť by mohl být faktorizován a zjednodušen až na jednoduchý lineární regresní model. Takový model by měl být schopen vyzvednout velmi jednoduché lineární závislosti, ale nemůže provádět působivé úkoly, že neuronové sítě jsou známi, jako obrazu a rozpoznávání hlasu.

aktivační funkce byly zavedeny mezi vrstvami v neuronových sítích za účelem zavedení nelinearity. Původně byly použity sigmoidní funkce, jako je logistická funkce, arctangent a hyperbolická tečna, a dnes jsou ReLU a jeho varianty velmi populární. Všechny aktivační funkce slouží stejnému účelu: zavést nelinearitu do sítě. Sigmoidní funkce byly vybrány jako některé z prvních aktivačních funkcí díky jejich vnímané podobnosti s aktivačním potenciálem v biologických neuronových sítích.

Díky použití sigmoidní funkce na různých místech v rámci vícevrstvé neuronové sítě, neuronové sítě mohou být postaveny, aby po sobě jdoucích vrstev vyzvednout na stále sofistikovanější funkce vstupního příklad.

Sigmoid Funkce Historie

V roce 1798, anglický duchovní a ekonom Thomas Robert Malthus vydal knihu pod pseudonymem názvem Esej o Principu Populace, tvrdí, že populace roste geometrickou řadou (zdvojnásobení každých 25 let), zatímco zásoby potravin byly roste aritmeticky, a že rozdíl mezi nimi byl v důsledku způsobí rozsáhlé hladomory.

V pozdních 1830s, Belgický matematik Pierre François Verhulst byl experimentuje s různými způsoby modelování růstu populace, a chtěl, aby byla zohledněna skutečnost, že populační růst je nakonec self-limiting, a nezvyšuje exponenciálně navždy. Verhulst si vybral logistické funkce jako logické přizpůsobení jednoduchý exponenciální model, aby se model zpomaluje populační růst, který nastane, když se populace začne vyčerpá své zdroje.

v průběhu příštího století začali biologové a další vědci používat sigmoidní funkci jako standardní nástroj pro modelování růstu populace, od bakteriálních kolonií po lidské civilizace.

V roce 1943 Warren McCulloch a Walter Pitts vyvinuté umělé neuronové sítě model pomocí tvrdé cutoff jako aktivační funkce, kde neuron výstupy 1 nebo 0 v závislosti na tom, zda jeho vstup je nad nebo pod prahovou hodnotou.

V roce 1972, biologové Hugh Wilson a Jack Cowan na University of Chicago se pokoušeli model biologické neurony výpočetně a publikoval Wilson–model Cowan, kde neuron vyšle signál do jiného neuronu, pokud obdrží signál větší než aktivační potenciál. Wilson a Cowan si vybrali logistickou sigmoidní funkci k modelování aktivace neuronu jako funkce stimulu.

Od 1970 a 1980 a dále, řada badatelů se začal používat sigmoid funkce ve formulacích, umělé neuronové sítě, přičemž inspiraci z biologické neuronové sítě. V roce 1998, Yann LeCun vybral hyperbolický tangens jako aktivační funkce v jeho průkopnické konvoluční neuronová síť LeNet, který byl první, musí být schopen rozpoznat ručně psané číslice na praktické úrovni přesnosti.

V posledních letech, umělé neuronové sítě se pohybovali pryč od sigmoid funkce ve prospěch funkce ReLU, protože všechny varianty sigmoid funkce jsou výpočetně náročné na výpočet, a ReLU poskytuje potřebnou nelinearitu využít hloubku sítě, a zároveň je velmi rychle spočítat.