基于贝叶斯网络的高校选修课推荐系统的设计与实现(初稿)_第1页
基于贝叶斯网络的高校选修课推荐系统的设计与实现(初稿)_第2页
基于贝叶斯网络的高校选修课推荐系统的设计与实现(初稿)_第3页
基于贝叶斯网络的高校选修课推荐系统的设计与实现(初稿)_第4页
基于贝叶斯网络的高校选修课推荐系统的设计与实现(初稿)_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 硕 士 学 位 论 文(专 业 学 位)基于贝叶斯网络的高校选课推荐系统的设计与实现院 系:软件学院专 业: 软件工程姓 名:荣杨指 导 教 师: 王欢完 成 日 期: 2015年09月19日基于贝叶斯网络的高校选课推荐系统的设计与实现 摘要摘 要在高等院校中,教书育人是第一位的任务。所以,教务管理系统在整个高校管理中,扮演了最重要的角色。随着信息技术的发展,教务管理工作信息化的程度越来越普及,要求也越来越高。并且,在历年来的教务管理中,积累了大量的相关教学和管理数据,因此,如何能够结合具体需求,充分开发和挖掘这些数据,并结合高校校务管理方和使用者的具体需求,开发功能更强大,更加人性化的教务

2、系统,从而服务好学生,为教务管理方提供科学支持,就变成一个重要的研究方向。本文以高校教务选课系统为研究课题,结合贝叶斯网络推荐技术,进行了相关研究。为了更好地服务学生群体,为他们的选课提供最佳的咨询和推荐服务,本文利用了个性化推荐技术。其思路主要是采用了贝叶斯网络的推荐技术,本文的主要研究内容如下所示:首先在第一章研究绪论及第二章的相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结,为后文的研究,奠定了理论基础。然后经过充分调研,了解了某高

3、校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课系统的实施方案。接着,结合理论研究部分,设计了基于贝叶斯网络的选课模型以及推荐算法。该算法主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。此后,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,测试表明,系统能够很好的应用数据分析功能,有效地组织和管理海量的选课数据,在基于学生

4、选课历史的基础上,提供个性化的推荐方案,从而提高了学生选课的效率,减少了盲目性,并且能够为高校教务管理工作者提供更好的数据分析和决策服务。系统充分满足了教务工作者、学生以及教师三个群体的具体需求,功能良好。把基于贝叶斯网络的推荐模型引入到教务选课系统之中,是本文的大胆尝试,目的在于希望教学管理者能够更好地利用信息系统服务学生,实施教学管理的同时,更好的提高学校教学质量和管理效率。关键词:选课系统 贝叶斯网络 推荐模型 个性化推荐 贝叶斯算法基于贝叶斯网络的高校选课推荐系统的设计与实现 AbstractABSTRACTWith the development of information tec

5、hnology and the development of educational informatization, educational management system in Colleges and universities in the daily management of the plays more and more important role and a large number of relevant teaching and management data in educational management over the years accumulated a,

6、 therefore, how to combine the specific needs, fully developed and the data mining, and combined with the specific needs of university affairs management and users, development of more powerful, more human nature of academic system, so as to serve the students, in order to provide scientific support

7、 for educational management, becomes an important research direction. In this paper, the university educational administration system for the study, combined with the Bayesian network recommended technology, the related research.In order to better serve the student population, to provide the best ad

8、vice and service for their courses, this paper uses the personalized recommendation technology. The main research contents of this paper are as follows: firstly, the relevant theoretical research of the first chapter is the introduction and the two chapter, the research background, the main research

9、 background, the research of Bayesian network. This paper introduces the theory of personalized recommendation technology and the theory of Bayesian network, and summarizes the specific algorithms of the popular recommendation engine, and the relevant model. The advantages and disadvantages of these

10、 models are summarized, which lay a theoretical foundation for the study of the paper. Then through the full investigation and research, the specific needs of the educational management system in a university is understood, and the emphasis is on the requirements of the system. The specific needs of

11、 the teachers, the educational administration management staff and the students. And then combined with the needs of the three, the design of the university elective system implementation plan. Then, based on the theory research, the selection of the model and the recommendation algorithm based on B

