一些函数
策略、算法工作中,读论文或设计算法,经常会遇到一些性质很棒的函数,满足特定的需求,持续汇总积累。
softmax
Softmax可以将一组实数序列(r1, r2, r3, …)映射到概率分布(p1, p2, p3, …)上。Softmax里max指会放大最大值的概率,soft指保留部分概率给小的值。
The softmax function maps arbitrary values $x$ to a probability distribution $𝑝_i$. “max” because amplifies probability of largest $x_i$. “soft” because still assigns some probability to smaller $x_i$
sigmoid
可将任意实数映射到(0, 1)区间,其值有时候可解释为概率。当然,也可以添加参数,调整曲线的形状
其导数形式比较好,还可以用sigmoid函数本身表示:
其与tanh函数也有关联,可简单根据值域推断出来:
低频加强
比如每个word在词库里有个频率分布,想大致按次频率分布采样,同时适当加强低频词,削弱高频词,如何做?word2vec论文里有类似办法,就是unigram distribution U(w) raised to the 3/4rd power解决。
对(0, 1)之间的数,取(0, 1)指数次幂,会使其值适当放大,越小的值,放大效应越明显。可以在google里输入以下语句查看函数性质
plot y = x ** 0.75 and y = x
衰减函数
之间一篇博客介绍衰减了函数,参考见越近越好Elasticsearch: 权威指南。