Brief #23 · Machine Learning
On-Device Image Classifier
Medium⏱ 12-18 ঘণ্টাশীঘ্রই
Transfer learning দিয়ে একটা image classifier fine-tune করো, তারপর এমনভাবে ছোট করো যাতে সস্তা phone এ দ্রুত চলে, প্রতিটা কৌশলে accuracy কতটা যায় ঠিক মেপে।
Outline free · tracking সহ বানাতে Pro লাগবে
OBriefTeam এর পক্ষ থেকে
মাঠকর্মীরা রোগ জানাতে ফসলের পাতার ছবি তোলেন, কিন্তু গ্রামে internet দুর্বল, তাই server এ ছবি upload অর্ধেক সময় fail করে। এমন একটা model বানাও, যেটা একটা সস্তা Android phone এ, offline, এক সেকেন্ডের অনেক কম সময়ে সাধারণ রোগগুলো চিনতে পারে, আর এর জন্য কতটা accuracy ছাড়তে হচ্ছে সেটা জানাও।
যা বানাবে
- 1Data augmentation সহ একটা public plant-disease dataset এ একটা pretrained CNN fine-tune করো, আর validation accuracy লিখে রাখো।
- 2একটা বড় backbone আর একটা mobile মাপের backbone কে accuracy, model size আর গতিতে তুলনা করো।
- 3ONNX বা TFLite এ export করো আর 8-bit quantization দাও, প্রতিটা ধাপের পরে accuracy দেখো।
- 4একটা ছোট Android বা web demo তে চালাও, আর ১০০টা ছবিতে device এর উপর latency মাপো।
- 5ভুলগুলো দেখো: কোন রোগগুলো গুলিয়ে যায়, আর ছবিগুলো দেখাও।
ধাপে ধাপে walkthrough
Walkthrough শীঘ্রই আসছে
এই project এর ধাপে ধাপে walkthrough, প্রতিটা ধাপে আসল output সহ, এখনো লেখা হচ্ছে। ততক্ষণ brief পড়ে নিজে চেষ্টা করতে পারো; walkthrough তৈরি হলে tracking চালু হবে।
শেষ হবে যখন
- প্রতিটা version এর accuracy, model size আর latency র table: পূর্ণ, mobile backbone, quantized।
- শেষ model একটা সস্তা phone এ offline, ছবি প্রতি ৩০০ ms এর কম সময়ে চলে।
- Quantization এ accuracy ২ শতাংশ পয়েন্টের কম কমে, নয়তো কেন বেশি কমলো ব্যাখ্যা দাও।
- সবচেয়ে বেশি গুলিয়ে যাওয়া জোড়াগুলোর ব্যাখ্যা সহ একটা confusion matrix।
আরো এগোতে চাইলে
- বাইরে তোলা নিজের ছবিতে test করো, আর পরিষ্কার dataset এর তুলনায় accuracy কতটা কমে মাপো।
- Confidence কম হলে 'নিশ্চিত না, আরেকটা ছবি তোলো' উত্তর যোগ করো।