惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 叶小钗
V
Visual Studio Blog
雷峰网
雷峰网
J
Java Code Geeks
博客园 - 三生石上(FineUI控件)
人人都是产品经理
人人都是产品经理
MyScale Blog
MyScale Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
B
Blog RSS Feed
C
Check Point Blog
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
V
V2EX
D
Docker
IT之家
IT之家
博客园 - 聂微东
腾讯CDC
U
Unit 42
Microsoft Security Blog
Microsoft Security Blog
The Cloudflare Blog

Shidenggui's blog

读《庞居士研究》有感 杂诗 2 杂诗 卢曼卡片盒的本质 致《斯通纳》 古典风格 跳舞吧 无解的问题,有解的人生 杠精是如何炼成的 存在即被承认 混沌宇宙中涌现的秩序 人生革命 少见的艺术家 爱欲之死 世界围绕着心灵旋转 轻信 日常之外的可能性 第二大脑 新品发布:元思笔记 - 打造自生长的知识网络 推书君 APP 上线了!书荒找书,点评分享,尽在其中 如何通过定价充分挖掘隐藏利润? 高不确定性意味着高风险?认知的局限性才是 聪明的学习胜过大量时间的投入 经济机器是如何运行的? 瑜伽不能减肥?我一个月瘦了12斤 从租售比看,北上深的房价为什么不贵? 记一次业务中的算法应用:动态规划、图、树 Jetbrains 福利,半年全家桶或者一年半单产品(PyCharm, WebStorm等)订阅,非激活码,发放到 account BlogHub 上线了,开源独立博客聚合站,一起来发现更多有趣的灵魂 现在还有必要拥有独立博客吗?谈谈我的独立博客史
编程与数学(一):Logistic Differential Equation
2018-07-24 · via Shidenggui's blog

最近在准备尝试复活我很久前写的网文推荐系统,把 2 年前推送到 daocloud 的 Docker 镜像重现部署到了现在新的服务器,并暂时放到了这个域名

这时候发现一个问题,里面的相似度计算是基于余弦算法,一般同作者的两本书 A、B 之间的相似度在 30% ~ 35% 左右,位于 35% 到 100% 间的极少,而 20% 左右已经不太像了。这时候就想找一个 mapping 算法,希望能满足以下特征:

  • 结果值随着原始相似度的提高剧烈上升,在 30% 时候能映射到 90% 的相似度

  • 结果值最大为 100%,因为最多就 100% 相似

  • 在 20% 相似度左右的时候结果值较低

理想中应该是个 S 型的曲线。根据第一个特征想到了基于指数增长的函数:

但是它不满足有极大值的限制,这时候就想到了常用于描述人口增长的 Logistic Differential Equation 完美满足了前期指数级上升,又存在一个极限 L 的情况。但是它也有一个不太完美的地方,就是当相似度为 0 时它的值不能为 0 , 所以只能假设相似度为 0 时方程值为 1。

接下来就是解方程获取精确的公式了:

求解后就是试着画图和输入 0 到 100 之间的数值感觉符不符合预期了,结果如下 ,图中灰线交点为(30, 90):

精确值如下:

0      1.00000
5      3.03817
10     8.85875
15    23.16620
20    48.32840
25    74.36770
30    90.00000
35    96.54200
40    98.85850
45    99.62910
50    99.88010
55    99.96130
60    99.98750
65    99.99600
70    99.99870
75    99.99960
80    99.99990
85   100.00000
90   100.00000
95   100.00000
100  100.00000

感觉还不错,参数可能还需要根据实际情况微调。如果有更好的 mapping 函数或者方法,欢迎大家留言。