伙计,
有没有针对N个值实现简单softmax函数的示例?我看起来像“基于softmax的检测器”之类的东西,但是我只想看到一个纯净,直接的C ++ softmax实现。
您知道任何示例吗?
谢谢
答案 0 :(得分:1)
我还没有看到softmax的库实现,尽管不能证明它不存在。很简单,人们可以在需要时编写自己的东西。
为了记录,u1
,u2
,u3
上的softmax函数只是元组(exp(u1)/Z, exp(u2)/Z, exp(u3)/Z, ...)
,其中归一化常数Z
为只是指数的和Z = exp(u1) + exp(u2) + exp(u3) + ...
。
请注意,从每个u
中添加或减去一个常数会使结果保持不变,因为它等效于上下乘以相同的系数。因此,您可以减去u
中的最大值,从而使计算在数值上更加合理。那么最大的项exp(u)
将是1,其他所有项都小于该值。