फ़ीचर इंजीनियरिंग

From Vigyanwiki

फ़ीचर इंजीनियरिंग या फ़ीचर निष्कर्षण या फ़ीचर खोज अनिर्मित डेटा से फ़ीचर (मशीन लर्निंग) (विशेषताएँ, गुण, विशेषताएँ) निकालने के लिए डोमेन ज्ञान का उपयोग करने की प्रक्रिया है।[1] मशीन सीखने की प्रक्रिया में केवल अनिर्मित डेटा की आपूर्ति की तुलना में, मशीन सीखने की प्रक्रिया से परिणामों की गुणवत्ता में सुधार करने के लिए इन अतिरिक्त सुविधाओं का उपयोग करना प्रेरणा है।

प्रक्रिया

फ़ीचर इंजीनियरिंग प्रक्रिया है:[2]

  • बुद्धिशीलता या सॉफ्टवेयर परीक्षण सुविधाएँ[3]
  • निर्णय लेना कि कौन सी सुविधाएँ बनानी हैं
  • सुविधाएँ बनाना
  • कार्य पर पहचानी गई सुविधाओं के प्रभाव का परीक्षण करना
  • यदि आवश्यक हो तो अपनी सुविधाओं में सुधार करें
  • पुनरावृत्ति

विशिष्ट इंजीनियर्ड विशेषताएं

निम्नलिखित सूची[4] उपयोगी सुविधाओं को इंजीनियर करने के लिए कुछ विशिष्ट विधि प्रदान करता है:

  • संख्यात्मक परिवर्तन (जैसे भिन्न लेना या स्केलिंग)
  • श्रेणी एनकोडर जैसे वन-हॉट या लक्ष्य एनकोडर (श्रेणीबद्ध चर के लिए)[5]
  • क्लस्टरिंग
  • समूहित मान
  • प्रमुख घटक विश्लेषण (संख्यात्मक डेटा के लिए)
  • फ़ीचर निर्माण: समस्या के लिए प्रासंगिक नए भौतिक, ज्ञान-आधारित मापदंडों का निर्माण।[6] उदाहरण के लिए, भौतिकी में, आयामहीन मात्रा का निर्माण जैसे द्रव गतिकी में रेनॉल्ड्स संख्या, गर्मी हस्तांतरण में नुसेल्ट संख्या, अवसादन में आर्किमिडीज संख्या, समाधान के पहले अनुमान का निर्माण जैसे यांत्रिकी में सामग्री समाधान की विश्लेषणात्मक शक्ति आदि।[7]


प्रासंगिकता

विशेषताओं का महत्व भिन्न-भिन्न होता है।[8] यहां तक कि अपेक्षाकृत महत्वहीन विशेषताएं भी किसी मॉडल में योगदान दे सकती हैं। फ़ीचर चयन किसी मॉडल को प्रशिक्षण डेटा सेट (ओवरफ़िटिंग) के लिए बहुत विशिष्ट बनने से रोकने के लिए सुविधाओं की संख्या को कम कर सकता है।[9]


विस्फोट

फ़ीचर विस्फोट तब होता है जब पहचाने गए फ़ीचर की संख्या अनुचित रूप से बढ़ती है। सामान्य कारणों में सम्मिलित हैं:

  • फ़ीचर टेम्प्लेट - नई सुविधाओं को कोड करने के अतिरिक्त फ़ीचर टेम्प्लेट लागू करना होता हैं
  • फ़ीचर संयोजन - ऐसे संयोजन जिन्हें रैखिक प्रणाली द्वारा प्रस्तुत नहीं किया जा सकता है

फ़ीचर विस्फोट को विधियों के माध्यम से सीमित किया जा सकता है जैसे: नियमितीकरण (गणित), कर्नेल विधियाँ, और फ़ीचर चयन।[10]


स्वचालन

