摘要
近年来,随着互联网与通信技术的高速发展,学习资源共享与建设呈现出新的发展趋势,多样化的线上教育平台如雨后春笋般争相涌入大众视野。尤其是在今年年初,受新冠肺炎疫情的冲击下,学生返校进行线下授课收到严重阻碍,由此,网络线上平台由此成为“互联网+教育”成果的重要发展领地,如何根据教育平台把握用户信息,掌握用户课程偏好并提供精准的远程课程推荐服务成为了线上教育的热点话题。因此,利用数据分析技术对教育平台的线上信息和用户学习信息进行研究具有重大意义。
针对任务一,对所给数据集进行缺失值、异常值、重复值等 方面的处理。首先利用 python 对数据进行初步的描述性统计分析,使用 pandas 中的 info 函数进行缺失值计数,对不同的数据缺失情况采用不同的处理方式。其次,在填补缺失值的基础上对 数据集进行异常值处理,对于重要性较高的数据,结合上下数据 或者其余数据进行填补处理。进一步地,对于重要性相对较低, 或者对实际分析过程产生的影响较小的数据进行删除处理。最后, 使用 pandas 中的 drop_duplicates 函数,对于每一行中完全相同的数据进行删除处理,删除重复项。
针对任务二,首先,对该教育平台用户进行海外和国内使用情况分布分析,重点对中国内所有省市地区进行数量统计,并利用 python 对全国各个省份的用户数量分布绘制热力图,进一步对重点省份用户分布情况进行分析。其次,根据日期信息和国务院各年份法定节假日文件,对工作日和非工作日进行区分处理, 统计 24 小时各个时段的用户活跃度并进行具体整体分析,绘制相应的柱形图实现对该教育平台用户进行活跃度分析。最后,通过查询相关文献给出用户流失概念,计算用户流失率并对未流失客户流失风险等级进行分类。最终结合上述用户分布、用户活跃度以及用户流失率分析,为该教育平台提供线上管理决策建议。
针对任务三,首先根据用户参与学习的记录,对每门课程的参与人数进行统计并计算出每门课程的受欢迎程度。其次根据相关数据,选出用户 ID 和课程列,进行用户-课程关系表的排布, 并基于物品的协同过滤算法计算课程间相似情况,并对总学习进度最高的五名用户推荐相似的课程。最后对课程收费差异与用户学习进度进行相关性分析,并在此基础上给出线上课程的综合推荐策略。
目录
1、问题分析
2、任务一
2.1缺失值处理
2.1.1缺失情况说明
2.1.2缺失数据处理过程描述
2.2异常值处理
2.2.1异常情况说明
2.2.2异常数据处理过程描述
2.3重复值处理
2.3.1重复情况说明
2.3.2重复数据处理过程描述
3、任务二
3.1用户分布分析
3.1.1海内外用户分布分析
3.1.2省份用户平台登陆次数分析
3.1.3省份用户分布情况分析——基于热力图
3.1.4重点省份用户平台登陆次数分析
3.1.5重点省份用户分布情况分析——基于玫瑰饼图
3.2用户活跃度分析
3.2.1日期数据预处理
3.2.2用户活跃度整体情况分析
3.2.3工作日用户活跃时间段分析
3.2.4非工作日日用户活跃时间段分析
3.3用户流失率分析
3.3.1流失情况说明
3.3.2用户总体情况分析
3.3.3流失天数及流失率分析
3.3.4未流失客户流失风险等级分类分析
3.4线上管理决策建议
3.4.1宣传方面
3.4.2活跃度方面
3.4.3流失方面
4、任务三
4.1用户参与课程情况分析
4.1.1用户课程选择分析
4.1.2课程受欢迎程度分析
4.2用户选择课程情况
4.2.1用户-课程关系表
4.2.2协同过滤算法概述
4.2.3课程间相似度情况——基于协同过滤法
4.2.4重点用户课程推荐结果
4.3课程收费差异与用户学习进度相关性分析
4.3.1课程价格与学习进度关系
4.3.2相关性分析结果
4.4线上课程综合推荐策略制定
4.4.1课程角度
4.4.2用户角度
5、参考文献
1.分析平台用户的活跃情况,计算用户的流失率。
2.分析线上课程的受欢迎程度,构建课程智能推荐模型,为教育平台的线上推荐服务提供策略
在本次数据分析过程中,缺失数据将被进一步划分成为三个部分,一类数据是数据为 0 的情况,一类是数据为空值的情况,一类是数据为特殊符号,例如“–”的数据。
针对不同的数据缺失情况,本次分析将会采用不同的处理方式:
1、针对数值为 0 的情况,需要进行实际的分析,回归到原始数据中去,判断该数据为 0 时是否具有实际意义。如果没有就将其作为缺失值做删除处理。
2、针对数据为空值的情况,如果该特征数据缺失情况低于 10%,则结合该特征的重要性进行综合判断。如果字段重要性较低,则考虑直接删除,如果字段重要性较高,则进行插值法或者采用数据均值进行填补。
3、针对数据为特殊符号的情况,需要结合原始数据判断该数据为缺失值还是异常值。如果是缺失值则如 1 操作进行处理。如果为异常值,则进行异常值处理,具体异常值处理过程将在下文中进行阐述。
考虑到数据的体量较大,因此使用 python 中的 pandas 对数据进行初步的描述性统计分析。使用 pandas 中的 info 函数进行缺失值计数。对具体的缺失数据删除使用 dropna 函数。
如图所示,login 数据表不存在数据缺失值问题。Study_information 数据表中user_id 字段和 school 字段存在一定的缺失情况。考虑到该字段数据缺失情况不明显,因此对 user_id 进行删除处理。而 school 字段数据缺失明显,且为非重要字段,因此对该字段采取保留措施,不进行任何的相关操作。Users 数据表中 price 字段存在一定的数据缺失情况。其中对于数据为 0 的字段本次分析判定为免费课程,数值有效。而针对空值部分的数据则考虑采取以下措施:对于其余用户出现过程的课程,则采用均值代替,对于之前从未出现过程的课程而言,则做删除处理。最终删除后数据如表所示。
在本次数据分析过程中,针对已经进行完数据缺失值处理之后的数据进行异常值处理。异常值数据只是在数据表中存在特殊符号的数据。
对于已经被判定成为异常值的数据,将根据数据的重要程度进行以下操作:
1、针对重要性较高的数据,结合上下数据或者其余数据进行填补处理。
2、针对重要性相对较低,或者对实际分析过程产生的影响较小的数据进行删除处理。
在实际数据处理过程中,发现 users 数据中 recently_logged 字段存在异常符号“–”(共计 5376 条),具体分析来看。该数据可能为缺失值,可能为用户注册后为登录的正常数据。结合后续分析与其余表格的可关联性,对“–”进行分类处理。对于在 study_information 中出现的选课信息的用户,采用其选课的最后时间来替换“–”。与此同时,考虑到后续分析中流失值的计算,以及实际过程中确实存在注册后不再进行登录的可能性存在,因此剩余的“–”异常值将采用注册时间替换,也可以理解为将用户注册的时间视为用户最后一次使用该软件的时间。
在完成缺失数据和异常数据处理之后,对数据进行重复值的删除处理。此处的重复值是指在数据表中用于分析的各个字段均一致。
使用 pandas 中的 drop_duplicates 函数,对于每一行中完全相同的数据进行删除处理。其中对于 study_information 中的 school 做忽略处理。
由数据可以得出,该线上教育平台海外分布相对较少,大部分业务集中在中国地区。其中,在海外部分地区,英国占比相对较高,占比海外用户量的 66%。具体分布情况如下图表所示。
海内外用户分布条形图
进一步的,对中国内所有省市地区进行数量统计,具体结果如全国省份用户分布图表所示。
由地理分布来看,该平台主要的服务人群是在华中和华南地区为主,代表的城市为广东,浙江,上海等省市,而相对比较偏远的西部地区分布较少,例如内蒙古、西藏、云南等地。当前重点地区的分布与我国目前互联网发展的情况大体一致,这与线上平台依托于互联网发展密切相关。
表 5 全国省份用户登录人数分布占比统计表
全国省份用户分布条形图
根据全国各个省份的用户分布绘制热力图,有图可以清晰的感知到,该线上平台地区分布较为广泛,覆盖了我国所有的省市。
全国省份用户分布热力图
其中,分布最为广泛的省市为广东、湖北、贵州、河南三地。其用户登录量分别为 120887,33149,18786,18550。四个地点累计的用户登录数量超过全国数量半数以上,累计占比 50.44%。
对于排名前 4 的重点省份地区,本研究将进一步挖掘出省份内各个地区的分布情况。通过对于各个地区的研究,为后续找出线上平台的用户画像提供参考。
由各个重点省市地区的分布情况来看,可以看出各个省市中都存在一个或两个重点地区,如武汉、贵阳、广州、周口和郑州等地。该地区的存在使得省份的占比数据大幅提升。因此,后续在进一步的细分研究中,可以对以上地区进行重点调查。例如进行问卷分析,面对面访谈等方式。
图 8 湖北省各地区用户分布占比图
图 9 贵州各地区用户分布占比图
在任务 2.2 中,工作日与非工作日需根据日期进行预先的区分,本文中将星期一到星期五定义为工作日,星期六和星期天定义为非工作日。进一步地,全面考虑到国家法定节假日的调休日期,在日期处理过程中本文利用国务院发布的2018-2020 年法定节假日通知对工作日和非工作日日进行调整,以确保工作日日期的准确性。综上所述,任务 2.2 主要步骤如下所示。
步骤 1.利用 login 数据集,将 login_time 进行日期和具体时间的分列处理, 以此区别日期和各天的时间段,如“2020/3/20 0:00:00”分为“2020/3/20”,“0:00:00”。分别将其命名为“login_data”和“login_time”;
步骤 2.根据分割得到的日期和时间点,对应相应年份的日期设置相对应的星期,如“2020/3/20”对应“星期五”;
步骤 3.基于步骤 2,将星期一到星期五统一编码为工作日,星期六和星期天编码为休息日,该列命名为login_workingday1;
步骤 4.针对国家法定节假日,本文从国务院官网确定法定节假日日期和相应工作日日期,进行统一识别,更正该时间段的工作日和休息日编码,调整后该列命名为 login_workingday2,具体节假日信息如表所示。
表 6 2018 年 9 月-2019 年 6 月节假日分布表
步骤 5.在工作日与非工作日编码结束后,本文将一天的时间按照每小时进行时间分段,共分为 24 个时间段,并对其进行编码。具体时间段分布表如表所示。
表 7 时间段编码表
步骤 6.统计工作日与非工作日各个时间段用户登录总频次,分别命名为workday_fre 和 holidayday_time,进一步计算各个时间段每分钟用户登录的次数workday_fre_min 和 holidayday_fre_min。
基于上述六个步骤,最终得出用户活跃度统计表与用户登录频次统计图,具体变量描述如下表所示。
本任务中的工作日主要为星期一到星期五,以及国务院公布公布的调休工作日。非工作日主要包括星期六和星期日,以及国务院发布的法定节假日。经过数据预处理,本文已经对工作日和非工作日进行了科学地区分,进一步地,将时间段根据 24 小时分为 24 个时间段,为了更科学地描述登陆频次,在本任务中不仅展示了各个时间段的登录总频次,也统计了各时间段单位时间的登陆频次。工作日和非工作日的分布图具体如图所示(绿色柱形表示工作日计数,折线表示非工作日计数)。
整体来看,工作日和非工作日的登陆频次基本一致,均在上午 9:00-11:00, 下午 14:00-17:00,晚上 20:00-21:00 出现三个高峰,波动趋势基本一致。对比来看,各个时间段的登陆频次远高于非工作日的登陆频次,夜间的登陆频次基本一致。具体频次分布表分析在下面部分展开。
图 12 工作日和非工作日各时间段总频次分布图
图 13 工作日和非工作日各时间段单位时间频次分布图
根据分析图表来看,工作日各时间段的总登陆频次在[217,23066]区间内上下浮动,同时,各时间段单位时间登陆频次区间为[4,353]。整体来看,一天内呈现波浪式的波动分布,。从早上七点开始,用户登陆频次开始逐渐攀升,在 7: 00 到 9:00 期间呈现“陡坡式”攀升,上升幅度达到一天中地最大值。其中,用户登录高峰时间段在上午 8:00 到晚上 23:00,在 10:00-11:00 期间达到最高峰值,登录总频次达到23066 次,相应地在该时间段内每分钟登陆频次达到384 次。另一个小高峰主要出现在下午 15:00-16:00,登录总频次达到 21191 次,每分钟登陆频次为 353 次。总体来看,正常上班时间(8:00-17:00)的登录总频次均高于 14000 次,每分钟登陆频次高于 240 次。夜间 1:00-早上 7:00 为登陆的低谷期,各时间段总频次在 300 次上下浮动,单位时间登陆次数不高于 30 次。
一天中有登录频次有三次明显下降的时间,一是,在中午午休时间段(11: 00-13:00)有所用户登录频次有所下降;第二次主要在下午 17:00 之后,该时间段为工作人员的下班时间;第三次出现在晚上 21:00 之后,该时间段大部分人结束一天的工作,进入休息时间。上述结果表明各个时间段登录频次的分布符合正常工作日的时间分布。具体分布频次表如表所示,各时间段总频次分布和单位时间频次分布统计图分别如图所示。
表 9 工作日各时间段登陆总频次分布表
图 14 工作日各时间段登陆总频次分布图
图 15 工作日各时间段单位时间登陆频次分布图
根据分析图表来看,非工作日各时间段的总登陆频次在[95,8110]区间内上下浮动,同时,各时间段单位时间登陆频次区间为[2,127],显然非工作日的整体登陆频次远远低于工作日的登陆频次。和工作日相同,从早上七点开始,用户登陆频次开始逐渐攀升,在 7:00 到 9:00 期间逐步攀升,上升幅度亦为一天中的最大幅度,在 10:00-11:00 期间达到第一个峰值,登录总频次达到 7520 次, 相应地在该时间段内每分钟登陆频次达到 125 次。另一个小高峰主要出现在下午15:00-16:00,登录总频次达到 7641 次,每分钟登陆频次为 127 次。不同于工作日的是,在非工作日登陆频次最高峰出现在 20:00-21:00,登录总频次最高达到 8110 次,单位时间登陆频次达到 135 次。一天中有登录频次有明显大幅度下降的时间段主要集中在晚上 21:00-次日 1:00。总体来看,非工作日中,登录总频次明显低于工作日,且登陆的最高峰峰值出现时间点不尽相同。具体分布频次表如表所示,各时间段总频次分布和单位时间频次分布统计图分别如图所示。
随着互联网与通信技术不断完善,社会化媒体得到了迅猛的发展。尤其是在今年“疫情”的大背景下,各类教育平台如雨后春笋般纷纷涌现,层出不穷。但迅猛发展的背后,许多教育平台也逐渐进入发展瓶颈期,短时间内用户流失严重。而用户流失是社会化媒体领域的一个重要现象,尤其是大规模用户流失。因此本文通过计算教育平台用户的流失率,从用户流失角度分析平台用户活跃度。
针对一个发展较为成熟的教育平台而言,实际上成功发展一位新用户的成本大概率上是维护老用户使用该平台成本的数倍,因此一个平台的用户流失率对于该平台的收益起着决定性的作用,意味着低用户流失率高利润营收。因此在分析用户流失率的过程中,如何理清“流失用户”和“流失率”显得尤为重要。
为了精准的计算教育平台的流失率,并且相对准确的识别出可能流失的用户。本文结合教育平台用户的行为特征,将该平台用户细分为活跃用户、潜水用户和 流失用户。其中,活跃用户是指相对于“流失用户”而言的一类用户群体,实际上 是指那些现阶段依旧会登上教育平台进行学习,或者时不时的登上平台浏览页面, 并会为平台带来一定收益价值的用户;潜水用户则是指某一类用户群体对该平台 暂时性或者永久性的沉默使用,将该群体视为潜在用户,其徘徊在流失边缘;流 失用户是针对那些曾经访问使用过平台或是注册过的用户,但由于某些原因对该 教育平台失去了兴趣,不被平台上的课程所吸引,逐渐远离平台最终放弃从该平 台上获得知识,成为流失用户。这三类用户行为并不是严格意义上的划分,二是 处于临界及相互转换的状态。
因此本文利用所收集到的数据,计算每位用户最近访问平台的时间与该样本数据采集截止时间(2020 年 6 月 18 日)的差值,即 σ i = T e n d − T i \sigma_i =T_{end}-T_i σi=Tend−Ti,其中 T e n d T_{end} Tend 为数据观察窗口截止时间(2020 年 6 月 18 日), T i T_i Ti为用户i 最近的访问时间,并以此为依据对这三类用户进行划分。若 σ i \sigma_i σi大于 90 天,则将该用户视为流失用户;若 σ i \sigma_i σi小于 90 天且大于 60 天,则将该用户视为潜水用户;若 σ i \sigma_i σi小于 60 天,则将该用户视为活跃用户。进一步的,可以计算得到该平台的流失率为:
本文利用SPSS 软件对该平台上所有用户最近访问平台时间与数据观察窗口截止时间的差值进行描述性统计分析,其结果如下表所示:
表 11 时间差值描述性统计分析表格
由上表可以发现,该教育平台的用户中有最长时间达 646 天没有登上教育平台,约有 0.3%的平台用户有 600 天没有登上该平台,约有 41.9%的平台用户在90 天内登上平台进行学习。从上表可以看出该平台用户登上平台时间差值的平均值为 191 天,其中距离数据观察窗口截止时间 7 天前(2020 年 6 月 11 日)登上网站的人数越多,高达 2562 人,约有 5.6%的用户在 2020 年 6 月 11 日登上该平台,有 10.6 的用户在 6 月 11 号之后登上平台进行学习。
由上图可知大多数用户的时间差值大多聚集在 0-144 天之间,该期间人数占所有用户的 56.5%。
本文将 σ i \sigma_i σi大于 90 天的用户视为流失用户,本节对教育平台上流失用户的流失天数以及流失率进行分析。
从上图可以发现流失用户的流失天数存在三个峰值,分别在 115 天、242 天和 452 天达到极高值点,分别有 300 名用户、229 名用户和 261 名用户流失,且646 天前就有一位用户流失,平均该平台每天约有 40 名用户流失,对该网站是去兴趣放弃在该平台上进行学习。
通过流失率计算公式,我们可以计算得到两年的客户流失率为 58.09%,有25505 位用户流失,表明自 2018 年 11 月 4 日起,该平台的用户开始流失,截止2020 年 6 月 18 日,有超两万名用户从平台上流失,超过一半平台用户数量。尽管每年平台用户数量在逐渐递增,但是平台用户流失量也在不断增加,且吸引新用户的成本远高于维护老用户的成本。这暗示了,该教育平台应尽快寻找影响用户流失的因素,深入研究分析用户对该教育平台的满意度以及感知有用性。该教育平台制定防止老用户流失的策略亟待解决。
本文将 σ i \sigma_i σi小于 90 天且大于 60 天,则将该用户视为潜水用户;若 σ i \sigma_i σi小于 60 天,则将该用户视为活跃用户,并将活跃用户进一步划分为高活跃用户和低活跃用户,即 σ i \sigma_i σi小于 60 天且大于 30 天,则将该用户视为低活跃用户; σ i \sigma_i σi小于 30 天,则将该用户视为高活跃用户。其结果如下图所示:
表 12 未流失用户分类表
其中,潜水用户有 4936 人,占未流失用户的 26.82%;低活跃用户有 6917 人,占未流失用户的 37.58%;高活跃用户有 6551 人,占未流失用户的 35.39%。潜水用户处于低活跃和流失边缘,该类用户有着高流失风险,教育平台应多关注该类用户,采取一定的措施唤醒沉默用户,将其转变为活跃用户。而低活跃用户在未流失用户中占比最高,表明随着时间的推移,该用户对该平台的兴趣逐渐降低,由之前的频繁登录平台转变为登录次数逐渐减少,平台运营者着重关注这类用户,加强社群运营使其提高对网站的兴趣。高活跃用户在未流失用户中的人数排名第二,表明该类用户对网站的热情度较高,是平台创造价值收益的主要来群体,属于重要价值客户群体。
有地区用户的分布情况来看,该线上平台的用户分布总体来说较为集中,且存在明显地区差异。因此针对不同地区的用户,我们需要采用不同的方式来进行处理。首先,对于用户数相对较为庞大的地区而言,该线上平台可以在此处加大宣传力度,进一步打开市场,增加顾客黏性。更为重要的是,对于这些重点地区增加调查,摸清该地区用户的特点和与其他地区的核心差异所在,为以后指定营销方案提供基础。其次,对于目前仍未重点开放的省市而言,不可盲目夸大范围, 投入资本。需要在保证重点地区人员稳定的情况下,再进行逐一攻破。
与此同时,在调查中不难发现,线上教育平台用户的数量与相应地区的经济发展水平和互联网发展水平存在高度的相关关系,因此这些客观的因素也应该被纳入到相应的考虑范围中去
根据分析可以知道,工作日和非工作日的登陆频次基本一致,均在上午 9: 00-11:00,下午 14:00-17:00,晚上 20:00-21:00 出现三个高峰,波动趋势基本一致。并且工作日登陆最高峰值在上午 10:00-11:00 出现最高峰值,非工作日在夜间出现峰值,所以根据出现峰度的区间,在线教育平台可以在该时间段加强系统维护,保证课程流畅度,并在该时间段多植入相关课程广告以及相关课程销售活动,以此留住更多客户,提高课程的吸引力和销售额。
教育平台可以充分利用大数据分析软件为自身提供服务,进一步降低教育平台用户的流失率。通过相关分析软件对平台用户进行实时动态分析,把未流失的用户分为忠实用户、一般用户、潜水用户。首先,对于经常到教育平台上课的长期忠实客户,可以赋予他们在该教育平台上的 VIP 资格,给予忠实客户长期的优惠得到他们对该平台的信任,用以确保他们对该教育平台的忠诚度。其次,针对一般用户,由于该部分用户尚未与教育平台建立长期的信赖,倘若教育平台不进行良好的策略性营销,很容易使其转化为潜水用户并最终成为流失用户。因此, 教育平台可以根据这部分用户的行为特征,自身的偏好和需求,在平台上投放相关优质产品的信息,激发用户的活跃度,进而引导他们成为忠实永不。针对潜水用户,教育平台可认为该部分客户已经具备很高的流失风险,教育平台应着重加强对这部分用户的投放力度,例如降低价格等促销手段来挽留潜水用户,重新激活流失客户。
针对教育平台方面,其应增强自身实力,提高课程的品质,博得广大用户的喜爱,提高该平台的服务质量,极大的提升平台用户的满意度以及对该教育平台的依赖度。同时教育平台针对不同用户的兴趣爱好和偏好,根据平台用户经常浏览和购买课程记录来推断用户的购买意向,制定个性化推荐,进而向不同的用户推荐他们最有可能喜欢的课程,获得用户的满意。
根据用户参与学习的记录,对每门课程的参与人数进行统计,其统计结果如课程参与人数分布图所示:
由课程参与人数分布图来看,该教育平台上有 41.84%的课程参与人数低于100 人,有 33.89%的课程参与人数在 100-500 人,即该教育平台上约有 75.73%的课程参与人数低于 500 人,仅有 24.27%的课程参与认出超过 500 人。其中,不难发现课程 76 是唯一一个选的课程人数最多的课程且有 13265 名用户选择该课程,这表明精心设计,内容丰富的课程 76 能够激发用户的学习兴趣,吸引更多的平台用户。
进一步的,对该平台上所有的课程以及每门课程的参与人数进行统计,并按照受欢迎程度公式计算每门课的受欢迎程度,即: γ i = Q i − Q m i n Q m a x − Q m i n \gamma_i=\frac{Q_i-Q_{min}}{Q_{max}-Q_{min}} γi=Qmax−QminQi−Qmin
其中, γ i \gamma_i γi为第 i i i 门课程的受欢迎程度, Q i Q_i Qi 为参与第i 门课程学习的人数, Q m a x Q_{max} Qmax 和 Q m i n Q_{min} Qmin分别是该平台上所有课程中参与人数最多的课程所多应的人数和参与人数最少的课程所对应的人数。其具体计算结果如受欢迎程度排名前十门课程图表所示:
由上述图表来看,受欢迎程度排名前十门的课程分别是课程 76、课程 31、课程 17、课程 191、课程 180、课程 52、课程 34、课程 171、课程 50 和课程 12, 与其相对应的受欢迎指数分别是 1.0000、0.7177、0.6411、0.5372、0.4691、0.4602、0.4303、0.4098、0.4027、0.3639。其中受欢迎指数的最大值和最小值相差 0.6369, 参与课程 76 的用户人数超过一万名,而参与课程 12 的用户人数仅有 4826 名未达到课程 76 参与人数的一半,差距较为悬殊。这表明该教育平台上的优质课程呈现出较为明显的两极分化,相关人员在安排课程时应强调均衡发展,在保持特色优质课的同时,提高课程参与人数少的课程质量。
根据 study_information 数据,选出用户 ID 和课程列,进行用户-课程关系表的排布。若用户选择了相关课程,则对应显示为 1;反之,若用户没有选择该课程,则对应显示为 0,具体的用户课程关系表呈现在 stu.xsxl 文件中。
基于物品的协同过滤算法就是给用户推荐那些和他们之前喜欢的物品相似的物品。在计算邻居时采用物品本身,是基于用户对物品的偏好找到相似的物品, 然后根据用户的历史偏好,推荐相似的物品给用户。从计算的角度看,就是将所有用户对某个物品的偏好作为一个向量来计算物品之间的相似度,得到物品的相似物品后,根据用户历史的偏好预测当前用户还没有表示偏好的物品,计算得到一个排序的物品列表作为推荐。如下图所示,对于物品 A,根据所有用户的历史偏好,喜欢物品 A 的用户都喜欢物品 C,得出物品 A 和物品 C 比较相似,而用户 C 喜欢物品 A,那么可以推断出用户 C 可能也喜欢物品 C。
本文中基于物品的协同过滤算法主要步骤如下:
步骤 1:形成用户-课程关系表。过滤出课程 i 和 j,形成用户对应相关课程计数的表(见附件计数 matrix),即用户-课程关系表(见 stu.xsxl 文件)中。
步骤 2:计算课程 i 与课程 j 之间的相似系数,得到课程的相似系数矩阵。在本文中采用了同现相似度计算公式。
w i , j = ∣ N ( i ) ∩ N ( j ) ∣ ∣ N ( i ) ∣ w_{i,j}=\frac{|N(i)\cap N(j)|}{|N(i)|} wi,j=∣N(i)∣∣N(i)∩N(j)∣
分母|N(i)|是喜欢物品 i 的用户数,而分子|N(i)∩N(j)|是同时喜欢物品 i 和物品 j 的用户数据,但在后来的实践中,为了防止 j 为热门产品,对其进行了修正。具体计算公式如下所示。
w i , j = ∣ N ( i ) ∩ N ( j ) ∣ ∣ N ( i ) ∣ ∣ N ( j ) ∣ w_{i,j}=\frac{|N(i)\cap N(j)|}{\sqrt{|N(i)||N(j)|}} wi,j=∣N(i)∣∣N(j)∣∣N(i)∩N(j)∣
步骤 3.计算用户对课程的兴趣度,即对相关用户推荐最感兴趣课程(具体系数表见附件相似度 matrix)具体计算公式如下所示。
P u j = ∑ i ∈ N ( u ) ∩ S ( j , K ) w j i r u i P_{uj}=\sum_{i\in N(u)\cap S(j,K)}w_{ji}r_{ui} Puj=i∈N(u)∩S(j,K)∑wjirui
S(j,K)表示与 j 物品最相似的 k 个物品的集合。N(u)表示用户喜欢的物品集合。 w i j w_{ij} wij表示物品之间的相似度。 r u i r_{ui} rui是用户 u 对物品 i 的兴趣(对于隐反馈数据集,如果用户 u 对物品 i 有过行为,即可令 r u i = 1 r_{ui}=1 rui=1)。
步骤 4.进行 Top-N 分析,计算出 Puj 之后,对其排序,取前几名作为推荐物品推荐给用户。
根据相似度计算公式,各个课程间的相似系数在 0-1 之间上下浮动。大部分课程之间呈现出低相关的关系,相关系数低于 0.3;一部分的课程呈现出中度相关,相关系数居于 0.3 到 0.8 之间;小部分的课程之间呈现出高度相关的相关关系,相关系数在 0.8 以上,部分课程达到完全相似,相似系数为 1。说明各个课程之间存在着不同程度的相似性,大量的样本有助于推荐系统进行课程推荐。
图 26 部分相关系数分布图
图 27 相似度系数部分代码图
首先,根据用户的学习进度进行降序排序,得到以下五个学习进度最快的用户,选取其用户-课程关系表的数据和相似系数矩阵,通过推荐算法的公式进行课程喜爱度计算。再次,对每个用户课程喜爱度 进行排序,选出喜爱度排名前三的推荐课程,对用户进行推荐。具体推荐情况如下表所示。
为有效获取课程的收费情况与用户学习进度的之间关系,本研究将进一步的对所有课程进行数据统计。计算出各个课程所对应的用户平均学习时长。并绘制课程价格与平均学习进度关系图。通过课程价格与关系图,可以看出随着课程价格的上升,平均学习时长呈现出波动上市的趋势。
使用 spss 进行对所有课程以及其所对应的平均学习时长进行相关性分析(共计 241 条数据)。由计算结果可以得出,在 10%的置信度之下,相关系数显著, 因此可以初步判定这两者数据存在相关关系。且相关系数为 0.124。
从4.1 和4.2 的数据分析结果来看,用户在选择课程之间具有一定的相似性。不同课程间可能存在某一种“打包”关系,用户在课程选择的过程中可能会倾向于同时选择几门课程。因此,线上平台在推荐课程的时可以从以下两个方向入手, 提高课程的选择率:
1、对于几类经常被共同选择的课程进行打包售卖,或者两个课程一起选择打折等方式吸引用户购买。
2、将免费课程与收费课程进行一定的融合。与此同时,可以采用试听课或者限时打折等方式,提高收费课程的购买率。
结合以上分析可知,部分用户之间的行为存在一定的相似性。因此在使用协同过滤算法以及其他推荐算法的时候会适当的提升消费者购买行为。因此,在之后的营销过程中,需要进一步增加更高精度的推荐算法的介入。
结合用户对于收费与免费课程的学习进度可以知悉,用户对于有代价的课程往往表现出更高的关注度。因此,在营销的过程中可以适当的使用“限时抢购”等标语,利用用户的消费心理进行课程推荐。
[1]杨晓猛. 疫情下在线教育的发展趋势及影响[N]. 大连日报,2020-04-27(006). [2]张晓艳.新冠肺炎疫情下线上教育的机遇与挑战[J].中国报业,2020(08):96-97.
[3]申明睿.新型冠状病毒肺炎疫情背景下线上教育面临的机遇与挑战[J].中国现代教育装备,2020(06):15-16.
[4]武志军.在线教育的生命周期[J].中国品牌,2020(03):56-57.
[5]王沛君. 让线上教学呈现更多人文关怀[N]. 西江日报,2020-03-03(006). [6]姜劲晖.疫情之下,教育何为[J].小康,2020(07):95.
[7]左雨晴.停课不停学:线上教育群雄争霸[J].新产经,2020(03):89-91.
[8]张学虎.中小学在线教育平台 助力教育战“疫”引发的思考[J].中国现代教育装备,2020(04):1-3.
[9]王鹏超.中国在线少儿英语教育研究现状——以 VIPKID 为例[J].海外英语,2019(12):176-177.
[10]吕凤俐,莫国炜,黄珊,肖琦,朱汝葵.线上线下化学教育实习模式探索[J].化学教育(中英文),2019,40(08):55-60.
[11]丁一鑫,党子奇,李军靠.教育信息化环境中的学生线上沉默及其唤醒[J].中国成人教育,2018(24):79-84.
[12]陈红.线上线下双重教育融合发展研究[J].盐城师范学院学报(人文社会科学版),2018,38(06):116-119.
[13]陈鑫,南丽军.线上线下模式之争:高校教育何去何从[J].经济师,2018(08):182-183. [14]王岩.探析线上教育机构的营销策略——以“考虫”为例[J].新闻研究导
刊,2018,9(11):244.
[15]汪鹏. O2O 教育模式“未来教师”探究[D].上海师范大学,2017.
[16]帅梦晨. 粉笔公考在线教育平台的竞争环境及策略研究[D].广西民族大学,2017.
[17]张宗波,王珉,吴宝贵,刘广斗.“线上+线下融合式”工程图学课程建设与教学实践[J].图学学报,2016,37(05):718-725.
[18]房瑾堂. 基于网络爬虫的在线教育平台设计与实现[D].北京交通大学,2016.
[19]丁伟.教学改革动态初探——以微课、慕课、翻转课堂为中心[J].开封教育学院学报,2016,36(02):156-157.
[20]张娟.线上线下互动下的远程教育模式构建[J].继续教育研究,2015(11):38-40.
[21]卓进,蔡春.混合教育趋势下的未来教师——慕课时代的教师分流、转型与教师教育思考[J].高教探索,2015(04):105-110.