10টি আশ্চর্যজনক মেশিন লার্নিং ভিজ্যুয়ালাইজেশন যা আপনার 2023 সালে জানা উচিত

কম কোড সহ মেশিন লার্নিং প্লট তৈরির জন্য ইয়েলোব্রিক

দ্বারা ফোটো ডেভিড পিসনয় on Unsplash

ডেটা ভিজ্যুয়ালাইজেশন মেশিন লার্নিংয়ে গুরুত্বপূর্ণ ভূমিকা পালন করে।

মেশিন লার্নিংয়ে ডেটা ভিজ্যুয়ালাইজেশন ব্যবহারের ক্ষেত্রে অন্তর্ভুক্ত:

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

মেশিন লার্নিং এর উপরোক্ত মূল বিষয়গুলির সাথে সরাসরি সম্পর্কিত ভিজ্যুয়ালাইজেশনকে বলা হয় মেশিন লার্নিং ভিজ্যুয়ালাইজেশন.

মেশিন লার্নিং ভিজ্যুয়ালাইজেশন তৈরি করা কখনও কখনও একটি জটিল প্রক্রিয়া কারণ এটি এমনকি পাইথনে লিখতে প্রচুর কোডের প্রয়োজন হয়। কিন্তু, পাইথনের ওপেন সোর্সকে ধন্যবাদ হলুদ ব্রিক লাইব্রেরি, এমনকি জটিল মেশিন লার্নিং ভিজ্যুয়ালাইজেশন কম কোড দিয়ে তৈরি করা যেতে পারে। সেই লাইব্রেরিটি Scikit-learn API প্রসারিত করে এবং ভিজ্যুয়াল ডায়াগনস্টিকসের জন্য উচ্চ-স্তরের ফাংশন প্রদান করে যা Scikit-learn দ্বারা সরবরাহ করা হয় না।

আজ, আমি নিম্নলিখিত ধরণের মেশিন লার্নিং ভিজ্যুয়ালাইজেশন, তাদের ব্যবহারের ক্ষেত্রে এবং ইয়েলোব্রিক বাস্তবায়ন নিয়ে বিস্তারিত আলোচনা করব।

ইয়েলোব্রিক এমএল ভিজ্যুয়ালাইজেশন
-----------------------------
01. প্রিন্সিয়াপাল কম্পোনেন্ট প্লট
02. বৈধতা বক্ররেখা
03. শেখার বক্ররেখা
04. কনুই প্লট
05. সিলুয়েট প্লট
06. ক্লাস ভারসাম্যহীনতা প্লট
07. অবশিষ্টাংশ প্লট
08. ভবিষ্যদ্বাণী ত্রুটি প্লট
09. কুক এর দূরত্ব প্লট
10. বৈশিষ্ট্য গুরুত্ব প্লট

স্থাপন

ইয়েলোব্রিকের ইনস্টলেশন নিম্নলিখিত কমান্ডগুলির মধ্যে একটি চালানোর মাধ্যমে করা যেতে পারে।

  • বীচি প্যাকেজ ইনস্টলার:
পিপ ইয়েলোব্রিক ইনস্টল করুন
  • কনডা প্যাকেজ ইনস্টলার:
conda install -c districtdatalabs yellowbrick

ইয়েলোব্রিক ব্যবহার করে

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

প্লট সংরক্ষণ

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

visualizer.show(outpath="name_of_the_plot.png")

ব্যবহার

প্রধান উপাদান প্লট একটি 2D বা 3D স্ক্যাটার প্লটে উচ্চ-মাত্রিক ডেটা কল্পনা করে। অতএব, এই প্লটটি উচ্চ-মাত্রিক ডেটাতে গুরুত্বপূর্ণ নিদর্শনগুলি সনাক্ত করার জন্য অত্যন্ত কার্যকর।

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতিতে এই প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। আমাদের প্রথমে ডেটাসেটে PCA প্রয়োগ করতে হবে এবং তারপর স্ক্যাটার প্লট তৈরি করতে ম্যাটপ্লটলিব লাইব্রেরি ব্যবহার করতে হবে।

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

এটি আরও বোঝার জন্য একটি উদাহরণ নেওয়া যাক। এখানে, আমরা ব্যবহার স্তন ক্যান্সার ডেটাসেট (দেখুন তলব শেষে) যার 30টি বৈশিষ্ট্য এবং দুটি শ্রেণীর 569টি নমুনা রয়েছে (মারাত্মক এবং ফলপ্রদ) ডেটাতে উচ্চ মাত্রার (30 বৈশিষ্ট্য) থাকার কারণে, আমরা ডেটাসেটে PCA প্রয়োগ না করলে 2D বা 3D স্ক্যাটার প্লটে আসল ডেটা প্লট করা অসম্ভব৷

নীচের কোডটি ব্যাখ্যা করে যে কিভাবে আমরা একটি 2-মাত্রিক ডেটাসেটের 30D স্ক্যাটার প্লট তৈরি করতে ইয়েলোব্রিকের পিসিএ ভিজ্যুয়ালাইজার ব্যবহার করতে পারি।