12、ayesian network is designed. This algorithm is based on the Pearl probability reasoning, in order to obtain the students past history, use the relevant reasoning and matching technology, the subjects in the database to be selected, the use of the similarity of subjects as a measure, set the recommen

13、ded model of a priori probability. Thereafter, on this basis, the entire educational system was implemented, including code implementation, testing, and training. And the whole system is tested. The test results show that the system can be well applied to data analysis function, effectively organize

14、 and manage the massive data, based on the history of students selecting courses, to provide personalized recommendation, which can improve the efficiency of the students choosing courses, reduce the blindness, and can provide better data analysis and decision-making service for the educational admi

15、nistration management. The system fully meets the specific needs of the educational workers, students and teachers of the three groups, the function is good.The recommendation model based on Bayesian network is introduced into the educational administration system, which is the purpose of this paper

16、 is to hope that the students can better use the information system to serve the students, implement the teaching management and improve the teaching quality and management efficiency.Key words: course selection system, Bias network, recommendation model, personalized recommendation, Bias algorithm基

17、于贝叶斯网络的高校选课推荐系统的设计与实现 目录目 录摘 要IABSTRACTII第一章 绪论11.1研究背景与意义11. 2本文创新之处21. 3研究内容和研究方法35.1 主要研究内容55.2 不足之处及未来的研究方向55.1 主要研究内容55.2 不足之处及未来的研究方向5第二章 贝叶斯推荐模型的设计与推荐算法的实现62.1 系统架构描述62.2 系统的数据准备72.3 贝叶斯网络的构建82.3.1 节点变量的选取92.3.2 推荐网络拓扑的构建102.3.3 节点概率分布112.4 推荐过程和主要问题的描述122.4.1 推荐过程122.4.2 主要问题122.5 词语匹配132.5.

18、1 术语库132.5.2 术语库的构建方法152.5.3 词语相似度量化算法15第三章、贝叶斯网络教务选课系统的设计与实现173.1 需求分析与系统模块分析173.1.1 需求分析173.1.2 系统功能模块分析173.2 用例图的建立与描述183.2.1 建立用例图183.2.2 描述用例183.3 类和时序图的建立203.3.1 实体类203.3.2 建立交互图223.3.3 建立类图283.4 系统贝叶斯网络数据库设计293.4.1 数据结构的设计293.4.2 表的建立31第四章 系统的实现与测试334.1 系统的开发准备工作334.1.1系统开发平台及应用服务器的选择334.1.2

19、系统框架设计334.2部分模块的程序代码354.3 项目实施过程504.4 程序的测试与评价524.4.1 程序的测试524.4.1 测试用例554.5 选课推荐效果评价59第五章 结论615.1 主要研究内容615.2 不足之处及未来的研究方向62参考文献63基于贝叶斯网络的高校选修课推荐系统的设计与实现 第一章 绪论第一章 绪论1.1研究背景与意义在高等院校中,教书育人是第一位的任务。所以,教务管理系统在整个高校管理中,扮演了最重要的角色。随着信息技术的发展,教务管理工作信息化的程度越来越普及,要求也越来越高。可以说,没有教务系统,整个学校的教学工作将无法运转。以本案例中的某大学为例,该大

20、学一共有四个校区,8个分院,25个系,一共97个专业,本科生和硕士生在读一共超过2万人。这些学生分布范围很广,地理上相隔很远,涉及到1500名以上的教师。为了给这些师生们服务好,必须要利用最新的网络科技,从而快速、高效的完成教学任务。在高校的教学管理中,选课系统是直接面对学生的。学生每个学期开学,均要根据自己的专业情况及教学大纲的要求,选择自己的课程。某高校的教学大纲规定,本科生四年期间一共要选择30-35门课程(根据学分而定)。在历年来的教务管理中,积累了大量的相关教学和管理数据,因此,如何能够结合具体需求,充分开发和挖掘这些数据,并结合高校校务管理方和使用者的具体需求,开发功能更强大,更加

