统计分析方法——回归分析


发际线难看
好吧继续 2023-11-29 10:05:12 51577
分类专栏: 资讯
统计分析方法——回归分析

在前文的相关分析中,通过自相关可以揭示信号自身的周期性,通过互相关可以解释不同信号之间的相似程度或者时延。但仅计算相关性往往挖掘出的信息不够充分,因此在本文中尝试使用回归分析来挖掘数据中的更多内容。

回归分析跟相关分析一样,并不局限于数据是两个时间序列,在更广泛的应用之中,回归分析用来表示两个不同变量之间的关系,逐渐从线性回归,逻辑回归,发展到现在的各种基于深度学习模型的回归。在本文中,我们还是基于时间序列数据来进行介绍回归分析的一些基本方法。

具体到针对时间序列或者说序列这一概念的回归分析,我们会在下一篇文章自回归中给出。如果说回归分析是指两个变量之间关联的分析,那么自回归则是一个变量未来时刻和当前时刻之间关联的分析。这个概念和上文中的互相关和自相关比较类似。

变量之间的回归分析可以使用一个变量来预测另一个变量,比如看到天空万里无云预测现在并没有下雨。而自回归分析可以用变量自身来预测未来的情况,比如看到现在没有下雨,预测未来一小时不会下雨。二者在不同的场景之下都有合适的应用。回归这个话题比较大,应用也比较复杂,比如ChatGPT就是一种自回归的模型。当前文章暂时将限定在捋清楚一些概念,不会有太多复杂的内容,后续再看能深入多少。  

数据准备

本文采用某公众号近一个月(10月14日到11月13日共31天)的数据作为示例,尝试使用回归分析的方法从数据中挖 掘一些有效信息。目前已知在这一个月时间内,没有更新文章,数据纯粹来自于自然生长,本文将试图从基本的回归分析角度,来观察这段时间内阅读量,粉丝量和收入之间的关系。

图片

第一眼看到这个数据,感觉数据之间基本没有关联,收入,涨粉和阅读量之间关系都不太大。可以将这一组数据的互相关矩阵画出。

相关系数

总阅读数

阅读人数

净增粉丝数

广告收入

总阅读数

1

0.7979

0.263

-0.0566

阅读人数

0.7979

1

0.1229

0.0228

净增粉丝数

0.263

0.1229

1

0.0399

广告收入

-0.0566

0.0228

0.0399

1

从相关系数来看,总阅读数和阅读人数相关性比较强。净增粉丝数和阅读次数的相关性比阅读人数更高,从这一点可以推断,一个新用户转化成粉丝的时候,他更有可能阅读了多篇文章。

另外一个不太对的地方是广告收入和总阅读数竟然呈现负相关,同时系数值比较低,说明这两个数据基本没有任何相关性。但这不太合理,毕竟广告是通过阅读来曝光和点击的。同时联想到收益的更新要慢于阅读量,所以尝试了一下将数据延迟一天,画出来如下图所示:

图片

可以看出俩个数据相似了不少,说明,当天的收益,不仅取决于当天的阅读量,可能还计入了第二天阅读量信息。两个日期的标注可能就是有时间差的。我们计算一下延迟之后的数据相关系数,从-0.0566来到了0.4498,也说明两者之间存在较高的关联。

找到这一规律之后,我们可以试图使用阅读量数据来推断广告收入数据,即使用线性回归的方法来分析阅读量和广告收入之间的关联。由于在天级别两者之间的相关系数还不到0.5,为了提升分析的准确性,我们使用更多数据并聚类到了周级别来进行回归分析。

回归分析方法

对于回归分析,就是找一个函数f,使得y'=f(x)求出来的y'与y越接近越好。那怎么找寻函数f呢,通俗的做法就是要定义两个函数,一个是损失函数L,描述y'与y的接近程度,另一个是f的表达式,一般可以具有任意多的参数。然后使损失函数的导数为0,求解出f中的参数。在深度学习中,f和L都可以非常复杂,但大致的求解思路依然如此。

接下来我们将以上述数据为例,介绍回归分析的方法,主要试图解答两个问题,第一个是不新发文的情况下,广告收入过多久会归零。第二个是当阅读量为1000次时,能获取多少广告收益。当前只是想借此数据展示一些回归分析的方法,对问题没有具体展开分析,大家看个大致结论就好。

线性回归

在使用回归分析数据这部分,我们将从不同角度来分析这一段数据。鉴于我们关注的主要是广告收入,因此都将广告收入作为因变量y,自变量可以有不同的选择,比如说选择按天算的时间作为自变量x1,或者选择总体阅读量作为自变量x2。

这里我们首先使用以天为单位的时间来进行分析,尝试回答第一个问题,在不更新文章时,随着时间推移广告收入的下降趋势如何,大约多久会降到0。

线性回归的主要假设是变量之间存在线性关系。这里让x为断更天数,从1到30,y为广告收入,并且假设广告收入随着时间推移是线性变化的即如下公式:y=ax+b;