(লেখকের কোড)
প্রধান উপাদান প্লট — 2D (আউটর দ্বারা ছবি)

আমরা সেট করে একটি 3D স্ক্যাটার প্লটও তৈরি করতে পারি projection=3PCA() ক্লাসে।

(লেখকের কোড)
প্রধান উপাদান প্লট — 3D (লেখকের ছবি)

PCA ভিজ্যুয়ালাইজারের সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলির মধ্যে রয়েছে:

  • স্কেল: bool, ডিফল্ট True. এটি নির্দেশ করে যে ডেটা স্কেল করা উচিত কিনা। পিসিএ চালানোর আগে আমাদের ডেটা স্কেল করা উচিত। এই সম্পর্কে আরও জানো এখানে.
  • অভিক্ষেপ: int, ডিফল্ট 2. কখন projection=2, একটি 2D স্ক্যাটার প্লট তৈরি করা হয়েছে। কখন projection=3, একটি 3D স্ক্যাটার প্লট তৈরি করা হয়েছে।
  • ক্লাস: তালিকা, ডিফল্ট None. এটি y-তে প্রতিটি শ্রেণীর জন্য ক্লাস লেবেল নির্দেশ করে। শ্রেণীর নাম কিংবদন্তির জন্য লেবেল হবে।

ব্যবহার

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

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতির সাথে একটি বৈধতা বক্ররেখা তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর ValidationCurve visualizer ব্যবহার করতে পারি।

ইয়েলোবির্ক-এ একটি বৈধতা বক্ররেখা প্লট করতে, আমরা একই ব্যবহার করে একটি এলোমেলো বন শ্রেণীবিভাগ তৈরি করব স্তন ক্যান্সার ডেটাসেট (দেখুন তলব শেষে). আমরা এর প্রভাব চক্রান্ত করব সর্বোচ্চ গভীরতা এলোমেলো বন মডেলে হাইপারপ্যারামিটার।

নিম্নলিখিত কোডটি ব্যাখ্যা করে যে কিভাবে আমরা ইয়েলোব্রিকের ভ্যালিডেশন কার্ভ ভিজ্যুয়ালাইজার ব্যবহার করে একটি বৈধতা বক্ররেখা তৈরি করতে পারি স্তন ক্যান্সার ডেটাসেট

(লেখকের কোড)
বৈধতা বক্ররেখা (লেখকের ছবি)

মডেলের পরে ওভারফিট শুরু হয় সর্বোচ্চ গভীরতা 6 এর মান। কখন max_depth=6, মডেলটি প্রশিক্ষণের ডেটার সাথে খুব ভালভাবে ফিট করে এবং নতুন অদেখা ডেটাতেও ভালভাবে সাধারণীকরণ করে।

ValidationCurve visualizer-এর সবচেয়ে গুরুত্বপূর্ণ প্যারামিটারগুলির মধ্যে রয়েছে:

  • অনুমানকারী: এটি যেকোন স্কিট-লার্ন এমএল মডেল যেমন ডিসিশন ট্রি, র্যান্ডম ফরেস্ট, সাপোর্ট ভেক্টর মেশিন ইত্যাদি হতে পারে।
  • param_name: এটি হাইপারপ্যারামিটারের নাম যা আমরা নিরীক্ষণ করতে চাই।
  • param_range: এর জন্য সম্ভাব্য মান অন্তর্ভুক্ত param_name.
  • সিভি: int, ক্রস-বৈধকরণের জন্য ভাঁজের সংখ্যা সংজ্ঞায়িত করে।
  • স্কোরিং: স্ট্রিং মডেলের স্কোরিং পদ্ধতি রয়েছে। শ্রেণীবিভাগের জন্য, সঠিকতা পছন্দসই।

ব্যবহার

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

শেখার বক্ররেখার ব্যবহারগুলির মধ্যে রয়েছে:

  • শেখার বক্ররেখা সনাক্ত করতে ব্যবহৃত হয় আন্ডারফিটিং, ওভারফিটিং এবং একদম ঠিক মডেলের শর্তাবলী।
  • শেখার বক্ররেখা চিহ্নিত করতে ব্যবহৃত হয় sকম অভিসারণ, দোদুল, অপসারণ সঙ্গে oscillating এবং সঠিক মিলন একটি নিউরাল নেটওয়ার্ক বা এমএল মডেলের সর্বোত্তম শিক্ষার হার খুঁজে বের করার সময় পরিস্থিতি।
  • আরও প্রশিক্ষণের ডেটা যোগ করলে আমাদের মডেল কতটা উপকৃত হয় তা দেখতে শেখার বক্ররেখা ব্যবহার করা হয়। এইভাবে ব্যবহার করা হলে, x-অক্ষ প্রশিক্ষণের দৃষ্টান্তের সংখ্যা দেখায়।

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতির সাথে শেখার বক্ররেখা তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর LearningCurve visualizer ব্যবহার করতে পারি।

