sigmoid
2016-04-11 21:14
459 查看
sigmoid 函数
sigmoid函数是一个良好的阈值函数特点:
连续,光滑
严格单调
关于(0,0.5)中心对称
对阈值函数有一个良好的近似
原函数:f(x) = 1/[1+e^(-x)]
其导数:f’(x)=f(x)*[1-f(x)]
选择使用Sigmoid的原因
以下内容转自知乎sigmoid这个函数实质上是以分类为目的出现的。
传统的回归直接给出具体值,而当某些情况我们想知道某件事发生的概率时,这个函数就有用了:其将数值限定在0~1之间,从而将原有数值转化为概率–这个从其函数形式可以看到。
然后,之所以“用”这个函数,实质上并不是拿来用,而是经过推导得到的。
见《机器学习导论》长久以前推导过,思路应该是如下(细节出错望见谅):
假设y = p(C1|x) 1-y = p(C2|x) 则可用y的对数比率 logit(y)来得到判定的概率,即logy/1-y > 0则选择C1, 这样 限定这是两个共享协方差矩阵的正态类,再使用贝叶斯规则 :
logit(P(C1|x)) = …. = w * x + w0
则 log p(C1|x) / 1-p(C2|x) = w * x + w0
得到p(C1|x) = sigmoid(w * x + w0) = 1 / (1 + exp[-(w*x + w0)])
就是这样推导得到的, 然后再看最终的结论, 是不是发现 其与基本的线性回归不同就在于使用一个S形函数,将原来的数值转换到0~1之间,这样更加容易看到数值的意义。
逻辑斯蒂 判别式!注意这点,其不是对类条件密度p(x|C1)建模,而是对其比率建模。假设对数似然比线性 即:
logp(x|C1) / p (x|C2) = w *x + w0
再使用贝叶斯规则,像之前那样来整理推导得到:
y = p(C1|x) = 1 / (1 + exp[-(w*x + w0)]) 作为对于p(C1|x)的估计
这样看,使用sigmoid函数是推导得到的,有了这货以后 广告点击率估计就再也不愁了,谁知道哪位大牛提出来的,反正吾等采用就好了…..
相关文章推荐
- 稀疏自编码
- android 使用OkHttp上传多张图片
- 使用java开源工具httpClient及jsoup抓取解析网页数据
- Python网络爬虫——模拟登陆爬取网站数据并加载到excl表格里
- acdream oj 1211 有上下界的网络流
- 计算机网络面试
- 使用HttpClient连接池进行https单双向验证
- 【C#】 知乎用户网络爬虫
- 4.传输控制协议(TCP):进程到进程的通信
- 流媒体传输协议(rtp/rtcp/rtsp/rtmp/mms/hls)
- Convolutional Neural Networks卷积神经网络 (该博主一系列都很好)
- 检测网络状态
- Java网络连接-URLConnection类的使用
- http理论之1
- 也谈http中get和post
- hdu 5443 The Water Problem(长春网络赛——暴力)
- PHP中 HTTP_HOST 和 SERVER_NAME 的区别
- Google网络请求框架Volley源码浅析(二)
- hdu 5441 Travel(长春网络赛——并查集)
- POJ 1149 PIGS 【网络流】