我们知道每一个x对应的真实y值,通过使得公式拟合出来的y值接近真实y值,可以求出 a = -0.0137, b = 0.6157。这个结果也比较直观,也就是说第一天的收益平均值大约为0.6,每隔一天收益会下降0.013,大约44天之后收入归零。

画出曲线如下:   

图片

从曲线图中可以看出,这个拟合结果并不太好,信号呈现一个波动下降的趋势,但是并不是线性下降的,拟合的程度不高。于是一个想法是使用指数模型是否可能得到不一样的结果。

非线性回归

对于此类数据,另一种比较常见的拟合方式是假设广告收入随时间呈现指数下降的形式。因此可以尝试使用指数函数来拟合结果:y=a+exp(b*x),

同样这里x表示停止更新的天数,y表示广告收入。可以通过拟合的方式,获取相应的a和b的值。从而生成相应的拟合结果。并画成图的形式如下:

图片

从图像可以看出收敛的也并没有很好,但由于指数下降具有长尾性质,预期收入归零的时间变成了53天左右。

当然,从图像拟合的结果来看,当前的数据本身就是波动比较大,因此更应该做的是通过一些平滑操作,这部分会在下一章自回归里面介绍。

变量间关联分析

接下来我们关注另一个问题,阅读量和广告收入之间的关系。

在前面的分析中,我们发现,当天的广告收入和下一天的阅读量之间有稍高的线性关系,因此可以将广告收入作为y,下一天的阅读量作为x,来进行回归分析。我们可以把散点图画出来,并且把拟合后的直线也画在图形上。如下图所示:

图片

从拟合的结果来看,当阅读量数据达到50时,才开始有广告收入,每200的阅读量大约对应1元的收入。

当然,这里跟前面一样,遭遇到数据噪声比较大的问题。数据在拟合的曲线附近波动比较严重。拟合结果的R方在0.2~0.3左右,R方表示的是拟合出来结果跟真实结果的差异,这里差异还是比较大。

从更长时间尺度来看,数据还是比较发散的,并且我们的拟合结果由于没有高阅读量的数据,导致结果偏高。意思是按照拟合结果,200的阅读量大约能有1元的广告收入,实际上300和500的阅读量,广告收益也可能在1元左右。因而有比较多的紫色点是落在拟合线下方的,如果我们用更多的数据来拟合,会得到一个斜率更低的曲线,更为准确。

图片

为了解决这一波动问题,我们使用更多数据,并对数据取平均操作。

在前面的回归分析中,使用的x是后一天的阅读量,y是当天广告收益。通过求和操作,我们把x变换成当周的日均阅读量,y变成当周的日均广告收入,这样一周以内的随机波动都能被平滑掉,得到下面的拟合结果:

 

图片图片

从结果图来看,使用周日均结果,阅读次数和广告收入呈现出更高的线性程度,因此曲线拟合的R方也比较高,达到了0.96。说明我们采用平均之后的数据使得线性预测更为准确了。从数据结论来看,跟前面的结论有一些区别,首先是在阅读量为20的时候,收入接近0,其次在阅读量为100的时候,收入是0.4,而阅读量为300的时候,广告收入才达到1.2。相比于前面少量数据预测结果,这里预测的结果斜率更低。但这么做有一个问题,也就是图中每一个点都需要一整周的数据,使用大量数据平滑才能得到较为准确的结果,如果数据较少的话,依然可能出现偏差。

小结

本文使用回归分析的方法,分析了广告收入随时间变化的趋势,和广告收入随时间的衰减情况。发现对于当前公众号来说,断更约两个月之后,可能广告收益开始归零。另外分析了广告收入与阅读量之间的关联,发现广告收入与后一天的阅读量有一定的正相关,但如果我们使用大量数据并用每周日均数据,得到的结果更好。

  1. 在回归分析之前,可以用散点图或者相关系数观察两个变量之间的关联,选择合适的回归方法,当二者相关系数较高或者看起来有明显趋势关系时,使用线性回归可以得到较好的结果。

  2. 观察到数据存在其他关联,可以尝试使用不同的函数进行回归,但可能不容易收敛

  3. 当数据波动比较大时,增加数据量和平滑操作,往往可以得到更稳定的回归结果,关于平滑操作,这里简单使用了每周的日均值,下一篇文章中还有其他用法。

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=29133
赞同 0
评论 0 条
好吧继续L0
粉丝 0 发表 17 + 关注 私信
上周热门
如何使用 StarRocks 管理和优化数据湖中的数据?  2672
【软件正版化】软件正版化工作要点  2637
统信UOS试玩黑神话:悟空  2532
信刻光盘安全隔离与信息交换系统  2216
镜舟科技与中启乘数科技达成战略合作,共筑数据服务新生态  1092
grub引导程序无法找到指定设备和分区  743
WPS City Talk · 校招西安站来了!  15
金山办公2024算法挑战赛 | 报名截止日期更新  15
看到某国的寻呼机炸了,就问你用某水果手机发抖不?  14
有在找工作的IT人吗?  13
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

加入交流群

请使用微信扫一扫!