হাতেকলমে পাইথন ডীপ লার্নিং
  • হাতেকলমে পাইথন ডিপ লার্নিং
  • শুরুর ঘটনা
    • শুরুর কথা
    • প্রথম ফ্ল্যাপ
    • এই বইটা থেকে কি আশা করছি?
    • ‘ডিপ লার্নিং’ কি হাইপ? কেন এতো দেরি হলো?
    • কৃতজ্ঞতা
    • কেন শিখবেন মেশিন/ডিপ লার্নিং?
    • বইটা কিভাবে ব্যবহার করবেন?
    • কেন এই বইটা অন্য প্রোগ্রামিং বই থেকে একটু আলাদা?
    • গুগল কোলাব/জুপিটার টেন্সর-ফ্লো ২.x ডকার
    • কিছুই জানিনা, শুরু করবো কোথা থেকে?
    • কেন ডীপ লার্নিং?
      • স্পীচ রিকগনিশন
      • কৃষক আত্মহত্যার যোগসূত্র
      • ডীপফেইক
      • যদি নায়ক না থাকে?
      • 'সেন্টিমেন্ট অ্যানালাইসিস' আর শিক্ষার হারের যোগসূত্র
      • কনটেন্ট মডারেশন - অসুস্থতার যোগসূত্র
      • জাহাজ না আইসবার্গ?
      • গুগল ডুপ্লেক্স
      • টার্গেটের গল্প
    • ঝিঁঝিঁপোকার থার্মোমিটার
    • নিউরাল নেটওয়ার্কে ডাটা কিভাবে থাকে?
    • এক নজরে 'টেন্সর-ফ্লো' ইকো-সিস্টেম
    • ফ্যাশন MNIST ডেটাসেটের ক্লাসিফিকেশন
    • রিগ্রেশন এবং ক্লাসিফিকেশন
    • ডিপ লার্নিং কেন? নন-লিনিয়ার সমস্যা, ফিচার ক্রস
    • ডিপ লার্নিং দিয়ে ডিসিশন বাউন্ডারি, চাঁদ আকারের ডাটাসেট
    • নিউরাল নেটওয়ার্কের কনসেপ্ট এবং রিপ্রেজেন্টেশন লার্নিং
    • নিউরাল নেটওয়ার্কের নিউরাল, ওয়েট, বায়াস, অ্যাক্টিভেশন ফাংশন
    • ডিপ লার্নিং নেটওয়ার্ক: ফরওয়ার্ড এবং নেটওয়ার্ক অপটিমাইজেশনের জন্য ব্যাক প্রোপাগেশন
    • ডিপ নিউরাল নেটওয়ার্কের লেয়ারিং কনসেপ্ট
    • টেন্সর-ফ্লো ডেটাসেট এপিআই দিয়ে কনভল্যুশনাল নিউরাল নেটওয়ার্ক
    • কার্নাল কনভল্যুশন এবং ম্যাক্স পুলিং (সিএনএন)
    • সিএনএন, সিফার ডেটাসেট, টেন্সরবোর্ড/কেরাস কলব্যাক দিয়ে মডেল ট্র্যাকিং
    • কেরাস ‘প্রি-ট্রেইনড’ মডেল এবং তার ব্যবহার
    • ‘কনভলিউশনাল নিউরাল নেটওয়ার্ক’ এবং গ্লোবাল অ্যাভারেজ পুলিং
    • ট্রান্সফার লার্নিং, ‘প্রি-ট্রেইনড’ অক্সফোর্ড ইউনিভার্সিটি ভিজ্যুয়াল জিওমেট্রি গ্রূপের vgg16 ডেটাসেট
    • টেন্সর-ফ্লো মডেল থেকে প্রোডাকশন, টেন্সর-ফ্লো সার্ভিং এবং এপিআই
    • ‘টেন্সর-ফ্লো লাইট’, মোবাইল এবং এমবেডিং ডিভাইসে ডিপ লার্নিং ইনফারেন্স নিয়ে অ্যান্ড্রয়েড অ্যাপ (১)
    • মোবাইল অ্যাপের জন্য সাধারণ "এমনিস্ট" মডেল ট্রেনিং, টেন্সরফ্লো লাইট দিয়ে (২)
    • অ্যান্ড্রয়েড অ্যাপের জন্য "এমনিস্ট" হাতে লেখা ডিজিট চিনতে মডেল ট্রেনিং (৩)
    • অ্যান্ড্রয়েডে ফ্যাশন 'এমনিস্ট' অ্যাপ (৪)
    • বাংলা নাচারাল ল্যাঙ্গুয়েজ প্রসেসিং, টোকেনাইজেশন এবং ভেক্টরাইজেশন
    • এমবেডিং, ওয়ার্ড এমবেডিং, শব্দ এবং সংখ্যার কাছাকাছি এনকোডিং
    • সার্চে এমবেডিং: পরের শব্দটা কি হবে?
    • শব্দের সিমিলারিটি, কাছাকাছি অর্থ, লাইকলিহুড - সঙ্গে 'ফাস্টটেক্সট' এবং 'ওয়ার্ড২ভেক'
    • বাংলায় ছোট্ট সেন্টিমেন্ট অ্যানালাইসিস
    • বাংলায় এন্ড টু এন্ড অ্যাপ্লিকেশন, টেন্সর-ফ্লো হাব
    • একদম স্ক্র্যাচ থেকে টেন্সরফ্লো ২.x মডেল
    • কি করবো সামনে?
    • আরো সাহায্য এবং কৃতজ্ঞতা