ইয়েলোবির্কে একটি শেখার বক্ররেখা প্লট করার জন্য, আমরা একই ব্যবহার করে একটি সমর্থন ভেক্টর ক্লাসিফায়ার তৈরি করব স্তন ক্যান্সার ডেটাসেট (দেখুন তলব শেষে).

নিম্নলিখিত কোডটি ব্যাখ্যা করে যে কিভাবে আমরা ইয়েলোব্রিকের লার্নিংকার্ভ ভিজ্যুয়ালাইজার ব্যবহার করে একটি বৈধতা বক্ররেখা তৈরি করতে পারি স্তন ক্যান্সার ডেটাসেট

(লেখকের কোড)
শেখার বক্ররেখা (লেখকের ছবি)

আরও প্রশিক্ষণের দৃষ্টান্ত যোগ করে মডেলটি উপকৃত হবে না। মডেলটি ইতিমধ্যে 569টি প্রশিক্ষণ দৃষ্টান্ত সহ প্রশিক্ষিত হয়েছে। 175টি প্রশিক্ষণের দৃষ্টান্তের পরে বৈধতা নির্ভুলতা উন্নত হচ্ছে না।

LearningCurve ভিজ্যুয়ালাইজারের সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলির মধ্যে রয়েছে:

  • অনুমানকারী: এটি যেকোন স্কিট-লার্ন এমএল মডেল যেমন ডিসিশন ট্রি, র্যান্ডম ফরেস্ট, সাপোর্ট ভেক্টর মেশিন ইত্যাদি হতে পারে।
  • সিভি: int, ক্রস-বৈধকরণের জন্য ভাঁজের সংখ্যা সংজ্ঞায়িত করে।
  • স্কোরিং: স্ট্রিং মডেলের স্কোরিং পদ্ধতি রয়েছে। শ্রেণীবিভাগের জন্য, সঠিকতা পছন্দসই।

ব্যবহার

K-Means ক্লাস্টারিং-এ ক্লাস্টারের সর্বোত্তম সংখ্যা নির্বাচন করতে এলবো প্লট ব্যবহার করা হয়। লাইন চার্টে যেখানে কনুই দেখা যায় সেখানে মডেলটি সবচেয়ে ভালো ফিট করে। কনুই হল চার্টে ইনফ্লেকশনের বিন্দু।

হলুদ ব্রিক বাস্তবায়ন

সনাতন পদ্ধতিতে এলবো প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর KElbowVisualizer ব্যবহার করতে পারি।

ইয়েলোবির্কে একটি শেখার বক্ররেখা তৈরি করতে, আমরা ব্যবহার করে একটি কে-মিনস ক্লাস্টারিং মডেল তৈরি করব রামধনু ডেটাসেট (দেখুন তলব শেষে).

নিচের কোডটি ব্যাখ্যা করে কিভাবে আমরা ইয়েলোব্রিকের কেলবো ভিজুয়ালাইজার ব্যবহার করে একটি এলবো প্লট তৈরি করতে পারি রামধনু ডেটাসেট

(লেখকের কোড)
কনুই প্লট (লেখকের ছবি)

সার্জারির কনুই k=4 এ ঘটে (একটি ড্যাশড লাইন দিয়ে টীকা করা)। প্লটটি নির্দেশ করে যে মডেলের জন্য ক্লাস্টারের সর্বোত্তম সংখ্যা 4। অন্য কথায়, মডেলটি 4টি ক্লাস্টারের সাথে ভালভাবে লাগানো হয়েছে।

KelbowVisualizer-এর সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলির মধ্যে রয়েছে:

  • অনুমানকারী: K- মানে মডেল উদাহরণ
  • k: int বা tuple. একটি পূর্ণসংখ্যা হলে, এটি (2, k) রেঞ্জের ক্লাস্টারগুলির জন্য স্কোর গণনা করবে। একটি টিপল হলে, এটি প্রদত্ত পরিসরের ক্লাস্টারগুলির জন্য স্কোর গণনা করবে, উদাহরণস্বরূপ, (3, 11)।

ব্যবহার

সিলুয়েট প্লটটি K-Means ক্লাস্টারিংয়ের সর্বোত্তম সংখ্যক ক্লাস্টার নির্বাচন করতে এবং ক্লাস্টারের ভারসাম্যহীনতা সনাক্ত করতে ব্যবহৃত হয়। এই প্লট কনুই প্লট তুলনায় খুব সঠিক ফলাফল প্রদান করে.

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতিতে সিলুয়েট প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর SilhouetteVisualizer ব্যবহার করতে পারি।

Yellowbirck এ একটি সিলুয়েট প্লট তৈরি করতে, আমরা ব্যবহার করে একটি K-Means ক্লাস্টারিং মডেল তৈরি করব রামধনু ডেটাসেট (দেখুন তলব শেষে).

