U nima uchun kerak
ReLU’ning ikki kamchiligi bor: nolda u sinadi, chapda esa butun signalni gradiyent bilan birga tashlab yuboradi. SiLU (Sigmoid Linear Unit) boshqacha tuzilgan: $x$ kirish o‘zining sigmoidasiga ko‘paytiriladi. Katta musbat kirish deyarli to‘liq o‘tadi, katta manfiy kirish deyarli butunlay so‘ndiriladi, nol atrofida esa kirish «qisman» — silliq, sinishsiz o‘tadi.
Parametrli o‘sha funksiya, $x\,\sigma(\beta x)$, Swish deb ataladi. $\beta=1$ da bu aynan SiLU; PyTorch va boshqa kutubxonalarda uni shunday yozishadi: nn.SiLU.
U qayerda uchraydi:
- katta til modellari — LLaMA, Qwen, Mistral va PaLM SiLU’ni SwiGLU bloki ichida ishlatadi (7-bo‘lim); model konfiguratsiyalarida bu
hidden_act = "silu"qatori; - kompyuter ko‘rishi — EfficientNet (2019) Swish asosida qurilgan, YOLOv5 va YOLOv8 detektorlari SiLU’dan foydalanadi;
- mobil tarmoqlar — MobileNetV3 «qattiq» Swish’dan, arzon bo‘lak-polinomial $x\cdot\operatorname{ReLU6}(x+3)/6$ yaqinlashishdan foydalanadi;
- mustahkamlab o‘qitish — Elfving, Uchibe va Doya (2017) uni SiLU nomi bilan qiymat funksiyalarini approksimatsiya qilish uchun qo‘llagan.
$\operatorname{SiLU}(x)=x\,\sigma(x)$. O‘ngda uzoqda u deyarli $x$ ga, chapda uzoqda deyarli 0 ga teng — ReLU kabi, lekin silliq. U nomonoton: minimum $x\approx-1{,}278$ nuqtada $\approx-0{,}278$. $\sigma(x)\bigl(1+x(1-\sigma(x))\bigr)$ hosila nolda $0{,}5$ ga teng va $x>1{,}278$ da 1 dan oshadi (maksimum $\approx1{,}100$). LLM’larda SiLU SwiGLU’da ventil vazifasini bajaradi: $\operatorname{SiLU}(W_1x)\odot W_3x$.
Intuitsiya: kirish o‘zidan qanchasini o‘tkazishni o‘zi hal qiladi
Dastasini oqimning o‘zi buraydigan jo‘mrakni tasavvur qiling. $\sigma(x)$ sigmoida — jo‘mrakning ochiqlik darajasi, 0 dan 1 gacha. Agar kirish katta va musbat bo‘lsa, jo‘mrak deyarli to‘liq ochiq ($\sigma\approx1$) va chiqish deyarli kirishga teng. Agar kirish kuchli manfiy bo‘lsa, jo‘mrak deyarli yopiq va chiqish nolga yaqin. Bunday mexanizm o‘z-o‘zini ventillash (self-gating) deyiladi: kirish bir vaqtning o‘zida ham signal, ham signalning qancha qismini o‘tkazish haqidagi qaror.
Ko‘k nuqtani torting. Firuza egri chiziq — $\sigma(x)$ ventil, ko‘k — $x\cdot\sigma(x)$ ko‘paytma. $x=-1$ atrofiga qarang: ventil allaqachon qisman yopilgan, lekin to‘liq emas, kirish esa manfiy — va chiqish noldan pastga tushadi.
O‘ngda ko‘k egri chiziq $y=x$ to‘g‘ri chiziqqa, chapda esa nolga yopishadi: bu sohalarda SiLU ReLU’dan deyarli farq qilmaydi. Butun farq taxminan $-5<x<5$ yo‘lakda, ventil qisman ochiq joyda jamlangan. Aynan u yerda ReLU keskin sinadi, SiLU esa chapda kichik «chuqurcha» bilan silliq egiladi.
Formula mayda detallarigacha
SiLU’ni ikki tanish qismdan yig‘amiz va unga bir necha yozuvda qaraymiz.
- $x$
- neyron kirishi (pre-aktivatsiya); u o‘tkazilishi kerak bo‘lgan signal ham;
- $\sigma(x)=\frac{1}{1+e^{-x}}$
- sigmoida, $(0;\,1)$ dagi son — signalning o‘tadigan ulushi;
- $x\cdot\sigma(x)$
- natija: $\sigma\approx1$ da chiqish $\approx x$, $\sigma\approx0$ da chiqish $\approx0$.
Giperbolik tangens orqali ($\sigma(x)=\tfrac12(1+\tanh\tfrac x2)$) ko‘p narsani tushuntiradigan yozuv hosil bo‘ladi:
ReLU bilan solishtiring: $\operatorname{ReLU}(x)=\frac{x}{2}+\frac{|x|}{2}$. Ularning toq qismlari bir xil, SiLU’ning juft qismi $\frac x2\tanh\frac x2$ esa — silliqlangan modul $\frac{|x|}{2}$: katta $|x|$ larda tangens $\pm1$ ga teng va ular ustma-ust tushadi, nol atrofida esa burchak o‘rniga $\approx\frac{x^2}{4}$ parabola hosil bo‘ladi.
| $x$ | $\sigma(x)$ | $\operatorname{SiLU}(x)$ | $\operatorname{SiLU}'(x)$ |
|---|---|---|---|
| −5 | 0,0067 | −0,0335 | −0,0265 |
| −3 | 0,0474 | −0,1423 | −0,0881 |
| −1,2785 | 0,2178 | −0,2785 | 0,0000 |
| −1 | 0,2689 | −0,2689 | 0,0723 |
| 0 | 0,5000 | 0,0000 | 0,5000 |
| 1 | 0,7311 | 0,7311 | 0,9277 |
| 2 | 0,8808 | 1,7616 | 1,0908 |
| 3 | 0,9526 | 2,8577 | 1,0881 |
| 5 | 0,9933 | 4,9665 | 1,0265 |
Jadvalda uchta xususiyat ko‘rinadi: chapdagi manfiy qiymatlar (eng chuquri — $-0{,}2785$), nolda $0{,}5$ hosila va $x=2$ hamda $x=3$ da 1 dan katta hosila.
Xossalar
- Silliqlik: SiLU cheksiz differensiallanuvchi — birorta ham sinish yo‘q.
- Asimptotalar: $x\to+\infty$ da $\operatorname{SiLU}(x)-x\to0$ va $x\to-\infty$ da $\operatorname{SiLU}(x)\to0$, ikkala holda ham eksponensial tez.
- Nomonotonlik: funksiya $(-\infty;\,x^*)$ da kamayadi va $(x^*;\,+\infty)$ da o‘sadi, bu yerda $x^*\approx-1{,}2785$.
- Quyidan chegaralanganlik: qiymatlar sohasi $[-0{,}2785;\,+\infty)$. Yuqoridan chegaralanmagan.
- ReLU bilan bog‘liqlik: $\operatorname{ReLU}(x)-\operatorname{SiLU}(x)=|x|\,\sigma(-|x|)$ — 0 dan $0{,}2785$ gacha juft funksiya. SiLU doim ReLU’dan pastda yotadi, lekin $0{,}2785$ dan uzoq emas.
- Ayirmaning antisimmetriyasi: $\operatorname{SiLU}(x)-\operatorname{SiLU}(-x)=x$, chunki $\sigma(x)+\sigma(-x)=1$.
- Qavariqlik: funksiya $(-2{,}3994;\,2{,}3994)$ oraliqda qavariq va undan tashqarida botiq; oraliq uchlari $\pm2{,}3994$ — burilish nuqtalari.
Minimum: qayerda va nega −0,278
Minimum hosila nolga teng bo‘lgan joyda. Natijani Lambert W-funksiyasi — $We^{W}=c$ tenglama yechimi orqali yozish qulay:
Lambert W-funksiyasi orqali keltirib chiqarish
Hosila (5-bo‘lim) $\sigma(x)\bigl(1+x(1-\sigma(x))\bigr)$ ga teng. Sigmoida musbat, shuning uchun nolni faqat qavs beradi: $1+x(1-\sigma)=0$, ya’ni $1-\sigma(x)=-1/x$.
Darhol minimum qiymatini olamiz: $\sigma(x^*)=1+1/x^*$ va $\operatorname{SiLU}(x^*)=x^*\sigma(x^*)=x^*+1$.
Endi $x^*$ ni topamiz. $1-\sigma(x)=\sigma(-x)=\frac{1}{1+e^{x}}$ bo‘lgani uchun tenglama $1+e^{x}=-x$ ko‘rinishini oladi. $u=-x-1$ deylik; u holda $x=-u-1$ va
Bundan $x^*=-1-W(e^{-1})\approx-1{,}2785$ va $\operatorname{SiLU}(x^*)=x^*+1=-W(e^{-1})\approx-0{,}2785$. Chiroyli moslik: chuqurchaning chuqurligi va uning $x=-1$ nuqtadan masofasi — bir xil son.
Swish-β oilasi
Ventilga $\beta$ tiklik qo‘shsak, Swish oilasi hosil bo‘ladi:
$\beta=0$ da ventil doim yarim ochiq va funksiya chiziqli. $\beta\to\infty$ da sigmoida zinaga aylanadi va ReLU hosil bo‘ladi. Swish-β — chiziqli funksiya va ReLU orasidagi ko‘prik, SiLU esa bu ko‘prikdagi $\beta=1$ nuqta. $u=\beta x$ almashtirish oilaning barcha a’zolari boshqa masshtabdagi bitta grafik ekanini ko‘rsatadi: $\operatorname{Swish}_\beta(x)=\frac{1}{\beta}\operatorname{SiLU}(\beta x)$.
SiLU (Sigmoid Linear Unit) nomi birinchi marta Xendriks va Gimpelning GELU haqidagi maqolasida (2016) paydo bo‘lgan. Elfving, Uchibe va Doya (2017) $x\,\sigma(x)$ ni mustahkamlab o‘qitishda qo‘llagan. Ramachandran, Zof va Le (2017) $x\,\sigma(\beta x)$ ni mustaqil ravishda nomzod formulalar fazosida avtomatik qidiruv bilan topib, Swish deb atashgan; o‘rganiladigan $\beta$ kam narsa qo‘shgan va amalda $\beta=1$ qaror topgan. Shu sababli bitta funksiyaning ikki nomi bor: PyTorch va Hugging Face’da silu, Keras’da swish.
Hosila: birdan katta va noldan kichik
Ko‘paytma qoidasiga ko‘ra SiLU hosilasi ikki qismdan iborat: ventil va ventil qanchalik tez ochilishi.
Qadamma-qadam keltirib chiqarish
Ko‘paytma qoidasi: $(x\cdot\sigma(x))'=1\cdot\sigma(x)+x\cdot\sigma'(x)$.
Sigmoida hosilasi ma’lum: $\sigma'(x)=\sigma(x)(1-\sigma(x))$ (keltirib chiqarilishi — sigmoida sahifasida). O‘rniga qo‘yamiz va $\sigma(x)$ ni qavsdan chiqaramiz:
Yana bir foydali shakl funksiyaning o‘z qiymati $f=\operatorname{SiLU}(x)$ orqali: qavslarni ochsak, $\sigma+x\sigma-x\sigma^2=f+\sigma(1-f)$ hosil bo‘ladi. Uni amalga oshirishlar ishlatadi: teskari o‘tishda faqat allaqachon hisoblangan $f$ va $\sigma$ kerak.
Hosila xossalari:
- $\operatorname{SiLU}'(0)=\sigma(0)=\tfrac12$ — nolda qiyalik aynan yarim;
- $\operatorname{SiLU}'(x)+\operatorname{SiLU}'(-x)=1$ — bu $\operatorname{SiLU}(x)-\operatorname{SiLU}(-x)=x$ ayniyatning hosilasi;
- hosila $x<-1{,}2785$ da (minimumdan chapda) manfiy, eng kichik qiymati $x\approx-2{,}3994$ da $\approx-0{,}0998$;
- hosila $x>1{,}2785$ da 1 dan katta — oldingi banddagi simmetriya bo‘yicha — maksimumi $x\approx2{,}3994$ da $\approx1{,}0998$; keyin u 1 ga yuqoridan intiladi.
$\pm2{,}3994$ nuqtalar $x\tanh\frac{x}{2}=2$ tenglamaning ildizlari: u yerda ikkinchi hosila nolga aylanadi
1 dan katta qiyalik $x>1{,}28$ da SiLU nol atrofida ortda qolgan $y=x$ to‘g‘ri chiziqni «quvib yetayotganini» bildiradi. $x>0$ da SiLU chiqishi hech qachon kirishdan oshmaydi ($\sigma<1$), shuning uchun portlash yo‘q: qiyalik 1 dan biroz katta va tezda 1 ga qaytadi.
Silliqlik va qarindoshlar: ReLU va GELU
Bitta grafikda uchta funksiya: ReLU, SiLU va GELU $=x\,\Phi(x)$, bu yerda $\Phi$ — standart normal taqsimot funksiyasi. Faqat funksiyalarning o‘ziga emas, birinchi va ikkinchi hosilalarga ham qarang: silliqlikdagi farq aynan o‘sha yerda ko‘rinadi.
- ReLU: birinchi hosila — zina, ikkinchisi — delta-funksiya. Optimizator uchun xato sirti keskin qirrali tekis bo‘laklardan iborat.
- SiLU va GELU: hosilalar uzluksiz, ikkinchi hosilalar — maksimumi nolda bo‘lgan silliq «do‘ngliklar» (SiLU’da $0{,}5$, GELU’da $2\varphi(0)\approx0{,}798$). Xato landshafti silliq bo‘ladi va gradiyent asta-sekin o‘zgaradi.
- GELU ≈ $\beta=1{,}702$ li Swish: $x\,\Phi(x)\approx x\,\sigma(1{,}702x)$, eng katta xato taxminan $0{,}02$. Shuning uchun GELU SiLU’ning $1{,}702$ marta kichraytirilgan nusxasiga o‘xshaydi: chuqurchasi sayozroq va nolga yaqinroq ($x\approx-0{,}752$ da $-0{,}170$, SiLU’da esa $x\approx-1{,}278$ da $-0{,}278$; Swish-1,702 ning o‘zida $-0{,}164$ bo‘lardi). Lekin GELU’ning hosila maksimumi yuqoriroq ($1{,}129$, SiLU’da esa $1{,}100$), buni masshtab bilan tushuntirib bo‘lmaydi: barcha Swish-β larda u bir xil, $1{,}0998$. Bu endi normal va logistik qonunlar orasidagi farq (pastga qarang).
Ehtimollik ma’nosi: tasodifiy ventil
SiLU va GELU’ning umumiy tushuntirishi bor. Neyron kirish tasodifiy $\varepsilon$ shovqindan katta bo‘lsa, uni to‘liq o‘tkazsin, kichik bo‘lsa — butunlay to‘sib qo‘ysin: $y=x\cdot[\varepsilon\le x]$. U holda chiqishning o‘rtacha qiymati
Sigmoida — logistik taqsimot funksiyasi, $\Phi$ — normal taqsimotniki. Demak, SiLU — «tasodifiy chegarali, o‘rtachalangan ReLU»: neyron aynan nolda kesish o‘rniga nol atrofidagi tasodifiy nuqtada kesadi, o‘rtacha esa silliq egri chiziq hosil bo‘ladi.
SwiGLU: katta til modellaridagi SiLU
Transformerda diqqat (attention) blokidan keyin to‘liq bog‘langan blok (feed-forward network, FFN) turadi. Klassik varianti — $W_2\,\operatorname{ReLU}(W_1x)$ (yoki ReLU o‘rniga GELU). Shazir (2020) uni bir tarmoq ikkinchisidan qanchasini o‘tkazishni hal qiladigan ventilli blok (gated linear unit) bilan almashtirishni taklif qilgan:
- $x\in\mathbb R^{d}$
- $d$ o‘lchamli token vektori (LLaMA-7B da $d=4096$);
- $W_1x$
- ventil tarmog‘i: SiLU orqali qaysi komponentlarni va qanchalik o‘tkazishni hal qiladi;
- $W_3x$
- qiymat tarmog‘i: chiziqli, aktivatsiyasiz — o‘tkaziladigan narsa;
- $\odot$
- $h$ o‘lchamli (yashirin o‘lcham) ikki vektorning elementma-element ko‘paytmasi;
- $W_2$
- $d$ o‘lchamga qaytarish proyeksiyasi.
Bitta komponent uchun bu ikki sonning funksiyasi: $g(a,b)=\operatorname{SiLU}(a)\cdot b$, bu yerda $a$ — ventil tarmog‘ining, $b$ — qiymat tarmog‘ining komponenti. Uni 3D’da ko‘rish arziydi.
Bu yerdagi gradiyentlar sodda va ibratli: $\frac{\partial g}{\partial b}=\operatorname{SiLU}(a)$ — qiymat tarmog‘i ventil qanchalik ochiq bo‘lsa, shunga mutanosib o‘rganadi; $\frac{\partial g}{\partial a}=\operatorname{SiLU}'(a)\cdot b$ — ventil faqat u orqali o‘tkazadigan narsa bo‘lsagina o‘rganadi.
Nega yashirin o‘lcham 8/3·d
SwiGLU’da ikkita o‘rniga uchta matritsa bor. Parametrlar soni $h=4d$ li oddiy FFN’dagidek ($2\cdot d\cdot4d=8d^2$) qolishi uchun yashirin o‘lcham $h=\frac{2}{3}\cdot4d=\frac83 d$ gacha kamaytiriladi: u holda $3\cdot d\cdot\frac83d=8d^2$. LLaMA-7B da $\frac83\cdot4096\approx10923$ 256 ga karrali songacha yuqoriga yaxlitlanadi: $h=11008$. Natijada blokka $3\cdot4096\cdot11008=135\,266\,304$ parametr to‘g‘ri keladi, $h=4d$ li FFN’da esa $134\,217\,728$ — atigi $0{,}8\%$ ko‘p.
Ventilli chiziqli bloklarni (GLU, $\sigma(W_1x)\odot W_3x$) Dofin va boshq. (2017) konvolyutsion til modellari uchun taklif qilgan. Shazir (2020) turli ventilli variantlarni — ReGLU, GEGLU, SwiGLU — taqqoslagan va ularning barchasi oddiy FFN’dan o‘zib ketgan. SwiGLU PaLM (2022), keyin LLaMA (2023) uchun tanlangan va shundan beri ochiq LLM’lar standartiga aylangan: Qwen, Mistral va boshqa ko‘plari.
O‘qitishdagi SiLU
Silliq aktivatsiya amalda nima bilan yordam beradi? ReLU neyronlaridan iborat tarmoq funksiyani to‘g‘ri chiziq kesmalaridan, SiLU tarmog‘i esa silliq «egilishlar»dan yig‘adi. Agar maqsadli bog‘liqlik silliq bo‘lsa, SiLU neyronlariga uni takrorlash osonroq. Bundan tashqari, SiLU’da «o‘lik» zona yo‘q: hosila faqat bitta $x^*\approx-1{,}278$ nuqtada nolga aylanadi, boshqa manfiy kirishlarda esa u kichik, lekin nol emas, shuning uchun neyron manfiy kirishli ReLU kabi «o‘lmaydi».
Tajriba: $1\to6\to1$ tarmoq 40 nuqta bo‘yicha $y=\sin1{,}5x+0{,}3x$ egri chiziqni yaqinlashtiradi. Ikkala tarmoq bir xil vaznlardan boshlaydi va faqat aktivatsiya bilan farqlanadi; o‘qitish — $0{,}03$ qadamli Adam, 2000 qadam.
Bitta ishga tushirish bo‘yicha xulosa chiqarmaslik uchun tajribani sakkizta turli initsializatsiya uchun takrorladik. SiLU sakkiztasining hammasida aniqroq chiqdi, yutuq $1{,}4$ dan $5{,}2$ martagacha. Lekin bu silliq maqsadning xossasi: bo‘lak-chiziqli bog‘liqlikda ReLU yomonroq bo‘lmasligi mumkin. Shuning uchun aktivatsiyani tanlash — empirik masala, katta modellarda u tajriba bilan hal qilinadi.
SiLU ReLU’dan qimmatroq: eksponenta (yoki tanh) kerak, teskari o‘tish uchun esa kirishni saqlash kerak. GPU’da bu odatda matritsa ko‘paytirishlari fonida sezilmaydi, lekin mobil qurilmalarda «qattiq» Swish $x\cdot\operatorname{ReLU6}(x+3)/6$ — eksponentasiz bo‘lak-polinomial yaqinlashish ishlatiladi.
Kodda
Sodda x / (1 + np.exp(-x)) yozuvi $x=-1000$ da $e^{1000}$ ni hisoblaydi va to‘lib ketish haqida ogohlantiradi (natija baribir $-0$). Sigmoidani $\tanh$ orqali hisoblash tozaroq: $\sigma(x)=\tfrac12(1+\tanh\tfrac x2)$ — tangens hech qachon to‘lib ketmaydi.
pythonimport numpy as np
def sigmoid(x):
# σ(x) = (1 + tanh(x/2)) / 2 — istalgan x da to‘lib ketishsiz
return 0.5 * (1.0 + np.tanh(0.5 * x))
def silu(x):
return x * sigmoid(x)
def silu_grad(x):
s = sigmoid(x)
return s * (1.0 + x * (1.0 - s)) # = SiLU(x) + σ(x)·(1 − SiLU(x))
def swish(x, beta=1.0):
return x * sigmoid(beta * x)
np.set_printoptions(precision=4, suppress=True)
x = np.array([-1000.0, -1.0, 0.0, 1.0, 2.3994])
print(silu(x)) # [-0. -0.2689 0. 0.7311 2.1997]
print(silu_grad(x)) # [-0. 0.0723 0.5 0.9277 1.0998]
pythonimport torch
import torch.nn as nn
import torch.nn.functional as F
z = torch.tensor([-2.0, 0.0, 2.0], requires_grad=True)
y = F.silu(z) # tensor([-0.2384, 0.0000, 1.7616])
y.sum().backward()
print(z.grad) # tensor([-0.0908, 0.5000, 1.0908])
class SwiGLU(nn.Module):
"""LLaMA va Qwen’ning FFN bloki: W2 · (SiLU(W1 x) ⊙ W3 x)."""
def __init__(self, d, hidden):
super().__init__()
self.w1 = nn.Linear(d, hidden, bias=False) # ventil tarmog‘i
self.w3 = nn.Linear(d, hidden, bias=False) # qiymat tarmog‘i
self.w2 = nn.Linear(hidden, d, bias=False) # d o‘lchamga qaytarish
def forward(self, x):
return self.w2(F.silu(self.w1(x)) * self.w3(x))
ffn = SwiGLU(4096, 11008) # LLaMA-7B o‘lchamlari
print(sum(p.numel() for p in ffn.parameters())) # 135266304
PyTorch: nn.SiLU, F.silu. TensorFlow/Keras: tf.nn.silu, activation="swish" ($\beta=1$ li o‘sha funksiya). Hugging Face konfiguratsiyalarida: hidden_act="silu". O‘rnatilgan nn.init.calculate_gain SiLU’ni bilmaydi: odatda standart initsializatsiya yoki ReLU uchun initsializatsiya olinadi.
Ko‘p uchraydigan xatolar
- «SiLU ReLU kabi manfiy emas». Yo‘q: $x<0$ da u manfiy, minimumi $-0{,}278$. Agar keyin manfiy bo‘lmagan kirish talab qiladigan narsa kelsa (masalan, logarifm yoki ildiz), bu muhim.
- «SiLU monoton». Yo‘q: $x\approx-1{,}278$ dan chapda u kamayadi va hosilasi u yerda manfiy. Butun to‘g‘ri chiziqda teskari funksiyasi yo‘q.
- SiLU va GELU’ni chalkashtirish. Bular har xil funksiyalar: $x\sigma(x)$ va $x\Phi(x)$. Oldindan o‘qitilgan modelda birini ikkinchisi bilan almashtirib bo‘lmaydi — vaznlar aniq aktivatsiyaga moslangan.
- SwiGLU’ning ikkala tarmog‘ida aktivatsiya. SiLU faqat $W_1x$ ventil tarmog‘ida turadi; $W_3x$ qiymat tarmog‘i chiziqli. Ortiqcha aktivatsiya modelni o‘zgartiradi.
- SwiGLU’da $4d$ yashirin o‘lcham. Uchta matritsa bilan bu oddiy FFN’dan $1{,}5$ marta ko‘p parametr beradi. Halol taqqoslash uchun $h\approx\frac83d$ olinadi.
- O‘zi yozilgan yadrolarda
exp(-x)li sodda formula: katta manfiy $x$ larda to‘lib ketish va yarim aniqlikda aniqlik yo‘qolishi.F.siluyoki tanh orqali shakldan foydalaning.
Boshqa formulalar bilan bog‘lanishlar
- Sigmoida: SiLU ventili; $\sigma'=\sigma(1-\sigma)$ hosila $\operatorname{SiLU}'$ ga kiradi.
- ReLU: $\beta\to\infty$ da $x\sigma(\beta x)$ ning limiti; $\operatorname{ReLU}-\operatorname{SiLU}=|x|\sigma(-|x|)\le0{,}2785$.
- GELU: $x\Phi(x)\approx x\sigma(1{,}702x)$ — logistik o‘rniga normal shovqinli o‘sha o‘z-o‘zini ventillash.
- Leaky ReLU: manfiy qismni nolga aylantirmaslikning boshqa usuli — silliq chuqurcha o‘rniga $\alpha x$ to‘g‘ri chiziq.
- tanh: $\operatorname{SiLU}(x)=\frac x2\bigl(1+\tanh\frac x2\bigr)$.
- Softmax va Adam: transformerda SwiGLU’ning qo‘shnilari — diqqat (attention) mexanizmi va bunday modellar o‘qitiladigan optimizator.
Xulosa
1) $\operatorname{SiLU}(x)=x\,\sigma(x)=\frac x2\bigl(1+\tanh\frac x2\bigr)$ — o‘z-o‘zini ventillash: kirish o‘zining qancha ulushini o‘tkazishni hal qiladi. 2) Silliq, nomonoton, minimumi $\approx-1{,}278$ nuqtada $-W(e^{-1})\approx-0{,}278$; doim ReLU’dan ko‘pi bilan $0{,}278$ ga pastda. 3) $\operatorname{SiLU}'=\sigma(1+x(1-\sigma))$: nolda $0{,}5$, $x>1{,}278$ da 1 dan katta, maksimumi $\approx1{,}100$. 4) Swish-β chiziqli funksiya ($\beta=0$) va ReLU’ni ($\beta\to\infty$) bog‘laydi; GELU $\approx$ Swish-1,702. 5) Ehtimollik nuqtai nazaridan — tasodifiy logistik chegarali, o‘rtachalangan ReLU. 6) LLM’larda — SwiGLU ventili: $W_2(\operatorname{SiLU}(W_1x)\odot W_3x)$, yashirin o‘lcham $\approx\frac83d$.