21、人性化的教务系统,从而服务好学生,为教务管理方提供科学支持,就变成一个重要的研究方向。本文以高校教务选课系统为研究课题,结合贝叶斯网络推荐技术,进行了相关研究。本文的创新点,在于把基于贝叶斯网络的推荐模型应用在高校的教务选课系统之中,目的在于希望教学管理者能够更好地利用信息系统服务学生,实施教学管理的同时,更好的提高学校教学质量和管理效率。1. 2 本文的研究内容在高校中,每年都有大量的教务工作,涵盖教师、学生以及教务管理工作者。从纸质时代走向IT时代。这么多年来,积累了大量的数据。但可惜的是,这些数据目前基本上都没有加以利用。随着IT技术和网络技术的发展,尤其是数据挖掘技术的发展,如何通过整

22、理和挖掘这些数据,更好地为高等教育服务,为师生服务,成为一个重要的课题。本文主要研究内容如下:第一,在研究绪论及相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结,为后文的研究,奠定了理论基础。第二,经过充分调研,了解了某高校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课系统的实施方案。第三,结合理论研究部分,设计了基于贝叶斯网络的选课模型以及推荐算法。

23、该算法主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。第四,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,系统充分满足了教务工作者、学生以及教师三个群体的具体需求,功能良好。1. 3研究方法作者在研究之中,采用了如下研究方法:第一,文献研究法通过查阅大量相关网络资料,包括中英文参考文献,对目前高校教务系统以及个性化推荐技术、贝叶斯网络的研究进展、现状、背景等,进行了研究。第二,案例研究法文中以作者曾亲自参与

24、设计的某高校基于贝叶斯网络的选课推荐系统项目为具体案例,按照需求分析、设计、实施等整个过程进行了详细的案例研究。第三,头脑风暴法在对系统的具体应用现状、需求分析研究时,通过与甲方各部门、各级别不同使用者的访谈、沟通、反馈,采用头脑风暴的方法进行研究,最大程度了解了教务工作管理者、教师、以及学生各种具体需求,为后续的工作奠定了一定的信息基础。文章的框架结构如下图1-1所示:原有流程,业务范围及问题需求分析模型描述数据准备模型建立模型建立本文的主要研究内容如下:5.1 主要研究内容为了更好地服务学生群体,为他们的选课提供最好的咨询和推荐服务,本文利用了个性化推荐技术。其思路主要是采用了贝叶斯网络的

25、推荐技术,本文的主要研究内容如下所示:第一,在第一章研究绪论及第二章的相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结,为后文的研究,奠定了理论基础。第二,经过充分调研,了解了某高校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课系统的实施方案。第三,结合理论研究部分,设计了基于贝叶斯网络的选课模型以及推荐算法。该算法主要是基于Pearl概率推理思想,在

26、获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。第四,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,系统充分满足了教务工作者、学生以及教师三个群体的具体需求,功能良好。5.2 不足之处及未来的研究方向由于作者水平所限,以及时间关系,本研究存在以下不足之处,这也是将来进一步研究的方向:第一,本个性化推荐模型主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度

27、量值,设置为推荐模型的先验概率值。但这有个问题,那就是需要对选课者的既往选课历史进行读取,然后通过科目名称的解读,从而了解选课者的爱好,进而找到匹配的词语进行推荐研究背景本文的主要研究内容如下:主要研究内容为了更好地服务学生群体,为他们的选课提供最好的咨询和推荐服务,本文利用了个性化推荐技术。其思路主要是采用了贝叶斯网络的推荐技术,本文的主要研究内容如下所示:第一,在第一章研究绪论及第二章的相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结

28、,为后文的研究,奠定了理论基础。第二,经过充分调研,了解了某高校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课系统的实施方案。第三,结合理论研究部分,设计了基于贝叶斯网络的选课模型以及推荐算法。该算法主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。第四,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,系统充分满足了教务工作

29、者、学生以及教师三个群体的具体需求,功能良好。不足之处及未来的研究方向由于作者水平所限,以及时间关系,本研究存在以下不足之处,这也是将来进一步研究的方向:第一,本个性化推荐模型主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。但这有个问题,那就是需要对选课者的既往选课历史进行读取,然后通过科目名称的解读,从而了解选课者的爱好,进而找到匹配的词语进行推荐文献资料相关理论述技术路线与研究方法高校选课推荐系统研究在高日常教学管理中,教务系统是整个学生教务管理工作的核心,在当前的

