分享程序员开发的那些事...
首页
NTFS
漏洞
Android
Magento
服务器
Python
powershell
技术问答
Linux
网站首页
且构网 - 分享程序员编程开发的那些事
您所在的位置:
首页
>
理解高斯函数,以及在推荐算法中的应用
理解高斯函数,以及在推荐算法中的应用
更新时间:2022-07-18 10:31:58
这是一个很有用的 公式比如:用户消费分值权重 , 产品关联分值权重 等等
公式
在 http://www.wolframalpha.com 中表示 :
e = (1+1/n) ^n
a*e^(-(x-b)^2/c^2)
a 峰值最大值
b 峰值x轴偏移量
c 弧度跨度
= 1*e^(-(x-1)^2/1^2)
修改 峰值 a = 2
这里 就 不一一展现 b 峰值x轴偏移量 , c 弧度跨度 了 大家可以 去 wolframalpha 自己去尝试
实例1 与时间有关的递减 :
import
math
def
gaussian(x,peak
=
1.0
,axis
=
1.0
,span
=
1.0
):
return
peak
*
math.e
**
(
-
(x
-
axis)
**
2
/
(span)
**
2
)
跨度 c 参考:
c
=
1
: 在2.
5
附件急剧衰减
c
=
2
:
4
c
=
18
:
30
#
这个数 衰减统计 一个月 不错
c
=
55
:
90
#
衰减统计 一个季度 不错
#
简单应用
消费1次得峰值4分 浏览1次峰值2分
统计某用户季度得分
数据:在前10天浏览10次,消费1次 ,前11天浏览5次
d10
=
gaussian(
10
,span
=
55.0
)
d11
=
gaussian(
11
,span
=
55.0
)
print
d10
*
10
*
2
+
d10
*
4
*
1
+
d11
*
5
*
2
#
结果 33.0407089687
倒的高斯 - 实例2 :
公式 =
目的 与次数有关的产品分值化
#
用户 对 某产品 分值化
#
比如 某用户 用过某产品 n次,我希望 n 无限大是一个 渐进某个值 而不是和 n 无限递增的
#
下面的 fun 结果是 1.6 ~ 10 分值直接的区域, 也就是 传说中的 产品感兴趣 “10分制” 简易版
def
gs(x,peak
=
9.0
,axis
=-
2.0
,span
=
11.0
):
return
"
%.4f
"
%
(
-
1
*
peak
*
math.e
**
(
-
(x
-
axis)
**
2
/
(span)
**
2
)
+
peak
+
1
)
>>>
gs(
1
)
'
1.6451
'
>>>
gs(
2
)
'
2.1148
'
>>>
gs(
3
)
'
2.6800
'
>>>
gs(
4
)
'
3.3161
'
>>>
gs(
5
)
'
3.9970
'
>>>
gs(
6
)
'
4.6969
'
>>>
gs(
60
)
'
10.0000
'
本文转自博客园刘凯毅的博客,原文链接:
理解高斯函数,以及在推荐算法中的应用
,如需转载请自行联系原博主。
上一篇 : :算法 复杂度分析图
下一篇 : Berkeley DB python btree
相关阅读
理解高斯函数,以及在推荐算法中的应用
推荐文章
金融
visual studio 使用
内核的执行头程序head.S
pygame 使用
在屏幕上显示字符的原理
Python 面向对象程序设计
python 基础
boot and loader
matlab 的数据类型
centos6安装bochs