কেএলডি ক্ষতি ওজন কীভাবে ভেরিয়েশনাল অটো-এনকোডারগুলিতে পুনর্নির্মাণ ক্ষতি


26

আমি একটি ভিএই এর প্রায় সকল কোড উদাহরণ দেখেছি, ক্ষতির ফাংশনগুলি নীচের হিসাবে সংজ্ঞায়িত করা হয়েছে (এটি টেনসরফ্লো কোড, তবে আমি থিয়ানো, টর্চ ইত্যাদির জন্যও একই রকম দেখেছি এটিও একটি কনফেটের জন্য, তবে এটি খুব প্রাসঙ্গিকও নয়) , অঙ্কগুলি কী পরিমাণে নেওয়া হবে তা কেবলমাত্র প্রভাবিত করে:

# latent space loss. KL divergence between latent space distribution and unit gaussian, for each batch.
# first half of eq 10. in https://arxiv.org/abs/1312.6114
kl_loss = -0.5 * tf.reduce_sum(1 + log_sigma_sq - tf.square(mu) - tf.exp(log_sigma_sq), axis=1)

# reconstruction error, using pixel-wise L2 loss, for each batch
rec_loss = tf.reduce_sum(tf.squared_difference(y, x), axis=[1,2,3])

# or binary cross entropy (assuming 0...1 values)
y = tf.clip_by_value(y, 1e-8, 1-1e-8) # prevent nan on log(0)
rec_loss = -tf.reduce_sum(x * tf.log(y) + (1-x) * tf.log(1-y), axis=[1,2,3])

# sum the two and average over batches
loss = tf.reduce_mean(kl_loss + rec_loss)

তবে kl_loss এবং rec_loss এর সংখ্যার পরিসর যথাক্রমে সুপ্ত স্পেস ডিমে এবং ইনপুট বৈশিষ্ট্য আকারের (উদাহরণস্বরূপ পিক্সেল রেজোলিউশন) এর উপর খুব নির্ভরশীল। প্রতি জেড-ডিমে কেএলডি এবং পিক্সেল (বা বৈশিষ্ট্য) এলএসই বা বিসিইতে পাওয়ার জন্য কমানো_সামের সাথে হ্রাস_সামগুলি প্রতিস্থাপন করা কি বুদ্ধিমানের কাজ হবে? আরও গুরুত্বপূর্ণ, চূড়ান্ত ক্ষতির জন্য একত্রে যোগ করার সময় আমরা কীভাবে পুনর্নির্মাণ ক্ষতির সাথে সুপ্ত ক্ষয়কে ওজন দেব? এটা কি কেবল বিচার ও ত্রুটি? বা এর জন্য কোনও তত্ত্ব (বা কমপক্ষে থাম্বের নিয়ম) রয়েছে? আমি এখানে কোথাও কোনও তথ্য খুঁজে পাইনি (মূল কাগজ সহ)।


আমার যে সমস্যাটি হচ্ছে তা হ'ল যদি আমার ইনপুট বৈশিষ্ট্য (এক্স) মাত্রা এবং সুপ্ত স্পেস (জেড) মাত্রাগুলির মধ্যে ভারসাম্যটি 'সর্বোত্তম' না হয় তবে হয় আমার পুনর্গঠনগুলি খুব ভাল তবে শিখানো সুপ্ত স্থানটি কাঠামোগত নয় (যদি এক্স মাত্রাগুলি থাকে তবে কেএলডি-র উপর খুব বেশি এবং পুনর্গঠনের ত্রুটি প্রাধান্য পেয়েছে), বা বিপরীতে (পুনর্গঠনগুলি ভাল নয় তবে কেএলডি আধিপত্য বজায় রাখলে সুপ্ত স্থানটি সুসংযুক্ত)।

আমি নিজেকে পুনর্নির্মাণ ক্ষতি (ইনপুট বৈশিষ্ট্যের আকার দ্বারা বিভাজন) এবং কেএলডি (জেড মাত্রাগুলি দ্বারা বিভাজক) স্বাভাবিক করে তুলছি এবং তারপরে একটি স্বতঃস্ফূর্ত ওজন ফ্যাক্টরের সাথে কেএলডি পদটি ম্যানুয়ালি ওজন করতে হবে (স্বাভাবিককরণটি যাতে আমি একই ব্যবহার করতে পারি বা x বা z এর মাত্রা ব্যতীত একই রকম ওজন )। পুনঃনির্মাণ এবং কাঠামোগত সুপ্ত স্থানের মধ্যে একটি ভাল ভারসাম্য প্রদানের জন্য আমি 0.1 এর কাছাকাছি খুঁজে পেয়েছি যা আমার কাছে 'মিষ্টি স্পট' বলে মনে হয়। আমি এই এলাকায় পূর্ববর্তী কাজ খুঁজছি।


অনুরোধ করার পরে, উপরের গণিতের স্বরলিপি (পুনর্গঠনের ত্রুটির জন্য এল 2 ক্ষতির দিকে ফোকাস করা)

এলএকটিটিএনটি(আমি)=-12Σ=1জে(1+ +লগ(σ(আমি))2-(μ(আমি))2-(σ(আমি))2)

এলRএন(আমি)=-Σ=1কে(Y(আমি)-এক্স(আমি))2

এল(মি)=1এমΣআমি=1এম(এলএকটিটিএনটি(আমি)+ +এলRএন(আমি))

জেz- রμσ2কেএম(আমি)আমিএল(মি)মি

উত্তর:


17

7

আমি এই সমস্যাটি সম্পর্কিত আরও একটি কাগজ যুক্ত করতে চাই (এই মুহুর্তে আমার কম খ্যাতির কারণে আমি মন্তব্য করতে পারি না)।

কাগজটির ৩.১ উপচ্ছেদে লেখকরা উল্লেখ করেছেন যে তারা ভিএইর সরাসরি প্রয়োগের প্রশিক্ষণ দিতে ব্যর্থ হয়েছিল যা সম্ভাবনা এবং কেএল বৈচিত্রকে সমানভাবে ওজন করে। তাদের ক্ষেত্রে, কেএল ক্ষতি অনস্বীকার্যভাবে শূন্যে হ্রাস করা হয়েছিল, যদিও এটির একটি কম মূল্য আশা করা হয়েছিল। এটি কাটিয়ে ওঠার জন্য, তারা "কেএল কস্ট অ্যানিলিং" ব্যবহারের প্রস্তাব করেছিলেন, যা আস্তে আস্তে কেএল ডাইভার্জেন্স টার্মের (ওল্ড কার্ভ) ওজন ফ্যাক্টরকে 0 থেকে 1 এ বাড়িয়েছে।

চিত্র ২. পেন ট্রিব্যাঙ্কে আমাদের ভিএ জন্য কেএল ডাইভার্জেন্স শর্তের (অপরিচ্ছন্ন) মান বরাবর একটি সাধারণ সিগময়েড অ্যানিলিং শিডিয়ুল অনুসারে কেওএল ডাইভার্জেনশন টার্মের ভেরিয়েশিয়াল লো-বন্ড।

মজাদার ভিএইতে এই কার্য-চারপাশের সমাধানটিও প্রয়োগ করা হয়।

কাগজ:

বোম্যান, এসআর, ভিলনিস, এল।, ভিনিয়ালস, ও, ডাই, এএম, জোজেফোভিজ, আর এবং বেনজিও, এস, ২০১৫ a একটি অবিচ্ছিন্ন স্থান থেকে বাক্য তৈরি করা । আরএক্সিভ প্রিপ্রিন্ট আরএক্সিভ: 1511.06349।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.