30、信息技术发展形势下,如果离开了信息化的教务系统,那么整个教务管理工作就要瘫痪。教务系统的服务对象主要是三个群体,首先是为学生群体服务的,比如可以让学生来查询选课信息、课表信息、完成教师布置的作业,甚至是完成考试等。另外一方面,维教师服务。教师可以通过教务系统,能够及时给学生布置作业,完成答疑,与学生沟通交流。第三个服务的群体,是教务管理工作者,可以从整个教务系统之中,来查询和统计各种数据,监控教师和学生的互动,为教务工作提供管理咨询服务。本文对基于贝叶斯网络腿甲模型的高校教务系统进行了研究。与以往的系统的不同之处,在于本系统重点研究了教务系统之中的选课系统。本文的主要研究内容如下:5.1 主要

31、研究内容为了更好地服务学生群体,为他们的选课提供最好的咨询和推荐服务,本文利用了个性化推荐技术。其思路主要是采用了贝叶斯网络的推荐技术,本文的主要研究内容如下所示:第一,在第一章研究绪论及第二章的相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结,为后文的研究,奠定了理论基础。第二,经过充分调研,了解了某高校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课

32、系统的实施方案。第三,结合理论研究部分,设计了基于贝叶斯网络的选课模型以及推荐算法。该算法主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。第四,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,系统充分满足了教务工作者、学生以及教师三个群体的具体需求,功能良好。5.2 不足之处及未来的研究方向由于作者水平所限,以及时间关系,本研究存在以下不足之处,这也是将来进一步研究的方向:第一,本个性化推荐模型主要是基于Pe

33、arl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。但这有个问题,那就是需要对选课者的既往选课历史进行读取,然后通过科目名称的解读,从而了解选课者的爱好,进而找到匹配的词语进行推荐。但是,系统刚开始实施的时候,学生以往的选课历史没有相关的数据库,所以,导致系统刚开始使用的时候,无法精确匹配数据。第二,由于学校的专业较多,超过了50个,每个专业涉及到的专业课在20门以上。对于这些专业课程的名称,没有统一描述,所以,导致了有些课程比较相近,但是描述并无关系。这就需要在系统的数据库设定中,加以

34、描述。但描述是人工操作的,如果不同的人加以描述和定义,会导致匹配与推荐结果有差别。第三,整个教务系统开发后,使用者非常多。某高校的学生人数超过两万,并且有上千位教师、教务工作管理者使用。那么系统会在实际使用中面临很大的并发压力。本研究由于时间所限,对于算法在众多并发压力下的使用,没有进行足够充分的测试,这有待于将来进一步的实施。以上几点,是本文研究中存在的不足之处,本文作者以后再继续深入研究被系统的时候,会结合需求,做好相关的工作,并期待能够将该系统能够在整个教育行业和不同高校之间进行推广。在高校的日常教学管理中,教务系统是整个学生教务管理工作的核心,在当前的信息技术发展形势下,如果离开了信息

35、化的教务系统,那么整个教务管理工作就要瘫痪。教务系统的服务对象主要是三个群体,首先是为学生群体服务的,比如可以让学生来查询选课信息、课表信息、完成教师布置的作业,甚至是完成考试等。另外一方面,维教师服务。教师可以通过教务系统,能够及时给学生布置作业,完成答疑,与学生沟通交流。第三个服务的群体,是教务管理工作者,可以从整个教务系统之中,来查询和统计各种数据,监控教师和学生的互动,为教务工作提供管理咨询服务。本文对基于贝叶斯网络腿甲模型的高校教务系统进行了研究。与以往的系统的不同之处,在于本系统重点研究了教务系统之中的选课系统。本文的主要研究内容如下:5.1 主要研究内容为了更好地服务学生群体,为

