টেনসরফ্লোতে ডিপ লার্নিং ব্যবহার করে কীভাবে বয়স এবং জেন্ডার মাল্টি-টাস্ক প্রিডেক্টর তৈরি করা যায়

সূত্র: https://www.go સરકારciomedia.com/ai-takes-face-recognition-new-frontiers

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

ওভারভিউ

  • বয়স এবং লিঙ্গ মডেল পরিচিতি
  • একাধিক কাজের জন্য একটি টেনসরফ্লো অনুমানক তৈরি করা
  • প্রশিক্ষণ

প্রয়োজনীয়তা

  • কনভোলশনাল নিউরাল নেটওয়ার্কগুলির সিএনএন (প্রাথমিক ধারণা)
  • টেনসরফ্লো সম্পর্কে প্রাথমিক ধারণা
  • জিপিইউ (alচ্ছিক)

বয়স এবং লিঙ্গ মডেল পরিচিতি

২০১৫ সালে, কম্পিউটার ভিশন ল্যাব, ডি-আইটিইটিটির গবেষকরা একটি নিবন্ধ ডেক্স এবং তাদের আইএমডিবি-ডাব্লুআইআইকিআই প্রকাশ করেছেন, এতে বয়স এবং লিঙ্গ উপাধি সহ ৫০০,০০০-এরও বেশি মুখের চিত্র রয়েছে।

আইএমডিবি-উইকআই ডাটাসেট উত্স: https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/

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

শ্রেণিবিন্যাস সমস্যা হিসাবে বয়স

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

মাল্টিটাস্কিং শেখা

মাল্টি-টাস্ক লার্নিং একটি সাধারণ স্থাপত্যে একাধিক কার্য প্রশিক্ষণের জন্য একটি কৌশল। নেটওয়ার্কের শুরুতে স্তরগুলি কোনও নির্দিষ্ট কাজে বেশি চাপ দেওয়া যাতে শব্দ থাকতে পারে তার প্রতিরোধের জন্য একটি সাধারণ সাধারণ উপস্থাপনা শিখায়।

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

একাধিক কাজের জন্য সিএনএন উত্স: https://murraycole.com

টেনসরফ্লোতে একটি মাল্টি-টাস্ক নেটওয়ার্ক তৈরি করা

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

প্রকল্প কাঠামো

। Ock ডকফরফাইল ├── বয়স_জেন্ডার_টিস্টিমেশন_ টিউটোরিয়াল │ n cnn_estimator.py │ n cnn_model.py └── └── dataset.py ├── বিন │ ├── ডাউনলোড-imdb.sh │ │ পূর্বাভাস.পি │ ├── প্রাকপ্রসেস_আইএমডিবি .py │ └── train.py ├── প্রয়োজনীয়গুলি.txt

চারপাশ

পরিবেশের জন্য, নির্ভরতা ইনস্টল করতে ডকার ব্যবহার করুন। একটি জিপিইউ সংস্করণও সরবরাহ করা হয়েছে।

ডকার বিল্ড-ট কোলেমুরে / বয়স-লিঙ্গ-অনুমান-টিউটোরিয়াল -ফ ডকফায়াইল।

তথ্য

এই মডেলটিকে প্রশিক্ষণের জন্য, আইএমডিবি-ডাব্লুআইকিআই ডেটা সেট ব্যবহার করুন, যা 500,000 এরও বেশি চিত্র নিয়ে থাকে images জিনিসগুলি আরও সহজ করার জন্য, প্রাক-কাটা imdb চিত্রগুলি ডাউনলোড করুন (7 গিগাবাইট)। ডেটা ডাউনলোড করতে নিম্নলিখিত স্ক্রিপ্টটি চালান।

chmod + x bin / download-imdb-crop.sh
./bin/download-imdb-crop.sh

প্রাক প্রসেসিং

আপনি এখন নিম্নমানের চিত্রগুলি পরিষ্কার করতে ডেটাসেটটি প্রক্রিয়া করবেন এবং একটি নির্দিষ্ট চিত্রের আকারে ইনপুট ক্রপ করবেন। টেনসরফ্লোতে পড়া আরও সহজ করার জন্য আপনি ডেটাটি সিএসভি হিসাবে ফর্ম্যাট করতে পারেন।

ডকার রান -v $ পিডব্লিউডি: / অপ্ট / অ্যাপ্লিকেশন e-পাইথনপাথ = $ পাইথনপাথ: / অপ্ট / অ্যাপ্লিকেশন es -স কোলেমুরে / বয়স-জেন্ডার-অনুমান-টিউটোরিয়াল y পাইথন 3 / ওপট / অ্যাপ / বিিন / প্রিপ্রসেসি_আইএমডিবি.পি \ - db-path /opt/app/data/imdb_crop/imdb.mat ph - ফটো-দির / অপ্ট / অ্যাপ / ডেটা / imdb_crop \ --আউটপুট-ডির / অপ্ট / অ্যাপ / ভ্যার \ --মিন-স্কোর 1.0 \ - -ম্যাগ-আকার 224

প্রায় 20 মিনিটের পরে আপনার কাছে একটি প্রক্রিয়াজাত রেকর্ড থাকবে।

পরবর্তী, আপনি অনুমানকারীকে ডেটা সরবরাহ করতে টেনসরফ্লো এর tf.data ডেটা পাইপলাইন মডিউল ব্যবহার করবেন। Tf.data পারফরম্যান্সের জন্য সি ++ থ্রেড ব্যবহার করে সমান্তরালভাবে একটি ডেটাসেটটি পড়ার এবং তা পরিচালনা করার জন্য একটি বিমূর্ততা।

