Antworten:
Sie möchten ein Gradienten-Clipping durchführen, wenn Sie das Problem haben, dass Gradienten verschwinden oder Gradienten explodieren. Für beide Szenarien gibt es jedoch bessere Lösungen:
Ein explodierender Gradient tritt auf, wenn der Gradient zu groß wird und Sie einen numerischen Überlauf erhalten. Dies kann leicht behoben werden, indem die Netzwerkgewichte auf kleinere Werte initialisiert werden. Wenn dies nicht funktioniert, liegt wahrscheinlich ein Fehler im Code vor.
Ein verschwindender Gradient tritt auf, wenn die Optimierung in einem Sattelpunkt stecken bleibt. Der Gradient wird zu klein, als dass die Optimierung fortschreiten könnte. Dies kann durch Verwendung eines Gradientenabfalls mit Impuls oder RMS-Stütze oder beidem (auch als Adam-Optimierer bekannt) behoben werden.
Die Startwerte für die Obergrenze des Gradientenbeschneidens sind kleiner als die größte Zahl, die die Variable annehmen kann. Für die Untergrenze würde ich sagen, dass es problemspezifisch ist, aber vielleicht mit etwas wie 1e-10 beginnen.