उद्योग बनाम कागल की चुनौतियां। क्या अधिक अवलोकन एकत्र करना और फैंसी मॉडलिंग की तुलना में अधिक चर का उपयोग करना अधिक महत्वपूर्ण है?


56

मुझे आशा है कि शीर्षक स्व व्याख्यात्मक है। कागले में, अधिकांश विजेता एमएसई, सटीकता के कुछ अतिरिक्त% निचोड़ने के लिए कभी-कभी सैकड़ों आधार मॉडल के साथ स्टैकिंग का उपयोग करते हैं ... सामान्य तौर पर, आपके अनुभव में, फैंसी मॉडलिंग जैसे कि स्टैकिंग बनाम बस अधिक डेटा और अधिक सुविधाएँ एकत्र करना कितना महत्वपूर्ण है। डेटा के लिए?


4
यह पूरी तरह से इस बात पर निर्भर करता है कि क्या आप एक उपयोगी सामान्य प्रवाह चाहते हैं जिसे जल्दी से पुनः प्राप्त किया जा सकता है (या नए डेटासेट या नई सुविधाओं के लिए फिर से तैयार किया गया है), या बस उस विशिष्ट कागेल प्रतियोगिता (उस विशिष्ट स्थिर डेटासेट पर, रिसाव के कारनामों के साथ, 'जादुई विशेषताओं और) को जीतें सब)। पूर्व के लिए, एक एल्गोरिथ्म जो बहुत कम प्रशिक्षण समय और छोटे डेटासेट पर समान बॉलपार्क सटीकता प्राप्त करता है, वह 'बेहतर' है। कल्पना कीजिए कि अगर कागले ने कभी भी अत्यधिक संगणना / स्मृति आवश्यकता या प्रशिक्षण के समय को दंडित करना शुरू कर दिया, या इसे प्रस्तुत स्कोर के हिस्से के रूप में चित्रित किया (मुझे लगता है कि उन्हें पहले से ही पता होना चाहिए)।
16-13 को जूल

2
से लिया "वास्तविक दुनिया की समस्याओं के लिए गहरी सीखने को लागू करने" Rasmus Rothe द्वारा: "[...] वास्तविक दुनिया स्थितियों में, यह दिखा रहा है कि अपने नए एल्गोरिथ्म किसी अन्य विधि की तुलना में प्रदर्शन में एक अतिरिक्त 1% बाहर निचोड़ के बारे में कम यह है इसके बजाय। एक मजबूत प्रणाली के निर्माण के बारे में है जो पर्याप्त सटीकता के साथ आवश्यक कार्य को हल करती है। "
बीटंगू

जवाबों:


77

पृष्ठभूमि के अनुसार, मैं 12 वर्षों से खुदरा बिक्री के लिए पूर्वानुमान स्टोर एसकेयू टाइम सीरीज़ कर रहा हूं । सैकड़ों या हजारों दुकानों में हजारों समय की श्रृंखला। मुझे यह कहना पसंद है कि जब से यह शब्द लोकप्रिय हुआ है, तब से हम बिग डेटा कर रहे हैं।×

मैंने लगातार पाया है कि आपके डेटा को समझने के लिए सबसे महत्वपूर्ण चीज है । यदि आप ईस्टर या पदोन्नति जैसे प्रमुख ड्राइवरों को नहीं समझते हैं, तो आप बर्बाद हैं। अक्सर पर्याप्त होता है, यह विशिष्ट व्यवसाय को अच्छी तरह से समझने के लिए नीचे आता है ताकि सही प्रश्न पूछें और अज्ञात अज्ञात से अज्ञात को बता सकें

एक बार जब आप अपने डेटा को समझ जाते हैं, तो आपको स्वच्छ डेटा प्राप्त करने के लिए काम करने की आवश्यकता होती है । मैंने बहुत से जूनियर्स और इंटर्न की देखरेख की है, और एक चीज जो उन्होंने अपने सभी आंकड़ों और डेटा विज्ञान कक्षाओं में कभी अनुभव नहीं की थी, आपके पास उस डेटा में कितना सरासर बकवास हो सकता है। फिर आपको या तो स्रोत पर वापस जाने की जरूरत है और इसे प्राप्त करने के लिए अच्छे डेटा को लाने की कोशिश करें, या इसे साफ करने की कोशिश करें, या यहां तक ​​कि कुछ सामान को फेंक दें। बेहतर डेटा प्राप्त करने के लिए एक रनिंग सिस्टम को बदलना आश्चर्यजनक रूप से कठिन हो सकता है।

एक बार जब आप अपने डेटा को समझ लेते हैं और वास्तव में कुछ हद तक साफ-सुथरा डेटा होता है, तो आप इसके साथ जुड़ना शुरू कर सकते हैं। दुर्भाग्य से, इस समय तक, मैंने अक्सर खुद को समय और संसाधनों से बाहर पाया है।

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

मेरे अनुभव में, हाँ, मॉडल संयोजन सटीकता में सुधार कर सकता है। हालांकि, वास्तव में बड़े लाभ पहले दो चरणों के साथ किए जाते हैं: अपने डेटा को समझना, और इसे साफ करना (या पहली जगह में स्वच्छ डेटा प्राप्त करना)।


4
@bendl, YMMV का अर्थ है आपका माइलेज मई वैरी । इससे पहले की सजा का बयान अलग-अलग परिस्थितियों में कम या ज्यादा सच हो सकता है।
Orphevs

2
106

2
कभी भी कक्षा का अनुभव न करें। बहुत सारे उद्योग व्यवसायी हैं जो मुख्य रूप से छवि मान्यता जैसे शोर अनुपात संदर्भों के लिए उच्च संकेत के साथ अनुभव किए जाते हैं और भगवान की खातिर भर्ती की तरह शोर सामाजिक प्रक्रियाओं के लिए एक ही तरीके को लागू करने का प्रयास करते हैं।
ब्राश इक्विलिब्रियम

2
@Orphevs दूसरे शब्दों में, इस कथन को मेरी स्थिति से बहुत अधिक प्रभावित किया जा सकता है और इसे सामान्यीकृत नहीं किया जा सकता है। : P
JAD

2
(+1) ताज़ी कब्रों के साथ डेटा सफाई के मुद्दे के संबंध में, यह भी ध्यान देने योग्य है कि मेरी औपचारिक शिक्षा के दौरान, यह सोचकर बाहर आना आसान था कि डेटा की सफाई बुरी चीज थी। यही है, डेटा की सफाई टाइप I त्रुटि दरों को दृढ़ता से प्रभावित कर सकती है (विशेष रूप से अगर सफाई प्रक्रिया में पूर्वाग्रह है) और इसलिए हमें डेटा सफाई के खतरों के बारे में सिखाया गया था। ये सबक गलत नहीं थे, लेकिन मुझे नहीं लगता कि मेरी औपचारिक शिक्षा ने डेटा सफाई के लाभों पर जोर दिया, विशेष रूप से भविष्य कहनेवाला मॉडलिंग के मामले में।
क्लिफ एबी

42

मैं स्पष्ट रूप से पूरे उद्योग के लिए बात नहीं कर सकता, लेकिन मैं उद्योग में काम करता हूं और काग्ले पर प्रतिस्पर्धा की है इसलिए मैं अपने पीओवी को साझा करूंगा।

सबसे पहले, आपको यह संदेह करना सही है कि कागले उद्योग में लोगों के साथ क्या मेल खाते हैं। यह एक गेम है, और गेममैनशिप के अधीन है, बहुत सारे पागल प्रतिबंधों के साथ। उदाहरण के लिए, वर्तमान में चल रहे सैंटनर प्रतियोगिता में:

  1. अपने नाम को छिपाने के लिए फीचर नाम कृत्रिम रूप से हैशेड थे
  2. "प्रशिक्षण" सेट कृत्रिम रूप से स्तंभों की तुलना में कम पंक्तियों के लिए सीमित था, ताकि विशेष रूप से चयन, मजबूती और नियमितीकरण तकनीक सफलता के लिए अपरिहार्य हो।
  3. तथाकथित "परीक्षण" सेट में प्रशिक्षण सेट की तुलना में स्पष्ट रूप से अलग वितरण है और दोनों स्पष्ट रूप से एक ही आबादी से यादृच्छिक नमूने नहीं हैं ।

अगर किसी ने मुझे काम पर इस तरह का डेटा सेट दिया है, तो मैं तुरंत उनके साथ फीचर इंजीनियरिंग पर काम करने की पेशकश करूंगा ताकि हमें ऐसी सुविधाएं मिल सकें जो अधिक उपयोगी थीं। मैं सुझाव दूंगा कि हम डोमेन ज्ञान का उपयोग संभावित संपर्क शर्तों, थ्रेसहोल्ड, श्रेणीबद्ध चर कूटनीति रणनीतियों आदि पर निर्णय लेने के लिए करें। इस तरह से समस्या का समाधान करना स्पष्ट रूप से अधिक उत्पादक होगा, जो डेटाबेस इंजीनियर द्वारा निर्मित निकास फाइल से अर्थ निकालने की कोशिश में अधिक उत्पादक होगा। एमएल में प्रशिक्षण।

इसके अलावा, यदि आप सीखते हैं, कहते हैं, कि एक विशेष संख्यात्मक कॉलम बिल्कुल भी संख्यात्मक नहीं है, बल्कि एक ज़िप कोड है, तो आप अपने डेटा को बढ़ाने के लिए यूएस सेंसस जैसे 3-पार्टी डेटा स्रोतों से डेटा प्राप्त कर सकते हैं। या यदि आपके पास कोई तिथि है, तो शायद आप उस दिन के लिए S & P 500 समापन मूल्य शामिल करेंगे। इस तरह की बाहरी वृद्धि रणनीतियों के लिए विशिष्ट डेटा सेट और महत्वपूर्ण डोमेन ज्ञान की विस्तृत जानकारी की आवश्यकता होती है, लेकिन आमतौर पर शुद्ध एल्गोरिथम सुधार की तुलना में बहुत बड़ा भुगतान होता है।

तो, उद्योग और कागले के बीच पहला बड़ा अंतर यह है कि उद्योग में, सुविधाएँ (इनपुट डेटा के अर्थ में) परक्राम्य हैं।

मतभेदों का एक दूसरा वर्ग प्रदर्शन है। अक्सर, मॉडल को दो तरीकों में से एक में उत्पादन के लिए तैनात किया जाएगा: 1) मॉडल की भविष्यवाणियां बहुत बड़ी डेटाबेस तालिका में प्रत्येक पंक्ति के लिए पूर्व-गणना की जाएंगी, या 2) एक आवेदन या वेबसाइट मॉडल को डेटा की एक पंक्ति से गुजारेंगी और वास्तविक समय में लौटी एक भविष्यवाणी की जरूरत है। दोनों ही मामलों में अच्छे प्रदर्शन की आवश्यकता होती है। इन कारणों से, आप अक्सर ऐसे मॉडल नहीं देखते हैं, जो K- निकटतम-पड़ोसी या अतिरिक्त रैंडम फ़ॉरेस्ट जैसी स्मृति का अनुमान लगाने या उपयोग करने में धीमा हो सकते हैं। एक लॉजिस्टिक रिग्रेशन या तंत्रिका नेटवर्क, इसके विपरीत, कुछ मैट्रिक्स गुणन के साथ रिकॉर्ड का एक बैच स्कोर कर सकता है, और मैट्रिक्स गुणन को सही पुस्तकालयों के साथ अत्यधिक अनुकूलित किया जा सकता है हालांकि मैं शायद +0.001 एयूसी प्राप्त कर सकता हूं, अगर मैं अभी तक एक और गैर-पैरामीट्रिक मॉडल पर खड़ा हूं, तो मैं नहीं करूंगा क्योंकि भविष्यवाणी थ्रूपुट और विलंबता बहुत अधिक गिर जाएगी।