फीचर इंजीनियरिंग का स्वचालन शोध विषय है जो 1990 के दशक का है।[11] स्वचालित फीचर इंजीनियरिंग को सम्मिलित करने वाला मशीन लर्निंग सॉफ्टवेयर 2016 से व्यावसायिक रूप से उपलब्ध है।[12] संबंधित अकादमिक साहित्य को सामान्यतः दो प्रकारों में विभाजित किया जा सकता है:

  • मल्टी-रिलेशनल डिसीजन ट्री लर्निंग (एमआरडीटीएल) पर्यवेक्षित एल्गोरिदम का उपयोग करता है जो डिसीजन ट्री के समान है।
  • डीप फ़ीचर सिंथेसिस सरल विधियों का उपयोग करता है।[citation needed]

मल्टी-रिलेशनल डिसीजन ट्री लर्निंग (एमआरडीटीएल)

एमआरडीटीएल प्रश्नों में क्रमिक रूप से क्लॉज जोड़कर एसक्यूएल प्रश्नों के रूप में सुविधाएँ उत्पन्न करता है।[citation needed] उदाहरण के लिए, एल्गोरिथम की प्रारंभ हो सकती है

SELECT COUNT(*) FROM ATOM t1 LEFT JOIN MOLECULE t2 ON t1.mol_id = t2.mol_id GROUP BY t1.mol_id

फिर क्वेरी को शर्तों को जोड़कर क्रमिक रूप से परिष्कृत किया जा सकता है, जैसे "WHERE t1.charge <= -0.392"।[citation needed]

चूँकि, अधिकांश एमआरडीटीएल संबंधपरक डेटाबेस पर आधार कार्यान्वयन का अध्ययन करता है, जिसके परिणामस्वरूप कई अनावश्यक संचालन होते हैं। टपल आईडी प्रसार जैसी विधियों का उपयोग करके इन अतिरेक को कम किया जा सकता है।[13][14] वृद्धिशील अद्यतनों का उपयोग करके दक्षता बढ़ाई जा सकती है, जो अतिरेक को समाप्त करती है।[15][promotional source?]

ओपन-सोर्स कार्यान्वयन

ऐसे कई ओपन-सोर्स लाइब्रेरी और उपकरण हैं जो संबंधपरक डेटा और समय श्रृंखला पर फीचर इंजीनियरिंग को स्वचालित करते हैं:

  • फीचरटूल्स मशीन लर्निंग के लिए समय श्रृंखला और संबंधपरक डेटा को फीचर मैट्रिक्स में बदलने के लिए पायथन (प्रोग्रामिंग भाषा) लाइब्रेरी है।[16][17][18]
  • वनबीएम या वन-बटन मशीन फीचर चयन विधियों के साथ रिलेशनल डेटा पर फीचर ट्रांसफॉर्मेशन और फीचर चयन को जोड़ती है।[19]

    [OneBM] डेटा वैज्ञानिकों को डेटा अन्वेषण के समय को कम करने में सहायता करता है, जिससे उन्हें कम समय में कई विचारों को जांचने और त्रुटि करने की अनुमति मिलती है। दूसरी ओर, यह गैर-विशेषज्ञों को, जो डेटा विज्ञान से परिचित नहीं हैं, थोड़े से प्रयास, समय और लागत के साथ अपने डेटा से तुरंत मान निकालने में सक्षम बनाता है।[20]

  • गेटएमएल समुदाय समय श्रृंखला और संबंधपरक डेटा पर स्वचालित फीचर इंजीनियरिंग के लिए खुला स्रोत उपकरण है।[21][22] इसे पायथन इंटरफ़ेस के साथ C (प्रोग्रामिंग भाषा)/C++ में कार्यान्वित किया गया है।[23] इसे टीएसफ्लेक्स, टीएसफ्रेश, टीएसफेल, फीचरटूल्स या कैट्स से कम से कम 60 गुना तेज़ दिखाया गया है।[24]
  • टीएसफ्रेश समय श्रृंखला डेटा पर सुविधा निष्कर्षण के लिए पायथन लाइब्रेरी है।[25] यह परिकल्पना परीक्षण का उपयोग करके सुविधाओं की गुणवत्ता का मूल्यांकन करता है।[26]
  • टीएसफ्लेक्स समय श्रृंखला डेटा से सुविधाएँ निकालने के लिए खुला स्रोत पायथन लाइब्रेरी है।[27] 100% पायथन में लिखे जाने के बावजूद, इसे टीएसफ्रेश, सेग्लर्न या टीएसफेल की तुलना में तेज़ और अधिक मेमोरी कुशल दिखाया गया है।[28]
  • सेग्लर्न, स्किकिट-लर्न पायथन लाइब्रेरी के लिए बहुभिन्नरूपी, अनुक्रमिक समय श्रृंखला डेटा का विस्तार है।[29]
  • टीएसफेल समय श्रृंखला डेटा पर सुविधा निष्कर्षण के लिए पायथन पैकेज है।[30]
  • कैट्स समय श्रृंखला डेटा का विश्लेषण करने के लिए पायथन टूलकिट है।[31]


