بهینه ساز که الگوریتم Adadelta را پیاده سازی می کند.
بهینه سازی Adadelta یک روش نزولی گرادیان تصادفی است که بر اساس نرخ یادگیری تطبیقی در هر بعد برای رفع دو اشکال است:
- کاهش مداوم نرخ یادگیری در طول آموزش
- نیاز به نرخ یادگیری جهانی انتخاب شده به صورت دستی
Adadelta یک توسعه قوی تر از Adagrad است که نرخ یادگیری را بر اساس یک پنجره متحرک از به روز رسانی گرادیان تطبیق می دهد، به جای انباشته کردن همه گرادیان های گذشته. به این ترتیب، Adadelta حتی زمانی که به روز رسانی های زیادی انجام شده است، به یادگیری ادامه می دهد. در مقایسه با Adagrad، در نسخه اصلی Adadelta شما نیازی به تعیین نرخ یادگیری اولیه ندارید. در این نسخه، نرخ یادگیری اولیه را می توان مانند اکثر بهینه سازهای دیگر تنظیم کرد.
با توجه به بخش 4.3 ("نرخ های یادگیری موثر")، اندازه گام های آموزشی در نزدیکی پایان آموزش به 1 همگرا می شود که در واقع نرخ یادگیری بالایی است که باعث واگرایی می شود. این فقط در پایان آموزش اتفاق می افتد زیرا گرادیان ها و اندازه های گام کوچک هستند و ثابت اپسیلون در صورت و مخرج بر گرادیان های گذشته و به روز رسانی پارامترها که نرخ یادگیری را به 1 همگرا می کنند، غالب است.
با توجه به بخش 4.4 ("داده های گفتاری")، جایی که یک شبکه عصبی بزرگ با 4 لایه پنهان بر روی مجموعه ای از داده های انگلیسی ایالات متحده آموزش داده شد، ADADELTA با 100 کپی شبکه استفاده شد. اپسیلون مورد استفاده 1e-6 با rho=0.95 است که با ساختار زیر سریعتر از ADAGRAD همگرا شد: new AdaDelta(graph, 1.0f, 0.95f, 1e-6f);
همچنین ببینید
ثابت ها
رشته | انباشت کننده | |
رشته | ACCUMULATOR_UPDATE | |
شناور | EPSILON_DEFAULT | |
شناور | LEARNING_RATE_DEFAULT | |
شناور | RHO_DEFAULT |
ثابت های ارثی
سازندگان عمومی
روش های عمومی
رشته | getOptimizerName () نام بهینه ساز را دریافت کنید. |
رشته | toString () |
روش های ارثی
ثابت ها
ACCUMULATOR نهایی استاتیک عمومی
رشته نهایی ثابت عمومی ACCUMULATOR_UPDATE
شناور نهایی استاتیک عمومی EPSILON_DEFAULT
شناور نهایی ثابت عمومی LEARNING_RATE_DEFAULT
شناور نهایی استاتیک عمومی RHO_DEFAULT
سازندگان عمومی
عمومی AdaDelta (گراف نمودار ، نرخ یادگیری شناور)
یک AdaDelta Optimizer ایجاد می کند
مولفه های
نمودار | نمودار TensorFlow |
---|---|
نرخ یادگیری | میزان یادگیری |
عمومی AdaDelta ( گراف نمودار، نرخ یادگیری شناور، float rho، float epsilon)
یک AdaDelta Optimizer ایجاد می کند
مولفه های
نمودار | نمودار TensorFlow |
---|---|
نرخ یادگیری | میزان یادگیری |
rho | عامل پوسیدگی |
اپسیلون | یک اپسیلون ثابت که برای شرطی سازی بهتر به روز رسانی grad استفاده می شود |
عمومی AdaDelta ( گراف نمودار، نام رشته، نرخ یادگیری شناور)
یک AdaDelta Optimizer ایجاد می کند
مولفه های
نمودار | نمودار TensorFlow |
---|---|
نام | نام این بهینه ساز (به طور پیش فرض "Adadelta") |
نرخ یادگیری | میزان یادگیری |
عمومی AdaDelta (گراف نمودار ، نام رشته، نرخ یادگیری شناور، float rho، اپسیلون شناور)
یک AdaDelta Optimizer ایجاد می کند
مولفه های
نمودار | نمودار TensorFlow |
---|---|
نام | نام این بهینه ساز (به طور پیش فرض "Adadelta") |
نرخ یادگیری | میزان یادگیری |
rho | عامل پوسیدگی |
اپسیلون | یک اپسیلون ثابت که برای شرطی سازی بهتر به روز رسانی grad استفاده می شود |
روش های عمومی
رشته عمومی getOptimizerName ()
نام بهینه ساز را دریافت کنید.
برمی گرداند
- نام بهینه ساز