মেশিন লার্নিং (পর্ব ০৪)

মেশিন লার্নিং এর চতুর্থ পর্বে সবাইকে আবারও স্বাগত।

{ "slotId": "2452885053", "unitType": "in-article" }

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

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

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

{ "slotId": "", "unitType": "in-article", "pubId": "pub-6767816662210766" }

 

ডীপ লার্নিং  খুব গভীরের একটি বিশেষ ধরনের প্রসেস যা আমরা একটি রেখা চিত্রের মাধ্যমে বুঝতে পারি।

( কম্পিউটার প্রকৌশল বিজ্ঞান –> কৃত্রিম বুদ্ধিমত্তা –> মেশিন লার্নিং –> নিউরাল নেটওয়ার্ক –> ডীপ লার্নিং  )  অথবা

( Computer Science –>  Artificial Intelligence –>  Machine Learning –>  Neural Network –> Deep Learning )

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

টেনসরফ্লোর প্রায় সব কোড লেখা হয়েছে C++ এবং C++ API  ব্যবহার করে। এটা নিয়ে কাজ করতে চাইলে আপনাকে ব্যবহার করতে হবে “Python API”. আর সহজে করতে পাইথন ব্যবহার করা যায়। কারন পাইথন কোডিং খুব সহজ। যারা শুরু করতে চাচ্ছেন কিন্তু একটু ভয় পাচ্ছেন, তাদের বলবো, একটু সাহস আর অনেকটা উদ্দ্যম ও ইচ্ছাশক্তি নিয়ে এগিয়ে চলুন সাফল্য আপনার দ্বারপ্রান্তেই। ধন্যবাদ সবাইকে।

Leave a Reply

Your email address will not be published. Required fields are marked *