টেনসরফ্লো :: অপস:: ApplyCenteredRMSProp
#include <training_ops.h>
কেন্দ্রীভূত RMSProp অ্যালগরিদম অনুযায়ী '*var' আপডেট করুন।
সারাংশ
কেন্দ্রীভূত RMSProp অ্যালগরিদম স্বাভাবিকীকরণের জন্য কেন্দ্রীভূত দ্বিতীয় মুহূর্ত (অর্থাৎ, প্রকরণ) একটি অনুমান ব্যবহার করে, নিয়মিত RMSProp এর বিপরীতে, যা (অকেন্দ্রহীন) দ্বিতীয় মুহূর্ত ব্যবহার করে। এটি প্রায়শই প্রশিক্ষণে সহায়তা করে, তবে গণনা এবং মেমরির ক্ষেত্রে এটি কিছুটা বেশি ব্যয়বহুল।
মনে রাখবেন যে এই অ্যালগরিদমের ঘন বাস্তবায়নে, mg, ms, এবং mom আপডেট হবে এমনকি গ্র্যাড শূন্য হলেও, কিন্তু এই স্পার্স ইমপ্লিমেন্টেশনে, mg, ms, এবং mom পুনরাবৃত্তিতে আপডেট হবে না যেখানে গ্র্যাড শূন্য হয়।
গড়_বর্গ = ক্ষয় * গড়_বর্গ + (1-ক্ষয়) * গ্রেডিয়েন্ট ** 2 গড়_গ্রাড = ক্ষয় * গড়_গ্রাড + (1-ক্ষয়) * গ্রেডিয়েন্ট
ডেল্টা = লার্নিং_রেট * গ্রেডিয়েন্ট / sqrt(মান_বর্গ + এপসিলন - গড়_গ্রাড ** 2)
mg <- rho * mg_{t-1} + (1-rho) * grad ms <- rho * ms_{t-1} + (1-rho) * গ্র্যাড * গ্রেড মা <- ভরবেগ * মা_{t-1 } + lr * grad / sqrt(ms - mg * mg + epsilon) var <- var - মা
যুক্তি:
- স্কোপ: একটি স্কোপ অবজেক্ট
- var: একটি পরিবর্তনশীল() থেকে হওয়া উচিত।
- mg: একটি পরিবর্তনশীল() থেকে হওয়া উচিত।
- ms: একটি পরিবর্তনশীল() থেকে হওয়া উচিত।
- মা: একটি পরিবর্তনশীল() থেকে হওয়া উচিত।
- lr: স্কেলিং ফ্যাক্টর। একটি স্কেলার হতে হবে।
- rho: ক্ষয় হার। একটি স্কেলার হতে হবে।
- epsilon: রিজ শব্দ। একটি স্কেলার হতে হবে।
- grad: গ্রেডিয়েন্ট।
ঐচ্ছিক বৈশিষ্ট্য (দেখুন Attrs
):
- use_locking: যদি
True
, var, mg, ms, এবং mom tensors-এর আপডেট করা একটি লক দ্বারা সুরক্ষিত; অন্যথায় আচরণটি অনির্ধারিত, তবে কম বিরোধ প্রদর্শন করতে পারে।
রিটার্ন:
-
Output
: "var" এর মতোই।
কনস্ট্রাক্টর এবং ডেস্ট্রাক্টর | |
---|---|
ApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad) | |
ApplyCenteredRMSProp (const :: tensorflow::Scope & scope, :: tensorflow::Input var, :: tensorflow::Input mg, :: tensorflow::Input ms, :: tensorflow::Input mom, :: tensorflow::Input lr, :: tensorflow::Input rho, :: tensorflow::Input momentum, :: tensorflow::Input epsilon, :: tensorflow::Input grad, const ApplyCenteredRMSProp::Attrs & attrs) |
পাবলিক বৈশিষ্ট্য | |
---|---|
operation | |
out |
পাবলিক ফাংশন | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
পাবলিক স্ট্যাটিক ফাংশন | |
---|---|
UseLocking (bool x) |
কাঠামো | |
---|---|
tensorflow:: ops:: ApplyCenteredRMSProp:: Attrs | ApplyCenteredRMSProp- এর জন্য ঐচ্ছিক অ্যাট্রিবিউট সেটার। |
পাবলিক বৈশিষ্ট্য
অপারেশন
Operation operation
আউট
::tensorflow::Output out
পাবলিক ফাংশন
ApplyCenteredRMSProp
ApplyCenteredRMSProp( const ::tensorflow::Scope & scope, ::tensorflow::Input var, ::tensorflow::Input mg, ::tensorflow::Input ms, ::tensorflow::Input mom, ::tensorflow::Input lr, ::tensorflow::Input rho, ::tensorflow::Input momentum, ::tensorflow::Input epsilon, ::tensorflow::Input grad )
ApplyCenteredRMSProp
ApplyCenteredRMSProp( const ::tensorflow::Scope & scope, ::tensorflow::Input var, ::tensorflow::Input mg, ::tensorflow::Input ms, ::tensorflow::Input mom, ::tensorflow::Input lr, ::tensorflow::Input rho, ::tensorflow::Input momentum, ::tensorflow::Input epsilon, ::tensorflow::Input grad, const ApplyCenteredRMSProp::Attrs & attrs )
নোড
::tensorflow::Node * node() const
অপারেটর::টেনসরফ্লো::ইনপুট
operator::tensorflow::Input() const
অপারেটর::টেনসরফ্লো::আউটপুট
operator::tensorflow::Output() const
পাবলিক স্ট্যাটিক ফাংশন
লকিং ব্যবহার করুন
Attrs UseLocking( bool x )