तिथि को रक्षित करें! Google I / O 18-20 मई को पंजीकृत करता है
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

TensorFlow जाली (TFL)

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

अवधारणाओं

यह खंड मोनोटोनिक कैलिब्रेटेड इंटरपोलेटेड लुक-अप टेबल्स , जेएमएलआर 2016 में विवरण का सरलीकृत संस्करण है।

लट्टू

एक जाली एक प्रक्षेपित दिखने वाली तालिका है जो आपके डेटा में मनमाने ढंग से इनपुट-आउटपुट संबंधों को अनुमानित कर सकती है। यह आपके इनपुट स्थान पर एक नियमित ग्रिड को ओवरलैप करता है और ग्रिड के कोने में आउटपुट के लिए मान सीखता है। एक परीक्षण बिंदु के लिए $ x $, $ f (x) $ को रैखिक रूप से $ x $ के आसपास के जाली मानों से प्रक्षेपित किया जाता है।

उपरोक्त सरल उदाहरण 2 इनपुट सुविधाओं और 4 मापदंडों के साथ एक फ़ंक्शन है: $ \ थीटा = [0, 0.2, 0.4, 1] $, जो इनपुट स्थान के कोनों पर फ़ंक्शन के मान हैं; इन मापदंडों से शेष फ़ंक्शन को प्रक्षेपित किया जाता है।

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

$ D $ सुविधाओं और प्रत्येक आयाम के साथ 2 कोने के साथ, एक नियमित जाली में $ 2 ^ D $ पैरामीटर होंगे। अधिक लचीले फ़ंक्शन को फिट करने के लिए, आप प्रत्येक आयाम के साथ अधिक कोने के साथ फ़ीचर स्पेस पर बारीक-बारीक जाली निर्दिष्ट कर सकते हैं। जालीदार प्रतिगमन कार्य निरंतर और टुकड़े टुकड़े में अनंत रूप से भिन्न होते हैं।

कैलिब्रेशन

मान लीजिए कि पूर्ववर्ती नमूना जाली एक सुझाई गई स्थानीय खुशी का प्रतिनिधित्व करती है, जिसमें सुझाए गए स्थानीय कॉफी शॉप की सुविधाओं का उपयोग किया गया है:

  • कॉफी की कीमत, 0 से 20 डॉलर की रेंज में
  • उपयोगकर्ता से दूरी, 0 से 30 किलोमीटर की दूरी में

हम चाहते हैं कि हमारा मॉडल स्थानीय कॉफी शॉप सुझाव के साथ उपयोगकर्ता की खुशी को सीखे। TensorFlow जाली मॉडल टुकड़े टुकड़े रैखिक कार्यों का उपयोग कर सकते हैं ( tfl.layers.PWLCalibration साथ) जाली को स्वीकार किए गए रेंज में इनपुट सुविधाओं को जांचने और सामान्य करने के लिए: ऊपर के उदाहरण उदाहरण में जाली। निम्न शो उदाहरण ऐसे अंशांकन 10 कुंजी के साथ कार्य करता है:

अक्सर इनपुट कुंजी के रूप में सुविधाओं की मात्राओं का उपयोग करना एक अच्छा विचार है। TensorFlow जाली डिब्बाबंद आकलनकर्ता स्वचालित रूप से फीचर क्वांटिल्स के लिए इनपुट कुंजी सेट कर सकते हैं।

श्रेणीबद्ध विशेषताओं के लिए, TensorFlow Lattice एक जाली में फीड करने के लिए इसी तरह के आउटपुट के साथ श्रेणीबद्ध अंशांकन ( tfl.layers.CategoricalCalibration साथ) प्रदान करता है।

टुकड़ियों

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

पुस्तकालय इन टुकड़ियों के दो प्रकार प्रदान करता है:

  • रैंडम टिनी लैटिसेस (RTL): प्रत्येक सबमॉडल सुविधाओं के एक यादृच्छिक सबसेट (प्रतिस्थापन के साथ) का उपयोग करता है।

  • क्रिस्टल : क्रिस्टल एल्गोरिथ्म पहले एक प्रीफ़िटिंग मॉडल को प्रशिक्षित करता है जो जोड़ीदार फ़ीचर इंटरैक्शन का अनुमान लगाता है। यह तब अंतिम पहनावे की व्यवस्था करता है जैसे कि अधिक गैर-रेखीय इंटरैक्शन वाली विशेषताएं एक ही अक्षांश में होती हैं।

TensorFlow जाली क्यों?

आप इस TF ब्लॉग पोस्ट में TensorFlow Lattice का संक्षिप्त परिचय पा सकते हैं।

विवेचनीयता

चूंकि प्रत्येक परत के पैरामीटर उस परत के आउटपुट हैं, इसलिए मॉडल के प्रत्येक भाग का विश्लेषण, समझना और डीबग करना आसान है।

सटीक और लचीले मॉडल

बारीक-बारीक जाली का उपयोग करके, आप एकल जाली परत के साथ मनमाने ढंग से जटिल कार्य प्राप्त कर सकते हैं। कैलिब्रेटर्स और लैटिस की कई परतों का उपयोग करना अक्सर अभ्यास में अच्छी तरह से काम करता है और समान आकारों के डीएनएन मॉडल से मिलान या बेहतर प्रदर्शन कर सकता है।

