首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计数场的逆,指数间隔表示?

计数场的逆,指数间隔表示?
EN

Stack Overflow用户
提问于 2014-02-16 14:11:25
回答 1查看 49关注 0票数 0
代码语言:javascript
复制
var minCount = 10; // Used as 0, anything below 10 uses will be ignored

User hasMany Attributes

Attribute (id, value, count, worth)
// Count - number of users who associate with this attribute
// Worth - float 0.1 (or a better non-zero number?) to 1

计数为minCount的属性值为1,计数最高的属性的值最低。使用较少的属性值更高->值越低,价值越高。

价值之差应该是指数级的:

  • 常用属性(高计数)--价值之间的差距更小
  • 不寻常的属性(低计数)-价值之间的差距更大

现在我将使用php,但是psuedo代码也是可以接受的--我只想知道如何做到这一点。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-16 14:49:41

那有什么问题吗?

使用以下简单公式:

代码语言:javascript
复制
currentWorth = exp(minCount / currentCount - 1)

其中:exp -e指数;currentCount -当前属性计数;minCount -最小属性计数。

简要说明:

首先考虑没有指数应用的公式:

代码语言:javascript
复制
currentWorth = minCount / currentCount

对于具有最小计数的属性(currentCount = minCount):

代码语言:javascript
复制
currentWorth = minCount / minCount = 1

对于具有任何其他计数(明显大于minCount)的属性:

代码语言:javascript
复制
(currentWorth = minCount / currentCount) < 1

现在让我们应用指数定律:

代码语言:javascript
复制
currentWorth = exp(minCount / currentCount - 1)

对于具有最小计数的属性(currentCount = minCount):

代码语言:javascript
复制
currentWorth = exp(minCount / minCount - 1) = exp(1 - 1) = exp(0) = 1

对于具有任何其他计数的属性(currentCount > minCount):

代码语言:javascript
复制
currentWorth = exp(minCount / currentCount - 1)

假设:

代码语言:javascript
复制
t = 1 - minCount / currentCount > 0

我们会有:

代码语言:javascript
复制
(currentWorth = exp(-t) = 1 / exp(t)) < 1
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21812296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档