অ্যালগরিদমের রূপান্তরকরণের অর্থ কী?


12

শক্তিবৃদ্ধি শেখার বিষয়ে পড়ার সময় আমি এই পদটি বজায় রেখে চলেছি, উদাহরণস্বরূপ এই বাক্যে:

যদি সমস্যাটি যত্ন সহকারে মডেল করা হয় তবে কিছু সংযুক্তি শিক্ষার অ্যালগরিদমগুলি বৈশ্বিক অনুকূলকে রূপান্তর করতে পারে

http://reinforcementlearning.ai-depot.com/

বা এখানে:

যে কোনও স্থির নীতি পাইয়ের জন্য, উপরে বর্ণিত টিডি অ্যালগরিদম ভিপিতে রূপান্তরিত হয়েছে বলে প্রমাণিত হয়েছে

http://webdocs.cs.ualberta.ca/~sutton/book/ebook/node62.html

রূপান্তর শব্দটি সম্পর্কে আমার বোঝাটি হ'ল এর অর্থ হল বেশ কয়েকটি জিনিস একই পয়েন্টে একত্রিত হওয়া, তবে কীভাবে একটি জিনিস (অ্যালগরিদম) এটি করতে পারে?


7
পুনরাবৃত্ত অ্যালগরিদমের ক্ষেত্রে, যখন প্রতিটি পুনরাবৃত্তির জন্য তাদের প্রার্থী সমাধানগুলি পছন্দসই সমাধানের কাছাকাছি এবং কাছাকাছি যেতে থাকে তখন তাদের একত্রিত করা হয়।
মেটাফাইট

6
এটি মনে করতে সাহায্য করতে পারে যে গণিতে একটি সীমাও রূপান্তর বা বিচ্যুত করতে বলা হয়, যদিও "সীমা" একটি "একক জিনিস"।
Ixrec

@ ইক্সেরেক: "সীমা" নামটির নামকরণ করা হয়েছিল যা এটি কন / কনভার্ট করে / থেকে ডাইভারেজ করে । যেমন "এটি 1 এ রূপান্তরিত হয়" যার অর্থ "এটি কখনই 1 এর উপরে যায় না" এর অর্থ "1 সর্বাধিক ফলাফলের মান" এবং এইভাবে আপনার প্রত্যাশার "সীমা" থাকে। অতএব একবচন।
ফ্ল্যাটার

উত্তর:


14

একটি পুনরাবৃত্ত অ্যালগরিদম মিলিত বললেন যখন, যেমন পুনরাবৃত্তিও এগিয়ে যাওয়া, আউটপুট কাছাকাছি এবং কাছাকাছি কিছু সুনির্দিষ্ট মানের পায় হয়। আরও স্পষ্টতই, আপনি যতই ত্রুটি সীমাটি বেছে নিন তা বিবেচনা না করা, আপনি যদি দীর্ঘক্ষণ চালিয়ে যান তবে শেষ পর্যন্ত ফাংশনটি চূড়ান্ত মানটির চারপাশে ত্রুটি সীমার মধ্যেই থাকবে।

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

আপনার প্রথম বাক্যে "গ্লোবাল সর্বোত্তম রূপান্তর" বাক্যটি হল আলগোরিদিমগুলির একটি রেফারেন্স যা রূপান্তর করতে পারে তবে "অনুকূল" মানের সাথে নয় (উদাহরণস্বরূপ একটি পাহাড় আরোহী অ্যালগরিদম যা ফাংশন এবং প্রাথমিক অবস্থার উপর নির্ভর করে, রূপান্তর করতে পারে স্থানীয় সর্বাধিক, সর্বদা সর্বোচ্চে পৌঁছায় না)।


3

সাধারনত কনভার্ভশন কি

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

আনুষ্ঠানিক সংজ্ঞাটি এরকম কিছু হয়:

প্রকৃত সংখ্যাগুলির (অসীম) অনুক্রম দেওয়া X0, X1, X2, ... Xn ...আমরা Xn converges to a given number Lযদি বলি যে প্রতিটি ধনাত্মক ত্রুটির জন্য যা আপনি ভাবেন, এমন একটি Xmউপাদান রয়েছে Xnযা পরে উপস্থিত প্রতিটি উপাদানই ত্রুটিটির চেয়ে কম Xmআলাদা হয় L

