নতুনদের জন্য অটোএনকোডারগুলির একটি ভূমিকা

উত্স নোড: 1246080

ভূমিকা

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

সুচিপত্র

  1. শিল্পের বর্তমান পরিস্থিতি
  2. লেবেলবিহীন ডেটা দিয়ে শেখা
  3. অটোএনকোডারের পরিচিতি
  4. কাগজপত্রে অটোএনকোডারের ইতিহাস
  5. ভেরিয়েশনাল অটোএনকোডারের ভূমিকা
  6. VAE বৈচিত্র
  7. অটোএনকোডারের প্রয়োগ
  8. উপসংহার

শিল্পের বর্তমান পরিস্থিতি

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

"যদি বুদ্ধিমত্তা একটি কেক হয়, তবে তত্ত্বাবধানহীন শিক্ষা হবে কেক, তত্ত্বাবধানে শিক্ষা হবে কেকের উপর আইসিং, এবং শক্তিবৃদ্ধি শিক্ষা হবে কেকের চেরি" - ইয়ান লেকুন

তাহলে পুরো কেক খাবেন না কেন?

লেবেলবিহীন ডেটা দিয়ে শেখা

তথ্য উপস্থাপনা সত্যিই একটি ম্যাপিং. যদি আমাদের কাছে একটি ডেটা পয়েন্ট x ∈ X থাকে এবং আমাদের কাছে একটি ফাংশন থাকে f: X → Z কিছু ডেটা স্পেস Z এর জন্য, তাহলে f হল একটি উপস্থাপনা। নতুন বিন্দু f(x) = z ∈ Z কে কখনো কখনো x এর উপস্থাপনা বলা হয়। একটি ভাল উপস্থাপনা নিচের দিকের কাজগুলিকে সহজ করে তোলে।

অটোএনকোডারের পরিচিতি

অটোএনকোডারগুলিকে স্ব-এনকোডার বলা হয় এমন নেটওয়ার্ক যা তাদের নিজস্ব ইনপুট পুনরুত্পাদন করতে প্রশিক্ষিত হয়। এগুলি তত্ত্বাবধানহীন লার্নিং অ্যালগরিদমগুলির বিভাগে আসে, প্রকৃতপক্ষে, কিছু গবেষক অটোএনকোডারকে স্ব-তত্ত্বাবধানে অ্যালগরিদম হিসাবে সুপারিশ করেন যেমন একটি প্রশিক্ষণ উদাহরণ x, লেবেলটি নিজেই x। কিন্তু সাধারণ অর্থে, কোনো শ্রেণীবিভাগ বা রিগ্রেশন লেবেল না থাকায় এগুলিকে তত্ত্বাবধানহীন বলে মনে করা হয়।

অটোএনকোডারের পরিচিতি

