আর্টিফিকাল ইন্টেলিজেন্স

মেশিন লার্নিং অ্যালগরিদম দিয়ে ওভারফিটিং এড়ানোর 6 উপায়

- বিজ্ঞাপন-

একটি মেশিন লার্নিং মডেল তৈরির প্রক্রিয়াটি চ্যালেঞ্জিং এবং সময়সাপেক্ষ হতে পারে। যেমন, এটা জন্য সর্বাগ্রে মডেল তৈরি করতে ডেটা বিজ্ঞানীরা যে স্থিতিশীল এবং সঠিক. 

যদিও সমস্ত মডেল নতুন ডেটাতে ভাল কাজ করবে না, তবে এমন পদক্ষেপ রয়েছে যা আপনি আপনার নির্বাচিত অ্যালগরিদমের সাথে ওভারফিটিং কমাতে নিতে পারেন।

1 – বায়াস-ভ্যারিয়েন্স ট্রেডঅফ বুঝুন

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

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

এছাড়াও পড়ুন: মেশিন লার্নিং: একটি সফল ব্যবসায়িক সংস্কৃতির ভবিষ্যৎ

2 - আপনার অ্যালগরিদমের জন্য নিয়মিতকরণ ব্যবহার করুন

একটি মডেল কতটা ভালো তার পরিমাণগত পরিমাপ হিসাবে গড় বর্গক্ষেত্র ত্রুটি বা R2 স্কোর ব্যাখ্যা করা সহজ হতে পারে, এটি প্রতারণামূলক হতে পারে। উদাহরণস্বরূপ, রিগ্রেশনের ক্ষেত্রে, অত্যধিক নিয়মিতকরণ প্রয়োগের ফলে নতুন ডেটা (প্রশিক্ষণের জন্য ডেটা ব্যবহার করা হয় না) এর ফিটিং এবং খারাপ কার্যকারিতা হয়। অন্যদিকে, আপনি যখন পর্যাপ্ত নিয়মিতকরণ প্রয়োগ করেন না, তখন আপনার মডেল অত্যধিক জটিল এবং অতিরিক্ত ফিটিং প্রবণ হয়ে উঠতে পারে।

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

3 - বিভিন্ন অপ্টিমাইজেশান অ্যালগরিদম চেষ্টা করুন

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

4 – বিভিন্ন ক্ষতি ফাংশন এবং নিয়মিতকরণ উদ্দেশ্য চেষ্টা করুন

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

এছাড়াও পড়ুন: আপনি যদি মেশিন লার্নিং ইঞ্জিনিয়ার হতে চান তবে আপনার 7 টি পদক্ষেপ অবশ্যই জানতে হবে

5 – একই সময়ে বিভিন্ন মডেলের প্রশিক্ষণ দিন

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

6 – বৈশিষ্ট্যের গুরুত্ব মেট্রিক ব্যবহার করে বিভিন্ন অ্যালগরিদম এবং নিয়মিতকরণের উদ্দেশ্য চেষ্টা করুন

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

এছাড়াও পড়ুন: শীর্ষ 15 মেশিন লার্নিং ইন্টারভিউ প্রশ্ন ও উত্তর

উপসংহার:

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

ইনস্টাগ্রামে আমাদের অনুসরণ করুন (@uniquenewsonline) এবং ফেসবুক (@uniquenewswebsite) বিনামূল্যে জন্য নিয়মিত সংবাদ আপডেট পেতে

সম্পরকিত প্রবন্ধ