36、他们的选课提供最好的咨询和推荐服务,本文利用了个性化推荐技术。其思路主要是采用了贝叶斯网络的推荐技术,本文的主要研究内容如下所示:第一,在第一章研究绪论及第二章的相关理论研究部分,综述了研究背景,主要是贝叶斯网络相关研究。介绍了个性化推荐技术以及贝叶斯网络方面的理论基础,并且综述了目前比较流行的推荐引擎的具体算法,以及相关的模型。对这些模型的优点和缺点逐一进行了总结,为后文的研究,奠定了理论基础。第二,经过充分调研,了解了某高校在教务管理系统方面的具体需求,重点是该校的选课系统的要求。包括教师、教务管理工作者、学生的具体需求。然后结合三者的需求,设计了高校选课系统的实施方案。第三,结合理论研究

37、部分,设计了基于贝叶斯网络的选课模型以及推荐算法。该算法主要是基于Pearl概率推理思想,在获取学生既往的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。第四,在此基础上,对整个教务系统进行了实现,包括代码实现,测试以及上限和培训。并对整个系统进行了测试。测试结果表明,系统充分满足了教务工作者、学生以及教师三个群体的具体需求,功能良好。5.2 不足之处及未来的研究方向由于作者水平所限,以及时间关系,本研究存在以下不足之处,这也是将来进一步研究的方向:第一,本个性化推荐模型主要是基于Pearl概率推理思想,在获取学生既往

38、的选课历史后,使用相关的推理与匹配技术,将课程数据库中的科目加以挑选,利用科目的相似度作为度量值,设置为推荐模型的先验概率值。但这有个问题,那就是需要对选课者的既往选课历史进行读取,然后通过科目名称的解读,从而了解选课者的爱好,进而找到匹配的词语进行推荐。但是,系统刚开始实施的时候,学生以往的选课历史没有相关的数据库,所以,导致系统刚开始使用的时候,无法精确匹配数据。第二,由于学校的专业较多,超过了50个,每个专业涉及到的专业课在20门以上。对于这些专业课程的名称,没有统一描述,所以,导致了有些课程比较相近,但是描述并无关系。这就需要在系统的数据库设定中,加以描述。但描述是人工操作的,如果不同

39、的人加以描述和定义,会导致匹配与推荐结果有差别。第三,整个教务系统开发后,使用者非常多。某高校的学生人数超过两万,并且有上千位教师、教务工作管理者使用。那么系统会在实际使用中面临很大的并发压力。本研究由于时间所限,对于算法在众多并发压力下的使用,没有进行足够充分的测试,这有待于将来进一步的实施。以上几点,是本文研究中存在的不足之处,本文作者以后再继续深入研究被系统的时候,会结合需求,做好相关的工作,并期待能够将该系统能够在整个教育行业和不同高校之间进行推广。原有系统需求分析头脑风暴法与访谈法方案实施实施方法依据方法论实施分模块实施与应用项目测试项目效果评价研究结论及不足之处图1-1 论文组织框

40、架73基于贝叶斯网络的高校选课推荐系统的设计与实现 第二章 贝叶斯推荐模型的设计与推荐算法的实现第二章 贝叶斯推荐模型的设计与推荐算法的实现2.1 系统架构描述为了建立贝叶斯模型,必须要依赖两个数据库,第一个数据库,是学生之前选的课程的综合,那么贝叶斯推荐模型可以从这个数据库中,读取学生之前的的课程,并从课程的名称、描述中,分析出相关的关键词,从而得出这个学生的偏好。第二个数据库,就是读取学生的专业,然后根据学校的教学大纲和专业课程的要求,提供所有可以选择的课程,包括必修课和选修课。有了这两个库,贝叶斯推荐模型就可以建立一个相应的概率推荐网络,然后根据算法,得出相应的推荐结果,在学生登录系统的

41、时候,推荐给学生。但是,系统有两个问题需要解决:第一, 大一新生刚刚进入大学,此前没有大学的学习记录,所以没办法建立其个人的第一个选课历史数据库。为此,本文的解决思路,是首先读取该学生的专业,然后在以往的该专业毕业生中进行读取,从而建立一个某专业的偏好库,作为替代。第二, 某高校有八个分院,二十多个系,不同的系选课的要求,比如最低学分、最高学费都不一样,每个学期限制的学费不一样,有的课程规定,少于15人选,那么该门课程必须要取消,因此,在系统实现时,这些都必须加以限定。根据以上思路,系统的整体框架结构如下图3-2所示:学生爱好库课程信息库贝叶斯网络术语库推荐算法推荐引擎课程推荐结果学生图2-1