নিম্নলিখিত কোড ব্লকগুলি ব্যাখ্যা করে যে কীভাবে আমরা ইয়েলোব্রিকের সিলুয়েট ভিজুয়ালাইজার ব্যবহার করে সিলুয়েট প্লট তৈরি করতে পারি রামধনু বিভিন্ন k (ক্লাস্টারের সংখ্যা) মান সহ ডেটাসেট।

ট = 2

(লেখকের কোড)
2 টি ক্লাস্টার সহ সিলুয়েট প্লট (k=2), (লেখকের ছবি)

KMeans() ক্লাসে ক্লাস্টারের সংখ্যা পরিবর্তন করে, আমরা k=3, k=4 এবং k=5 হলে সিলুয়েট প্লট তৈরি করতে উপরের কোডটি বিভিন্ন সময়ে কার্যকর করতে পারি।

ট = 3

3 টি ক্লাস্টার সহ সিলুয়েট প্লট (k=3), (লেখকের ছবি)

ট = 4

4 টি ক্লাস্টার সহ সিলুয়েট প্লট (k=4), (লেখকের ছবি)

ট = 5

4 টি ক্লাস্টার সহ সিলুয়েট প্লট (k=5), (লেখকের ছবি)

সিলুয়েট প্লটে প্রতি ক্লাস্টারে একটি ছুরির আকৃতি রয়েছে। প্রতিটি ছুরির আকার বার দ্বারা তৈরি করা হয় যা ক্লাস্টারের সমস্ত ডেটা পয়েন্টকে প্রতিনিধিত্ব করে। সুতরাং, একটি ছুরি আকৃতির প্রস্থ ক্লাস্টারের সমস্ত দৃষ্টান্তের সংখ্যা উপস্থাপন করে। বার দৈর্ঘ্য প্রতিটি উদাহরণের জন্য সিলুয়েট সহগ প্রতিনিধিত্ব করে। ড্যাশড লাইন সিলুয়েট স্কোর নির্দেশ করে — উত্স: হ্যান্ডস-অন কে-মিনস ক্লাস্টারিং (আমার দ্বারা লিখিত)।

ছুরির আকারের মোটামুটি সমান প্রস্থের একটি প্লট আমাদেরকে বলে যে ক্লাস্টারগুলি ভালভাবে ভারসাম্যপূর্ণ এবং প্রতিটি ক্লাস্টারের মধ্যে মোটামুটি একই সংখ্যক দৃষ্টান্ত রয়েছে — কে-মিনস ক্লাস্টারিংয়ের সবচেয়ে গুরুত্বপূর্ণ অনুমানগুলির মধ্যে একটি৷

যখন একটি ছুরির আকৃতির বারগুলি ড্যাশড লাইনকে প্রসারিত করে, তখন ক্লাস্টারগুলি ভালভাবে আলাদা হয়ে যায় — কে-মিনস ক্লাস্টারিংয়ের আরেকটি গুরুত্বপূর্ণ অনুমান।

যখন k=3, ক্লাস্টারগুলি ভাল-ভারসাম্যপূর্ণ এবং ভালভাবে পৃথক করা হয়। সুতরাং, আমাদের উদাহরণে ক্লাস্টারগুলির সর্বোত্তম সংখ্যা হল 3।

SilhouetteVisualizer-এর সবচেয়ে গুরুত্বপূর্ণ প্যারামিটারগুলির মধ্যে রয়েছে:

  • অনুমানকারী: K- মানে মডেল উদাহরণ
  • রঙ: স্ট্রিং, প্রতিটি ছুরি আকৃতির জন্য ব্যবহৃত রঙের একটি সংগ্রহ। 'yellowbrick' বা Matplotlib রঙের মানচিত্র স্ট্রিংগুলির একটি যেমন 'অ্যাকসেন্ট', 'Set1', ইত্যাদি।

ব্যবহার

শ্রেণী ভারসাম্যহীনতা প্লট শ্রেণীবিন্যাস ডেটাসেটের লক্ষ্য কলামে ক্লাসের ভারসাম্যহীনতা সনাক্ত করে।

শ্রেণী ভারসাম্যহীনতা ঘটে যখন একটি শ্রেণীর অন্যান্য শ্রেণীর তুলনায় উল্লেখযোগ্যভাবে বেশি দৃষ্টান্ত থাকে। উদাহরণস্বরূপ, স্প্যাম ইমেল সনাক্তকরণের সাথে সম্পর্কিত একটি ডেটাসেটে "স্প্যাম নয়" বিভাগের জন্য 9900টি এবং "স্প্যাম" বিভাগের জন্য মাত্র 100টি উদাহরণ রয়েছে৷ মডেলটি সংখ্যালঘু শ্রেণীকে ধরতে ব্যর্থ হবে ( স্প্যাম বিভাগ)। এর ফলস্বরূপ, শ্রেণী ভারসাম্যহীনতা ঘটলে সংখ্যালঘু শ্রেণীর ভবিষ্যদ্বাণীতে মডেলটি সঠিক হবে না — উত্স: শীর্ষ 20 মেশিন লার্নিং এবং গভীর শিক্ষার ভুল যা গোপনে পর্দার আড়ালে ঘটে (আমার দ্বারা লিখিত)।

