কোন গভীর শিক্ষণ মডেল এমন বিভাগগুলিকে শ্রেণিবদ্ধ করতে পারে যা পারস্পরিক একচেটিয়া নয়


9

উদাহরণ: আমার কাজের বাক্যে একটি বাক্য রয়েছে: "যুক্তরাজ্যের জাভা সিনিয়র ইঞ্জিনিয়ার"।

আমি এটি 2 বিভাগ: English এবং হিসাবে পূর্বাভাস দেওয়ার জন্য একটি গভীর শিক্ষার মডেল ব্যবহার করতে চাই IT jobs। যদি আমি traditionalতিহ্যগত শ্রেণিবদ্ধকরণ মডেল ব্যবহার করি তবে এটি কেবল softmaxসর্বশেষ স্তরে ফাংশন সহ 1 টি লেবেল পূর্বাভাস দিতে পারে । সুতরাং, আমি উভয় বিভাগের সাথে "হ্যাঁ" / "না" পূর্বাভাস দিতে 2 টি মডেল নিউরাল নেটওয়ার্ক ব্যবহার করতে পারি, তবে আমাদের আরও বিভাগ থাকলে এটি ব্যয়বহুল। তাহলে একই সাথে 2 বা ততোধিক বিভাগের পূর্বাভাস দেওয়ার জন্য আমাদের কাছে কি কোনও ডিপলাইনিং বা মেশিন লার্নিং মডেল রয়েছে?

"সম্পাদনা করুন": traditionalতিহ্যগত পদ্ধতির দ্বারা 3 টি লেবেল সহ, এটি [1,0,0] দ্বারা এনকোড করা হবে তবে আমার ক্ষেত্রে এটি [1,1,0] বা [1,1,1] দ্বারা এনকোড হবে

উদাহরণ: যদি আমাদের কাছে 3 টি লেবেল থাকে এবং একটি বাক্য এই সমস্ত লেবেলের সাথে উপযুক্ত হতে পারে। সুতরাং যদি সফটম্যাক্স ফাংশন থেকে আউটপুট [0.45, 0.35, 0.2] হয় তবে আমাদের এটিকে 3 টি লেবেল বা 2 লেবেলে শ্রেণিবদ্ধ করা উচিত, বা একটি হতে পারে? মূল সমস্যাটি যখন আমরা এটি করি: 1, বা 2, বা 3 লেবেলে শ্রেণিবদ্ধ করার জন্য ভাল প্রান্তিক কী?


আমাদের সফটম্যাক্স ফাংশনের পরিবর্তে সিগময়েড ফাংশন ব্যবহার করতে হবে। এটি ডেটা পয়েন্টগুলিতে একাধিক ক্লাস নির্ধারণ করতে পারে।
নীতিশ মহাজন

উত্তর:


6

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

আপনাকে বাইনারি ক্রসসেন্ট্রপিতে ক্ষতির পরিবর্তন করতে হবে কারণ শ্রেণীবদ্ধ ক্রস এনট্রপি কেবলমাত্র ইতিবাচক লক্ষ্যমাত্রার জন্য পূর্বাভাস থেকে ক্ষতি অর্জন করে। এটি বুঝতে, একটি উদাহরণের জন্য শ্রেণীবদ্ধ ক্রসসেন্টরোপি ক্ষতির জন্য সূত্রটি দেখুনআমি (ক্লাস সূচকগুলি হয় ):

এলআমি=-Σটিআমি,লগ(পিআমি,)

সাধারণ মাল্টিক্লাস সেটিংয়ে আপনি একটি সফটম্যাক্স ব্যবহার করেন, যাতে সঠিক শ্রেণীর জন্য ভবিষ্যদ্বাণীটি অন্যান্য শ্রেণীর ভবিষ্যদ্বাণীগুলির উপর সরাসরি নির্ভর করে। যদি আপনি সিগময়েড দ্বারা সফটম্যাক্স প্রতিস্থাপন করেন তবে এটি আর সত্য নয়, তাই নেতিবাচক উদাহরণ (যেখানেটিআমি,=0) আর প্রশিক্ষণ ব্যবহার করা হয় না! এজন্য আপনাকে বাইনারি ক্রসসেন্ট্রপিতে পরিবর্তন করা দরকার যা ইতিবাচক এবং নেতিবাচক উভয় উদাহরণ ব্যবহার করে: এলআমি=-Σটিআমি,লগ(পিআমি,)-Σ(1-টিআমি,)লগ(1-পিআমি,)


ক্ষতির ক্রিয়াকলাপ হিসাবে শ্রেণীবদ্ধ ক্রসসেন্টরোপের পরিবর্তে আমাদের বাইনারি ক্রসসেন্টরোপি কেন ব্যবহার করা দরকার? আপনি আরও ব্যাখ্যা করতে পারেন? এখন আমি সিগময়েড অ্যাক্টিভেশনটি @robintibor
voxter

আমি @voxter
রবিনটিবার

উজ্জ্বল! ধন্যবাদ. এছাড়াও, আপনি কি আমাকে এমন কিছু ডকুমেন্ট বা টিউটোরিয়াল দিতে পারেন যা ডিপ্লাইয়ারিংয়ের কাজগুলি সম্পর্কে আরও গণিতের ব্যাখ্যা দেয় যেমন আপনি আমাকে ব্যাখ্যা করেছেন?
ভক্সটার

1
গ্রেট। এই টিউটোরিয়াল সাহায্য করতে পারেন: neuralnetworksanddeeplearning.com deeplearning.net/tutorial deeplearning.stanford.edu/tutorial
robintibor
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.