कॉमन-सेंस शेप की कमी

वास्तविक विश्व प्रशिक्षण डेटा रन-टाइम डेटा का पर्याप्त प्रतिनिधित्व नहीं कर सकता है। डीएनएन या जंगलों जैसे लचीले एमएल समाधान अक्सर प्रशिक्षण डेटा द्वारा कवर नहीं किए गए इनपुट स्थान के कुछ हिस्सों में अप्रत्याशित रूप से और यहां तक ​​कि बेतहाशा कार्य करते हैं। यह व्यवहार विशेष रूप से समस्याग्रस्त है जब नीति या निष्पक्षता बाधाओं का उल्लंघन किया जा सकता है।

भले ही नियमितीकरण के सामान्य रूपों में अधिक समझदार अतिरिक्तता हो सकती है, लेकिन मानक नियमितकर्ता पूरे इनपुट स्थान पर उचित मॉडल व्यवहार की गारंटी नहीं दे सकते हैं, खासकर उच्च-आयामी इनपुट के साथ। अधिक नियंत्रित और पूर्वानुमानित व्यवहार के साथ सरल मॉडल पर स्विच करना मॉडल की सटीकता के लिए गंभीर लागत पर आ सकता है।

TF लॅटिस लचीले मॉडल का उपयोग करना संभव बनाता है, लेकिन डोमेन ज्ञान को अर्थपूर्ण सामान्य ज्ञान या नीति-चालित आकार की बाधाओं के माध्यम से सीखने की प्रक्रिया में इंजेक्ट करने के लिए कई विकल्प प्रदान करता है:

  • एकरूपता : आप निर्दिष्ट कर सकते हैं कि आउटपुट केवल इनपुट के संबंध में वृद्धि / कमी होनी चाहिए। हमारे उदाहरण में, आप यह निर्दिष्ट करना चाह सकते हैं कि कॉफी शॉप में बढ़ी हुई दूरी केवल अनुमानित उपयोगकर्ता वरीयता को कम करना चाहिए।

  • उत्तलता / सामंजस्य : आप यह निर्दिष्ट कर सकते हैं कि फ़ंक्शन आकृति उत्तल या अवतल हो सकती है। एकरसता के साथ मिश्रित, यह फ़ंक्शन को किसी दिए गए फीचर के संबंध में कम रिटर्न का प्रतिनिधित्व करने के लिए मजबूर कर सकता है।

  • Unimodality : आप निर्दिष्ट कर सकते हैं कि फ़ंक्शन में एक अद्वितीय चोटी या अद्वितीय घाटी होनी चाहिए। यह आपको ऐसे कार्यों का प्रतिनिधित्व करने देता है जिनमें एक फीचर के संबंध में एक मीठा स्थान होता है।

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

नियमितकर्ताओं के साथ नियंत्रित लचीलापन

आकार की बाधाओं के अलावा, TensorFlow जाली प्रत्येक परत के लिए फ़ंक्शन के लचीलेपन और चिकनाई को नियंत्रित करने के लिए नियमित रूप से कई नंबर प्रदान करती है।

  • लाप्लासियन रेगुलराइज़र : जाली / अंशांकन कोने / कीप के आउटपुट को उनके संबंधित पड़ोसियों के मूल्यों के लिए नियमित किया जाता है। यह एक चापलूसी समारोह में परिणाम है।

  • हेस्सियन रेगुलराइज़र : यह PWL अंशांकन परत के पहले व्युत्पन्न को कार्य को और अधिक रैखिक बनाने के लिए दंडित करता है।

  • रिंकल रेग्युलर : यह वक्रता में अचानक परिवर्तन से बचने के लिए पीडब्ल्यूएल अंशांकन परत के दूसरे व्युत्पन्न को दंडित करता है। यह फंक्शन को स्मूथ बनाता है।

  • मरोड़ नियमित : जाली के आउटपुट को सुविधाओं के बीच मरोड़ को रोकने की दिशा में नियमित किया जाएगा। दूसरे शब्दों में, सुविधाओं के योगदान के बीच स्वतंत्रता के प्रति मॉडल को नियमित किया जाएगा।

मिक्स करें और अन्य केरस परतों के साथ मिलाएं

आप आंशिक रूप से विवश या नियमित मॉडल के निर्माण के लिए अन्य केरस परतों के साथ संयोजन में TF जाली परतों का उपयोग कर सकते हैं। उदाहरण के लिए, जाली या पीडब्लूएल अंशांकन परतों का उपयोग गहरी नेटवर्क की अंतिम परत पर किया जा सकता है जिसमें एम्बेडिंग या अन्य केरास परत शामिल हैं।

पत्रों

ट्यूटोरियल और एपीआई डॉक्स

सामान्य मॉडल आर्किटेक्चर के लिए, आप केरस प्रीमियर मॉडल या डिब्बाबंद एस्टीमेटर का उपयोग कर सकते हैं। आप TF Lattice Keras लेयर्स का उपयोग करके कस्टम मॉडल भी बना सकते हैं या अन्य Keras लेयर्स के साथ मिक्स एंड मैच कर सकते हैं। विवरण के लिए पूर्ण एपीआई डॉक्स देखें।