Committed by
GitHub
Avoid NaN in feature normalization. (#2186)
正在显示
1 个修改的文件
包含
5 行增加
和
0 行删除
| @@ -49,6 +49,11 @@ static void ComputeMeanAndInvStd(const float *p, int32_t num_rows, | @@ -49,6 +49,11 @@ static void ComputeMeanAndInvStd(const float *p, int32_t num_rows, | ||
| 49 | (*mean)[i] = t; | 49 | (*mean)[i] = t; |
| 50 | 50 | ||
| 51 | float stddev = std::sqrt(sum_sq[i] / num_rows - t * t); | 51 | float stddev = std::sqrt(sum_sq[i] / num_rows - t * t); |
| 52 | + | ||
| 53 | + if (stddev != stddev) { | ||
| 54 | + stddev = 0; | ||
| 55 | + } | ||
| 56 | + | ||
| 52 | (*inv_stddev)[i] = 1.0f / (stddev + 1e-5f); | 57 | (*inv_stddev)[i] = 1.0f / (stddev + 1e-5f); |
| 53 | } | 58 | } |
| 54 | } | 59 | } |
-
请 注册 或 登录 后发表评论