Articles

Sigmoid Function

mi a Sigmoid funkció?

a Sigmoid függvény egy matematikai függvény, amelynek jellegzetes S-alakú görbéje van. Számos közös sigmoid függvény létezik, mint például a logisztikus függvény, a hiperbolikus tangens, valamint az arctangens

. A gépi tanulásban a

sigmoid függvény kifejezést általában kifejezetten a logisztikus függvényre, más néven logisztikus sigmoid függvényre utalják.

Minden szigmabél funkciók van az ingatlan, hogy a térkép a teljes számegyenesen egy kis tartomány, például között 0, 1, vagy -1, 1, így használata a szigmoid függvény átalakítani egy igazi érték az egyik, hogy lehet értelmezni, mint egy valószínűség.

az egyik legszélesebb körben használt sigmoid funkció a logisztikai funkció, amely bármilyen valós értéket leképez a tartományra (0, 1). Vegye figyelembe a jellegzetes S-alakot, amely sigmoid funkciókat adott a nevüknek (a görög szigma betűből).

a Sigmoid funkciók népszerűvé váltak a mély tanulásban, mivel aktiválási funkcióként használhatók egy mesterséges neurális hálózatban. A biológiai neurális hálózatok aktiválási potenciálja ihlette őket.

a Sigmoid funkciók számos gépi tanulási alkalmazáshoz is hasznosak, ahol egy valós számot valószínűségre kell konvertálni. A gépi tanulási modell utolsó rétegeként elhelyezett sigmoid funkció arra szolgál, hogy a modell kimenetét valószínűségi pontszámra konvertálja, amellyel könnyebben dolgozhat és értelmezhető.

a Sigmoid függvények fontos részét képezik a logisztikus regressziós modellnek. A logisztikus regresszió a kétosztályos osztályozás lineáris regressziójának módosítása, és egy vagy több valós értékű bemenetet valószínűséggé alakít át, például annak valószínűségét, hogy egy ügyfél megvásárol egy terméket. A logisztikus regressziós modell utolsó szakasza gyakran a logisztikus függvényre van állítva, amely lehetővé teszi a modell számára a valószínűség kimenetét.

Sigmoid függvény Formula

minden sigmoid függvény monotonikus és harang alakú első deriváltja van. Számos sigmoid funkció létezik, amelyek közül néhány legismertebb az alábbiakban található.

a leggyakoribb sigmoid függvények közül három: a logisztikai függvény, a hiperbolikus tangens és az arctangens. Mindegyiknek ugyanaz az alapvető s alakja van.

Logistic Sigmoid Function Formula

az egyik leggyakoribb sigmoid függvény a logisztikus sigmoid függvény. Ezt gyakran Sigmoid funkciónak nevezik a gépi tanulás területén. A logisztikus sigmoid függvény a következőképpen definiálható:

a logisztikus sigmoid függvény matematikai definíciója, egy közös sigmoid függvény

a logisztikus függvény valós értékű bemenetet vesz fel, és egy értéket nulla és egy kimenet között.

hiperbolikus tangens függvény Formula

egy másik gyakori sigmoid függvény a hiperbolikus függvény. Ez leképezi a valós értékű bemenetet a -1 és 1 közötti tartományba.

Matematikai definíciója a hiperbolikus tangens

Cotanges Funkció Formula

A harmadik alternatíva szigmoid függvény a cotanges, amely az inverz tangens függvényt.

az arctangent függvény

az arctangent függvény minden valós értékű bemenetet leképez a tartományba-π / 2-π / 2.

az alábbi grafikonokban láthatjuk mind az érintő görbét, egy jól ismert trigonometrikus függvényt, mind az ívtangenst, annak inverzét:

Kiszámítása a Szigmoid Függvény

Példa Számítása Logisztikai Szigmoid Függvény

Véve a logisztikai szigmoid függvény, mérjük az értéket a függvény több kulcsfontosságú pontot, hogy megértsük, a függvény formájában.

x = 0 esetén a logisztikus sigmoid függvény a következőkre értékel:

Ez hasznos a sigmoid valószínűségként való értelmezéséhez egy logisztikai regressziós modellben, mert azt mutatja, hogy a nulla bemenet 0,5 kimenetet eredményez, ami mindkét osztály egyenlő valószínűségét jelzi.