इसके लिए एक विश्वसनीयता आयाम है - चार अलग-अलग अत्याधुनिक 3-पार्टी पुस्तकालयों को स्टैक करना, जो कहते हैं कि लाइट जीबीएम , एक्सगबॉस्ट , कैटबॉस्ट , और टेन्सोर्फ़्लो ( जीपीयू पर , निश्चित रूप से) आपको एमएसई में 0.01 कमी मिल सकती है। काग्ले प्रतियोगिताओं को जीतता है, लेकिन अगर कुछ गलत होता है, तो इसे स्थापित करने, तैनात करने और डिबग करने के लिए चार अलग-अलग पुस्तकालय हैं। यह बहुत अच्छा है अगर आप अपने लैपटॉप पर काम कर रहे सभी सामान प्राप्त कर सकते हैं, लेकिन इसे डॉक के कंटेनर के अंदर चलाना एडब्ल्यूएस पर चल रहा है, यह पूरी तरह से कहानी है। ज्यादातर कंपनियां इस तरह की तैनाती के मुद्दों से निपटने के लिए सिर्फ एक छोटी-सी डेवॉप्स टीम का सामना नहीं करना चाहती हैं।

यह कहा, अपने आप में स्टैकिंग जरूरी एक बड़ी बात नहीं है। वास्तव में, कुछ अलग-अलग मॉडलों को ढेर करना जो सभी समान रूप से अच्छा प्रदर्शन करते हैं, लेकिन बहुत अलग निर्णय सीमाएं हैं, एयूसी में एक छोटे से टक्कर और मजबूती में एक बड़ी टक्कर पाने का एक शानदार तरीका है। बस इतनी रसोई फेंक मत जाओ अपने विषम पहनावा में डूब जाता है कि आपके पास तैनाती के मुद्दे हैं।


