私はC++(かつ効率的)で良いシグモイド関数を計算するためにしようとしています。だから私のような何かしなければならない:問題はX
は大きな(または小さな)になったときに、ある
1/(1 + exp(-x))
C++非常に少ない数に1を加えますか?
を、1 + e
の結果は
1 + exp(-30) = 1
、例えば0または1
することになります しかし、これは間違っている...
はどのように簡単かつ効率的に非常に小さい(または大きい)番号を追加することができますか?私が使用しています
データ型:
double Quaternion::sigmoidReal(double v){
return 1.0/(1.0 + exp(-v)) ;
}
ありがとう:ここでは、二重
はコードスニペットです!
どのデータ型を使用していますか? – NathanOliver
ダブル、申し訳ありません... –
は、正確な答えをあなたのコードを表示します。 –