উদাহরণ:

এর মতো একটি অনুক্রম কল্পনা করুন:

  • এক্স 0 = 1
  • এক্স 1 = 0.1
  • এক্স 2 = 0.01
  • এক্স 3 = 0.001
  • এক্স 4 = 0.0001
  • ...
  • এক্সএন = 1 / (10 ^ এন)

এক্সএন কি শূন্যে রূপান্তরিত করবে? হ্যাঁ! কেন?

একটি ত্রুটি E সম্পর্কে চিন্তা করুন (উদাহরণস্বরূপ, E = 0.0025)। অনুক্রমের এমন কোনও উপাদান রয়েছে যে তার পরে প্রতিটি উপাদান নীচে থাকে 0.025? হ্যাঁ! সেই উপাদানটি হ'ল X3 = 0.001। এক্স 2 এর পরে, প্রতিটি XNনীচে 0.0025। এটি কি প্রতিটি ই> 0 এর সাথে করা যায়? হ্যাঁ. আমরা যে প্রতিটি ধনাত্মক ত্রুটিটি বেছে নিই তার জন্য আমরা দেখতে পাচ্ছি যে এটির প্রথম দশমিক বিন্দুর আগে এর কতটি শূন্য রয়েছে এবং ক্রমটি কম হবে এটি একই সংখ্যায় শূন্যের উপাদান থেকে শুরু হবে।

এর অর্থ Xn = 1/(10^5) converges to 0। "এটি শূন্যের আরও কাছাকাছি যেতে পারে" যতটা আমরা চাই


অ্যালগরিদমের রূপান্তরকরণের অর্থ কী?

"প্রযুক্তিগতভাবে" যা রূপান্তরিত হয় তা অ্যালগরিদম নয়, তবে একটি মান আলগোরিদম হেরফের বা পুনরাবৃত্তি হয়। উদাহরণস্বরূপ, ধরা যাক আমরা একটি অ্যালগরিদম লিখছি যা পিআইয়ের সমস্ত অঙ্ক মুদ্রণ করে।

অ্যালগরিদম এই জাতীয় সংখ্যা মুদ্রণ শুরু করে:

  • এক্স0 = 3.14
  • এক্স 1 = 3.141
  • এক্স 2 = 3.1415
  • এক্স 3 = 3.14159
  • ...

আমরা নিজেরাই জিজ্ঞাসা করতে পারি: অ্যালগোরিদম মুদ্রণ সংখ্যা প্রতি পিআই এর ক্রমবর্ধমান হয়? অন্য কথায়, X0, X1, ... XN ...আমাদের অ্যালগোরিদম প্রিন্ট করে যে অনুক্রমটি পিআইতে রূপান্তর করে?

যদি তা হয় তবে আমরা বলি যে আমাদের অ্যালগোরিদম পিআইতে রূপান্তর করে।


আমরা সাধারণত একটি অ্যালগরিদমের সঠিকতা প্রমাণ করতে আগ্রহী।

সাধারণত, যখন আমরা একটি অ্যালগরিদম লিখি, তখন আমরা জানতে আগ্রহী যে অ্যালগোরিদম যে সমাধানটি দেয় তার সমাধান হওয়া সমস্যার জন্য সঠিক সমাধান কিনা if এটি কখনও কখনও রূপান্তর আকারে আসতে পারে।

সাধারণভাবে, অ্যালগরিদমগুলিকে আমরা মেট্রিক বলি । একটি মেট্রিক এমন একটি সংখ্যা যা আমরা একটি নির্দিষ্ট ফলাফলকে প্রদান করি যা অ্যালগোরিদম উত্পাদন করে। উদাহরণস্বরূপ, এআই / মেশিন লার্নিং পুনরাবৃত্তির অ্যালগোরিদমগুলিতে আলগরিদম ইনপুটটির উপর ভিত্তি করে যে "ত্রুটি" তৈরি হচ্ছে তা ট্র্যাক করা আমাদের পক্ষে খুব সাধারণ। এই ত্রুটিটি একটি মেট্রিক।