42、 系统架构图2.2 系统的数据准备贝叶斯网络的算法虽然非常先进,但是它依赖相关的数据。只有建立大量相关的数据库,尤其是统一、规范的数据库,有了庞大的数据库,算法才能对相关数据进行挖掘,然后才能给出最优的推荐结果。某高校目前积累了大量的数据,比如海量的学生信息、选课信息、课程信息等。但是,这些数据库都是历史上长期积累起来的,第一个是格式较为复杂。有些是电子形式的,有些甚至还是纸质形式的。第二是不统一。比如各个不同学院对课程的要求、描述,不够统一。第三是数据质量不一。有些数据只能在部分学院内部通用,有些数据的时效性不一。第四,是数据之间的关联度不统一。为此,本系统需要统一以下几个相关的数据库:第一

43、, 课程科目数据库某高校共有八个学院,25个系,一共97个专业。按照教学大纲的规定,每个专业一共要学习大约30-35门课程。并且大量的课程是各系、各学院通用的,比如基础课程:物理、化学、英语、高等数学等。另外,即使是专业课,也有很多在学院内通用的,比如:有机化学、分析化学、物理化学等。统计下来,某大学一共需要开设1500门左右的课程。这些课程,都必须以统一的格式,在数据库中建立相应的条目。为此,教务处确立了统一的标准,要求科目的名称必须科学、规范,然后对每个科目形成一个250字左右的严格规范的描述字段。这些字段的描述,必须符合统一的规范和标准,能够让本专业以外的人也能确定性解读所有的专业的描述

44、,尽量符合国家的教学大纲,以及相关的招生要求等。第二, 学生信息数据库某高校共有本科生、硕士生超过两万。这些学生的数据,都是以学号为唯一的代码。包含了很多数据段,比如:身份证号码、住址、民族、籍贯等信息。这些数据在学生信息数据库中已经建立好了,在整个大学期间都通用。使用这些数据的系统较多,除了教务系统,还有后勤管理系统、宿舍管理系统、奖惩管理系统、图书借阅系统等。这些系统之间的对接十分重要。本系统必须符合相关的规范,做好与其他系统的无缝对接。第三, 专业术语数据库在不同的专业中,有大量相关的专业术语,这些术语都要建立在数据库中,不仅要统一、规范,还要能够特色鲜明,表征严谨,能够让学生一目了然。

45、除了上面这三个需要实现建立的数据库,在系统运行过程中,系统本身还会自动建立一下几个数据库:第一, 历史选择数据库本科生或者硕士生进入学校后,每个学期都选择了相应的课程,这些课程就是学生的历史选课记录。系统在进行分析和挖掘时候,首先要从总的数据库中减掉这个数据库,得出学生还可以选择的数据库。然后根据对这个数据库中具体数据的解读和挖掘,判定学生的专业、偏好,然后根据确定的引擎,输出推荐结果,供学生选择。至于大学一年级的学生的历史选择数据库,上面已经解释,通过对本专业毕业生的统计,建立一个基础的共同偏好数据库来代替。等学生到了大二时候,再建立个人偏好库。第二, 可供选择的数据库按照某高校的教学大纲,

46、一个本科生四年中基本上要选择30-35门课程(依据学分而定)。如果之前已经选择了15门课程,那么在他进行选择时候,这15门课程是要去掉的。所以,每次学生登录,可供选择的数据库,都要系统自动生成,即总的可供选择的专业数据库,减掉历史数据库,就是可供选择的数据库。这个数据库是动态的。不仅要根据学生的选课情况来决定,还要根据教学大纲的情况而定。第三, 学生个人选择偏好库这个数据库,也是系统动态生成的。贝叶斯网络根据对历史数据库以及学生数据的读取,进行分析、归纳、挖掘和统计而得。一般来说,不同专业的学生的偏好库相差较大,同一个专业的学生偏好库相差较小。所以,如上文所述,某个专业大一学生的偏好库,可以用

