Производная функции активации tanh (x) равна 1-tanh ^ 2 (x). При выполнении градиентного спуска для этой функции эта производная становится частью градиентов для весов.
Например, со среднеквадратичной ошибкой: dL / dw = (tanh (x) - y) * (1 - tanh ^ 2 (x)) * dx / dw
Когда tanh ( x) равен 1 или -1, термин tanh ^ 2 (x) становится равным 1.
Это означает, что если предсказан правильный класс, то 1-tanh ^ 2 (x) равен 0, и таким образом, градиент потерь становится равным 0, и поэтому веса не обновляются.
Однако по той же причине это может означать, что, если прогнозируется совершенно неправильный класс, тогда градиент по-прежнему равен 0 , таким образом, не вызывая обновления. Предположительно, это противоположно тому, что вы хотите, чтобы произошло.
Это проблема? Если да, то как избежать / исправить эту проблему?