সুচিপত্র[লুকান][দেখান]
আপনি যদি পাইথন প্রোগ্রামার হন বা আপনি যদি একটি প্রোডাকশন সিস্টেমে মেশিন লার্নিং চালু করার জন্য ব্যবহার করার জন্য একটি শক্তিশালী টুলকিটের সন্ধান করছেন, তাহলে Scikit-learn হল একটি লাইব্রেরি যা আপনাকে চেক আউট করতে হবে।
আপনি মেশিন লার্নিং-এ নতুন, দ্রুত উঠতে এবং দৌড়াতে চান, বা সবচেয়ে আপ-টু-ডেট ML গবেষণা টুল ব্যবহার করতে চান কিনা, Scikit-learn ভালভাবে নথিভুক্ত এবং ব্যবহার করা সহজ।
এটি আপনাকে কোডের মাত্র কয়েকটি লাইনে একটি ভবিষ্যদ্বাণীমূলক ডেটা মডেল তৈরি করতে দেয় এবং তারপর সেই মডেলটি ব্যবহার করে আপনার ডেটাকে একটি উচ্চ-স্তরের লাইব্রেরি হিসাবে উপযুক্ত করে। এটি নমনীয় এবং অন্যদের সাথে ভাল কাজ করে পাইথন লাইব্রেরি যেমন চার্টিংয়ের জন্য Matplotlib, অ্যারে ভেক্টরাইজেশনের জন্য NumPy এবং ডেটা ভিজ্যুয়ালাইজেশনের জন্য পান্ডা।
এই নির্দেশিকাটিতে, আপনি এটি কী, আপনি কীভাবে এটি ব্যবহার করতে পারেন, এর সুবিধা এবং অসুবিধা সহ সমস্ত কিছু খুঁজে পাবেন৷
সাইকিট-শিখুন?
স্কিট-লার্ন (স্কলারন নামেও পরিচিত) পরিসংখ্যানগত মডেল এবং মেশিন লার্নিংয়ের একটি বিচিত্র সেট অফার করে। বেশিরভাগ মডিউলের বিপরীতে, স্কলার্ন সি-এর পরিবর্তে পাইথনে বিকশিত হয়। পাইথনে বিকশিত হওয়া সত্ত্বেও, স্কলারনের দক্ষতা উচ্চ-কার্যকারিতা রৈখিক বীজগণিত এবং অ্যারে অপারেশনের জন্য NumPy-এর ব্যবহারকে দায়ী করা হয়।
Scikit-Learn তৈরি করা হয়েছিল Google-এর সামার অফ কোড প্রোজেক্টের অংশ হিসাবে এবং তখন থেকে সারা বিশ্বে লক্ষ লক্ষ পাইথন-কেন্দ্রিক ডেটা বিজ্ঞানীদের জীবনকে আরও সহজ করে তুলেছে৷ সিরিজের এই বিভাগটি লাইব্রেরি উপস্থাপন এবং একটি উপাদানের উপর ফোকাস করে - ডেটাসেট রূপান্তর, যা একটি ভবিষ্যদ্বাণী মডেল তৈরি করার আগে নেওয়া একটি গুরুত্বপূর্ণ এবং গুরুত্বপূর্ণ পদক্ষেপ।
লাইব্রেরিটি SciPy (Scientific Python) এর উপর ভিত্তি করে তৈরি করা হয়েছে, যা আপনি scikit-learn ব্যবহার করার আগে অবশ্যই ইনস্টল করতে হবে। এই স্ট্যাকে নিম্নলিখিত আইটেম রয়েছে:
- NumPy: পাইথনের স্ট্যান্ডার্ড এন-ডাইমেনশনাল অ্যারে প্যাকেজ
- SciPy: এটি বৈজ্ঞানিক কম্পিউটিং এর জন্য একটি মৌলিক প্যাকেজ
- পান্ডাস: ডেটা স্ট্রাকচার এবং বিশ্লেষণ
- Matplotlib: এটি একটি শক্তিশালী 2D/3D প্লটিং লাইব্রেরি
- Sympy: প্রতীকী গণিত
- আইপিথন: উন্নত ইন্টারেক্টিভ কনসোল
স্কিট-লার্ন লাইব্রেরির অ্যাপ্লিকেশন
স্কিট-লার্ন হল একটি ওপেন-সোর্স পাইথন প্যাকেজ যেখানে পরিশীলিত ডেটা বিশ্লেষণ এবং মাইনিং বৈশিষ্ট্য রয়েছে। এটি আপনাকে আপনার ডেটা বিজ্ঞান প্রকল্পগুলির সর্বাধিক সুবিধা পেতে সহায়তা করার জন্য বিল্ট-ইন অ্যালগরিদমের আধিক্যের সাথে আসে। স্কিট-লার্ন লাইব্রেরি নিম্নলিখিত উপায়ে ব্যবহার করা হয়।
1. রিগ্রেশন
রিগ্রেশন বিশ্লেষণ হল দুই বা ততোধিক ভেরিয়েবলের মধ্যে সংযোগ বিশ্লেষণ এবং বোঝার জন্য একটি পরিসংখ্যানগত কৌশল। রিগ্রেশন বিশ্লেষণ করতে ব্যবহৃত পদ্ধতি কোন উপাদানগুলি প্রাসঙ্গিক, কোনটি উপেক্ষা করা যেতে পারে এবং তারা কীভাবে ইন্টারঅ্যাক্ট করে তা নির্ধারণ করতে সাহায্য করে। রিগ্রেশন কৌশল, উদাহরণস্বরূপ, স্টক দামের আচরণ আরও ভালভাবে বোঝার জন্য ব্যবহার করা যেতে পারে।
রিগ্রেশন অ্যালগরিদম অন্তর্ভুক্ত:
- লিনিয়ার রিগ্রেশন
- রিজ রিগ্রেশন
- লাসো রিগ্রেশন
- ডিসিশন ট্রি রিগ্রেশন
- এলোমেলো বন
- সমর্থন ভেক্টর মেশিন (SVM)
2. শ্রেণিবিন্যাস
শ্রেণিবিন্যাস পদ্ধতি হল একটি তত্ত্বাবধানে শিক্ষার পদ্ধতি যা নতুন পর্যবেক্ষণের শ্রেণী শনাক্ত করতে প্রশিক্ষণের ডেটা ব্যবহার করে। শ্রেণীবিভাগের একটি অ্যালগরিদম একটি প্রদত্ত থেকে শেখে ডেটা সেটটি বা পর্যবেক্ষণ এবং তারপর অতিরিক্ত পর্যবেক্ষণকে অনেক শ্রেণী বা গোষ্ঠীর একটিতে শ্রেণীবদ্ধ করে। তারা, উদাহরণস্বরূপ, স্প্যাম বা না হিসাবে ইমেল যোগাযোগ শ্রেণীবদ্ধ করতে ব্যবহার করা যেতে পারে।
শ্রেণীবিভাগ অ্যালগরিদম নিম্নলিখিত অন্তর্ভুক্ত:
- পণ্য সরবরাহ সংশ্লেষণ
- K- নিকটতম প্রতিবেশী
- ভেক্টর মেশিনকে সাপর্ট কর
- সিদ্ধান্ত গাছ
- এলোমেলো বন
3. ক্লাস্টারিং
স্কিট-লার্নের ক্লাস্টারিং অ্যালগরিদমগুলি সেটে অনুরূপ বৈশিষ্ট্য সহ ডেটা স্বয়ংক্রিয়ভাবে সাজানোর জন্য ব্যবহৃত হয়। ক্লাস্টারিং হল আইটেমগুলির একটি সেটকে গোষ্ঠীবদ্ধ করার প্রক্রিয়া যাতে একই গ্রুপে থাকা অন্যান্য গোষ্ঠীগুলির সাথে আরও বেশি মিল থাকে। গ্রাহক ডেটা, উদাহরণস্বরূপ, তাদের অবস্থানের উপর ভিত্তি করে আলাদা করা হতে পারে।
ক্লাস্টারিং অ্যালগরিদমগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে:
- ডিবি-স্ক্যান
- কে-মানে
- মিনি-ব্যাচ কে-মিনস
- বর্ণালী ক্লাস্টারিং
4. মডেল নির্বাচন
মডেল নির্বাচন অ্যালগরিদমগুলি ডেটা বিজ্ঞান উদ্যোগে ব্যবহারের জন্য সর্বোত্তম পরামিতি এবং মডেলগুলি তুলনা, যাচাইকরণ এবং নির্বাচন করার পদ্ধতি সরবরাহ করে। প্রদত্ত ডেটা, মডেল নির্বাচন হল প্রার্থী মডেলের একটি গ্রুপ থেকে একটি পরিসংখ্যানগত মডেল বাছাই করার সমস্যা। সবচেয়ে মৌলিক পরিস্থিতিতে, ডেটার একটি প্রাক-বিদ্যমান সংগ্রহকে বিবেচনায় নেওয়া হয়। যাইহোক, টাস্কটিতে পরীক্ষার নকশাও অন্তর্ভুক্ত থাকতে পারে যাতে অর্জিত ডেটা মডেল নির্বাচনের সমস্যার জন্য উপযুক্ত হয়।
মডেল নির্বাচন মডিউল যা পরামিতি সামঞ্জস্য করে নির্ভুলতা উন্নত করতে পারে তার মধ্যে রয়েছে:
- ক্রস বৈধতা
- গ্রিড অনুসন্ধান
- ছন্দোবিজ্ঞান
5. মাত্রিকতা হ্রাস
একটি উচ্চ-মাত্রিক স্থান থেকে একটি নিম্ন-মাত্রিক স্থান থেকে ডেটা স্থানান্তর যাতে নিম্ন-মাত্রিক উপস্থাপনা মূল ডেটার কিছু উল্লেখযোগ্য দিক সংরক্ষণ করে, আদর্শভাবে এর অন্তর্নিহিত মাত্রার কাছাকাছি, যা মাত্রা হ্রাস হিসাবে পরিচিত। বিশ্লেষণের জন্য র্যান্ডম ভেরিয়েবলের সংখ্যা হ্রাস করা হয় যখন মাত্রা হ্রাস করা হয়। আউটলাইং ডেটা, উদাহরণস্বরূপ, ভিজ্যুয়ালাইজেশনের দক্ষতা উন্নত করার জন্য বিবেচিত নাও হতে পারে।
মাত্রিকতা হ্রাস অ্যালগরিদম নিম্নলিখিত অন্তর্ভুক্ত:
- বৈশিষ্ট্য নির্বাচন
- প্রধান উপাদান বিশ্লেষণ (পিসিএ)
স্কিকিট-লার্ন ইনস্টল করা হচ্ছে
Scikit-learn ব্যবহার করার আগে NumPy, SciPy, Matplotlib, IPython, Sympy এবং Pandas ইনস্টল করা প্রয়োজন। কনসোল থেকে পিপ ব্যবহার করে তাদের ইনস্টল করা যাক (শুধুমাত্র উইন্ডোজের জন্য কাজ করে)।
এখন Scikit-learn ইন্সটল করা যাক যে আমরা প্রয়োজনীয় লাইব্রেরি ইন্সটল করেছি।
বৈশিষ্ট্য
স্কিট-লার্ন, কখনও কখনও স্ক্লিয়ার নামে পরিচিত, মেশিন লার্নিং মডেল এবং পরিসংখ্যান মডেলিং বাস্তবায়নের জন্য একটি পাইথন টুলকিট। আমরা এটিকে রিগ্রেশন, শ্রেণীবিভাগ এবং ক্লাস্টারিংয়ের জন্য একাধিক মেশিন লার্নিং মডেল তৈরি করতে ব্যবহার করতে পারি, সেইসাথে এই মডেলগুলির মূল্যায়নের জন্য পরিসংখ্যানগত সরঞ্জামগুলি। এটিতে মাত্রা হ্রাস, বৈশিষ্ট্য নির্বাচন, বৈশিষ্ট্য নিষ্কাশন, এনসেম্বল পদ্ধতি এবং অন্তর্নির্মিত ডেটাসেট অন্তর্ভুক্ত রয়েছে। আমরা একবারে এই গুণগুলির প্রতিটি তদন্ত করব।
1. ডেটাসেট আমদানি করা
স্কিট-লার্ন-এ অনেকগুলি পূর্ব-নির্মিত ডেটাসেট রয়েছে, যেমন আইরিস ডেটাসেট, বাড়ির মূল্য ডেটাসেট, টাইটানিক ডেটাসেট ইত্যাদি। এই ডেটাসেটগুলির মূল সুবিধাগুলি হ'ল এগুলি উপলব্ধি করা সহজ এবং অবিলম্বে এমএল মডেলগুলি বিকাশ করতে ব্যবহার করা যেতে পারে। এই ডেটাসেট নতুনদের জন্য উপযুক্ত। একইভাবে, আপনি অতিরিক্ত ডেটাসেট আমদানি করতে sklearn ব্যবহার করতে পারেন। একইভাবে, আপনি অতিরিক্ত ডেটাসেট আমদানি করতে এটি ব্যবহার করতে পারেন।
2. প্রশিক্ষণ এবং পরীক্ষার জন্য ডেটাসেট বিভক্ত করা
Sklearn প্রশিক্ষণ এবং পরীক্ষার বিভাগে ডেটাসেট বিভক্ত করার ক্ষমতা অন্তর্ভুক্ত করেছে। ভবিষ্যদ্বাণী কার্যক্ষমতার নিরপেক্ষ মূল্যায়নের জন্য ডেটাসেট বিভক্ত করা প্রয়োজন। ট্রেন এবং টেস্ট ডেটাসেটে আমাদের কত ডেটা অন্তর্ভুক্ত করা উচিত তা আমরা নির্দিষ্ট করতে পারি। আমরা ট্রেন টেস্ট স্প্লিট ব্যবহার করে ডেটাসেট ভাগ করেছি যাতে ট্রেন সেটে 80% ডেটা থাকে এবং টেস্ট সেটে 20% থাকে। ডেটাসেট নিম্নলিখিত হিসাবে বিভক্ত করা যেতে পারে:
3. লিনিয়ার রিগ্রেশন
রৈখিক রিগ্রেশন হল একটি তত্ত্বাবধানে শিক্ষা-ভিত্তিক মেশিন লার্নিং কৌশল। এটি একটি রিগ্রেশন কাজ বহন করে। স্বাধীন ভেরিয়েবলের উপর ভিত্তি করে, রিগ্রেশন মডেল একটি লক্ষ্য ভবিষ্যদ্বাণী মান। এটি বেশিরভাগ ভেরিয়েবল এবং ভবিষ্যদ্বাণীর মধ্যে লিঙ্ক নির্ধারণ করতে ব্যবহৃত হয়। বিভিন্ন রিগ্রেশন মডেলগুলি নির্ভরশীল এবং স্বাধীন ভেরিয়েবলগুলির মধ্যে এবং সেইসাথে ব্যবহার করা স্বাধীন ভেরিয়েবলের সংখ্যার মধ্যে সংযোগের প্রকারের পরিপ্রেক্ষিতে পৃথক হয়। আমরা সহজভাবে sklearn ব্যবহার করে লিনিয়ার রিগ্রেশন মডেল তৈরি করতে পারি:
4. লজিস্টিক রিগ্রেশন
একটি সাধারণ শ্রেণীকরণ পদ্ধতি হল লজিস্টিক রিগ্রেশন। এটি বহুপদী এবং রৈখিক রিগ্রেশন হিসাবে একই পরিবারে রয়েছে এবং রৈখিক শ্রেণিবিন্যাসকারী পরিবারের অন্তর্গত। লজিস্টিক রিগ্রেশনের ফলাফলগুলি বোঝা সহজ এবং গণনা করা দ্রুত। রৈখিক রিগ্রেশনের মতো একইভাবে, লজিস্টিক রিগ্রেশন একটি তত্ত্বাবধানে রিগ্রেশন কৌশল। আউটপুট ভেরিয়েবল শ্রেণীবদ্ধ, তাই একমাত্র পার্থক্য। এটি রোগীর হৃদরোগ আছে কি না তা নির্ধারণ করতে পারে।
বিভিন্ন শ্রেণীবিভাগ সমস্যা, যেমন স্প্যাম সনাক্তকরণ, লজিস্টিক রিগ্রেশন ব্যবহার করে সমাধান করা যেতে পারে। ডায়াবেটিসের পূর্বাভাস, একজন ভোক্তা একটি নির্দিষ্ট পণ্য কিনবেন কিনা বা প্রতিদ্বন্দ্বীর কাছে যাবেন কিনা তা নির্ধারণ করা, ব্যবহারকারী একটি নির্দিষ্ট বিপণন লিঙ্কে ক্লিক করবে কিনা তা নির্ধারণ করা এবং আরও অনেক পরিস্থিতি হল কয়েকটি উদাহরণ।
5. সিদ্ধান্ত গাছ
সবচেয়ে শক্তিশালী এবং বহুল ব্যবহৃত শ্রেণীবিভাগ এবং ভবিষ্যদ্বাণী কৌশল হল সিদ্ধান্ত গাছ। ডিসিশন ট্রি হল একটি গাছের কাঠামো যা দেখতে একটি ফ্লোচার্টের মতো, প্রতিটি অভ্যন্তরীণ নোড একটি বৈশিষ্ট্যের উপর একটি পরীক্ষাকে প্রতিনিধিত্ব করে, প্রতিটি শাখা পরীক্ষার উপসংহার উপস্থাপন করে এবং প্রতিটি লিফ নোড (টার্মিনাল নোড) একটি ক্লাস লেবেল ধারণ করে।
যখন নির্ভরশীল ভেরিয়েবলের স্বাধীন ভেরিয়েবলের সাথে রৈখিক সম্পর্ক থাকে না, অর্থাৎ যখন রৈখিক রিগ্রেশন সঠিক ফলাফল তৈরি করে না, তখন সিদ্ধান্ত গাছ উপকারী। ডিসিশনট্রিরিগ্রেশন() অবজেক্টটি রিগ্রেশনের জন্য ডিসিশন ট্রি ব্যবহার করতে একইভাবে ব্যবহার করা যেতে পারে।
6. এলোমেলো বন
এলোমেলো বন হল a মেশিন লার্নিং রিগ্রেশন এবং শ্রেণীবিভাগ সমস্যা সমাধানের জন্য পদ্ধতি। এটি এনসেম্বল লার্নিং ব্যবহার করে, যা এমন একটি কৌশল যা জটিল সমস্যা সমাধানের জন্য একাধিক শ্রেণিবিন্যাসকে একত্রিত করে। একটি র্যান্ডম বন পদ্ধতি সিদ্ধান্ত গাছ একটি বড় সংখ্যা গঠিত হয়. এটি ঋণের আবেদন শ্রেণীবদ্ধ করতে, প্রতারণামূলক আচরণ সনাক্ত করতে এবং রোগের প্রাদুর্ভাবের পূর্বাভাস দিতে ব্যবহার করা যেতে পারে।
7. বিভ্রান্তি ম্যাট্রিক্স
একটি বিভ্রান্তি ম্যাট্রিক্স হল একটি টেবিল যা শ্রেণিবিন্যাস মডেলের কর্মক্ষমতা বর্ণনা করতে ব্যবহৃত হয়। বিভ্রান্তি ম্যাট্রিক্স পরীক্ষা করতে নিম্নলিখিত চারটি শব্দ ব্যবহার করা হয়:
- সত্য ইতিবাচক: এটি নির্দেশ করে যে মডেলটি একটি অনুকূল ফলাফল প্রজেক্ট করেছে এবং এটি সঠিক ছিল।
- সত্যিকারের নেতিবাচক: এটি নির্দেশ করে যে মডেলটি একটি খারাপ ফলাফল প্রজেক্ট করেছে এবং এটি সঠিক ছিল।
- মিথ্যা ইতিবাচক: এটি নির্দেশ করে যে মডেলটি একটি অনুকূল ফলাফল আশা করেছিল কিন্তু এটি সত্যিই একটি নেতিবাচক ছিল।
- মিথ্যা নেতিবাচক: এটি নির্দেশ করে যে মডেলটি একটি নেতিবাচক ফলাফলের প্রত্যাশা করেছিল, যখন ফলাফলটি সত্যিই ইতিবাচক ছিল।
বিভ্রান্তি ম্যাট্রিক্স বাস্তবায়ন:
ভালো দিক
- এটা ব্যবহার করা সহজ।
- স্কিট-লার্ন প্যাকেজটি অত্যন্ত অভিযোজনযোগ্য এবং দরকারী, বাস্তব-বিশ্বের লক্ষ্যগুলি যেমন ভোক্তাদের আচরণের পূর্বাভাস, নিউরোইমেজ বিকাশ, এবং আরও অনেক কিছু পূরণ করে।
- যে ব্যবহারকারীরা তাদের প্ল্যাটফর্মের সাথে অ্যালগরিদম সংযোগ করতে চান তারা Scikit-learn ওয়েবসাইটে বিস্তারিত API ডকুমেন্টেশন পাবেন।
- অসংখ্য লেখক, সহযোগী এবং একটি বৃহৎ বিশ্বব্যাপী অনলাইন সম্প্রদায় সমর্থন করে এবং স্কিট-লার্নকে আপ টু ডেট রাখে।
মন্দ দিক
- এটি গভীরভাবে অধ্যয়নের জন্য আদর্শ বিকল্প নয়।
উপসংহার
স্কিট-লার্ন হল প্রতিটি ডেটা বিজ্ঞানীর জন্য একটি গুরুত্বপূর্ণ প্যাকেজ যা সম্পর্কে দৃঢ় উপলব্ধি এবং কিছু অভিজ্ঞতা রয়েছে৷ এই গাইডটি আপনাকে sklearn ব্যবহার করে ডেটা ম্যানিপুলেশনে সাহায্য করবে। স্কিট-লার্নের আরও অনেক ক্ষমতা রয়েছে যা আপনি আপনার ডেটা সায়েন্স অ্যাডভেঞ্চারের মাধ্যমে অগ্রসর হওয়ার সাথে সাথে আবিষ্কার করবেন। আপনার ভাবনাগুলো মন্তব্য করে ভাগ করুন.
নির্দেশিকা সমন্ধে মতামত দিন