মেশিন লার্নিং বর্তমান সময়ের অন্যতম একটা ট্রেন্ডিং টপিক। বর্তমানে পৃথিবী তে সবকিছুকে অটনোমাস করার চেষ্ঠা চলছে। আর এই অটনমাস করার পেছনে অন্যতম একটা ভূমিকা পালন করছে মেশিন লার্নিং। এমন অসংখ্য সমস্যা যেগুলো কোনদিন মানুষ চিন্তা করে নেই যে ম্যাশিন এর পক্ষে কওরা সম্ভব সেগুলা এখন মেশিন লার্নিং দিয়ে করা হচ্ছে। মেশিন লার্নিং এর থেকে আরেকটু উন্নত একটা পদ্ধতি এখন এসেছে যেটিতে বলা হয় ডিপ লার্নিং। যদি আপনি মনে করেন যে আপনি বর্তমানে পৃথিবীতে প্রযুক্তিগত ভাবে কোন অবদান রাখতে চান মেশিন লার্নিং একটি খুব ভালো জিনিস, মেশিন লার্নিং এর অনেক টিউটোরিয়াল এবং বই আছে যেগুলো আপনাকে শিখতে সাহায্য করবে।
আমি এই ব্লগ এ কিভাবে ম্যাশিন লার্নিং নিয়ে কাজ শুরু করা যায় সেটার কিছু ধারনা আপনাদের দিবো
মেশিন লার্নিং বলতে গেলে Applied Mathematics এবং Statistics এর একটি প্রয়োগিক রূপ। মেশিন লার্নিং শুরু করার জন্য প্রোগ্রামিং সম্পর্কে খুব ভালো ধারনা থাকা উচিত। Python হচ্ছে ম্যাশিন লার্নিং এর জন্য সবচাইতে পপুলার একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ। পাইথনে যত ওপেন সোর্স লাইব্রেরী/ফ্রেম-ওয়ার্ক আছে এত লাইব্রেরী/ফ্রেম-ওয়ার্ক অন্য কোনও ল্যাঙ্গুয়েজে নেই। লাইব্রেরিগুলো থাকার ফলে একজন নতুন রিসার্চার/প্রোগ্রামার খুব সহজেই মেশিন লার্নিং টেকনিক শিখে অ্যাপ্লাই করে ফেলতে পারে। এজন্য শুধু এতটুকু জানাই যথেষ্ট যে, কোন লাইব্রেরির ফাংশন কিভাবে কাজ করে এবং কি কাজ করে।এজন্যও যে খুব বেশি কড়িকাঠি পোড়াতে হবে এমন না। বরং, লাইব্রেরি ফাংশনগুলোর কর্ম পদ্ধতি খুব ভালভাবেই তারা বর্ণনা করে থাকে। একটু সময় করে পড়ে নিলেই হবে। এর চেয়েও বড় আরেকটি কথা হল এই লাইব্রেরিগুলো অধিকাংশই ওপেন-সোর্স আপনি চাইলেই ভাল কিছু ফিচার যোগও করতে পারেন। সুতরাং, যদি আপনার পাইথন সম্পর্কে ধারনা থাকে আপনার জন্য খুব ভালো হবে। আর আপনি যদি আসলেই মেশিন লার্নিংয়ের মজা পেতে চান এবং একেবারে কোথা থেকে মেশিন লার্নিং শুরু হল তা সম্পর্কে একেবারে স্পষ্ট ধারনা পেতে চান। তাহলে আপনাকে অবশ্যই গনিতের নিম্নোক্ত বিষয়গুলো সম্পর্কে ধারনা থাকতে হবে।
- লিনিয়ার আলজেব্রা
- ক্যালকুলাস
- প্রয়োগিক পরিসংখ্যান (Applied Statistics)
- সম্ভব্যতা (Probability),ইত্যাদি
এইগুলো সম্পর্কে জানলেই আপনি মেশিন লার্নিং শুরু করতে পারেন। এখন কথা হচ্ছে, এই টপিক গুলো এক একটা ইউনিভার্সিটি তে ৪-৫ মাস ধরে পড়ানো হয়। কিভাবে এগুলো কভার করবেন? লিনিয়ার এলজেব্রা এবং ক্যালকুলাস এর সব টপিক যে দরকার হয় সেটা না। কিছু খুব স্পেসিফিক জিনিস যানা থাকা দরকার। উপরে লিখিত টপিক গুলো ভালো ভাবে শিখার জন্য নিচের রিসোর্স গুলো ফলো করবেন।
- অনলাইন কোর্স
- বই
যদি আপনার এখন এই টপিকগুলো এবং প্রোগ্রামিং সম্পর্কে ভালো ধারনা থাকে তাহলে আপনি এখন মেশিন লার্নিং শিখার জন্য প্রস্তুত। মেশিন লার্নিং এর অনেক গুলো ব্রাঞ্চ আছে। বর্তমানে তার ভিতর সবচাইতে বেশি জনপ্রিয় হচ্ছে ডিপ লার্নিং। ডিপ লার্নিং মূলত মেশিন লার্নিং এরই এডভান্সড ভার্শন। নিচে আপনাদের মেশিন লার্নিং শিখবার জন্য কিছু রিসোর্স দিচ্ছি
বাংলা ব্লগ:
- হাতেকলমে মেশিন লার্নিং
- সম্ভাবনাময় মেশিন লার্নিং শুরুর কিছু পথ-নির্দেশিকা
- জাকিরের টেক ডায়েরি
- মানসের ব্লগ
বাংলা ভিডিও টিউটোরিউয়াল
ইংলিশ ব্লগ:
ইংলিশ কোর্স:
- Coursera Machine Learning
- EdX Machine Learning
- Udacity Machine Learning
- Coursera Deep Learning Specialization
- Udacity Deep Learning
ইংরেজি বই
এর পরও যদি আপনাদের কোন ব্যাপারে যানা থাকে, যেকোন সময় আমার সাথে যোগাযোগ করতে পারেন এখানে