এখানে আপনি টেনসরফ্লোয়ের সিএসভি রিডারটি ডেটা বিশ্লেষণ করতে, চিত্রগুলিকে প্রস্রোস করতে, ব্যাচগুলি তৈরি করতে এবং তাদের মিশ্রণ করতে ব্যবহার করেন।

মডেল

এখানে একটি বেসিক সিএনএন মডেল। মডেলটিতে তিনটি পালা এবং প্রতিটি কাজের জন্য একটি সফটম্যাক্স শ্রেণিবদ্ধ মাথা সহ দুটি সম্পূর্ণ সংযুক্ত স্তর রয়েছে।

যৌথ ক্ষতি ফাংশন

প্রশিক্ষণ প্রক্রিয়া জন্য অ্যাডাম অপ্টিমাইজার ব্যবহার করুন। ক্ষতির ফাংশন সহ, প্রতিটি মাথার ক্রস-এনট্রপি ত্রুটি গড় হয়, যা মাথাগুলির মধ্যে একটি সাধারণ ক্ষতির ক্রিয়া তৈরি করে।

বয়স এবং লিঙ্গ অনুসারে যৌথ ক্ষতি ফাংশন

টেনসরফ্লো অনুমানকারী

টেনসরফ্লো অনুমানকারীরা চার্টিং এবং রানটাইম প্রসেসিংয়ের জন্য একটি সাধারণ বিমূর্ততা সরবরাহ করে। টেনসরফ্লো একটি মডেল_ফএন ইন্টারফেস নির্দিষ্ট করেছে যা কাস্টম অনুমানকারী তৈরি করতে ব্যবহার করা যেতে পারে।

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

ট্রেন

আপনি ডেটা প্রিক্রোসেস করে মডেল আর্কিটেকচার এবং ডেটা পাইপলাইন তৈরি করার পরে, আপনি মডেলটিকে প্রশিক্ষণ দেওয়া শুরু করতে পারেন।

ডকার রান -v $ পিডব্লিউডি: / অপ্ট / অ্যাপ্লিকেশন e-পাইথোনপাথ = $ পাইথনপাথ: / অপ্ট / অ্যাপ্লিকেশন es -স কোলেমুরে / বয়স-লিঙ্গ-অনুমান-টিউটোরিয়াল: জিপিইউ \ পাইথন 3 / ওপট / অ্যাপ / বিিন / ট্রেন.পি \ --img-dir / opt / app / var / ক্রপ \ --train-csv /opt/app/var/train.csv val --val-csv /opt/app/var/val.csv mod - মডেল ডিরেক্টরি / opt / app / var / cnn-Model \ --img-size 224 \ - পদক্ষেপের সংখ্যা 200000

ভবিষ্যদ্বাণী

নীচে আপনি বয়স এবং লিঙ্গ দ্বারা আপনার টেনসরফ্লো মডেলটি লোড করুন। মডেলটি হার্ড ড্রাইভ থেকে লোড করা হয় এবং সরবরাহিত চিত্রটিতে পূর্বাভাস।

# আপনার মডেল ডকার রান -v below পিডাব্লুডি: / অপ্ট / অ্যাপ্লিকেশন দ্বারা নীচের মডেল পাথ আপডেট করুন - পাইথোনপাথ = $ পাইথনপাথ: / অপ্ট / অ্যাপ্লিকেশন es -কস কলেমুরে / বয়স-লিঙ্গ-অনুমান-টিউটোরিয়াল \ পাইথন 3 / অপ্ট / অ্যাপ /bin/predict.py \ - আইমেজ-পাথ /opt/app/var/crop/25/nm0000325_rm2755562752_1956-1-7_2002.jpg \ - আধুনিক / অ্যাপ / var / সিএনএন-মডেল -3 / পরিবেশনা /
আনুমানিক: এম / 46 প্রকৃত: এম / 46

উপসংহার

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

পরবর্তী পদক্ষেপ:

  • আপনার নিজস্ব ডেটা সেটের মূল্যায়ন করুন
  • একটি ভিন্ন নেটওয়ার্ক আর্কিটেকচার চেষ্টা করুন
  • বিভিন্ন হাইপারপ্যারামিটার নিয়ে পরীক্ষা করুন

প্রশ্ন / সমস্যা? গিটহাবে এখানে একটি সমস্যা খুলুন

এখানে কোডটি সম্পূর্ণ করুন।

কল টু অ্যাকশন

আপনি যদি এই টিউটোরিয়ালটি পছন্দ করেন তবে অনুসরণ করুন এবং এটির সুপারিশ করুন!

আপনি গভীর শিক্ষা / মেশিন লার্নিং সম্পর্কে আরও জানতে চান? আমার অন্যান্য টিউটোরিয়াল দেখুন:

- টেনসরফ্লোতে গভীর শিক্ষার সাথে ক্যাপশনগুলির জন্য জেনারেটর তৈরি

- টেনসরফ্লোতে গভীর শিক্ষার সাথে মুখের স্বীকৃতি পাইপলাইন স্থাপন

- জিপিইউ সহ টেনসরফ্লোতে গভীর শেখার সিএনএন

- গুগল কম্পিউট ইঞ্জিনে কেরাসের সাথে গভীর শেখা

- গুগল কম্পিউট ইঞ্জিনে অ্যাপাচি স্পার্ক সহ সুপারিশ সিস্টেমগুলি

অন্যান্য জায়গা আপনি আমাকে খুঁজে পেতে পারেন: