Vanishing और exploding gradients

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

David Cecchini

Data Scientist

RNN मॉडलों का प्रशिक्षण

RNN मॉडल का अनरोल्ड रूप, जहाँ फॉरवर्ड प्रोपेगेशन एक शब्द से अगले तक जाता है, और बैक-प्रोपेगेशन समय के साथ वेट्स अपडेट करता है

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

फॉरवर्ड प्रोपेगेशन चरण और संबंधित गणितीय वैरिएबल्स का प्रदर्शन

उदाहरण: $$a_2 = f(W_a, a_1, x_2)$$

$$= f(W_a, f(W_a, a_0, x_1), x_2)$$

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

बैक-प्रोपेगेशन चरण और गणितीय परिभाषाएँ

ध्यान रखें कि:

$$ a_T = f(W_a, a_{T-1}, x_T) $$

$a_T$ $a_{T-1}$ पर निर्भर है, जो $a_{T-2}$ और $W_a$ पर निर्भर है, और इसी तरह आगे!

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

BPTT जारी

डेरिवेटिव निकालने से मिलता है

$$ \frac{\partial a_t}{\partial W_a} = (W_a)^{t-1}g(X) $$

  • $(W_a)^{t-1}$ 0 की ओर सिमट सकता है

  • या $+\infty$ की ओर बढ़ सकता है!

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

Gradient समस्याओं के समाधान

कुछ ज्ञात समाधान:

Exploding gradients

  • Gradient clipping / scaling

Vanishing gradients

  • मैट्रिक्स W को बेहतर initialize करें
  • Regularization का उपयोग करें
  • tanh / sigmoid / softmax की जगह ReLU लें
  • LSTM या GRU cells का उपयोग करें!
Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

अभ्यास करते हैं!

Keras के साथ भाषा मॉडलिंग के लिए Recurrent Neural Networks (RNNs)

Preparing Video For Download...