x = 1 esetén valamivel nagyobb értéket találunk:

és x = 5 esetén a sigmoid funkció értéke nagyon közel lesz az 1-hez.

valójában a végtelenség felé hajló x határértékében a sigmoid függvény 1-re, negatív végtelenség esetén pedig -1-re konvergál, de a függvény deriváltja soha nem éri el a nullát. Ezek a sigmoid funkció nagyon hasznos tulajdonságai, mivel egy határ felé hajlik, de mindig nem nulla gradiens.

példa kiszámítása hiperbolikus tangens függvény

hasonlóképpen, tudjuk számítani az értéket A tanh függvény ezeken a kulcsfontosságú pontokat. Ahelyett, hogy 0,5 körül lenne, a tanh függvény 0-ra van központosítva.

1, a tanh funkció nőtt viszonylag sokkal gyorsabban, mint a logisztikai funkció:

végül 5, a tanh funkció konvergált sokkal szorosabban 1, belül 5 tizedesjegyre kerekítve:

A tény, mind a hiperbolikus tangens, valamint cotanges funkciók konvergál sokkal gyorsabban, mint a logisztikai szigmoid függvény.

példa kiszámítása az Arctangent függvény

tudjuk értékelni az arctangent függvény ugyanazon a ponton, hogy hol konvergál:

Megjegyezzük, hogy ezzel szemben a másik két szigmabél funkciók fent látható, a cotanges közelít π/2 helyett 1. Ezenkívül az arctangent lassabban konvergál, mivel x = 5 esetén még a végső értékéhez sem közel van. Csak elég nagy számokkal, például x = 5000, az arctangent nagyon közel kerül a π/2-hez.

három sigmoid funkció összefoglalása

összehasonlíthatjuk a fenti három sigmoid funkció kulcsfontosságú tulajdonságait egy táblázatban:

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

a modern mesterséges neurális hálózatokban gyakori, hogy a sigmoid funkció helyett az egyenirányítót, más néven helyesbített lineáris egységet vagy ReLU-t használják aktiválási funkcióként. A Relu meghatározása a következő:

az egyenirányító aktiválási funkció meghatározása

a Relu függvény grafikonja több fő előnnyel rendelkezik a neurális hálózat sigmoid funkciójával szemben. A fő előny az, hogy a ReLU funkció nagyon gyorsan kiszámítható. Ezenkívül a biológiai neurális hálózat aktiválási potenciálja továbbra sem változik a negatív bemenetek esetében, így a ReLU közelebb áll a biológiai valósághoz, ha a cél a biológiai rendszerek utánozása.

ezenkívül a pozitív x

esetében a ReLU függvény állandó gradiense 1, míg a sigmoid függvény gradiens, amely gyorsan konvergál 0 felé. Ez a tulajdonság a sigmoid aktiválási funkciókkal rendelkező neurális hálózatokat lassítja a vonat. Ezt a jelenséget eltűnő gradiens problémának nevezik. A Relu aktiválási funkcióként történő kiválasztása enyhíti ezt a problémát, mivel a Relu gradiense mindig 1 a pozitív

x esetén, így a tanulási folyamatot nem lassítja le a gradiens kicsivé válása.

a negatív x nulla gradiense azonban hasonló problémát jelenthet, az úgynevezett nulla gradiens probléma, de ezt kompenzálni lehet egy kis lineáris kifejezés hozzáadásával x-ben, hogy a ReLU függvény minden ponton nonzero lejtést kapjon.

sigmoid funkció alkalmazása

Logistic sigmoid függvény logisztikus regresszióban

a gépi tanulás kulcsfontosságú területe, ahol a sigmoid funkció elengedhetetlen, egy logisztikai regressziós modell. A logisztikai regressziós modellt használják a bináris esemény valószínűségének becslésére, mint például a dead vs alive, sick vs well, csalárd vs becsületes tranzakció, stb .. 0 és 1 közötti valószínűségi értéket ad ki.

a logisztikus regresszióban a logisztikus sigmoid függvény olyan adatkészlethez illeszkedik, ahol a független változó(k) bármilyen valós értéket felvehetnek, a függő változó pedig 0 vagy 1.