47、该专业的毕业生的偏好库暂时加以替代。但选修课则主要是根据学生自己的兴趣而定。2.3 贝叶斯网络的构建系统真正投入使用后,学生会在每个学期开始阶段,登录系统,然后根据自己的专业,要求以及爱好动态选择课程,基本上会在较短的时间内完成选择。所以,系统必须考虑在较短时间内,完成不同数据库的生成,然后对各个数据库进行挖掘、分析、归纳、计算、统计,然后输出推荐结果。基本上要求在一分钟之内就要完成整个计算结果。这个对系统的运算和反应要求很高。尤其是学期开始,上万名学生在短短时间内登录,选择。如果是以实时形式完成数据库的分类和计算,那么对整个系统的软件和硬件要求太高了。为了解决这个问题,本文的思路是,尽可能在

48、离线情况下,就生成相关的数据库,然后完成数据清洗、分析,以及贝叶斯网络的构建、学习,并自动生成相关的三个数据库。这样,在学生登陆的时候,就能以最快的速度完成计算,从而不影响用户的体验。贝叶斯网络的类型较为复杂,不同类型的分析,需要的过程也是不一样的。但是,所有的贝叶斯网络的计算过程,都可以通过以下两个步骤来完成:第一, 构建和完成贝叶斯网络,然后读取数据,进行学习在这个步骤中,系统需要县建立一个完整的贝叶斯网络。网络的骨架,就是建立拓扑结构。在贝叶斯网络中,最重要的是确定因果关系。即那些数据是作为基础数据,通过运算指向那些数据。整个过程需要涉及到很多变量。根据解决的问题不同,选择不同的变量。有

49、的变量需要连续性,有的变量需要离散型。第二, 为确立的贝叶斯网络确定初始参数根据具体问题,确立贝叶斯网络后,也就是确立因果关系后,要对网络的参数进行赋值,即初始化网络。在贝叶斯网络中,这些参数主要是以概率来表示。不同的节点,确定不同的概率值。贝叶斯网络中主要分为两种拓扑节点,一种是根节点,一种是子节点。对于根节点的赋值,要求是先验值,如果是非根节点,那么赋值是采用条件概率。这些概率,基本上先验值是从专家数据库中调取,条件概率则是通过学习获得。2.3.1 节点变量的选取为了解决选课系统的推荐问题,本系统构建的贝叶斯网络,需要三种节点变量,这些变量需要三种不同类型的赋值,具体如下表2-1所示:表2

50、-1 贝叶斯网络三红节点变量的赋值2.3.2 推荐网络拓扑的构建根据贝叶斯网络的原则,本系统构建了整个网络,网络分为三层子网。分别是:U-net(代表学生),T-net(代表术语),P-net(代表课程)。在网络的构建过程中,必须做到:从上面的三点可以分析得出,在建立起来的贝叶斯网络中,当前位置的父节点,实际上来源于上一层节点的一个子集。且有Pa(Hi)=0(网络的根节点即为爱好节点),Pa(Pi)=TiT|TiCi,Pa(Hi)=CiC|CiHj 28。依据这些原则,就可以明确的建立如下图3-2所示的贝叶斯网络拓扑结构:H11H31H21H31T1T21T31T41T51T61C11C51C

51、31C21C41爱好节点术语节点课程节点图2-2 贝叶斯网络拓扑图2.3.3 节点概率分布在贝叶斯网络建立之后,要对各个不同层级的节点进行赋值,也就是将参数初始化。这个赋值,其实是一个概率值。可以分成两类:第一类是根节点(Root point,第二类是非根节点,Non-root point)。如何划分根节点还是非根节点,主要看这个节点是不是有上层节点。如果该节点没有父节点,即是根节点。根节点的参数赋值和非根节点的赋值是不一样的,根节点的概率赋值,是一个固定的,叫做“先验概率”,根节点的另外一种赋值方法,是来自于事先确定的专家数据库。而非根节点的赋值,则是通过算法以及根节点的关系来计算而得的。这