হলুদ ব্রিক বাস্তবায়ন

প্রথাগত পদ্ধতিতে শ্রেণী ভারসাম্যহীনতার প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর ClassBalance visualizer ব্যবহার করতে পারি।

Yellowbirck এ একটি শ্রেণী ভারসাম্যহীনতার প্লট প্লট করতে, আমরা ব্যবহার করব স্তন ক্যান্সার ডেটাসেট (শ্রেণীবিন্যাস ডেটাসেট, দেখুন তলব শেষে).

নিম্নলিখিত কোডটি ব্যাখ্যা করে যে কীভাবে আমরা ইয়েলোব্রিকের ক্লাসব্যালেন্স ভিজ্যুয়ালাইজার ব্যবহার করে একটি শ্রেণি ভারসাম্যহীন প্লট তৈরি করতে পারি স্তন ক্যান্সার ডেটাসেট

(লেখকের কোড)
ক্লাস ভারসাম্যহীনতা প্লট (লেখকের ছবি)

200 টিরও বেশি দৃষ্টান্ত রয়েছে মারাত্মক ক্লাস এবং 350 টিরও বেশি দৃষ্টান্ত ফলপ্রদ ক্লাস অতএব, আমরা এখানে অনেক শ্রেণী ভারসাম্যহীনতা দেখতে পাচ্ছি না যদিও দৃষ্টান্ত দুটি শ্রেণীর মধ্যে সমানভাবে বিতরণ করা হয়নি।

ক্লাসব্যালেন্স ভিজ্যুয়ালাইজারের সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলির মধ্যে রয়েছে:

  • লেবেল: তালিকা, টার্গেট কলামে অনন্য ক্লাসের নাম।

ব্যবহার

রৈখিক রিগ্রেশনে অবশিষ্টাংশের প্লটটি একটি রিগ্রেশন মডেলে ত্রুটির বৈচিত্র্য বিশ্লেষণ করে অবশিষ্টাংশ (পর্যবেক্ষিত মান-পূর্বাভাসিত মান) অসংলগ্ন (স্বতন্ত্র) কিনা তা নির্ধারণ করতে ব্যবহৃত হয়।

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

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতিতে অবশিষ্টাংশের প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর ResidualsPlot ভিজ্যুয়ালাইজার ব্যবহার করতে পারি।

Yellowbirck একটি অবশিষ্ট প্লট প্লট, আমরা ব্যবহার করব বিজ্ঞাপন (Advertising.csvদেখুন তলব শেষে) ডেটাসেট।

নিচের কোডটি ব্যাখ্যা করে যে কিভাবে আমরা ইয়েলোব্রিকের রেসিডুয়ালসপ্লট ভিজ্যুয়ালাইজার ব্যবহার করে একটি অবশিষ্ট প্লট তৈরি করতে পারি বিজ্ঞাপন ডেটাসেট

(লেখকের কোড)
অবশিষ্টাংশ প্লট (লেখকের ছবি)

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

ResidualsPlot ভিজ্যুয়ালাইজারের সবচেয়ে গুরুত্বপূর্ণ পরামিতিগুলির মধ্যে রয়েছে:

  • অনুমানকারী: এটি যেকোন স্কিট-লার্ন রিগ্রেসার হতে পারে।
  • হিস্ট: bool, ডিফল্ট True. অবশিষ্টাংশের হিস্টোগ্রাম প্লট করতে হবে কিনা, যা অন্য অনুমান পরীক্ষা করতে ব্যবহৃত হয় — অবশিষ্টাংশগুলি প্রায় স্বাভাবিকভাবে গড় 0 এবং একটি নির্দিষ্ট মান বিচ্যুতি দিয়ে বিতরণ করা হয়।

ব্যবহার

রৈখিক রিগ্রেশনে ভবিষ্যদ্বাণী ত্রুটি প্লট একটি গ্রাফিক্যাল পদ্ধতি যা একটি রিগ্রেশন মডেল মূল্যায়ন করতে ব্যবহৃত হয়।

ভবিষ্যদ্বাণী ত্রুটি প্লট তৈরি করা হয় প্রকৃত লক্ষ্য মানের বিরুদ্ধে ভবিষ্যদ্বাণী প্লট করে।

যদি মডেলটি খুব সঠিক ভবিষ্যদ্বাণী করে, পয়েন্টগুলি 45-ডিগ্রি লাইনে হওয়া উচিত। অন্যথায়, পয়েন্টগুলি সেই লাইনের চারপাশে ছড়িয়ে পড়ে।

হলুদ ব্রিক বাস্তবায়ন

প্রথাগত পদ্ধতিতে ভবিষ্যদ্বাণী ত্রুটি প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর PredictionError visualizer ব্যবহার করতে পারি।

