मैं वर्तमान में सड़ा हुआ संतरे और खाद्य संतरे को अपनी बाहरी उपस्थिति के आधार पर अलग करने के लिए एक प्रोग्राम बनाने की कोशिश कर रहा हूं। ऐसा करने के लिए, मैं सड़ा हुआ संतरे और सामान्य संतरे के साथ ट्रेन करने के लिए एक कनवॉल्यूशनल तंत्रिका नेटवर्क का उपयोग करने की योजना बना रहा हूं। कुछ खोज के बाद मुझे लगभग एक डेटाबेस मिल सकता था। 150 सड़े हुए संतरे और काले रंग की पृष्ठभूमि पर 150 सामान्य संतरे (http://www.cofilab.com/downloads/)। जाहिर है, एक मशीन लर्निंग मॉडल को 90 या उससे अधिक प्रतिशत से अधिक सटीकता प्राप्त करने के लिए कम से कम कुछ हज़ार संतरे की आवश्यकता होगी। हालांकि, क्या मैं इन 150 संतरे को संतरे की अधिक तस्वीरें बनाने के लिए किसी भी तरह से बदल सकता हूं? बदले में, मेरा मतलब है कि "अलग नारंगी" बनाने के लिए साइट्रस फल पर नारंगी के विभिन्न रंगों को जोड़ना। क्या यह तंत्रिका नेटवर्क को प्रशिक्षित करने का एक प्रभावी तरीका होगा?तंत्रिका नेटवर्क को प्रशिक्षित करने के लिए प्रशिक्षित छवियों को बदलना
उत्तर
बना सकते हैं यह एक बहुत अच्छा तरीका है आपके पास तारीख की संख्या में वृद्धि करने के लिए है। आप क्या करेंगे आपके डेटा पर निर्भर करता है। उदाहरण के लिए, यदि आप एक सेंसर से प्राप्त डेटा पर प्रशिक्षण दे रहे हैं, तो आप प्रशिक्षण डेटा में कुछ शोर जोड़ना चाहेंगे ताकि आप अपना डेटासेट बढ़ा सकें। आखिरकार, आप सेंसर से बाद में कुछ शोर आने की उम्मीद कर सकते हैं।
मान लीजिए कि आप इसे छवियों पर प्रशिक्षित करेंगे, यहां एक बहुत अच्छी जिथब रिपोजिटरी है जो उन तकनीकों का उपयोग करने के साधन प्रदान करती है। यह पायथन लाइब्रेरी आपको आपकी मशीन लर्निंग प्रोजेक्ट्स के लिए छवियों को बढ़ाने में मदद करती है। यह इनपुट छवियों के एक सेट को एक नए, थोड़ा परिवर्तित छवियों के बहुत बड़े सेट में परिवर्तित करता है। लिंक: https://github.com/aleju/imgaug
विशेषताएं:
अधिकांश मानक वृद्धि तकनीक उपलब्ध।
तकनीकें छवियों पर दोनों छवियों और कीपॉइंट्स/स्थलचिह्नों पर लागू की जा सकती हैं। प्रयोग की शुरुआत में एक बार अपने संवर्धन अनुक्रम को परिभाषित करें, फिर इसे कई बार लागू करें।
प्रत्येक वृद्धि के लिए लचीली स्टोकास्टिक श्रेणियां परिभाषित करें, उदा। " प्रत्येक छवि को -45 और 45 डिग्री के बीच मान द्वारा" या "प्रत्येक छवि को सामान्य वितरण एन (0, 5.0) से नमूने वाले मान द्वारा घुमाएं"।
आसानी से सभी स्टोकेस्टिक पर्वतमाला नियतात्मक मूल्यों के के लिए छवियों के विभिन्न समूहों के बिल्कुल समान रास्ता (जैसे छवियों और उनके हीटमैप) में परिवर्तित बढ़ाने।
यह वास्तव में आपके डेटा सेट को बढ़ाने का एक अच्छा तरीका है। उदाहरण के लिए, आप छवियों में गॉसियन ब्लर लागू कर सकते हैं। वे धुंधले हो जाएंगे, लेकिन मूल से अलग होंगे। आप छवियों को भी उलटा कर सकते हैं। या, आखिरी मामले में, नई छवियों को देखें और उद्धृत तकनीकों को लागू करें।
डेटा वृद्धि जो आप खोज रहे हैं। आप मामले में अलग-अलग चीजें कर सकते हैं:
थोड़ा अलग छवि प्राप्त करने के लिए फ़िल्टर लागू करें, जैसा कि कहा गया है कि आप गाऊशियन ब्लर का उपयोग कर सकते हैं।
नारंगी काटिये और इसे विभिन्न पृष्ठभूमि में रखें।
विभिन्न तराजू कारकों के साथ संतरे स्केल करें।
छवियों को घुमाएं।
कृत्रिम सड़ा हुआ संतरे बनाते हैं।
पिछले उल्लिखित सभी अलग-अलग संयोजनों को मिलाएं। इस तरह के संवर्धन के साथ आप आसानी से हजारों विभिन्न संतरे बना सकते हैं।
मैं 12.000 छवियों का एक डाटासेट के साथ ऐसा ही कुछ किया है और मैं 630.000 नमूने
डाटा वृद्धि वास्तव में सेट प्रशिक्षण को बढ़ावा देने के अच्छा तरीका है लेकिन अभी भी एक गहरी नेटवर्क अंत अपने आप ही समाप्त करने के लिए संभावना है कि यह overfit जाएगा दिया प्रशिक्षित करने के लिए पर्याप्त नहीं है। आपको डोमेन अनुकूलन देखना चाहिए जहां आप प्रक्षेपण जैसे प्रक्षेपित मॉडल लेते हैं जिसे कल्पना डेटासेट पर प्रशिक्षित किया जाता है और इसे आपकी समस्या के लिए अंतिम रूप दिया जाता है। चूंकि आपको अपने उपयोग के मामले को वर्गीकृत करने के लिए केवल पैरामीटर सीखना है, इसलिए उपलब्ध अपेक्षाकृत कम प्रशिक्षण डेटा के साथ अच्छी accuracies प्राप्त करना संभव है। मैंने इस तकनीक here के साथ वर्गीकरण का एक डेमो होस्ट किया है। इसे अपने डेटासेट के साथ आज़माएं और देखें कि यह मदद करता है या नहीं। डेमो प्रक्षेपित मॉडल के साथ-साथ डेटासेट के लिए डाटा एग्मेंटेशन का ख्याल रखता है जिसे आप अपलोड करेंगे।
- 1. मशाल/लुआ, एक प्रशिक्षित तंत्रिका नेटवर्क मॉडल को फाइल करने के लिए कैसे बचाएं?
- 2. एक प्रशिक्षित तंत्रिका नेटवर्क का भंडारण और उपयोग
- 3. प्रशिक्षित Tensorflow मॉडल को protobuf
- 4. पोंग गेम खेलने के लिए तंत्रिका नेटवर्क को कैसे प्रशिक्षित किया जाए?
- 5. मैं 2048 गेम खेलने के लिए तंत्रिका नेटवर्क को कैसे प्रशिक्षित कर सकता हूं?
- 6. प्रशिक्षित कैमरे मॉडल
- 7. तंत्रिका नेटवर्क
- 8. निकालें पूर्व प्रशिक्षित (Tensorflow) सीएनएन
- 9. तंत्रिका नेटवर्क
- 10. छवियों को प्रशिक्षित करने के लिए, जब उनके पास अलग-अलग आकार होते हैं?
- 11. न्यूरोफ तंत्रिका नेटवर्क
- 12. कृत्रिम तंत्रिका नेटवर्क
- 13. एक तंत्रिका नेटवर्क
- 14. क्या तंत्रिका नेटवर्क
- 15. पाइब्रेन ब्लैक-बॉक्स ऑप्टिमाइज़ेशन का उपयोग करके पर्यवेक्षित डेटा सेट पर तंत्रिका नेटवर्क को कैसे प्रशिक्षित किया जाए?
- 16. आयात से SVM प्रशिक्षित OpenCV
- 17. पायथन विज्ञान-सीखना: प्रशिक्षित वर्गीकृत वर्गीकरण
- 18. छवियों के एक सेट के आधार पर ओपनसीवी के साथ एक एसवीएम को प्रशिक्षित करने के लिए कैसे?
- 19. तंत्रिका नेटवर्क-बैक प्रचार, तंत्रिका नेटवर्क (बैक-प्रोपेगेशन) के बारे में कुछ लेख पढ़ने के बाद
- 20. MATLAB में तंत्रिका नेटवर्क, शुरुआती वजन
- 21. यह बैकप्रोपैगेशन कार्यान्वयन वजन को सही ढंग से प्रशिक्षित करने में विफल क्यों होता है?
- 22. एक प्रविष्टि (पहले से प्रशिक्षित नेटवर्क के लिए) के साथ पाइब्रेन एफएफएन कैसे खिलाया जाए?
- 23. पाइब्रेन न्यूरल नेटवर्क सही ढंग से प्रशिक्षित करने में विफल रहा
- 24. कनवॉल्यूशनल तंत्रिका नेटवर्क में अभिसरण को रोकने में ड्रॉपआउट क्यों है?
- 25. ओपनसीवी संयोजन एसयूआरएफ तंत्रिका नेटवर्क
- 26. तंत्रिका नेटवर्क
- 27. "मुलायम" समाधान हल करने के लिए तंत्रिका नेटवर्क का उपयोग कैसे करें?
- 28. क्या टेसरेक्ट को गैर-फ़ॉन्ट प्रतीकों के लिए प्रशिक्षित किया जा सकता है?
- 29. तंत्रिका नेटवर्क
- 30. क्या एंड्रॉइड पर tensorflow को प्रशिक्षित करना संभव है?