基于用户协同过滤算法在调停课管理系统中的应用
2021-03-07吴琼
吴琼
(吉林动画学院 吉林省长春市 130012)
传统的用纸质版记录调串课信息的方式很容易出现信息错误、安排不合理等问题。在高等院校信息化建设中,调停课审批管理系统是管理教务信息的重要工具。调停课审批管理系统可以实现无纸化办公,提高工作效率。在调课流程中,调课的时间比较重要,需要避免与教师和学生的其他上课时间冲突,同时也需要选取最合理的时间,使得学生学习效果更优。本文以吉林动画学院教师调停课管理系统作为例子,将基于用户协同过滤的推荐算法应用于调停课管理系统当中,实现动态推荐调课时间的功能,从而解决排课过程中出现的安排不合理等问题。
1 调停课管理系统的设计
1.1 系统设计的原则
1.1.1 实用性原则
软件的实用性原则是软件系统设计的基本原则,任何软件都需要具备其实际应用价值。软件完成之后,需要经过功能测试以及性能测试,保证软件能够有效的应用到用户的实际工作场景之中。高校调停课审批管理系统能够解决高校教师在调课停课中流程复杂的问题,以及有利于学校教务信息的电子化存档,充分体现了软件的实用性原则[2]。
1.1.2 规范化设计原则
高校调停课审批管理系统采用B/S架构设计Web应用程序。整个系统主要分为三个不同的模块,分别进行业务管理,包括调停课管理模块、用户管理模块以及个人管理模块。各个模块在前端界面分别位于一级菜单栏,负责不同的业务处理。同时,每个模块有存在一定的关系,共同负责整个系统的基本运行[3]。利用规范化的设计原则,可以使整个系统的设计结构更加清晰明了,有利于系统的可扩展性。
1.1.3 安全性原则
随着互联网时代的高速发展,网络黑客的数量也在逐年增加,各种类型的计算机病毒层出不穷,一些病毒会采用多种技术手段找出软件中存在的漏洞,然后不断的攻击系统,篡改系统内部数据信息。高校调停课审批管理系统对外来的信息进行了权限设置,避免网络病毒的非法侵入。
1.1.4 可扩展性原则
软件的可扩展性原则要求软件的设计要留有充足的升级空间,可以通过扩展来实现整个系统功能的变化。可扩展性的目的是,能够在对现有系统影响面最小的情况下,处理更大规模的业务,同时保持可持续扩展的能力和稳定提升的能力。高校调停课审批管理系统具备软件的可扩展性原则,它采用分层架构,在权限的设置上划分了不同的角色控制,拥有独立的用户管理系统,对于新增的业务,比如高校的课题管理系统等,可以共用用户管理系统,具备可扩展性原则。
1.2 系统核心功能的设计
高校调停课审批管理系统的不同模块分别位于前端界面的一级二级菜单栏,既具有独立性,同时内部也存在一定的关联,不同模块组合形成相对完整的调停课管理系统,该系统核心功能的模块设计图如图1所示。
图1:系统核心功能模块图
2 基于用户协同过滤算法在调停课管理系统中的研究
2.1 相关推荐算法描述
推荐算法起源于20世纪,主要包括基于内容推荐、协同过滤推荐、基于规则推荐、基于效用推荐和基于知识推荐等。推荐算法目前已经应用到互联网的各个领域,各大主流网站都使用了推荐系统,提高了用户的满意程度[4]。本文简单介绍了几种相关的推荐算法。
2.1.1 基于内容的推荐算法
基于内容的推荐继承了信息过滤技术的特点,它不需要根据用户对项目的实际评价意见,而是通过项目的内容信息来进行相关推荐[5]。它的核心思想是先分析项目的特征项,建立项目的特征向量空间,根据用户以往的行为记录,建立用户特征模型,得到特征向量和特征模型之后,计算其两者之间的相似程度,得到用户资料与待测项目之间的匹配程度,最后将匹配程度较高的项目推荐给用户。基于内容的推荐算法需要有用户的历史数据,可以获得更好的推荐精度,但是它的衡量标准过于单一,具有一定的片面性,存在冷启动的问题[6]。
2.1.2 基于关联规则的推荐算法
基于关联规则的推荐算法是以关联规则作为基础,目的在于在一个数据集中找出项与项之间的关系[7],这层关系也是根据历史数据信息统计出来的不同的规则关系,根据所有的关联规则,推荐给用户最佳的决策。关联规则可以发现不同产品的相关性,在零售行业有广泛的应用。但是基于关联规则的推荐算法的第一步是发现规则,这是最关键的一步,也是最浪费时间的,是该算法的瓶颈[8]。
2.1.3 基于效用的推荐算法
基于效用的推荐算法是以用户使用项目的效用情况为基础的,它的核心思想在于如何为任意一个用户去创建一个效用函数。那么所选择的效用函数的作用是比较大的,用户资料模型大部分是由它来主导的。基于效用的推荐算法的优势是可以考虑到非项目特征,不足之处是必须要有效用函数,灵活度较低[9]。
2.1.4 组合推荐算法
上文中简单介绍了三种推荐算法,由于各种推荐算法都有其优势和劣势,所以在实际的软件项目中,组合推荐算法比较常用。组合推荐可以扬长避短,通过将不同的推荐算法进行组合变换,来弥补单独推荐算法的技术短板。在算法的组合上常采用加权、变换、混合、特征组合、层叠等组合思路[10]。
2.2 基于用户协同过滤算法在调停课管理系统中的应用
2.2.1 基于协同过滤的推荐算法
基于协同过滤的推荐算法使用比较广泛,同时也是推荐系统中应用最早的技术之一。它的核心思想是利用最邻近技术,根据用户历史相关信息来计算用户之间的距离,然后通过最邻近用户对商品的加权评价值,推荐给目标用户相似喜好的商品。基于协同过滤的推荐算法能够处理的信息类型较为丰富,是一种经典的推荐算法[11],但是它也有不足之处,比如数据稀疏问题,冷启动问题等。目前,国内外应用的比较广泛的推荐算法是基于内容的推荐和基于协同过滤的推荐,这两种算法同时也是国内外学者主要的研究热点。
基于协同过滤的推荐主要分为两类,分别是基于用户的协同过滤与基于项目的协同过滤。基于用户的协同过滤主要思想是计算用户与用户之间的相似度,根据相似程度的大小找出与目标用户相似程度较高的邻近用户,将这若干个邻近用户作为目标用户的的最邻近集合,最后用最邻近集合中的用户特征来对目标用户的特征进行预测[12]。基于项目的协同过滤算法主要思想是根据用户对某个项目的喜好程度,找出与目标项目最相似的项目集合,最后通过计算得到目标项目的特征,该特征是由最相似项目集合的预测得来的[13]。
2.2.2 算法在调停课管理系统中的应用
高校调停课审批管理系统主要业务内容是进行教师的调停课审批,教师调停课的原因有很多,但实际上调串课对学生的影响是比较大的。如果时间安排过于分散容易失去课程的连续性,学生遗忘的比较快;如果时间安排的过于集中,会让学生感觉疲劳,教学效果很难达到保障。综上所述,合理的调串课时间有助于学生更好地消化课程知识点内容,有利于学生学习成绩的提高。
本文将基于用户协同过滤的推荐算法应用在调停课审批管理系统当中,该算法主要用来评估学生的成绩,通过学生的平时成绩找出与目标同学最邻近的n个同学的集合,得到最邻近同学集合之后[14],再利用当前最邻近集合中学生的成绩来预测该学生的成绩等级,通过这种方法对学生的学习成绩进行预评估,得到学生成绩分布曲线,为之后的目标函数建立奠定基础。之后,再建立一个目标函数,目标函数的自变量为课程间隔时间平均值,该目标函数主要设计为学生成绩分布,不断优化目标函数,使其学生曲线达到最优最合理的分布,进而得到最优分布下课程的间隔时间,即为系统推荐的调课时间。
3 结束语
本文主要阐述了高校调停课审批管理系统的设计,以及基于用户的协同过滤算法在调停课系统中的应用。系统的设计主要从系统的设计原则和核心功能设计两个方面阐述其设计内容。调停课管理工作是教务管理工作的重要环节,它代表着高校信息化建设的水平。优化的调停课管理系统可以推荐更加合理的调课时间,有助于学生对课堂内容的吸收,加强学生的学习效果。算法在系统中的应用主要用在评估学生的成绩方面,接下来的工作将不断深入研究,寻找更加合理的算法,推荐更加优化的时间分配,不断优化调停课审批管理系统,使其功能更加完善。接下来可以尝试不同的推荐算法相互组合,来弥补单一的协同过滤算法的不足之处。