এই পুনরাবৃত্ত অ্যালগরিদমে, প্রতিটি পদক্ষেপ একটি পৃথক ত্রুটি উত্পন্ন করে। এবং অ্যালগরিদম যা করার চেষ্টা করে তা হ'ল ত্রুটিটি হ্রাস করা যাতে এটি কখনও ছোট এবং ছোট হয়। আমরা বলি যে এটির ক্রমগুলি ত্রুটিগুলির রূপান্তরিত হলে অ্যালগরিদম রূপান্তর করে।

এই ক্ষেত্রে, global optimumসাধারণত সেটআপ হিসাবে সংজ্ঞায়িত হয় যা সর্বনিম্ন ত্রুটি সম্ভব। সেক্ষেত্রে "অ্যালগোরিদম গ্লোবাল অপ্টিমকে রূপান্তরিত করে" এর অর্থ হল "অ্যালগোরিদম এমন ক্রমতে ত্রুটি উত্পন্ন করে যা সর্বনিম্ন ত্রুটিটিকে রূপান্তরিত করে"।

যদি "গ্লোবাল অপ্টিমাম" আমাদের "সঠিক সমাধান" হয় তবে উল্লেখ করে যে আমাদের অ্যালগরিদম রূপান্তরিত হয় একইভাবে আমাদের অ্যালগরিদমটি সঠিক বলে উল্লেখ করে।

এছাড়াও, মনে রাখবেন যে একটি অ্যালগরিদম রূপান্তরিত করার জন্য একটি প্রমাণ প্রয়োজন (যেমন আমরা আমাদের 0.001, 0.0001, ..., উদাহরণস্বরূপ)।


উদাহরণস্বরূপ, একটি শ্রেণিবদ্ধ

শ্রেণিবদ্ধের ক্ষেত্রে এর উদাহরণ হতে পারে। মনে করুন আমরা সংখ্যাগুলি বিজোড় বা এমনকি কোনও মেশিন লার্নিং অ্যালগরিদম ব্যবহার করে শ্রেণিবদ্ধ করতে চাই এবং আমাদের নিম্নোক্ত ডেটাसेटটি রয়েছে:

  • (1, বিজোড়)
  • (2, এমনকি)
  • (3, বিজোড়)
  • (77 77, বিজোড়)
  • (4, এমনকি)

সংখ্যার প্রতিটি সংখ্যার জন্য আমাদের অ্যালগরিদম তাদের প্রত্যেকের জন্য এমনকি যদি তারা বিজোড় বা আলাদা হয় তার জন্য থুথু দেয়। তার জন্য, আমরা একটি মেট্রিক ত্রুটিটিকে সংখ্যার সংখ্যার দ্বারা প্রদত্ত মোট সংখ্যার দ্বারা বিভক্ত করার পরিমাণ হিসাবে সংখ্যায়িত করতে পারি।

সুতরাং, যদি আমাদের অ্যালগরিদম নিম্নলিখিতটি স্পট করে:

  • (1, এমনকি) // ভুল
  • (2, এমনকি)
  • (3, এমনকি) // ভুল
  • (77, এমনকি) // ভুল
  • (4, এমনকি)

আমাদের ত্রুটি মেট্রিক হবে 3/5 = 0.6। এখন আসুন আমরা আবার অ্যালগরিদম চালাই এবং এটি এখন থুথু দেয়:

  • (1, এমনকি) // ভুল
  • (2, এমনকি)
  • (3, বিজোড়)
  • (77 77, বিজোড়)
  • (4, এমনকি)

আমাদের ত্রুটি মেট্রিক হবে 1/5 = 0.2

আসুন এটি আরও বেশি বার চালায় এবং আমাদের ত্রুটির ক্রমটি এরকম কিছু দেখায়:

0.6, 0.2, 0.1, 0.01, 0.000456, 0.00000543, 0.000000000444 ....

সুতরাং বড় প্রশ্নটি: আমাদের অ্যালগরিদমটি কি কখনও শূন্য হবে? এটি কি কখনও শূন্যে রূপান্তরিত হবে? আমাদের অ্যালগরিদম প্রতিটি সংহত হবে? আমরা কি প্রমাণ করতে পারি যে অবশেষে এটি সঠিকভাবে পাওয়া যাবে (বা যতটা সম্ভব ডান কাছাকাছি)?

আশা করি তাই :)

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