képzeljük el például a tumormérések és diagnózisok adathalmazát. Célunk, hogy megjósoljuk a daganat terjedésének valószínűségét, tekintettel annak méretére centiméterben.

Bizonyos mérések daganat méretei eredmények

Tervezi a teljes adatállomány van egy általános tendencia, hogy minél nagyobb a tumor, annál nagyobb a valószínűsége, hogy elterjedt, bár egyértelmű átfedés van mind az osztályok, a tartomány 2,5 cm 3,5 cm:

A telek daganat eredmények kontra daganat méretek

A logisztikai regresszió, tudjuk modell a daganat állapota y (0 vagy 1), mint egy olyan funkció, a tumor mérete x segítségével a logisztikai szigmabél képlet:

ahol meg kell találnunk az M és b optimális értékeket, amelyek lehetővé teszik a sigmoid görbe eltolását és nyújtását az adatok egyeztetéséhez.

ebben az esetben A találó a szigmoid görbét ad nekünk a következő értékek:

tehetünk bele ezek az értékek vissza a szigmabél képlet, valamint a telek görbe:

Ez azt jelenti, hogy például mivel a tumor mérete 3cm, a logisztikus regressziós modell lenne megjósolni a valószínűsége, hogy ez a daganat terjedését, mint:

intuitív módon ennek van értelme. Az eredeti adatokban láthatjuk, hogy a 3cm körüli daganatok többé-kevésbé egyenletesen oszlanak el mindkét osztály között.

Vegyünk egy 6 cm méretű daganatot. Minden daganatok az eredeti adatállomány mérete 4 cm-es vagy nagyobb elterjedt, ezért elvárjuk, hogy a modell visszatér, nagy a valószínűsége a tumor terjed:

A modell visszatért a valószínűsége, nagyon közel 1, jelezve, szinte biztos, hogy y = 1.

Ez azt mutatja, hogy a sigmoid függvények, különösen a logisztikus függvény rendkívül hatékonyak a valószínűségi modellezéshez.

miért a logisztikus függvényt használják a logisztikus regresszióban, nem pedig egy másik sigmoid függvényt?

a logisztikus függvény logisztikus regresszióban való alkalmazásának oka, a többi sigmoid variáns egyike sem, nem csak annak a ténynek köszönhető, hogy kényelmesen 0 és 1 közötti értékeket ad vissza. A logisztikus regresszió abból a feltételezésből származik, hogy mindkét osztályban az adatok általában eloszlanak.

képzeljük el, hogy a nem terjedő daganatok és a terjedő daganatok mindegyike normális eloszlást követ. A nem-terjed daganatok rendszerint együtt forgalmazott jelenti 1.84 cm, a szórás 1 cm, a terjedő daganatok rendszerint együtt forgalmazott jelenti, 4.3 cm, a szórás 1 cm. Mind a normál eloszlások valószínűségi sűrűségfüggvényét ábrázolhatjuk:

minden ponton ki tudjuk számítani az esélye, az arány a két disztribúció, amely a sűrűségfüggvényt terjedésének daganatok osztva az összeg, mind a valószínűség-sűrűség funkciók (nem terjed + elterjedt daganatok):

a Tervez az esélye, az arány függvényében az x, láthatjuk, hogy az eredmény az eredeti logisztikai szigmoid görbe.

Az oka, hogy a logisztikai funkció kiválasztott logisztikai regresszió miatt feltételezés vagyunk modellezés két osztályok, amelyek mind normális eloszlású, valamint a logisztikai funkció természetesen felmerül az arány a normál valószínűség-sűrűség függvények.

sigmoid funkció aktiválási funkció mesterséges neurális hálózatokban

a mesterséges neurális hálózat több funkciórétegből áll, amelyek egymásra vannak rétegezve:

a feedforward neurális hálózat két rejtett réteggel

minden réteg általában tartalmaz néhány súlyt és torzítást, valamint olyan funkciókat, mint egy kis lineáris regresszió. A rétegek döntő része az aktiválási funkció is.

képlet a feedforward neurális hálózat első rejtett rétegéhez, W-vel jelölt súlyokkal, B-vel torzítva, valamint g aktiválási funkcióval.

