我正在开展一个项目,要求我解析新闻文章并确定其中最好的文章。我想出要确定文章的质量,我需要三个主要参数:文章的长度,facebook分享/转推以及文章发布以来的时间。
我现在面临的问题是如何将所有三个参数放在一个数学函数中,并为每篇文章得出一个分数?分配给每个人的分数将帮助我对文章进行排名并将其显示给用户。
另请告知我在确定质量时是否需要考虑其他参数。
答案 0 :(得分:3)
我不确定你项目的确切性质是什么,但这个任务很难准确地完成。你如何考虑这样一个事实,即分享/喜欢最多的文章往往是最极端化的文章。喜欢/分享的数量也明显受到新闻网站受欢迎程度的影响。我认为任何类型的自动文本分析都不够准确,很容易被滥用。您最好的选择是寻找指示性代理,例如:
由于包含文章成绩的数据集很难获得,因此您可能无法进行任何类型的统计分析。相反,你只需要制定一个公式,并用最好的判断权衡参数。为了支持这一点,可以手工评分一些文章,看看有什么不同的公式给你。
答案 1 :(得分:0)
你想要的东西很容易实现。您必须拥有您感兴趣的各种数据:增加和减少数据。只要数据增加,增加的数据就被视为“好”。减少数据被认为是“越接近”为零越好。
事实证明,所有四个数据集都是简单的整数:
增加数据
s \in N_0
(从0到无穷大的每个整数)r \in N_0
减少数据
对于减少数据,您希望将绝对值用作指标:
t_0
成为文章的时间戳(unix左右)。T
成为当前时间戳。l_0
表示被视为“最佳”的文章的长度。L
表示文章的实际长度。然后:
|t_0 - T|
越接近零|l_0 - L|
越接近零越好因为绝对值是正整数,所以它是:
|l_0 - L| + |t_0 - T|
接近零,因为|t_0 - T|
和 |l_0 - L|
更接近于零。
越来越多的数字也是如此。
因此,文章越有可能是“正确的”长度和新的,这个数字越接近于零。
<强>结论强>
越来越多的商数越来越多。想一想:分母越小,商数越大。分子越大,商越大。这意味着:如果被认为是“更好”的商数
(s+r) / (|l_0 - L| + |t_0 - T|)
上升。
这不一定是整数。
<强>增强强>
您可以通过使用ln
来缓和股票和转发的增长,因此得分变得更加“自然”。
ln(s+r) / (|l_0 - L| + |t_0 - T|)
您可以使用exp
来软化分母:
ln(s+r) / exp(-(|l_0 - L| + |t_0 - T|))