गहन सुविधा संश्लेषण

डीप फ़ीचर सिंथेसिस (डीएफएस) एल्गोरिदम ने प्रतियोगिता में 906 मानव टीमों में से 615 को हराया था।[32][33]


फ़ीचर स्टोर

फ़ीचर स्टोर वह स्थान है जहां सुविधाओं को मॉडल को प्रशिक्षित करने (डेटा वैज्ञानिकों द्वारा) या पूर्वानुमान बनाने (प्रशिक्षित मॉडल वाले अनुप्रयोगों द्वारा) के स्पष्ट उद्देश्य के लिए संग्रहीत और व्यवस्थित किया जाता है। यह केंद्रीय स्थान है जहां आप या तो कई अलग-अलग डेटा स्रोतों से बनाई गई सुविधाओं के समूह बना या अपडेट कर सकते हैं, या प्रशिक्षण मॉडल के लिए या उन अनुप्रयोगों में उपयोग के लिए उन फीचर समूहों से नए डेटासेट बना और अपडेट कर सकते हैं जो सुविधाओं की गणना नहीं करना चाहते हैं किन्तु बस जब उन्हें पूर्वानुमान लगाने की आवश्यकता हो तो उन्हें पुनः प्राप्त करें।[34]

फ़ीचर स्टोर में फ़ीचर उत्पन्न करने के लिए उपयोग किए जाने वाले कोड को संग्रहीत करने, अनिर्मित डेटा पर कोड लागू करने और अनुरोध पर उन सुविधाओं को मॉडलों को प्रदान करने की क्षमता सम्मिलित होती है। उपयोगी क्षमताओं में फीचर संस्करण और उन परिस्थितियों को नियंत्रित करने वाली नीतियां सम्मिलित हैं जिनके अनुसार सुविधाओं का उपयोग किया जा सकता है।[35]

फ़ीचर स्टोर स्टैंडअलोन सॉफ़्टवेयर टूल या मशीन लर्निंग प्लेटफ़ॉर्म में निर्मित हो सकते हैं।

विकल्प

फ़ीचर इंजीनियरिंग समय लेने वाली और त्रुटि-प्रवण प्रक्रिया हो सकती है, क्योंकि इसमें डोमेन विशेषज्ञता की आवश्यकता होती है और इसमें अधिकांश परीक्षण और त्रुटि सम्मिलित होती है।[36][37] फीचर इंजीनियरिंग का सहारा लिए बिना बड़े अनिर्मित डेटासेट को संसाधित करने के लिए ध्यान लगा के पढ़ना या सीखना का उपयोग किया जा सकता है।[38] चूँकि, यह ध्यान रखना महत्वपूर्ण है कि गहन शिक्षण एल्गोरिदम को अभी भी इनपुट डेटा की सावधानीपूर्वक प्रीप्रोसेसिंग और सफाई की आवश्यकता होती है।[39] इसके अतिरिक्त, गहरे तंत्रिका नेटवर्क के लिए सही आर्किटेक्चर, हाइपरपैरामीटर और अनुकूलन एल्गोरिदम चुनना चुनौतीपूर्ण और पुनरावृत्त प्रक्रिया हो सकती है।[40]