ध्यान दें, मुझे लगता है कि आपका बुलेट बिंदु # 2 वाक्य का अंत याद आ रहा है?
मलबिग

20

मेरे अनुभव से, अधिक डेटा और अधिक सुविधाएँ कट्टरपंथी की तुलना में अधिक महत्वपूर्ण हैं, सबसे अधिक, सबसे अधिक ट्यून किए गए, मॉडल एक के साथ आ सकता है।

ऑनलाइन विज्ञापन प्रतियोगिताओं को देखें। जीतने वाले मॉडल इतने जटिल थे कि उन्हें प्रशिक्षण के लिए एक पूरे सप्ताह का समय लगा (उद्योग मानक की तुलना में बहुत छोटे डेटासेट पर)। उसके शीर्ष पर, एक खड़ी मॉडल में भविष्यवाणी एक साधारण रेखीय मॉडल की तुलना में लंबी होती है। उसी विषय पर, याद रखें कि इंजीनियरिंग लागत के कारण नेटफ्लिक्स ने कभी भी अपने 1M $ एल्गोरिथ्म का उपयोग नहीं किया

मैं कहूंगा कि ऑनलाइन डेटा विज्ञान प्रतियोगिताएं किसी कंपनी के लिए यह जानने का एक अच्छा तरीका है कि "उच्चतम सटीकता (या कोई प्रदर्शन मीट्रिक) क्या है जो वे एकत्र किए गए डेटा का उपयोग करके" प्राप्त कर सकते हैं (किसी समय में)। ध्यान दें कि यह वास्तव में एक कठिन समस्या है जिसे हल किया जा रहा है! लेकिन, उद्योग में, क्षेत्र ज्ञान, हार्डवेयर और व्यावसायिक बाधाएं आमतौर पर "फैंसी मॉडलिंग" के उपयोग को हतोत्साहित करती हैं।


