segmentfault的相关标签是如何算出来的?

比如,
标签:PHP,相关标签为:mysql,apache,html,linux
标签:node.js, 相关标签为:javascript,php,angularjs

本站的提问格式如下:
标题:如何使用PHP获得当前系统时间?
标签: php,linux

标题:linux下如何安装PHP,mysql,apache?
标签: php,linux,mysql,apache

如上,跟php相关的就有:linux,mysql,apache...

阅读 6.7k
2 个回答

這涉及到相關度的計算

如果短語 A 在某一文本中出現的概率跟短語 B 在某一文本中出現的概率無關,那麼這二者一起出現的概率就等於它們分別出現的概率的乘積。

二者相關度愈高,在其一出現的前提之下,另一個出現的概率就愈接近於一,二者一起出現的概率也就愈接近於它們單獨出現的概率當中的最小值。

反之,二者同時出現的概率和單獨出現的概率的乘積的比值愈高,在其一出現的前提之下,另一個出現的概率就愈接近於一,二者的相關度也就愈高。


數學基礎:

設事件 A 為短語 A 在文本 X 中出現
設事件 B 為短語 B 在文本 X 中出現

則有 P(A^B)=P(A)*P(B|A)=P(B)*P(A|B)
所以 P(A^B)/(P(A)*P(B))=P(B|A)/P(B)=P(A|B)/P(A)

1) 當 P(A^B)/(P(A)*P(B))=1
P(B|A)=P(B)P(A|B)=P(A)
P(B)P(A)無關
2) 當 P(A^B)/(P(A)*P(B))<1
P(B|A)<P(B)P(A|B)<P(A)
P(B)P(A)負相關
3) 當 P(A^B)/(P(A)*P(B))>1
P(B|A)>P(B)P(A|B)>P(A)
P(B)P(A)正相關

题主问的是 sf 的做法

答案是,根据大家平常打标签的习惯啊

比如算法这一标签下的相关标签第一个就是PHP。。。因为PHP有很多新手压根就不会编程,总会以为自己的问题和算法有很大的关系,但其实他们的问题是不会编程。。。所以经常见到最基本的问题被打上PHP和算法的标签

但其实这两个标签都没必要打,因为这些问题既和PHP无关也和算法无关,只和不会编程有关

可见sf的标签必然是算出来的

依据什么呢?相关度

科普楼上已经是说了,这里不再冗述

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题