azonban, ha a neurális hálózat minden rétege csak súlyokat és torzításokat tartalmazna, de nincs aktiválási funkció, az egész hálózat egyenértékű lenne a súlyok és torzítások egyetlen lineáris kombinációjával. Más szóval, a neurális hálózat képletét egy egyszerű lineáris regressziós modellre lehetne egyszerűsíteni. Egy ilyen modell képes lenne nagyon egyszerű lineáris függőségeket felvenni, de nem képes elvégezni azokat a lenyűgöző feladatokat, amelyekről a neurális hálózatok híresek, például a kép-és hangfelismerés.

aktiválási funkciókat vezettek be a neurális hálózatok rétegei között a nem linearitás bevezetése érdekében. Eredetileg sigmoid funkciókat használtak, mint például a logisztikus függvény, az arctangent és a hiperbolikus tangens, ma a ReLU és változatai nagyon népszerűek. Minden aktiválási funkció ugyanazt a célt szolgálja: nem linearitás bevezetése a hálózatba. A Sigmoid funkciókat az első aktiválási funkciók közül választották ki, köszönhetően a biológiai neurális hálózatok aktiválási potenciáljával való érzékelt hasonlóságuknak.

a sigmoid funkció többrétegű neurális hálózat különböző pontjain történő használatának köszönhetően a neurális hálózatok úgy épülhetnek, hogy egymást követő rétegek felvegyék a bemeneti példa egyre kifinomultabb jellemzőit.

Szigmoid Függvény a Történelem

1798-Ban, az angol lelkész, közgazdász Thomas Robert Malthus kiadott egy könyvet álnéven hívott Egy Esszét az Elv Népesség, azt állítja, hogy a lakosság egyre nagyobb a mértani (megduplázódik minden 25 év), míg az élelmiszer-ellátás nőttek a kifogás, hogy a különbség a kettő között annak volt köszönhető, mert elterjedt éhínség.

az 1830-as évek végén a belga matematikus, Pierre François Verhulst kísérletezett a népességnövekedés modellezésének különböző módjaival, és figyelembe akarta venni azt a tényt, hogy a népesség növekedése végső soron önkorlátozó, és nem növekszik exponenciálisan örökre. Verhulst az egyszerű exponenciális modell logikai kiigazításaként választotta a logisztikai funkciót, annak érdekében, hogy modellezze a népesség növekedésének lelassulását, amely akkor következik be, amikor egy populáció kimeríti erőforrásait.

a következő évszázadban a biológusok és más tudósok elkezdték használni a sigmoid funkciót a népességnövekedés modellezésének szokásos eszközeként, a bakteriális kolóniáktól az emberi civilizációkig.

1943-Ban, Warren McCulloch Walter Pitts kifejlesztett mesterséges neurális hálózati modell segítségével egy nehéz cutoff, mint egy aktivációs függvény, ahol egy neuron kimenetek 1 vagy 0, attól függően, hogy a bemenet felett vagy alatt egy küszöböt.

1972–ben a Chicagói Egyetem biológusai Hugh Wilson és Jack Cowan kísérleteztek a biológiai neuronok számítógépes modellezésére, és közzétették a Wilson-Cowan modellt, ahol egy neuron jelet küld egy másik neuronnak, ha az aktiválási potenciálnál nagyobb jelet kap. Wilson és Cowan a logisztikus sigmoid funkciót választották, hogy egy neuron aktiválódását egy inger függvényében modellezzék.

Az 1970-es és 1980-as évektől kezdve számos kutató kezdte használni a sigmoid funkciókat mesterséges neurális hálózatok formuláiban, inspirálva a biológiai neurális hálózatokat. 1998-ban Yann LeCun az úttörő konvolúciós neurális hálózat LeNet aktiválási funkciójaként választotta a hiperbolikus tangenst, amely elsőként ismerte fel a kézzel írt számjegyeket gyakorlati pontossággal.

az elmúlt években a mesterséges neurális hálózatok eltávolodtak a sigmoid funkcióktól a ReLU funkció javára, mivel a sigmoid funkció minden változata számításigényes, és a ReLU biztosítja a szükséges nemlinearitást a hálózat mélységének kihasználásához, miközben nagyon gyorsan kiszámítható.