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

Was this helpful?

  1. শুরুর ঘটনা

বইটা কিভাবে ব্যবহার করবেন?

Previousকেন শিখবেন মেশিন/ডিপ লার্নিং?Nextকেন এই বইটা অন্য প্রোগ্রামিং বই থেকে একটু আলাদা?

Last updated 5 years ago

Was this helpful?

Machine learning is concept heavy and code light.

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

১. বইটা পড়তে হবে একদম শুরু থেকে শেষ পর্যন্ত। চ্যাপ্টারগুলো রিলেটেড। বাদ দেয়া যাবে না। এই বইয়ে সবকিছু করা হয়েছে টেন্সর-ফ্লো এর হাই-লেভেল এপিআই 'কেরাস' দিয়ে - যা টেন্সর-ফ্লো ২.x এর সাথে ডিফল্ট হিসেবে চলে আসে। এটা একটা ভালো বেসিক ফাউন্ডেশন দেবে।

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

৩. বইটা অ্যাবসলিউট বিগিনারদের জন্য নয়। এই বইটা লেখা শুরু করেও বন্ধ রেখেছিলাম বইটা লেখার জন্য যাতে এই বইটা ধরতে না অসুবিধা হয়। সেকারণে 'শূন্য থেকে পাইথন মেশিন লার্নিং' বইটা আবশ্যিক এই বইটা শুরু করার জন্য।

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

তবে, আমি আপনাদের বলছি - আমরা এমন কোন কাজ এখানে করতে পারিনি যার জন্য ফাংশনাল বা সাবক্লাসিং লাগছে এখুনি। বরং ফাংশনাল এবং সাব-ক্লাসিং এপিআই এ মুহূর্তে ঝামেলা বাড়াতে পারে।

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

যেহেতু পাইথনের প্রচুর প্রি-বিল্ট সাইন্টিফিক লাইব্রেরি (নামপাই, পান্ডাজ, ম্যাটপ্লটলিব ইত্যাদি) আছে, সেকারণে পাইথনের অনেক কমপ্লেক্সটি তারা লুকিয়ে রাখে। তবে বেসিক ফাইল হ্যান্ডলিং, টুপল, লিস্ট/ভেক্টর এক্সেস জানলে শুরু করা যায়।

৫. বইয়ে প্রচুর নোটবুক দেয়া আছে যা চালানোর যাবে 'এন্ড টু এন্ড'। জুপিটার নোটবুক অথবা গুগল কোলাবে শুরুতে "রান অল" দিলেই শুরু থেকে শেষ পর্যন্ত চলবে কোন সমস্যা ছাড়াই। সমস্যা হলে গিটহাবে "পুল রিকোয়েস্ট" করে দেখুন। তবে, আমি চাইবো আপনি ইচ্ছেমতো পাল্টাবেন দরকারি ভ্যারিয়েবল (আপনি কোন কিছু ভাঙবেন না!) এবং দেখুন কোনটা আপনার জন্য ভালো রেজাল্ট নিয়ে আসে। আমাকেও খাটতে হয়েছে একটা লেভেল পর্যন্ত, সেখানে আপনাদের নিজে থেকে পরীক্ষা নিরীক্ষা অনেক বেশি বেশি ধারণা দেবে শিখতে। প্র্যাকটিস এবং প্রাকটিস, যতক্ষণ পর্যন্ত না বুঝছেন ব্যাপারটা।

বইয়ের নোটবুকগুলোকে প্র্যাকটিস করার জন্য শুরুতেই ফর্ক করে নিতে হবে https://github.com/raqueeb/TensorFlow2/ নামের গিটহাব রিপোজিটরি। সেই নোটবুকগুলোর ওপরেই আছে গুগল কোলাবে 'এন্ড টু এন্ড' চালানোর লিংক। গিটহাব থেকে নোটবুক চালাতে অথোরাইজ করে নিন নিজেকে গুগল একাউন্টে "লগ ইন" করে।

৬. আমাদের নোটবুকগুলো একবার চালানোর সময় সমস্যা হলে যেখানে সমস্যা হয়েছে সেখান থেকে আবার "রান টাইম" মেন্যু থেকে "রান আফটার" দিতে পারি। অথবা "রানটাইম রিসেট অল" করে নতুন করে শুরু করতে পারি। একটা ফাইল একবার ডাউনলোড হয়ে গেলে "রানটাইম রিসেট অল" করার পর আবার নতুন করে শুরু করতে হবে।

৭. গুগোল কোলাবে নোটবুকগুলো চালানোর সময় দেখে নেবেন আপনি আগে থেকে গুগল একাউন্টে লগইন করা আছেন কিনা। লগইন করা না থাকলে লগইন করে নিন গুগল কোলাব চালানোর জন্য। নিজের পিসিতে জুপিটার নোটবুক চালানোর জন্য এটা প্রযোজ্য নয়।

এই বইটাতে ফিড ফরওয়ার্ড প্রোপাগেশন নিয়েই আলাপ হয়েছে বেশি। ব্যাক প্রোপাগেশন ব্যবহার হয়েছে শেষের দিকের মডেলে।

পাইথন মেশিন লার্নিং
মডেল তৈরি: কার জন্য কোনটা দরকার?