2
सच है, यह भी मामला हो सकता है कि डेटा एकत्र करने की प्रक्रिया हमेशा विकसित हो रही है। जिसका अर्थ होगा कि वर्तमान में उपयोग किया गया एल्गोरिदम पुराना होगा (इंजीनियरिंग लागत या प्रशिक्षण के समय जैसा कि आपने बताया है)। इस प्रकार, सरल, तेज और अधिक लचीले एल्गोरिदम की आवश्यकता होगी।
टॉम

4
मैंने इस पोस्ट के मुख्य बिंदुओं में से एक को संक्षेप में "अच्छा चर चयन हमेशा अच्छे मॉडल चयन को ट्रम्प के रूप में सुना होगा"
aginensky

14

स्टैकिंग से जटिलता बढ़ जाती है और व्याख्याशीलता कम हो जाती है। आमतौर पर इसका औचित्य साबित करने के लिए लाभ अपेक्षाकृत छोटे होते हैं। इसलिए जबकि पहनावा संभवत: व्यापक रूप से उपयोग किया जाता है (जैसे XGBoost), मुझे लगता है कि उद्योग में स्टैकिंग अपेक्षाकृत दुर्लभ है।


1
अच्छी बात। व्याख्या मेरे अनुप्रयोगों में बेहद महत्वपूर्ण है (स्टोर प्रबंधक समझना चाहते हैं कि पूर्वानुमान क्या है क्यों है), इसलिए हार्ड-टू-व्याख्या मॉडल में एक समस्या है।
एस। कोलासा - मोनिका जूल