যদি একটি অটোএনকোডার এটি পুরোপুরি করে, তাহলে আউটপুট ভেক্টর x` ইনপুট ভেক্টর x এর সমান। অটোএনকোডারটি একটি বিশেষ দুই-অংশের কাঠামো, এনকোডার এবং ডিকোডার হিসাবে ডিজাইন করা হয়েছে।

পাইথনে এনকোডার এবং ডিকোডার

AE = ডিকোডার(এনকোডার(x))

মডেল ট্রেনটি পুনর্গঠন ক্ষতি ব্যবহার করে যার লক্ষ্য x এবং x' এর মধ্যে পার্থক্য কমানো। আমরা পুনর্গঠন ক্ষতিকে MSE(x, x') এর মতো কিছু হিসাবে সংজ্ঞায়িত করতে পারি যদি ইনপুটগুলি একটি বাস্তব মান হয়। z-এর মাত্রা সাধারণত x-এর চেয়ে কম হয়, তাই অটোএনকোডারকে বটলনেক নিউরাল নেটওয়ার্কও বলা হয়। আমরা একটি সংকুচিত জ্ঞান উপস্থাপনা বাধ্য করা হয়.

সংকুচিত অটোএনকোডার

এনকোডারটি অদেখা ডেটাকে একটি নিম্ন মাত্রিক Z-এ ম্যাপ করতে ব্যবহৃত হয় এবং একটি ভাল উপস্থাপনা সর্বদা এই বিন্দুতে ফোকাস করে যে কম্প্রেশনের সময় কোনও গুরুত্বপূর্ণ তথ্য হারিয়ে যায়নি। অটোএনকোডারগুলি ঠিক প্রিন্সিপল কম্পোনেন্ট অ্যানালাইসিস (PCA) এর মতো যা নিজেই একটি মাত্রিকতা হ্রাস অ্যালগরিদম কিন্তু পার্থক্য হল PCA প্রকৃতিতে রৈখিক যেখানে অটোএনকোডারগুলি নিউরাল নেট-ভিত্তিক আর্কিটেকচারের কারণে প্রকৃতিতে অ-রৈখিক। সুপ্ত স্থান সম্পর্কে আরও ভালভাবে বোঝার জন্য, আমরা একটি উদাহরণ ব্যবহার করতে পারি যেখানে পর্যবেক্ষণ করা পরিবর্তনশীল x এমন কিছু হতে পারে (সৈকতে মানুষের সংখ্যা, আইসক্রিম বিক্রি, প্রতিদিনের তাপমাত্রা) যেখানে সুপ্ত স্থান z এমন কিছু হতে পারে যেখানে কাত হয় Eath এর অক্ষ (অর্থাৎ বছরের ঋতু) কারণ ঋতুর তথ্য ব্যবহার করে আমরা প্রায় আন্দাজ করতে পারি সমুদ্র সৈকতে দর্শকের সংখ্যা, আইসক্রিম বিক্রি ইত্যাদি।

কাগজপত্রে অটোএনকোডারের ইতিহাস

নীচে গবেষণা পত্রগুলি রয়েছে যা মেশিন লার্নিং ওয়ার্ল্ডে AE চালু করার জন্য প্রথম কয়েকটি:

  • বোল্টজম্যান মেশিন, DH Ackley, GEHinton, TJ Sejnowski এর জন্য একটি শেখার অ্যালগরিদম। জ্ঞানীয় বিজ্ঞান, 1985. স্ব-তত্ত্বাবধান দ্বারা প্রশিক্ষিত একটি সাধারণ নিউরাল নেটওয়ার্ক বর্ণনা করে।
  • ব্যাক-প্রোপাগেটিং ত্রুটির মাধ্যমে উপস্থাপনা শেখা, ডি. রুমেলহার্ট, জিওফ্রে ই. হিন্টন, আরজে উইলিয়ামস। প্রকৃতি, 1986. "আমরা নিউরনের মতো ইউনিটগুলির নেটওয়ার্কগুলির জন্য একটি নতুন শেখার পদ্ধতি, ব্যাক-প্রচার, বর্ণনা করি"।
  • সংযোগবাদী শেখার পদ্ধতি, জিই হিন্টন। মেশিন লার্নিং, 1990. "স্ব-তত্ত্বাবধানে" বটলনেক নিউরাল নেটওয়ার্ক বর্ণনা করে।

ভেরিয়েশনাল অটোএনকোডারের ভূমিকা

ভেরিয়েশনাল অটোএনকোডার হল অটোএনকোডার যা স্যাম্পলিং টেকনিক এবং কুলব্যাক-লিবার রেগুলারাইজেশন ব্যবহার করে। ভ্যারিয়েশনাল অটোএনকোডারগুলির লক্ষ্য সুপ্ত স্থানকে মসৃণ করা, অর্থাৎ x-এর একটি ছোট পরিবর্তন সুপ্ত স্থান z-এ একটি ছোট পরিবর্তনের দিকে নিয়ে যাবে এবং z-এর একটি ছোট পরিবর্তন x-এ একটি ছোট পরিবর্তনের দিকে নিয়ে যাবে। একটি সুপ্ত স্থান আরও কার্যকর এবং নির্ভুল হতে যুক্তিসঙ্গত পয়েন্ট সহ মসৃণ হওয়া প্রয়োজন এবং এটিই VAE অর্জন করার চেষ্টা করে। VAE-তে, এনকোডার শুধুমাত্র z নয়, আউটপুট দেয় mu এবং সিগমা. এর পরে স্যাম্পলিং অপারেশন এই পরামিতিগুলি থেকে z বেছে নেয় এবং যথারীতি ডিকোডার আগের মতো z নেয়।

একটি ভাল নমুনা কৌশল ডেটা পয়েন্টগুলির একটি ভাল পুনর্গঠন প্রদান করে, এছাড়াও ডেটা পয়েন্টগুলির কাছাকাছি পয়েন্টগুলির একটি ভাল পুনর্গঠন প্রদান করে। প্রক্রিয়াটি নিশ্চিত করে যে প্রতিটি বিন্দু যে সুপ্ত অবস্থানের কাছাকাছি যেখানে আপনি এনকোড করেছেন [ইনপুট x, অর্থাৎ z মানে] সেটিকে [x] এর মতো কিছুতে ডিকোড করা যেতে পারে, এইভাবে সুপ্ত স্থানটিকে ক্রমাগত অর্থপূর্ণ হতে বাধ্য করে। সুপ্ত স্থানের যেকোনো দুটি কাছাকাছি বিন্দু অত্যন্ত অনুরূপ চিত্রগুলিকে ডিকোড করবে। ধারাবাহিকতা, সুপ্ত স্থানের নিম্ন মাত্রার সাথে মিলিত, সুপ্ত স্থানের প্রতিটি দিককে ডেটার পরিবর্তনের একটি অর্থপূর্ণ অক্ষকে এনকোড করতে বাধ্য করে, সুপ্ত স্থানটিকে অত্যন্ত সুগঠিত করে এবং এইভাবে ধারণা ভেক্টরের মাধ্যমে ম্যানিপুলেশনের জন্য অত্যন্ত উপযুক্ত করে তোলে। নমুনার জন্য ছদ্ম-কোড নীচে সনাক্ত করা হয়েছে:

z_mean, z_log_variance = এনকোডার(x) z = z_mean + exp(z_log_variance) * epsilon x_hat = ডিকোডার(z) মডেল = মডেল(x, x_hat)

VAE-তে,  আমরা ডেটাকে স্বাভাবিক হিসাবে বিতরণ করতে চাই 𝑧-স্থান। বিশেষ করে, একটি স্ট্যান্ডার্ড মাল্টিভেরিয়েট নরমাল, 𝑁(0,1)। ডিকোডার ব্যবহার করার সময়, আমরা আত্মবিশ্বাসী হতে পারি যে এই ধরনের সমস্ত পয়েন্ট সাধারণ 𝑥 পয়েন্টের সাথে মিলে যায়। কোন "গর্ত" কারণ এনকোডার হয় ডেটা সংকুচিত করার জন্য কঠোর পরিশ্রম করা, তাই এটি স্থান নষ্ট করবে না।

নিয়মিতকরণ

"একটি VAE-এর পরামিতিগুলি দুটি ক্ষতির ফাংশনের মাধ্যমে প্রশিক্ষিত হয়: একটি পুনর্গঠন ক্ষতি যা ডিকোড করা নমুনাগুলিকে প্রাথমিক ইনপুটগুলির সাথে মেলে দিতে বাধ্য করে এবং একটি নিয়মিতকরণ ক্ষতি যা সুগঠিত সুপ্ত স্থানগুলি শিখতে এবং প্রশিক্ষণের ডেটাতে অতিরিক্ত ফিটিং কমাতে সাহায্য করে।" - চোলেট।

নিয়মিতকরণের ক্ষতি এনকোডারকে সুপ্ত স্থানের একটি স্বাভাবিক বিতরণে ডেটা রাখতে বলে।

Kullback-Leibler ডাইভারজেন্স

Kullback-Leibler divergence KL(𝑝||𝑞) হল এক জোড়া বন্টন, 𝑝 এবং 𝑞 এর মধ্যে বৈষম্যের পরিসংখ্যানগত পরিমাপ। সুতরাং, এটি এমন একটি সংখ্যা যা বড় হয় যখন 𝑝 এবং 𝑞 ভিন্ন ভিন্ন হয় এবং শূন্যের কাছাকাছি হয় যখন তারা একই রকম হয়।

কেএল লস হল আমাদের VAE ক্ষতির একটি নিয়মিতকরণ শব্দ। বরাবরের মতো, আমরা KL গুণ করে নিয়মিতকরণ টিউন করতে পারি একটি স্কেলার দ্বারা। যদি এটি খুব শক্তিশালী হয় তবে আমাদের মডেলটি ভেঙে পড়বে এবং খুব দুর্বল হলে এটি ক্লাসিক AE-এর সমতুল্য হবে।

মনে রাখবেন: VAE = AE + স্যাম্পলিং + KL ক্ষতি

1. প্রতিটি বিন্দু z পেতে একটি মাল্টিভেরিয়েট নরমাল 𝑁(𝜇, 𝛴) থেকে স্যাম্পলিং পদ্ধতির নমুনা।

2. নিয়মিতকরণ পদ্ধতি সুপ্ত ধাক্কা একটি ক্ষতি যোগ করে বন্টন একটি স্ট্যান্ডার্ড মাল্টিভেরিয়েট সাধারন 𝑁(0,1) এর অনুরূপ।

3. সাধারণত,  dim(𝑧) সাধারণত dim(𝑥) এর তুলনায় ছোট হয়। কত ছোট?  "যতটা সম্ভব ছোট", পুনর্গঠনের ত্রুটি বাড়ানো ছাড়াই। বরাবরের মতো, এটি ডাউনস্ট্রিম টাস্কের উপর নির্ভর করে।  যদি dim(𝑧) = 2 হয়, আমরা সহজেই কল্পনা করতে পারি। কিন্তু এটি সাধারণত খুব চরম: প্রশিক্ষণের ডেটা ভালভাবে পুনর্গঠন করতে পারে না অনেক। যদি ম্লান(𝑧) > 2 হয়, আমরা ভিজ্যুয়ালাইজেশনের জন্য 𝑡-SNE বা UMAP ব্যবহার করতে পারি।

VAE ভেরিয়েন্ট

  1. BetaVAE (বিচ্ছিন্ন প্রতিনিধিত্বের জন্য শক্তিশালী নিয়মিতকরণ)।
  2. চুক্তিমূলক AE (একটি ভিন্ন নিয়মিতকরণের সাথে মসৃণতার লক্ষ্য)।

  3. শর্তসাপেক্ষ VAE (ডিকোডার মানচিত্র (𝑧, 𝑐) → 𝑥, যেখানে 𝑐 বেছে নেওয়া হয়েছে, যেমন 𝑐 নির্দিষ্ট করে কোন সংখ্যাটি তৈরি করতে হবে এবং 𝑧 শৈলী নির্দিষ্ট করে

তথ্যসূত্র:  কেরাস অটোএনকোডার

অটোএনকোডারের অ্যাপ্লিকেশন

  1. ডিনোইসিং ইমেজ (রূপ AE)
  2. টাইম সিরিজে অসঙ্গতি সনাক্তকরণ (1D রূপান্তর AE)
  3. অসঙ্গতি সনাক্তকরণ দ্বারা নেটওয়ার্ক অনুপ্রবেশ সনাক্তকরণ (শুধুমাত্র VAE এনকোডার)

  4. ভিডিও গেম লেভেল এবং মিউজিক জেনারেশন (শুধুমাত্র কনভ VAE ডিকোডার)।

উপসংহার

পরিশেষে, আমি মনে করি অটোএনকোডার এবং ভেরিয়েশনাল অটোএনকোডার হল সবচেয়ে শক্তিশালী অ-তত্ত্বাবধানহীন শেখার কৌশল যা প্রতিটি ডেটা বিজ্ঞানীর সচেতন হওয়া উচিত। যদিও এই মডেলগুলির নিজস্ব সীমাবদ্ধতা রয়েছে যেমন তাদের প্রশিক্ষণ ইত্যাদির জন্য তুলনামূলকভাবে বড় ডেটাসেট প্রয়োজন।

এই নিবন্ধে দেখানো মিডিয়া Analytics বিদ্যার মালিকানাধীন নয় এবং লেখকের বিবেচনার ভিত্তিতে ব্যবহার করা হয়।

সূত্র: https://www.analyticsvidhya.com/blog/2021/10/an-introduction-to-autoencoders-for-beginners/

সময় স্ট্যাম্প:

থেকে আরো বিশ্লেষণ বিদ্যা