校园信息精准推送系统设计与实践
2021-11-03黄红涛
DOI:10.19850/j.cnki.2096-4706.2021.08.001
摘 要:文章以高校信息化建设过程中不断增多的信息系统及服务资源为创作背景,旨在为用户提供更好的体验,提升师生的信息化应用体验。以标签规则为模板,采集整理校园信息化多种数据来源,其中涵盖学校师生的基础信息数据、公共服务信息、业务数据及部分流式数据;使用NDCG算法,建立信息推送模型,通过多轮的实验测试,不断细化推送系统的相关参数,致力于开发一个精确度较高和运行稳定的推送模型。
关键词:用户特征;数据采集;数据画像;推送系统
中图分类号:TP391.3 文献标识码:A 文章编号:2096-4706(2021)08-0001-04
Design and Practice of Campus Information Precise Push System
HUANG Hongtao
(Information Office of Central China Normal University,Wuhan 430079,China)
Abstract:This paper takes the increasing information systems and service resources in the process of informatization construction in colleges as the creative background,in order to provide a better user experience,enhance the informatization application experience of teachers and students. The author uses the label rules as the template to collect and sort out a variety of data sources of campus informatization,including basic information data of teachers and students,public service information,business data and some streaming data;uses the NDCG algorithm to establilsh the information push model. Through several rounds of experimental tests,the relevant parameters of the push system are continuously refined. We are committed to developing a push model with high accuracy and stable operation.
Keywords:user characteristic;data acquisition;data portrait;push system
0 引 言
近年來,高校信息化的迅速发展,信息系统、校园服务、数字教育资源已在高校信息化工程中起到了重要作用,同时也产生了大量系统、泛滥的服务种类以及海量的数字教育资源,当师生需要检索相关的服务和资源时,大部分高校的信息检索系统无法打通,暂时无法做到全站检索,往往难以快速有效的提供信息。由于服务数量的日益增长,用户慢慢习惯使用搜索引擎来查找系统服务,所以信息检索的质量需要学校信息化建设部门去探索和完善。而同是信息服务的推送算法也日渐成熟,本文试着借用现有的推送算法思路,搭建符合用户使用习惯的精准推送系统构建做简单阐述。
1 需求分析
伴随着互联网的快速发展,高校信息化资源大量填充,利用检索引擎搜索服务已成为高校信息化发展的必然趋势。对于在校师生来说,如果能高效检索到满意信息,会提高对学校信息服务的满意度和好感度。方便师生的同时提升师生在校工作和学习的幸福感。随着互联网的日益兴起和信息技术的迅速发展,基于智慧校园各类信息化应用也在各高校如火如荼地建设。本项目开发研究的高校公共服务综合推送平台可为高校师生开辟一种新的综合服务渠道,不仅为全校师生带来了便利,同时为提升学校职能部门服务意识及管理水平起到积极的推动作用。由于高校信息化在各个职能部门的推荐,学校的规模扩大及业务数量的增多,今后还可增添相应的服务模块,以此满足学校的发展需求,提升推送精确度势在必行。
1.1 功能性分析
高校在基于Web2.0时期开始建立各种业务系统,建设的初期以信息的汇聚、数据的融合为建设目标,打造了校园一站式门户,做到了统一身份认证,同时也导致了公共服务系统的大杂烩,缺乏个性化的设置,导致了千人一面,存在大量的冗余信息,系统统一呈现的信息可能不是当前师生关注的问题;分类繁多的服务分类表,对于业务不熟悉的师生来说也是一件极为不友好事情,因为师生也不知道想要办理的业务是哪个部门负责,应该在哪个类别里查找。所以针对面临的集成问题,也参考了诸多商业推送案例,拟建立基于用户画像特征的推送系统,考虑到实际工作的需求,系统应满足以下功能性需求:
(1)精准的推送服务,根据信息中心的数据中台汇总的数据,从用户的基础信息,人事关系数据,使用习惯数据及日常常用办公数据等信息,汇总成一定格式的推送模型数据。
(2)由于校园信息化的快速发展,面向师生的信息服务种类繁多,涉及业务经常跨几个部门,对一般师生而言,难以了解每个服务流程的具体操作步骤,在办事的过程要人肉试错,这样对广大师生不太友好。为了提升师生的获得感,我校开展了一站服务整合,提出“让数据多跑路,让师生少跑路”的行动,意在解决服务流程整合,信息精准推送等问题。同时也有业务比较类同,于是需要非技术人员重新定义相近、相关服务描述用词,同时我校正在打造数字校园综合展示平台数据可视化。数据的可视化有利于监察业务部门的运行状态,分析业务的优劣,淘汰整合无关业务,也更加方便掌握校园公共服务平台的建设生命周期。
1.2 非功能需求分析
在高校信息化高速推进的时期,校园应用的使用人数众多,师生对服务产品的要求也越来越高,既要满足师生的日常办公学习需求,也要满足日益增长的移动办公学习需求。同样系统的性能方面也要有良好体验,即推送系统应满足以下非功能性的需求:
(1)首先推送系统需要长期稳定运行,即需要推进系统占用服务器资源尽量较低,信息推送系统需处理数据中台中大量的行为数据,系统资源使用及能耗使用指标也是我们需要考虑的点。基于大数据的推进系统,既要考虑到数据采集、模型的建立,推送的精准度,同样要考虑数据质量的提升,安全运维,节能减排等因素,因此如果设计完善的算法,尽可能少地占用系统资源,降低能耗都是我们前期需要考虑的问题。
(2)校园信息化系统中热点应用使用频率较高,大部分师生在办公室里的时间点相对比较集中,所以推荐系统在用户并发需求上也应该有所考量。设计系统的吞吐率,数据采集的运算能力,减少数据挖掘的系统消耗,提升我校数据治理能力。考虑到信息推送系统主要以数据镜像、数据接口等方式进行处理,推送系统会频繁地进行数据采集、清洗、建模等过程,因此如何有效地增加数据吞吐能力、降低数据的错误率,则是推送系统设计需要重点考虑的建设问题,也是本次研究的重点考察点。
2 精准服务推送系统
2.1 用户画像模型
根据校园信息化的使用场景,可以归纳如图1所示的应用系统架构,数据仓库中集成了不同形态的数据,提取用户的标签属性,划分出用户群体;再通过个性化推送平台的接口提供交互服务。
用户画像模型建构可以分为三个过程,分别是数据采集、用户特征模型以及信息推送模型:
(1)数据采集。数据采集是指根据系统自身的需求和用户的需要收集整理相关的数据。数据中台中数据采集行为主要包括数据镜像、基础信息数据、业务行为数据、网站行为数据等的收集整理工作。为了更加精准的描绘用户画像,系统需尽可能全面地收集用户数据,不限于用户的基本信息、人事数据、院系科研、财务数据及个人行为数据等。数据采集整理完毕后,需要做数据清洗及补全工作,用于纠正错误或者清洗干扰数据,以便增加后续业务数据分析的准确性。其中用户数据分为静态数据和动态数据(业务数据)两类,其中所谓静态数据是指师生的基本属性数据,数据基本稳定;而所谓动态数据是指来源于各种业务系统的数据,俗称业务数据,这类数据具有更新快、数量大、多样性等特征,是会根据校园服务场景、业务发生的时间等发生变化。
(2)用户特征模型。用户特征模型是指用户画像,又称用户角色画像。一般采用基于标签模型用户的兴趣模型,通常会根据基本信息、操作行为、使用习惯、信息素养、风险信息及社会关系等维度来制定相关标签。图2是基于用户属性的用户标签模型样例,用最为浅显和贴近口语的话术描述用户的属性、行为,以达到与期待的数据转化联动的目的,形成用户角色的代表性。
(3)信息推送模型。基于用户特征画像模型中,采集用户数据是模型建立最基本、最重要的步骤,常使用的模式有数据库抽取、日志提取、公共信息补齐等模式,并存储于HDFS文件系统中,数据抽取、存储完成后,再进行校验、清洗,通过信度计算后,再加载到数据引擎中去。其具体采集架构如图3所示。
建构用户特征模型流程关键步骤分为数据提取、数据预处理、获取指标项、训练等几个步骤。数据模型是根据用户的数据特征信息的一种抽象表象数学表达方式,描述了静态特征、动态行为及约束条件,为数据库系统信息表示与操作提供了一个抽象框架。而文中基于兴趣模型的构建流程可参考图4所示流程。
2.2 个性推送平台
本文所采用的推荐算法是NDCG算法,随着系统规模的扩大,算法的效能会逐渐提升。针对本算法特性,本文提出了一种高效的标签标识体系及维数简化计算的优化方法,这种算法在提高推送的精确性的基础上减少了计算消耗,能较好的解决了数据稀松时的推送准确度不高问题,有效弥补了NDCG算法的拓展性不足短板。
2.2.1 个性推送模型解释
信息推荐模型通常为某用户返回一个选项列表,假设列表长度为K,这时可以用G@K评价该排序列表与用户真实交互列表的差距。使用关键词检索后结果相关性分数表示为Gain=r(i),其中对没一个项采用累计增益算法,具体求和公式为:
由于考虑到排序顺序的因素,使得排名靠前的选项增益更高,对排名靠后的项进行折损計算,最后的表示如式(2)所示:
如果相关性分数r(i)只有(0,1)两种取值时,P@K有另一种表达方法。如果推荐算法返回的排序列表中的选型出现在真实交互列表中时,分子加1,否则跳过不予显示。
P@K能够对一个师生的推荐列表进行评价,如果用该指标体系评价某个推荐算法,需要对所有师生的推荐列表进行评价,由于师生展示列表长度不同,不同师生之间的P@K相比没有意义。所以要对不同师生的指标进行归一化,自然的想法就是计算每个师生真实列表的P@K分数,用P@K表示,然后用每个师生的G@K与P@K之比作为每个师生归一化后的分值,最后对每个师生取平均得到最终的分值,即每一个选项的排位值。
2.2.2 推送模型实现
在Service层的实现中,信息推送平台需要以接口的方式为其他服务平台提供推送规则模型,具体要点归纳总结为以下几点:
(1)推荐系统需要增置服务信息的权重及服务接口URL,同时添加其他较为类同服务信息或者同类服务或者同部门服务信息,并达成服务信息的参数可配置化。
(2)推送系统的设计必须具备一定冗余度、容错性等特征;当服务数量、关键词的描述、服务内容都难描述准确时,需要系统能模糊匹配、记忆推送、随机推送等功能。
(3)信息推送平台以接口模式向全校师生推送信息服务,在身份认证、数据安全、数据加密、数据脱敏等需要有相关功能支持,做到可配置化。
其中涉及NDCG算法的核心代码为:
importpandasaspd
defrating_ndcg(self, comp_matrix, pred_matrix): #排位预测算法
for user inrange(self.usernum):
pred_matrix.ix[user] = pred_matrix.ix[user].order(ascending= False).index
ndcg_k = self.ranking_ndcg(comp_matrix, pred_matrix)
returnndcg_k
defranking_ndcg(self, comp_matrix, pred_matrix):#NDCG排位算法
ndcg_vector = []
for user inrange(self.usernum):
pred_item_index = pred_matrix.ix[user]
comp_item_index = comp_matrix.ix[user].order(ascending= False).index
ndcg_ki = 0.
idcg_ki = 0.
forkiinrange(1, self.topk):
log_2_i = math.log(ki, 2) if math.log(ki, 2) != 0. else 1.
ndcg_ki += comp_matrix[pred_item_index[ki]][user] / log_2_i
idcg_ki += comp_matrix[comp_item_index[ki]][user] / log_2_i
ndcg_ki = ndcg_ki / idcg_ki
ndcg_vector.append(ndcg_ki)
if user == 0:
self.logger.debug("ndcg_ki_vector %s", ndcg_vector)
ndcg_k = pd.Series(ndcg_vector).sum() / self.usernum
returnndcg_k
3 系统测试与运行
为测试本信息推送系统的功能及性能指标,本文使用了GBase数据中台,基于Kafka的流式数据采集,基于Orcale、Hadoop分布式数据服务器架构。为本系统算法的性能指标,本次测试选用了我校虚拟机,其配置是CPU 8核,内存8 GB,系统硬盘100 GB,数据硬盘为500 GB。其中推送系统部署服务器系统为LinuxCentOS 6.9版本。在具体的测试中,每组测试实验随机选取我校1万名校内师生,在应用推送、服务推送、信息推送、消息推送四个维度共开展了5轮推送测试。表1为5轮测试平均值(省略了小数点后几位)。
4 结 论
基于用户画像特征,本文提出一种基于标签的用户行为特征数据推送系统。针对我校大量用户的使用数据分析归纳,该系统可以推送用户真正需要的、带用户偏好的应用服务、消息信息等,在提升推荐系统效率的同时,提升了全校师生的信息获得感、幸福感。然而,本文提出的系统还存在诸多的不足之处,例如,师生点击应用、服务等信息时候的真实目标不清,无法计算师生使用、查看的权重,需要进一步优化数据和校准,在后续的探索中将重点解决这一问题。
參考文献:
[1] 侯敏,刘倩,杨华勇,等.基于MQTT协议的海洋观测数据推送系统 [J].计算机工程与应用,2019,55(20):227-231.
[2] 邹倩颖,王小芳.改进遗传算法在实体商业中精准营销研究与实现 [J].现代电子技术,2018,41(13):177-181.
[3] 黄位华,范欣.基于用户特征信息智能分析的精准营销推送系统 [J].现代电子技术,2021,44(6):43-46.
[4] 张东艳.高校实验室设备管理系统的设计与开发 [J].信息技术与信息化,2021(1):86-90.
[5] 曹凤芹,张华欣.基于用户画像的精准营销研究 [J].营销界,2020(44):33-34.
[6] 罗雨馨,姜攀.基于大数据技术的商品精准推送系统设计与实现 [J].电脑编程技巧与维护,2019(12):83-87.
[7] 沈军彩.用户行为数据分析下的信息推送系统的设计 [J].现代电子技术,2017,40(17):158-161+166.
[8] 刘峰,王宝亮,潘文采.基于网络表示学习与深度学习的推荐算法研究 [J/OL].计算机工程:1-11[2021-02-27].https://doi.org/10.19678/j.issn.1000-3428.0058631.
[9] 钟机灵.基于Python网络爬虫技术的数据采集系统研究 [J].信息通信,2020(4):96-98.
[10] 苏东水.产业经济学:第3版 [M].北京:高等教育出版社,2010.
[11] CHEN L,LYU D D,XU Z X,et al. A content-location-aware public welfare activity information push system based on microblog [J/OL].Information Processing & Management,2020,57(1):[2021-01-24].https://doi.org/10.1016/j.ipm.2019.102137.
[12] LIU N N,XU Z S,ZENG X J,et al. An Agglomerative Hierarchical Clustering Algorithm for Linear Ordinal Rankings [J].Information Sciences,2021,557:170-193.
作者简介:黄红涛(1979—),男,汉族,湖北武汉人,工程师,博士,研究方向:数字化学习平台的设计、开发及实践。
收稿日期:2021-03-19