यह भी देखें

संदर्भ

  1. "ब्रेन सिमुलेशन के माध्यम से मशीन लर्निंग और एआई". Stanford University. Retrieved 2019-08-01.
  2. "Big Data: Week 3 Video 3 - Feature Engineering". youtube.com.
  3. Jalal AA (January 1, 2018). "बड़ा डेटा और बुद्धिमान सॉफ्टवेयर सिस्टम". International Journal of Knowledge-based and Intelligent Engineering Systems. 22 (3): 177–193. doi:10.3233/KES-180383. S2CID 56487811 – via content.iospress.com.
  4. "सुविधाएँ बनाना". kaggle.com (in English). Retrieved 2021-09-30.
  5. "Category Encoders — Category Encoders 2.2.2 documentation". contrib.scikit-learn.org. Retrieved 2021-10-01.
  6. Dash T, Chitlangia S, Ahuja A, Srinivasan A (January 2022). "गहरे तंत्रिका नेटवर्क में डोमेन-ज्ञान को शामिल करने के लिए कुछ तकनीकों की समीक्षा". Scientific Reports. 12 (1): 1040. arXiv:2107.10295. Bibcode:2022NatSR..12.1040D. doi:10.1038/s41598-021-04590-0. PMC 8776800. PMID 35058487.
  7. MacQueron C (2021). SOLID-LIQUID MIXING IN STIRRED TANKS : Modeling, Validation, Design Optimization and Suspension Quality Prediction (Report). doi:10.13140/RG.2.2.11074.84164/1.
  8. "फ़ीचर इंजीनियरिंग" (PDF). 2010-04-22. Retrieved 12 November 2015.
  9. "फ़ीचर इंजीनियरिंग और चयन" (PDF). Alexandre Bouchard-Côté. October 1, 2009. Retrieved 12 November 2015.
  10. "मशीन लर्निंग में फ़ीचर इंजीनियरिंग" (PDF). Zdenek Zabokrtsky. Archived from the original (PDF) on 4 March 2016. Retrieved 12 November 2015.
  11. Knobbe AJ, Siebes A, Van Der Wallen D (1999). "Multi-relational Decision Tree Induction" (PDF). डेटा खनन और ज्ञान खोज के सिद्धांत. Lecture Notes in Computer Science. Vol. 1704. pp. 378–383. doi:10.1007/978-3-540-48247-5_46. ISBN 978-3-540-66490-1.
  12. "यह सब सुविधाओं के बारे में है". Reality AI Blog. September 2017.
  13. Yin X, Han J, Yang J, Yu PS (2004). "CrossMine: Efficient Classification Across Multiple Database Relations". Proceedings. 20th International Conference on Data Engineering. pp. 399–410. doi:10.1109/ICDE.2004.1320014. ISBN 0-7695-2065-0. S2CID 1183403. {{cite book}}: |journal= ignored (help)
  14. Frank R, Moser F, Ester M (2007). "A Method for Multi-relational Classification Using Single and Multi-feature Aggregation Functions". Knowledge Discovery in Databases: PKDD 2007. Lecture Notes in Computer Science. Vol. 4702. pp. 430–437. doi:10.1007/978-3-540-74976-9_43. ISBN 978-3-540-74975-2.
  15. "स्वचालित फ़ीचर इंजीनियरिंग कैसे काम करती है - संबंधपरक डेटा और समय श्रृंखला के लिए सबसे कुशल फ़ीचर इंजीनियरिंग समाधान". Retrieved 2019-11-21.
  16. "What is Featuretools?". Retrieved September 7, 2022.
  17. "फ़ीचरटूल्स - स्वचालित फ़ीचर इंजीनियरिंग के लिए एक खुला स्रोत पायथन ढांचा". Retrieved September 7, 2022.
  18. "github: alteryx/featuretools". GitHub. Retrieved September 7, 2022.
  19. Thanh Lam, Hoang; Thiebaut, Johann-Michael; Sinn, Mathieu; Chen, Bei; Mai, Tiep; Alkan, Oznur (2017-06-01). "रिलेशनल डेटाबेस में फीचर इंजीनियरिंग को स्वचालित करने के लिए एक बटन मशीन". arXiv:1706.00327 [cs.DB].
  20. Template:उद्धरण arXiv
  21. "getML दस्तावेज़ीकरण". Retrieved September 7, 2022.
  22. "github: getml/getml-community". GitHub. Retrieved September 7, 2022.
  23. "github: getml/getml-community". GitHub. Retrieved September 7, 2022.
  24. "github: getml/getml-community". GitHub. Retrieved September 7, 2022.
  25. "tsfresh दस्तावेज़ीकरण". Retrieved September 7, 2022.
  26. "Time Series FeatuRe Extraction on basis of Scalable Hypothesis tests (tsfresh – A Python package)". Retrieved September 7, 2022.
  27. "predict-idlab/tsflex". GitHub. Retrieved September 7, 2022.
  28. "tsflex: Flexible time series processing & feature extraction". Retrieved September 7, 2022.
  29. "सेग्लर्न उपयोगकर्ता मार्गदर्शिका". Retrieved September 7, 2022.
  30. "टीएसएफईएल दस्तावेज़ीकरण में आपका स्वागत है!". Retrieved September 7, 2022.
  31. "github: facebookresearch/Kats". GitHub. Retrieved September 7, 2022.
  32. "Automating big-data analysis".
  33. Kanter, James Max; Veeramachaneni, Kalyan (2015). "Deep Feature Synthesis: Towards Automating Data Science Endeavors". 2015 IEEE International Conference on Data Science and Advanced Analytics (DSAA). pp. 1–10. doi:10.1109/DSAA.2015.7344858. ISBN 978-1-4673-8272-4. S2CID 206610380. {{cite book}}: |journal= ignored (help)
  34. "फीचर स्टोर क्या है". Retrieved 2022-04-19.
  35. "फ़ीचर स्टोर का परिचय". Retrieved 2021-04-15.
  36. "मशीन लर्निंग में फ़ीचर इंजीनियरिंग". Engineering Education (EngEd) Program | Section (in English). Retrieved 2023-03-21.
  37. explorium_admin (2021-10-25). "5 Reasons Why Feature Engineering is Challenging". Explorium (in English). Retrieved 2023-03-21.
  38. Spiegelhalter, D. J. (2019). The art of statistics : learning from data. [London] UK. ISBN 0-241-39863-0. OCLC 1064776283.{{cite book}}: CS1 maint: location missing publisher (link)
  39. Sarker IH (November 2021). "Deep Learning: A Comprehensive Overview on Techniques, Taxonomy, Applications and Research Directions". SN Computer Science. 2 (6): 420. doi:10.1007/s42979-021-00815-1. PMC 8372231. PMID 34426802.
  40. Bengio, Yoshua (2012), "Practical Recommendations for Gradient-Based Training of Deep Architectures", Lecture Notes in Computer Science, Berlin, Heidelberg: Springer Berlin Heidelberg, pp. 437–478, ISBN 978-3-642-35288-1, retrieved 2023-03-21


अग्रिम पठन

  • Boehmke B, Greenwell B (2019). "Feature & Target Engineering". Hands-On Machine Learning with R. Chapman & Hall. pp. 41–75. ISBN 978-1-138-49568-5.
  • Zheng A, Casari A (2018). Feature Engineering for Machine Learning: Principles and Techniques for Data Scientists. O'Reilly. ISBN 978-1-4919-5324-2.
  • Zumel N, Mount (2020). "Data Engineering and Data Shaping". Practical Data Science with R (2nd ed.). Manning. pp. 113–160. ISBN 978-1-61729-587-4.