व्यक्तिगत जानकारी के लिए धन्यवाद Stephan। जबकि मैंने माना था कि मॉडल जटिलता बढ़ने के साथ ही व्याख्याशीलता ग्रस्त या लुप्त हो जाती है, मैंने उस समय की बाधाओं के बारे में नहीं सोचा था जो निश्चित रूप से एक कंपनी में अधिक दबाव है। फैंसी मॉडलिंग में संभवतः सबसे खराब अनुपात (सटीकता प्राप्त) / (समय व्यतीत) है।
टॉम

8

मेरे अनुभव में अच्छा डेटा और सुविधाएँ एकत्र करना अधिक महत्वपूर्ण है।

जिन क्लाइंट्स के साथ हमने काम किया, उनके पास आमतौर पर बहुत अधिक डेटा होता है, और प्रारूप में यह सब नहीं होता है जो आसानी से निर्यात किया जा सकता है या जिनके साथ काम करना आसान है। डेटा का पहला बैच आमतौर पर बहुत उपयोगी नहीं है; यह हमारा काम है कि ग्राहक के साथ काम करके यह पता लगाया जाए कि मॉडल को अधिक उपयोगी बनाने के लिए हमें किस डेटा की आवश्यकता होगी। यह एक बहुत पुनरावृत्ति प्रक्रिया है।

बहुत से प्रयोग चल रहे हैं, और हमें ऐसे मॉडल चाहिए जो हैं:

  1. प्रशिक्षण के लिए उपवास
  2. तेजी से भविष्यवाणी करने के लिए (इसके अलावा अक्सर एक व्यावसायिक आवश्यकता होती है)
  3. व्याख्या करना आसान है

प्वाइंट 3) विशेष रूप से महत्वपूर्ण है, क्योंकि मॉडल जो व्याख्या करना आसान है, क्लाइंट के लिए संवाद करना आसान है और अगर हमें कुछ गलत है तो पकड़ना आसान है।


7

यहाँ कुछ है जो कागले पर बहुत ऊपर नहीं आता है: ए

  • आपके मॉडल में अधिक चर हैं, और
  • और अधिक जटिल उन चर और उत्पादन के बीच संबंध,

अधिक जोखिम आपको लगता है कि मॉडल के जीवनकाल में सामना करना पड़ेगा। समय आमतौर पर या तो कागले प्रतियोगिताओं में जमे हुए हैं, या एक छोटी भविष्य की खिड़की है जहां परीक्षण सेट मान आते हैं। उद्योग में, वह मॉडल वर्षों तक चल सकता है। और यह सब ले सकता है एक चर के लिए अपने पूरे मॉडल के लिए नरक में जाने के लिए हैवीयर जाना है, भले ही यह निर्दोष रूप से बनाया गया हो। मैं इसे प्राप्त करता हूं, कोई भी एक प्रतियोगिता नहीं देखना चाहता है जहां प्रतियोगियों ने जोखिम के खिलाफ मॉडल जटिलता को सावधानीपूर्वक संतुलित किया है, लेकिन एक नौकरी में, आपके व्यवसाय और जीवन की गुणवत्ता को नुकसान होगा यदि आप एक मॉडल के प्रभारी के साथ कुछ गलत करते हैं। यहां तक ​​कि बेहद स्मार्ट लोग इम्यून नहीं हैं। उदाहरण के लिए, Google फ़्लू रुझान पूर्वानुमान विफलता को लें । दुनिया बदल गई, और उन्होंने इसे आते नहीं देखा।