Powered by GitBook
On this page

Was this helpful?

  1. শুরুর ঘটনা

কেন শিখবেন মেশিন/ডিপ লার্নিং?

Previousকৃতজ্ঞতাNextবইটা কিভাবে ব্যবহার করবেন?

Last updated 5 years ago

Was this helpful?

To know, is to know that you know nothing. That is the meaning of true knowledge.

-- Socrates

আমি আসলে 'ডিপ লার্নিং'কে শুরুতে আলাদা করতে চাইনা। সবকিছুই কিন্তু মেশিন লার্নিং। 'ডিপ লার্নিং' আসলে মেশিন লার্নিং এর সাব-সেট। আমি শুধুমাত্র ডিপ লার্নিং বলার ঘোর বিরোধী, কারণ বেসিক মেশিন লার্নিং না শিখে এই বই ধরা মানা। শুরুতেই অথবা এর প্রিন্ট এডিশন অথবা

ডিপ লার্নিং কেঁচে গণ্ডূষ করে শুরু করেছিলাম। এতে বেড়ে যাচ্ছে বইয়ের পাতা। আর, বইয়ের পাতা বেড়ে গেলেই বিপদ। আগের ২০০+ পৃষ্ঠার বইয়ের দাম নিয়ে এখনো কথা শুনতে হয়। তাই এই বুদ্ধি। মাঝখানে লিখে ফেললাম 'সাইকিট লার্ন' দিয়ে একটা বই। এর মানে, ডিপ লার্নিং আগাগোড়া শিখতে চাইলে লাগবে দুই বই। দুই কিস্তি। আমি ৪০টা বই পড়লে আপনাকে পড়তে বলবো মাত্র দুটো বই। ডিপ লার্নিং এর ধারণা পেতে।

ধন্যবাদ।

অনেকে আমাকে জিজ্ঞাসা করেন - কেন মেশিন/ডিপ লার্নিং শিখবেন? আমি বলব এটা এমন একটা ফিল্ড যেটা পাল্টে দিচ্ছে পুরো পৃথিবী। এই নতুন ফিল্ডটা এখনো ‘এক্সপ্লোর’ করে যাচ্ছে আসলে কি কি জিনিস সম্ভব নয় প্রথাগত সফটওয়্যার দিয়ে। এমুহুর্তে আপনার আশেপাশে বড় বড় কোম্পানি কিন্তু সফটওয়্যার কোম্পানি। বিকাশ, পাঠাও, দারাজ সবাই। তবে, মেশিন লার্নিং খেয়ে ফেলবে প্রথাগত সফটওয়্যার কোম্পানি।

গুগল করুন, “সফটওয়্যার ইজ ইটিং দ্য ওয়ার্ল্ড, ‘এআই’ উইল ইট সফটওয়্যার”। আপনার সামনে যত ধরনের চ্যালেঞ্জ থাকুক না কেন, আপনি এই মেশিন লার্নিং এক্সপ্লোরেশন মোডে সব ধরনের সমস্যা সমাধান করতে পারবেন - বলে আমি দেখছি আশেপাশে। এই এক্সপ্লোরেশনটা অনেকটাই ইন্টেলেকচুয়াল, কারণ আমি নতুন নতুন অনেক সমস্যা দেখছি যার সমাধান মাত্র আছে এই মেশিন লার্নিং এ।

