কোন লজিস্টিক শ্রেণিবদ্ধে ফাংশনের (সফটম্যাক্স বনাম সিগময়েড) পছন্দ কী সিদ্ধান্ত নেয়?
ধরুন এখানে 4 টি আউটপুট ক্লাস রয়েছে। উপরের প্রতিটি ফাংশন প্রতিটি শ্রেণীর সঠিক আউটপুট হওয়ার সম্ভাবনা দেয়। তাহলে কোনটি ক্লাসিফায়ারের জন্য নেওয়া উচিত?
কোন লজিস্টিক শ্রেণিবদ্ধে ফাংশনের (সফটম্যাক্স বনাম সিগময়েড) পছন্দ কী সিদ্ধান্ত নেয়?
ধরুন এখানে 4 টি আউটপুট ক্লাস রয়েছে। উপরের প্রতিটি ফাংশন প্রতিটি শ্রেণীর সঠিক আউটপুট হওয়ার সম্ভাবনা দেয়। তাহলে কোনটি ক্লাসিফায়ারের জন্য নেওয়া উচিত?
উত্তর:
সিগমা ফাংশন , দুই শ্রেণীর লজিস্টিক রিগ্রেশন জন্য ব্যবহার করা হয় যেহেতু softmax ফাংশন multiclass লজিস্টিক রিগ্রেশন (ওরফে Maxent, MULTINOMIAL লজিস্টিক প্রত্যাবৃত্তি, softmax রিগ্রেশন, সর্বোচ্চ এনট্রপি ক্লাসিফায়ার) জন্য ব্যবহৃত হয়।
দ্বি-শ্রেণীর লজিস্টিক রিগ্রেশনে সিগময়েড ফাংশনটি ব্যবহার করে ভবিষ্যদ্বাণী করা প্রোব্লাব্লিগুলি নিম্নরূপ:
মাল্টিক্লাস লজিস্টিক রিগ্রেশন, ক্লাস সহ, ভবিষ্যদ্বাণী করা সম্ভাবনাগুলি সফটম্যাক্স ফাংশনটি ব্যবহার করে নিম্নরূপ:
কেউ পর্যবেক্ষণ করতে পারেন যে সফটম্যাক্স ফাংশনটি সিগময়েড ফাংশনটির মাল্টিক্লাস কেসটির একটি এক্সটেনশন যা নীচে ব্যাখ্যা করা হয়েছে। আসুন ক্লাস সহ মাল্টিক্লাস লজিস্টিক রিগ্রেশনটি দেখুন :
সঙ্গে । আমরা দেখতে পাই যে সিগময়েড ফাংশনটি ব্যবহার করে আমরা দ্বি-শ্রেণীর লজিস্টিক রিগ্রেশনের মতো একই সম্ভাবনাগুলি পাই। উইকিপিডিয়া এতে আরও কিছুটা প্রসারিত করে।
এগুলি আসলে, সমতুল্য, এই অর্থে যে একজনকে অন্যটিতে রূপান্তর করা যায়।
মনে করুন যে আপনার ডেটাটি নির্বিচারে মাত্রার ভেক্টর by দ্বারা প্রতিনিধিত্ব করা হয়েছে এবং আপনি সফটম্যাক্সের পরে একটি অ্যাফাইন ট্রান্সফর্মেশন ব্যবহার করে এর জন্য একটি বাইনারি শ্রেণিবদ্ধ তৈরি করেছেন:
আসুন এটি একটি সমতুল্য বাইনারি শ্রেণিবদ্ধে রূপান্তর করুন যা সফটম্যাক্সের পরিবর্তে সিগময়েড ব্যবহার করে। সবার আগে, আমাদের সিদ্ধান্ত নিতে হবে যে সিগময়েড আউটপুট (যা বা শ্রেণির জন্য হতে পারে ) এর সম্ভাবনাটি আমাদের মধ্যে কী। এই পছন্দটি একেবারে নির্বিচারে তাই আমি বর্গ চয়ন । তারপরে, আমার শ্রেণিবদ্ধকারীটি ফর্মের হবে:
শ্রেণিবদ্ধীরা সমতুল্য যদি সম্ভাবনাগুলি একই থাকে তবে আমাদের অবশ্যই চাপিয়ে দিতে হবে:
প্রতিস্থাপন করা হচ্ছে , এবং পরিপ্রেক্ষিতে তাদের এক্সপ্রেশন দ্বারা এবং এবং কিছু সহজবোধ্য করছেন বীজগণিত ম্যানিপুলেশন, আপনি যাচাই করতে পারেন যে উপরের সাম্যতা হ'ল এবং কেবল যদি এবং দেওয়া থাকে:
আমি লক্ষ্য করেছি যে নিউরাল নেটওয়ার্কগুলিতে সিগময়েড বনাম সফটম্যাক্স ব্যবহার করবেন কিনা তা অনুসন্ধান করার সময় লোকেরা প্রায়শই এই প্রশ্নের দিকে পরিচালিত হয়। আপনি যদি সেই ব্যক্তিদের মধ্যে একজন নিউরাল নেটওয়ার্ক শ্রেণিবদ্ধকারী তৈরি করেন তবে আপনার নেটওয়ার্ক থেকে কাঁচা আউটপুট মানগুলিতে সিগময়েড বা সফটম্যাক্স প্রয়োগ করবেন কিনা তা এখানে সিদ্ধান্ত নিন:
তথ্যসূত্র: উদাহরণ গণনা সহ নিউরাল নেটওয়ার্ক ডিজাইনে সিগময়েড বনাম সফটম্যাক্স কখন ব্যবহার করবেন তার আরও বিশদ ব্যাখ্যার জন্য দয়া করে এই নিবন্ধটি দেখুন: "শ্রেণিবদ্ধকরণ: সিগময়েড বনাম সফটম্যাক্স।"
পূর্ববর্তী সমস্ত উত্তর যুক্ত করে - আমি এই উল্লেখ করতে চাই যে কোনও বহু-শ্রেণীর শ্রেণিবিন্যাস সমস্যাটি "ওয়ান-বনাম সমস্ত" পদ্ধতিটি ব্যবহার করে একাধিক বাইনারি শ্রেণিবিন্যাসের সমস্যাগুলিতে হ্রাস করা যায়, সি সিগময়েড থাকা (যখন সি সংখ্যার হয় ক্লাস) এবং প্রতিটি সিগময়েডকে সেই নির্দিষ্ট শ্রেণিতে থাকার বা না হওয়ার সম্ভাবনা হতে এবং তার সর্বাধিক সম্ভাবনা গ্রহণের ব্যাখ্যা।
সুতরাং উদাহরণস্বরূপ, এমএনআইএসটি ডিজিটের উদাহরণে আপনি হয় সফটম্যাক্স, অথবা দশটি সিগময়েড ব্যবহার করতে পারেন। আসলে অ্যান্ড্রু এনজি তার কোর্সেরা এমএল কোর্সে এটি করে does অ্যান্ড্রু এনজি কীভাবে মাল্টিক্লাস শ্রেণিবিন্যাসের জন্য 10 সিগময়েড ব্যবহার করেছেন ( আমার দ্বারা মাতালাব থেকে পাইথনকে অভিযোজিত করেছিলেন ) তা এখানে পরীক্ষা করে দেখতে পারেন এবং পাইথনে আমার সফটম্যাক্স অভিযোজনটি এখানে রয়েছে।
এছাড়াও, এটি লক্ষণীয় যে ফাংশনগুলি সমান (মাল্টিক্লাস শ্রেণিবদ্ধকরণের উদ্দেশ্যে) তাদের প্রয়োগের ক্ষেত্রে কিছুটা পৃথক হয় (বিশেষত তাদের ডেরিভেটিভগুলির সাথে সম্পর্কিত এবং কীভাবে y এর প্রতিনিধিত্ব করবেন)।
একাধিক বাইনারি শ্রেণিবদ্ধকরণ (যেমন সিগময়েডস) একটি একক মাল্টিক্লাস শ্রেণিবদ্ধকরণ (অর্থাৎ সফটম্যাক্স) এর সাহায্যে ব্যবহার করার একটি বড় সুবিধা হ'ল যদি আপনার সফটম্যাক্সটি খুব বড় হয় (উদাহরণস্বরূপ যদি আপনি 10 কে বা তার বেশি ডিকোরিয়ামের আকারের এক-গরম শব্দ ব্যবহার করছেন) ) - এটি প্রশিক্ষণের জন্য অদক্ষ হতে পারে। পরিবর্তে আপনি যা করতে পারেন তা হ'ল আপনার প্রশিক্ষণ-সেটের একটি ছোট্ট অংশ গ্রহণ করুন এবং এটি আপনার সিগময়েডগুলির একটি ছোট অংশকে প্রশিক্ষণের জন্য ব্যবহার করুন। নেগেটিভ স্যাম্পলিংয়ের পিছনে এটিই মূল ধারণা ।