TensorFlow Lite হল এমন একটি টুলের সেট যা ডেভেলপারদের মোবাইল, এম্বেড করা এবং এজ ডিভাইসে তাদের মডেল চালাতে সাহায্য করে অন-ডিভাইস মেশিন লার্নিং সক্ষম করে।
মূল বৈশিষ্ট্য
- 5টি মূল সীমাবদ্ধতার সমাধান করে অন-ডিভাইস মেশিন লার্নিংয়ের জন্য অপ্টিমাইজ করা হয়েছে : লেটেন্সি (কোনও সার্ভারে কোনো রাউন্ড-ট্রিপ নেই), গোপনীয়তা (কোনও ব্যক্তিগত ডেটা ডিভাইস ছেড়ে যায় না), কানেক্টিভিটি (ইন্টারনেট সংযোগের প্রয়োজন নেই), আকার (হ্রাস করা মডেল এবং বাইনারি আকার) এবং শক্তি খরচ (দক্ষ অনুমান এবং নেটওয়ার্ক সংযোগের অভাব)।
- একাধিক প্ল্যাটফর্ম সমর্থন , অ্যান্ড্রয়েড এবং iOS ডিভাইস, এমবেডেড লিনাক্স এবং মাইক্রোকন্ট্রোলার কভার করে।
- বিভিন্ন ভাষা সমর্থন , যার মধ্যে রয়েছে জাভা, সুইফট, অবজেক্টিভ-সি, সি++ এবং পাইথন।
- হার্ডওয়্যার ত্বরণ এবং মডেল অপ্টিমাইজেশান সহ উচ্চ কর্মক্ষমতা ।
- ইমেজ ক্লাসিফিকেশন, অবজেক্ট ডিটেকশন, পোজ এস্টিমেশন, প্রশ্নের উত্তর, টেক্সট ক্লাসিফিকেশন ইত্যাদির মতো সাধারণ মেশিন লার্নিং কাজের জন্য এন্ড-টু-এন্ড উদাহরণ একাধিক প্ল্যাটফর্মে।
উন্নয়ন কর্মপ্রবাহ
নিম্নলিখিত নির্দেশিকা কর্মপ্রবাহের প্রতিটি ধাপের মধ্য দিয়ে চলে এবং আরও নির্দেশাবলীর লিঙ্ক প্রদান করে:
1. একটি টেনসরফ্লো লাইট মডেল তৈরি করুন
একটি TensorFlow Lite মডেলকে একটি বিশেষ দক্ষ পোর্টেবল ফরম্যাটে উপস্থাপন করা হয় যা FlatBuffers নামে পরিচিত ( .tflite ফাইল এক্সটেনশন দ্বারা চিহ্নিত)। এটি TensorFlow-এর প্রোটোকল বাফার মডেল ফরম্যাটের উপর বিভিন্ন সুবিধা প্রদান করে যেমন ছোট আকার (ছোট কোড ফুটপ্রিন্ট) এবং দ্রুত অনুমান (একটি অতিরিক্ত পার্সিং/আনপ্যাকিং ধাপ ছাড়াই ডেটা সরাসরি অ্যাক্সেস করা হয়) যা TensorFlow Liteকে সীমিত কম্পিউট এবং মেমরি রিসোর্স সহ ডিভাইসগুলিতে দক্ষতার সাথে কার্যকর করতে সক্ষম করে। .
একটি টেনসরফ্লো লাইট মডেল ঐচ্ছিকভাবে মেটাডেটা অন্তর্ভুক্ত করতে পারে যেটিতে মানব-পঠনযোগ্য মডেলের বিবরণ এবং ডিভাইসে অনুমানের সময় প্রি- এবং পোস্ট-প্রসেসিং পাইপলাইনগুলির স্বয়ংক্রিয় প্রজন্মের জন্য মেশিন-পঠনযোগ্য ডেটা রয়েছে। আরো বিস্তারিত জানার জন্য মেটাডেটা যোগ করুন দেখুন।
আপনি নিম্নলিখিত উপায়ে একটি TensorFlow Lite মডেল তৈরি করতে পারেন:
একটি বিদ্যমান টেনসরফ্লো লাইট মডেল ব্যবহার করুন: একটি বিদ্যমান মডেল বাছাই করতে টেনসরফ্লো লাইট উদাহরণগুলি পড়ুন। মডেলে মেটাডেটা থাকতে পারে বা নাও থাকতে পারে।
একটি টেনসরফ্লো লাইট মডেল তৈরি করুন: আপনার নিজস্ব কাস্টম ডেটাসেট দিয়ে একটি মডেল তৈরি করতে টেনসরফ্লো লাইট মডেল মেকার ব্যবহার করুন। ডিফল্টরূপে, সমস্ত মডেলে মেটাডেটা থাকে।
একটি টেনসরফ্লো মডেলকে টেনসরফ্লো লাইট মডেলে রূপান্তর করুন: একটি টেনসরফ্লো মডেলকে টেনসরফ্লো লাইট মডেলে রূপান্তর করতে টেনসরফ্লো লাইট কনভার্টার ব্যবহার করুন। রূপান্তরের সময়, আপনি অপ্টিমাইজেশান প্রয়োগ করতে পারেন যেমন কোয়ান্টাইজেশন মডেলের আকার এবং লেটেন্সি কমানোর জন্য ন্যূনতম বা সঠিকতার কোন ক্ষতি না করে। ডিফল্টরূপে, সমস্ত মডেলে মেটাডেটা থাকে না।
2. অনুমান চালান
ইনফরেন্স বলতে ইনপুট ডেটার উপর ভিত্তি করে ভবিষ্যদ্বাণী করার জন্য ডিভাইসে টেনসরফ্লো লাইট মডেল চালানোর প্রক্রিয়াকে বোঝায়। আপনি মডেলের প্রকারের উপর ভিত্তি করে নিম্নলিখিত উপায়ে অনুমান চালাতে পারেন:
মেটাডেটা ছাড়া মডেল : TensorFlow Lite Interpreter API ব্যবহার করুন। জাভা, সুইফট, সি++, অবজেক্টিভ-সি এবং পাইথনের মতো একাধিক প্ল্যাটফর্ম এবং ভাষায় সমর্থিত।
মেটাডেটা সহ মডেল : আপনি হয় টেনসরফ্লো লাইট টাস্ক লাইব্রেরি ব্যবহার করে আউট-অফ-বক্স API গুলিকে লিভারেজ করতে পারেন বা টেনসরফ্লো লাইট সাপোর্ট লাইব্রেরির সাথে কাস্টম ইনফারেন্স পাইপলাইন তৈরি করতে পারেন৷ অ্যান্ড্রয়েড ডিভাইসে, ব্যবহারকারীরা অ্যান্ড্রয়েড স্টুডিও এমএল মডেল বাইন্ডিং বা টেনসরফ্লো লাইট কোড জেনারেটর ব্যবহার করে স্বয়ংক্রিয়ভাবে কোড র্যাপার তৈরি করতে পারে। শুধুমাত্র Java (Android) এ সমর্থিত যখন Swift (iOS) এবং C++ কাজ চলছে।
Android এবং iOS ডিভাইসে, আপনি হার্ডওয়্যার ত্বরণ ব্যবহার করে কর্মক্ষমতা উন্নত করতে পারেন। যেকোনো একটি প্ল্যাটফর্মে আপনি একটি GPU প্রতিনিধি ব্যবহার করতে পারেন, অ্যান্ড্রয়েডে আপনি হয় NNAPI প্রতিনিধি (নতুন ডিভাইসের জন্য) অথবা হেক্সাগন প্রতিনিধি (পুরানো ডিভাইসে) ব্যবহার করতে পারেন এবং iOS-এ আপনি কোর ML প্রতিনিধি ব্যবহার করতে পারেন। নতুন হার্ডওয়্যার অ্যাক্সিলারেটরের জন্য সমর্থন যোগ করতে, আপনি আপনার নিজস্ব প্রতিনিধিকে সংজ্ঞায়িত করতে পারেন।
এবার শুরু করা যাক
আপনি আপনার লক্ষ্য ডিভাইসের উপর ভিত্তি করে নিম্নলিখিত নির্দেশিকা উল্লেখ করতে পারেন:
অ্যান্ড্রয়েড এবং আইওএস: অ্যান্ড্রয়েড কুইকস্টার্ট এবং আইওএস কুইকস্টার্ট এক্সপ্লোর করুন।
এমবেডেড লিনাক্স: এজ টিপিইউ সহ রাস্পবেরি পাই এবং কোরাল ডিভাইসের মতো এমবেডেড ডিভাইসের জন্য পাইথন কুইকস্টার্ট এক্সপ্লোর করুন, বা ARM- এর জন্য C++ বিল্ড নির্দেশাবলী।
মাইক্রোকন্ট্রোলার: মাইক্রোকন্ট্রোলার এবং ডিএসপিগুলির জন্য মাইক্রোকন্ট্রোলার লাইব্রেরির জন্য টেনসরফ্লো লাইট এক্সপ্লোর করুন যেগুলিতে মাত্র কয়েক কিলোবাইট মেমরি রয়েছে৷
প্রযুক্তিগত সীমাবদ্ধতা
সমস্ত TensorFlow মডেলকে TensorFlow Lite মডেলে রূপান্তরিত করা যাবে না , অপারেটর সামঞ্জস্য দেখুন।
অন-ডিভাইস প্রশিক্ষণ অসমর্থিত , তবে এটি আমাদের রোডম্যাপে রয়েছে।