Yellowbirck এ একটি ভবিষ্যদ্বাণী ত্রুটি প্লট প্লট করতে, আমরা ব্যবহার করব বিজ্ঞাপন (Advertising.csvদেখুন তলব শেষে) ডেটাসেট।

নিম্নলিখিত কোডটি ব্যাখ্যা করে কিভাবে আমরা ইয়েলোব্রিকের পূর্বাভাস ত্রুটি ভিজ্যুয়ালাইজার ব্যবহার করে একটি অবশিষ্ট প্লট তৈরি করতে পারি বিজ্ঞাপন ডেটাসেট

(লেখকের কোড)
ভবিষ্যদ্বাণী ত্রুটি প্লট (লেখকের ছবি)

পয়েন্টগুলি ঠিক 45-ডিগ্রী লাইনে নয়, তবে মডেলটি যথেষ্ট ভাল।

PredictionError visualizer-এর সবচেয়ে গুরুত্বপূর্ণ প্যারামিটারগুলির মধ্যে রয়েছে:

  • অনুমানকারী: এটি যেকোন স্কিট-লার্ন রিগ্রেসার হতে পারে।
  • পরিচয়: bool, ডিফল্ট True. 45-ডিগ্রী রেখা আঁকতে হবে কিনা।

ব্যবহার

কুকের দূরত্ব রৈখিক রিগ্রেশনের উপর দৃষ্টান্তের প্রভাব পরিমাপ করে। বড় প্রভাব সহ দৃষ্টান্তগুলি বহিরাগত হিসাবে বিবেচিত হয়। প্রিপ্রসেসিং ছাড়া রৈখিক রিগ্রেশনের জন্য বিপুল সংখ্যক আউটলায়ার সহ একটি ডেটাসেট উপযুক্ত নয়। সহজভাবে, কুকের দূরত্বের প্লট ডেটাসেটে বহিরাগতদের সনাক্ত করতে ব্যবহৃত হয়।

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যবাহী পদ্ধতির সাথে কুকের দূরত্বের প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর CooksDistance visualizer ব্যবহার করতে পারি।

Yellowbirck এ একটি কুকের দূরত্বের প্লট প্লট করতে, আমরা ব্যবহার করব বিজ্ঞাপন (Advertising.csvদেখুন তলব শেষে) ডেটাসেট।

নিচের কোডটি ব্যাখ্যা করে যে কিভাবে আমরা ইয়েলোব্রিকের কুকস ডিসটেন্স ভিজ্যুয়ালাইজার ব্যবহার করে কুকের দূরত্বের প্লট তৈরি করতে পারি বিজ্ঞাপন ডেটাসেট

(লেখকের কোড)
কুক এর দূরত্ব প্লট (লেখকের ছবি)

কিছু পর্যবেক্ষণ আছে যা প্রান্তিক (অনুভূমিক লাল) রেখাকে প্রসারিত করে। তারা বহিরাগত। সুতরাং, আমরা কোন রিগ্রেশন মডেল তৈরি করার আগে আমাদের ডেটা প্রস্তুত করা উচিত।

CooksDistance visualizer-এর সবচেয়ে গুরুত্বপূর্ণ প্যারামিটারগুলির মধ্যে রয়েছে:

  • ড্র_থ্রেশহোল্ড: bool, ডিফল্ট True. প্রান্তরেখা আঁকতে হবে কিনা।

ব্যবহার

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

বৈশিষ্ট্যের গুরুত্ব প্লট প্রতিটি বৈশিষ্ট্যের আপেক্ষিক গুরুত্বকে কল্পনা করে।

হলুদ ব্রিক বাস্তবায়ন

ঐতিহ্যগত পদ্ধতিতে বৈশিষ্ট্যের গুরুত্বের প্লট তৈরি করা জটিল এবং সময়সাপেক্ষ। পরিবর্তে, আমরা Yellowbrick এর Feature Importance visualizer ব্যবহার করতে পারি।

ইয়েলোবির্কের একটি বৈশিষ্ট্যের গুরুত্বের প্লট প্লট করতে, আমরা ব্যবহার করব স্তন ক্যান্সার ডেটাসেট (দেখুন তলব শেষে) যাতে 30টি বৈশিষ্ট্য রয়েছে।

নিম্নলিখিত কোডটি ব্যাখ্যা করে যে কীভাবে আমরা ইয়েলোব্রিকের ফিচার ইমপোর্টেন্স ভিজ্যুয়ালাইজার ব্যবহার করে একটি বৈশিষ্ট্যের গুরুত্বের প্লট তৈরি করতে পারি স্তন ক্যান্সার ডেটাসেট

(লেখকের কোড)
বৈশিষ্ট্য গুরুত্ব প্লট (লেখকের ছবি)

ডেটাসেটের সমস্ত 30টি বৈশিষ্ট্য মডেলটিতে খুব বেশি অবদান রাখে না। আমরা ডেটাসেট থেকে ছোট বার সহ বৈশিষ্ট্যগুলি সরাতে পারি এবং নির্বাচিত বৈশিষ্ট্যগুলির সাথে মডেলটিকে পুনরায় ফিট করতে পারি৷