গত ১০ বছরে দেখছি মেশিন আসলে কতো পাওয়ারফুল হয়ে গেছে এর মধ্যে। এক্সটেনডেটেড 'মুরস ল'। পাশাপাশি আমাদের হাতে চলে এসেছে প্রচুর ডেটা। মেশিন লার্নিং বা ডিপ লার্নিং আজকের কথা নয়। সেই ১৯৫০ সালে এই গল্প তৈরি হলেও, মেশিনের প্রসেসিং এর সীমাবদ্ধতা আর এতো ডাটা হাতের কাছে না থাকাতে এর ধারণা পাচ্ছিল না মানুষ। প্রসেসিং পাওয়ার বাড়ছে দিন দিন, পাশাপাশি র‌্যাম বাড়ছে, স্টোরেজের ক্যাপাসিটি বাড়ছে সঙ্গে সঙ্গে - কমছে দাম। আমাদের হাতে চলে এসেছে সব সম্ভবের জিনিসপত্র।

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

এখন মেশিন শিখছে আমাদের পৃথিবীর সমস্যাগুলোর ভেতরে ঢুকে। ডেটা থেকে শিখছে। মেশিন দিয়ে একটা বড় কাজ হচ্ছে আমাদের আশেপাশে সবকিছুর একটা প্যাটার্ন ধরার জন্য। ধরুন, আপনি যদি আমার প্যাটার্ন বুঝতে পারেন, তাহলে আমার সাথে আপনার কাজ করা সহজ হয়ে যাবে। মানে, আমার মাথাকে হ্যাক করছেন আপনি। আমি সামনে কি চিন্তা করবো সেটা ধরতে। মানুষকে সবাই সবচেয়ে আন-প্রেডিক্টেবল ভাবে, আসলে কি তাই?

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

ধরুন, মেশিন লার্নিং দিয়ে আমাদের ‘ইমেজ রিকগনিশন’ এর কথা। একটা ইমেজের সবচেয়ে ছোট্ট ইউনিট হচ্ছে পিক্সেল। একটা ছবির এই ছোট ছোট ইউনিট থেকে আস্তে আস্তে সে বিভিন্ন ‘ফিচার এক্সট্রাকশন’ করে বুঝতে পারছে হাই লেভেলে - যে আসলে জিনিসটা কি। এটাতে কি মানুষ আছে নাকি শুধু প্রকৃতির ছবি? একটা ছবিতে ‘বার্থডে কেক’ এর সঙ্গে একটা বাচ্চা থাকলেই সে বুঝতে পারছে যে এটা একটা বাচ্চার জন্মদিনের অনুষ্ঠান। ক্যামেরার মডেল আর ‘জিপিএস লোকেশন’ থেকে বুঝতে পারছে সমাজের কোন স্তরে আছে সে।

পাশাপাশি, কেক থেকে সেই বাচ্চাটির দূরত্ব দেখে বোঝা যায় কেকটার সাথে তার সম্পর্ক কোথায়। মোমবাতির সংখ্যা দিয়ে সে বলতে পারে কতো বছরে পড়লো সে। আশেপাশের বাচ্চাদের ছবি থেকে ধারণা করতে পারে তার সমবয়সীদের বাবা মা’রা কোন এলাকায় থাকেন। বাচ্চাটা বড় হলে সে কোন কলেজে যাবে সেটার প্রোবাবিলিটি বের করা সমস্যা নয়। সবই আসছে ডেটার ‘কোরিলেশন’ থেকে।

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

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

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

মানুষ যত গাড়ি চালায় ততো পরিপক্ক হয়। সেদিক থেকে এই ‘ড্রাইভারলেস’ গাড়িগুলো গত দশ মাসেই চালিয়ে ফেলেছে ২ বিলিয়ন মাইলের বেশি রাস্তা। মজার কথা হচ্ছে, একেকটা গাড়ি দশ মাসে কয়েক হাজার মাইল চালালেও ‘ট্রানস্ফার লার্নিং’ এর ধারণায় সফটওয়্যার আপডেট এর মতো অভিজ্ঞতা ‘পুলিং’ করে সেই সম্মিলিত জ্ঞানগুলো ছড়িয়ে দিয়েছে প্রতিটা গাড়িতে। ফলে সব গাড়ির এখন বিলিয়ন মাইলের বেশি রাস্তা চালানোর অভিজ্ঞতা। সত্যিকারে না চালিয়েই। অসম্ভব ব্যাপার! তাই না? ৫০ বছরের একজন অথবা কয়েকজন নিউরোসার্জনের অভিজ্ঞতা একজন ইন্টার্নি ডাক্তারকে দেবার মতো! ডিপ লার্নিং এর একটা বড় অংশ হচ্ছে অন্য কাজে মডেল ট্রেনিং করানো হলেও সেটাকে ব্যবহার করা যাচ্ছে অন্য জায়গায়।

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

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

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

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

https://raqueeb.gitbook.io/scikit-learn/
https://developers.google.com/machine-learning/crash-course/