52、个计算过程,就是贝叶斯推理过程。本文采用的是专家数据库确定而得。所谓的专家数据库,即通过统计与挖掘以往学生的选课数据库而获得,并赋给根节点。具体思路如下:本系统认为,对于某个学生,他之前一定选过某些课程,则该学生对这些课程有偏好,那么从这些数据中提取相应的关键词,作为原始赋值。尤其是关键词如果出现的概率较大,则应该将该关键词的频率作为先验概率赋予根节点。此外,学生在选课过程中,会自己输入一些关键词,这些关键词也是十分重要的信息,这些关键词出现的频率,可以作为子节点,也就是非根节点的赋值。2.4 推荐过程和主要问题的描述2.4.1 推荐过程当整个贝叶斯网络构建完毕,那么系统就可以让学生登录,然后

53、开始让学生自己输入相关的偏好科目。比如,某个学生喜欢艺术类,那么可以在选修课中选择注入“艺术欣赏”、“电影欣赏”、“音乐欣赏”等课程。这些课程在整个科目数据库中不一定有,但是系统可以从所有科目的描述中寻找相关的词语,找到匹配度交大的,进行匹配,得到下一层的子节点。这些节点可以称之为证据节点。有了根节点及证据节点,那么根据事先确定的算法,就可以得到输出结果。这样,学生就可以得到推荐的课程。具体如下图2-3所示:输入爱好爱好节点证据节点节点概率证据传播推荐集合用户图2-3 推荐过程图2.4.2 主要问题从上图2-3所示,贝叶斯网络及算法正常预测与推荐,必须要依靠两个条件:第一, 如何获得证据节点。

54、根据上节所讲的原理,在根节点获得赋值(来自于专家数据库,或者先前的偏好库)之后,证据节点必须通过连接和匹配两个库之间的关键词,才能获得。但在实际使用中,会存在一个问题,那就是,学生如果在使用的过程中,如果对没有学习的课程,不一定足够了解,很容易出现一些不标准的输入。比如,有一门课程叫做“微机原理”。但学生不一定知道,那么他输入“计算机”这个关键词,就未必能够匹配,这就需要解决两者之间的匹配问题,从而让证据节点,也就是子节点获得更好的匹配。第二, 算法的效率问题。整个系统是在线实时推荐,尤其是数以万计的学生在短期内如果上线选择,那么算法的效率问题就十分重要了。必须要让算法在最短时间内,完成两个库

55、之间的匹配,并及时输出预测与推荐结果。2.5 词语匹配本系统的使用者,都是汉语母语。汉语的词之间,有非常复杂的联系。词与词之间的联系关系,在系统中,必须要以数量的形式来表征。也就是相似度,要以数量的形式来表征。为了解决这个问题,本系统通过相似度的计算,来达到不同词语之间的模糊匹配,以此来给子节点赋值。最重要的一点,就是词与词之间的相似度,还可以通过算法的学习,加以不断调整。2.5.1 术语库为了解决术语库的标准问题,本文采用了统计学的相关原理,通过大规模的现有词语库统计其概率及相关性,加以量化,并且把这个量化值存储起来,在系统验算的过程中,加以不断调整。本文中用C来表示术语,将其定义为C=(W

56、,R)。用W= W1,W2,Wn来表示词汇空间,用Wi=( Wn,Wf)表示向量;用R=r1,r2,rn来表示关系空间,用rk=( Ws,Wd,Cof,Counf,Cod,Coin)表示向量,其各分量的含义如表3-1所示。表3-1 术语库说明在选择分量时应遵循以下两个原则:(1) 所有计算信息应以词语相似度计算所需的最小代价提供;(2) 各节点信息的值能进行动态调整且关系裁剪灵活。2.5.2 术语库的构建方法上节的阐述可知,系统本身建立的术语库,要建立在对大量的现有语料库的学习与比对基础上。本系统从以下两个维度来构建,分别是: (1) 词汇空间维度从学校的实际课程来讲,术语库的数量有限,并且术语有其自身规律。所有的属于都是由两个字,或者两个以上的字组成,比如:有机化学,工商管理等。为了让算法更有效率,本系统先定,系统中输入的课程的描述,不能出现太多的术语。系统的规定是小于5个。构建算法如下:初始:w=,对于输入的语料中的一个名词,若该词第一次出现Wf设为1,否则Wf+1。(2) 关系空间维度本系统用一个特别的函数R来表征词与词之间的关系维度。具体定义如下:算法构建如下:初始:R=,及时观察

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论