इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

तंत्रिका संरचित सीखना: संरचित सिग्नल के साथ प्रशिक्षण

तंत्रिका संरचित लर्निंग (NSL) एक नया सीखने प्रतिमान सुविधा आदानों के अलावा संरचित संकेतों का लाभ उठाकर तंत्रिका नेटवर्क को प्रशिक्षित करने के लिए है। संरचना स्पष्ट रूप में एक ग्राफ का प्रतिनिधित्व करती या अस्पष्ट रूप में विरोधात्मक गड़बड़ी से प्रेरित हो सकता है।

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

करने के लिए NSL सामान्यीकरण करता तंत्रिका ग्राफ़ लर्निंग के साथ ही विरोधात्मक सीखना । TensorFlow में NSL ढांचे संरचित संकेतों के साथ ट्रेन मॉडल के लिए डेवलपर्स के लिए निम्नलिखित आसान से उपयोग API और टूल प्रदान करता है:

  • Keras एपीआई रेखांकन (स्पष्ट संरचना) और विरोधात्मक विचलन (अंतर्निहित संरचना) के साथ प्रशिक्षण सक्षम करने के लिए।
  • TF ऑप्स और कार्यों संरचना के साथ प्रशिक्षण जब निचले स्तर TensorFlow API का उपयोग करके सक्षम करने के लिए
  • निर्माण रेखांकन और प्रशिक्षण के लिए निर्माण ग्राफ आदानों की उपकरण

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

import tensorflow as tf
import neural_structured_learning as nsl

# Prepare data.
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

# Create a base model -- sequential, functional, or subclass.
model = tf.keras.Sequential([
    tf.keras.Input((28, 28), name='feature'),
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(128, activation=tf.nn.relu),
    tf.keras.layers.Dense(10, activation=tf.nn.softmax)
])

# Wrap the model with adversarial regularization.
adv_config = nsl.configs.make_adv_reg_config(multiplier=0.2, adv_step_size=0.05)
adv_model = nsl.keras.AdversarialRegularization(model, adv_config=adv_config)

# Compile, train, and evaluate.
adv_model.compile(optimizer='adam',
                  loss='sparse_categorical_crossentropy',
                  metrics=['accuracy'])
adv_model.fit({'feature': x_train, 'label': y_train}, batch_size=32, epochs=5)
adv_model.evaluate({'feature': x_test, 'label': y_test})