ओपी के सवाल के लिए, " सामान्य तौर पर, आपके अनुभव में, फैंसी मॉडलिंग जैसे कि स्टैकिंग बनाम केवल डेटा के लिए अधिक डेटा और अधिक सुविधाएं एकत्र करना कितना महत्वपूर्ण है? " ठीक है, मैं आधिकारिक तौर पर पुराना हूं, लेकिन मेरा जवाब है कि जब तक आपके पास नहीं है? वास्तव में मजबूत मॉडलिंग बुनियादी ढांचा, सरल मॉडल होना बेहतर है, जिसमें चर का न्यूनतम सेट है, जहां इनपुट-टू-आउटपुट संबंध अपेक्षाकृत सीधा है। यदि एक चर बमुश्किल आपके नुकसान मीट्रिक में सुधार करता है, तो इसे छोड़ दें। याद रखें कि यह एक काम है। कागेल प्रतियोगिताओं पर काम के बाहर अपने किक प्राप्त करें जहां "बड़े जाओ या घर जाओ" प्रोत्साहन है।

एक अपवाद यह होगा कि यदि व्यवसाय की स्थिति ने एक निश्चित स्तर के मॉडल के प्रदर्शन की मांग की, उदाहरण के लिए यदि आपकी कंपनी को कुछ लाभ (शायद विपणन में) हासिल करने के लिए प्रतियोगी के प्रदर्शन को हरा देना या हरा देना चाहिए। लेकिन जब मॉडल के प्रदर्शन और व्यावसायिक लाभ के बीच एक रैखिक संबंध होता है, तो जटिलता में वृद्धि आम तौर पर वित्तीय लाभ को सही नहीं ठहराती है (देखें " नेटफ्लिक्स ने इंजीनियरिंग लागतों के कारण अपने $ 1 मिलियन एल्गोरिथम का कभी उपयोग नहीं किया " - उसी का हवाला देते हुए @ RUser4512 को माफी लेख)। हालांकि कागज़ प्रतियोगिता में, अतिरिक्त लाभ आपको सैकड़ों रैंक तक ले जा सकता है क्योंकि आप पास के समाधान पास करते हैं।


3

एक संक्षिप्त उत्तर जो गैरी कास्पारोव की पुस्तक डीप थिंकिंग से मुझे पसंद है

एक चतुर प्रक्रिया बेहतर ज्ञान और बेहतर तकनीक को मात देती है

मैं मुख्य रूप से समय-श्रृंखला के वित्तीय डेटा के साथ काम करता हूं, और डेटा को इकट्ठा करने से लेकर, उसे साफ करने, उसे संसाधित करने और फिर समस्या के मालिकों के साथ काम करने के लिए यह पता लगाने के लिए कि वे वास्तव में क्या करना चाहते हैं, सुविधाओं और मॉडलों का निर्माण करने के लिए प्रयास करें और निपटें। समस्या और अंत में पूर्वव्यापी रूप से अगली बार सुधारने के लिए प्रक्रिया की जाँच करें।

यह पूरी प्रक्रिया इसके भागों के योग से अधिक है। मैं एक रैखिक / लॉजिस्टिक प्रतिगमन के साथ 'स्वीकार्य' सामान्यीकरण प्रदर्शन प्राप्त करने और डोमेन विशेषज्ञों के साथ बात करने के लिए सुविधाएँ पैदा करता हूं, जिस तरह से समय बिताने की तुलना में बेहतर समय बिताया है, जो मेरे पास मेरे डेटा को फिट करने के लिए है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.