ফিচার ইমপোর্টেন্স ভিজ্যুয়ালাইজারের সবচেয়ে গুরুত্বপূর্ণ প্যারামিটারগুলির মধ্যে রয়েছে:

  • অনুমানকারী: কোন স্কিট-লার্ন এস্টিমেটর যেটা সমর্থন করে feature_importances_ বৈশিষ্ট্য বা coef_ বৈশিষ্ট্যাবলী।
  • আপেক্ষিক: bool, ডিফল্ট True. শতাংশ হিসাবে আপেক্ষিক গুরুত্ব প্লট করতে হবে কিনা। যদি False, বৈশিষ্ট্য গুরুত্বের কাঁচা সংখ্যাসূচক স্কোর দেখানো হয়.
  • পরম: bool, ডিফল্ট False. নেতিবাচক চিহ্নগুলি এড়িয়ে শুধুমাত্র সহগগুলির মাত্রা বিবেচনা করতে হবে কিনা৷
  1. প্রধান উপাদান প্লট: PCA(), ব্যবহার — একটি 2D বা 3D স্ক্যাটার প্লটে উচ্চ-মাত্রিক ডেটা ভিজ্যুয়ালাইজ করে যা উচ্চ-মাত্রিক ডেটাতে গুরুত্বপূর্ণ নিদর্শনগুলি সনাক্ত করতে ব্যবহার করা যেতে পারে।
  2. বৈধতা বক্ররেখা: বৈধকরণ কার্ভ(), ব্যবহার — একটি প্রভাব প্লট একক ট্রেনে হাইপারপ্যারামিটার এবং বৈধতা সেট।
  3. শেখার বক্ররেখা: শেখার বক্ররেখা(), ব্যবহার — সনাক্ত করে আন্ডারফিটিং, ওভারফিটিং এবং একদম ঠিক একটি মডেলের শর্ত, চিহ্নিত করে sকম অভিসারণ, দোদুল, অপসারণ সঙ্গে oscillating এবং সঠিক মিলন একটি নিউরাল নেটওয়ার্কের সর্বোত্তম শেখার হার খোঁজার সময় পরিস্থিতি, আরও প্রশিক্ষণ ডেটা যোগ করার মাধ্যমে আমাদের মডেল কতটা উপকৃত হয় তা দেখায়।
  4. কনুই প্লট: কেলবো ভিজ্যুয়ালাইজার(), ব্যবহার — K-Means ক্লাস্টারিং-এ ক্লাস্টারের সর্বোত্তম সংখ্যা নির্বাচন করে।
  5. সিলুয়েট প্লট: সিলুয়েট ভিজ্যুয়ালাইজার(), ব্যবহার — K-Means ক্লাস্টারিং-এ ক্লাস্টারের সর্বোত্তম সংখ্যা নির্বাচন করে, K-Means ক্লাস্টারিং-এ ক্লাস্টার ভারসাম্যহীনতা সনাক্ত করে।
  6. শ্রেণি ভারসাম্যহীনতার প্লট: ক্লাস ব্যালেন্স(), ব্যবহার — শ্রেণীবিন্যাস ডেটাসেটের লক্ষ্য কলামে ক্লাসের ভারসাম্যহীনতা সনাক্ত করে।
  7. অবশিষ্ট প্লট: অবশিষ্টাংশ প্লট(), ব্যবহার — একটি রিগ্রেশন মডেলের ত্রুটির বৈচিত্র্য বিশ্লেষণ করে অবশিষ্টাংশ (পর্যবেক্ষিত মান-পূর্বাভাসিত মান) অসংলগ্ন (স্বতন্ত্র) কিনা তা নির্ধারণ করে।
  8. পূর্বাভাস ত্রুটি প্লট: পূর্বাভাস ত্রুটি(), ব্যবহার — একটি গ্রাফিক্যাল পদ্ধতি যা একটি রিগ্রেশন মডেল মূল্যায়ন করতে ব্যবহৃত হয়।
  9. কুকের দূরত্ব প্লট: রান্নার দূরত্ব(), ব্যবহার — কুকের দৃষ্টান্তের দূরত্বের উপর ভিত্তি করে ডেটাসেটে বহিরাগতদের সনাক্ত করে।
  10. বৈশিষ্ট্য গুরুত্ব প্লট: বৈশিষ্ট্যের গুরুত্ব(), ব্যবহার — একটি ML মডেল তৈরি করতে প্রতিটি বৈশিষ্ট্যের আপেক্ষিক গুরুত্বের উপর ভিত্তি করে ন্যূনতম প্রয়োজনীয় গুরুত্বপূর্ণ বৈশিষ্ট্য নির্বাচন করে।

আজকের পোস্ট এখানেই শেষ।

আপনার কোন প্রশ্ন বা প্রতিক্রিয়া থাকলে দয়া করে আমাকে জানান।

