یکی از توابع فعال سازی رایج در ابتدا یادگیری عمیق تابع Logistic بود که با استفاده از این تابع واریانس خروجی هر لایه بیشتر از واریانس ورودیش بود وقتی تو شبکه رو به جلو میریم واریانس بعد از هر لایه لایه در حال افزایشه تا جائیکه تابع فعال سازی در لایه های بالایی به سمت صفر و یک اشباع میشه و در نهیت backpropagation دچار مشکل میشخ و عملاً گرادیانی به سمت عقب منتشر نمیشه و گرادیان های کوچک انتهای شبکه وقتی میرسن به ابتدای شبکه رقیق و رقیق تر میشن بطورئیکه به صفر میل می کنند
برای چاره این مسئله باید هم جلوی vanishing gradient و exploding gradinet رو بگیریم که در عمل میشه برابر کردن واریانس در ورودی و خروجی لایه ها بعد از مرحله backward.
برای رفع مشکل بالا آقای Xavier در سال 2010 راه حلی ارائه میده که در آن مقداردهی اولیه وزن ها به صورت تصادفی با توزیع نرمال و یکنواخت انجام میشه البته پیشنهاد اولیه برای تایع Logsitic بوده ولی بعد ها برای تانژانت هایپربولیک و ReLU هم فرمول هایی را افراد دیگر معرفی کرد که در زیر نشان داده شده. در همه مواردی از تعداد ورودی ها و خروجی های شبکه به عنوان پارامتر استفاده شده.