পরবর্তী পড়ুন (প্রস্তাবিত)

  • একটি একক লাইন কোড ব্যবহার করে বৈশিষ্ট্যের গুরুত্ব ভিজ্যুয়ালাইজ করার জন্য হলুদব্রিক
  • বৈধকরণ বক্ররেখা ব্যাখ্যা করা হয়েছে — একটি একক হাইপারপ্যারামিটারের প্রভাব প্লট করুন
  • একটি নিউরাল নেটওয়ার্কের প্রশিক্ষণ কর্মক্ষমতা বিশ্লেষণ করতে শেখার বক্ররেখা প্লট করা
  • হ্যান্ডস-অন কে-মিনস ক্লাস্টারিং

একজন লেখক হিসেবে আমাকে সমর্থন করুন

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

আপনার ক্রমাগত সমর্থনের জন্য আপনাকে অনেক ধন্যবাদ! পরবর্তী নিবন্ধে দেখা হবে. সবাইকে শেখার শুভেচ্ছা!

স্তন ক্যান্সার ডেটাসেট তথ্য

  • উদ্ধৃতি: Dua, D. এবং Graff, C. (2019)। UCI মেশিন লার্নিং রিপোজিটরি [http://archive.ics.uci.edu/ml]। আরভিন, CA: ইউনিভার্সিটি অফ ক্যালিফোর্নিয়া, স্কুল অফ ইনফরমেশন অ্যান্ড কম্পিউটার সায়েন্স।
  • উত্স: https://archive.ics.uci.edu/ml/datasets/breast+cancer+wisconsin+(diagnostic)
  • লাইসেন্স: ডাঃ উইলিয়াম এইচ ওলবার্গ (সাধারণ সার্জারি বিভাগ।
    উইসকনসিন বিশ্ববিদ্যালয়), ডব্লিউ নিক স্ট্রিট (কম্পিউটার সায়েন্স বিভাগ
    উইসকনসিন বিশ্ববিদ্যালয়) এবং অলভি এল ম্যাঙ্গাসারিয়ান (কম্পিউটার সায়েন্সেস ডিপার্টমেন্ট. ইউনিভার্সিটি অফ উইসকনসিন) এই ডেটাসেটের কপিরাইট ধারণ করে। নিক স্ট্রিট এই ডেটাসেটটি জনসাধারণের জন্য দান করেছে ক্রিয়েটিভ কমন্স অ্যাট্রিবিউশন ৪.০ আন্তর্জাতিক লাইসেন্স (সিসি বাই 4.0) আপনি বিভিন্ন ডেটাসেট লাইসেন্সের ধরন সম্পর্কে আরও জানতে পারেন এখানে.

আইরিস ডেটাসেট তথ্য

  • উদ্ধৃতি: Dua, D. এবং Graff, C. (2019)। UCI মেশিন লার্নিং রিপোজিটরি [http://archive.ics.uci.edu/ml]। আরভিন, CA: ইউনিভার্সিটি অফ ক্যালিফোর্নিয়া, স্কুল অফ ইনফরমেশন অ্যান্ড কম্পিউটার সায়েন্স।
  • উত্স: https://archive.ics.uci.edu/ml/datasets/iris
  • লাইসেন্স: আরএ ফিশার এই ডেটাসেটের কপিরাইট ধারণ করে। মাইকেল মার্শাল এই ডেটাসেট জনসাধারণের জন্য দান করেছেন ক্রিয়েটিভ কমন্স পাবলিক ডোমেন উৎসর্গ লাইসেন্স (CC0) আপনি বিভিন্ন ডেটাসেট লাইসেন্সের ধরন সম্পর্কে আরও জানতে পারেন এখানে.

বিজ্ঞাপন ডেটাসেট তথ্য

তথ্যসূত্র

10টি আশ্চর্যজনক মেশিন লার্নিং ভিজ্যুয়ালাইজেশন যা আপনার 2023 সালে জানা উচিত https://towardsdatascience.com/10-amazing-machine-learning-visualizations-you-should-know-in-2023-528282940582?source=7-rscfs 60 https://towardsdatascience.com/feed এর মাধ্যমে

<!–

->

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

থেকে আরো ব্লকচেইন পরামর্শদাতা

ভারতের অর্থমন্ত্রী ক্রিপ্টো সম্পর্কে ভিন্ন অবস্থান নিয়েছেন - বলেছেন নিয়ন্ত্রণ ভারতের অগ্রাধিকার হওয়া উচিত

উত্স নোড: 1734342
সময় স্ট্যাম্প: নভেম্বর 2, 2022

প্রাইমক্স ফাইন্যান্স তার বিটা সংস্করণ চালু করেছে, ব্যবহারকারীদের এর ক্রস-ডেক্স ট্রেডিং বৈশিষ্ট্যগুলি অনুভব করতে দেয়

উত্স নোড: 1723358
সময় স্ট্যাম্প: অক্টোবর 13, 2022