apriori算法的课程推荐系统的设计与实现

摘要:针对如今高校的课程数量较多,选修课程的信息过多,导致学生无法准确而快速的选择课程的情况,设计了一款课程推荐系统。系统采用了B/S结构,根据用户需求进行系统设计,综合运用了C#和ASP.NET技术进行设计开发。系统可以根据学生的需求、兴趣等,通过条件查询和调用Apriori算法计算后,将学生感兴趣的课程和适合学生的课程推荐给他们。课程推荐系统弥补了传统选课系统只能选择课程不能推荐课程的不足,解决了学生面对课程信息超载而无法选择课程的难题。
目录
摘要 1
关键词 1
1概述 1
1.1选题背景 1
1.2国内外研究状况 2
1.3选题意义 2
2系统开发工具与技术介绍 3
2.1 B/S体系结构 3
2.2 Visual Studio 2010 4
2.3 ASP.NET介绍 4
2.4 ADO.NET访问数据库的原理 4
3系统需求分析 5
3.1总体需求概述 5
3.2用户需求分析 5
3.3系统主要功能用例图 5
3.3.1登录注册 5
3.3.2教室管理 5
3.3.4课程管理 6
3.3.5课程选择与推荐 7
3.3.6留言板 7
3.4系统主要功能活动图 7
3.4.1 课程创建过程活动图 7
3.4.2 学生选课过程活动图 8
3.5主要功能时序图 9
4 系统设计 9
4.1系统功能模块设计 9
4.2数据库设计 10
4.2.1 课程管理ER图 10
4.2.2成绩管理ER图 10
4.3 数据库表详细设计 11
4.3.2学生信息表 12
4.3.3课程信息表 12
4.3.4管理员信息表 12
4.3.5 教室信息表 13
4.3.6 教学楼信息表 13
4.3.7 留言表信息表 13
4.3.8 时间信息表 13
 *好棒文|www.hbsrm.com +Q: ^3^5^1^9^1^6^0^7^2^* 
/> 4.3.9 成绩信息表 14
4.3.10考试类型表 14
4.4 Apriori算法实现 14
5系统实现与操作 15
5.1 登录注册 15
5.3 课程管理 17
5.4 课程推荐与选择 18
5.5 成绩评定 19
5.6 留言板 19
6 系统测试 19
6.1测试场景一权限限制 19
6.2测试场景二课程管理 20
6.3测试场景三选课管理 20
7 总结不足与展望 21
致谢 21
参考文献 22
基于Apriori算法的课程推荐系统的设计与实现
引言
1概述
1.1选题背景
互联网的广泛使用,为人们的生活提供了无限便利,但由于互联网的广泛使用,各种信息都大量的在网上进行传播,信息量过多过杂,以至于很多互联网用户反而不知道该如何识别有用信息。各大高校中的学生,面对庞大的各类信息,无法决定自己应该选择什么样的课程,这就是典型的信息超载问题。处理信息超载问题一个特别有效果的方法就是推荐系统。推荐系统是通过研究用户的需求、兴趣爱好等,将用户需要的信息、产品等推荐给用户,推荐系统其实就是实现个性化信息推荐的系统【1】。和搜索引擎不同的是,推荐系统是研究了用户的需求和偏好,通过个性化计算,由系统发现用户的兴趣点,从而帮助用户发现他本身的信息需求【2】。一个好的推荐系统不仅能为用户提供适合自己的的服务,还能和用户之间形成密切联系,让用户对推荐系统越来越相信【3】。推荐系统其实已经大量的应用于各种领域,电子商务领域是推荐系统发展最好的领域之一。近年来,学术界对推荐系统的研究关注度也是愈涨愈烈,已经形成了一门单独的学科。
数据挖掘(Data Mining)是集统计学、人工知识、模式识别、并行计算、机器学习、数据库等技术的一个交叉性的研究领域【4】。Apriori 算法大范围的被应用于不同的领域,对数据的关联性进行研究分析和深入挖掘后,被挖掘出的关联信息常常在做决定的过程中具有极大的参考意义。它的核心是递推算法。该关联方法在分类上归为单维、单层、布尔关联规则[5]。
本课题将研究如何将Apriori算法在课程推荐系统中应用,也就是将传统的应用在商业中较多的推荐系统应用在学生课程推荐上。借助Apriori算法发掘学生本身各种数据之间的关系,此系统将帮助学生个性化的推荐课程。
1.2国内外研究状况
从不同角度不同的侧重点切入,国内外的学者们已经对基于数据挖掘的推荐系统,进行了多次的研究与探讨。特别是这几年来,因为全社会对教育问题关注度的不断提高,各种各样的新设想新思路不断涌现。例如,用基于数据挖掘的算法研究学生成绩。印度学者Brijesh Kumar Baradwaj和Saurabh Pal在2011年发表的论文《Mining Educational Data to Analyze Students’ Performance》中设想过可以研究分析学生考试成绩数据,通过数据挖掘,然后来预先猜想学生的实际行为结果。这种方法的第一步是,让学生考试,从而获得学生的成绩数据,然后创建学校的教育系统的数据挖掘模型,再用ID3决策树为主的机器学习方法对模型中的数据进行分类,最终得出一种对学生在校表现情况猜测的目的【6】。与之相关的数据方法还包括Pandey和Pal提出的《Data Mining: A prediction of performer or underperformer using classification》。这种方法的基础数据是学生的年级和已修课,方法是贝叶斯网络,最后也达成了可以预测初学者学习情况的目的。
也有人直接研究过如何根据学生的成绩,来推荐学习计划等。例如Galit等在论文《Examining online learning processes based on log files analysis: a case study 》中描述了一种教学辅助系统就是对考试分析结果的再利用。这个系统的基本过程就是,对学生学习情况的数据,进行数据挖掘后,得出一种适合学生学习的计划,推荐给学生使用,从而帮助他们顺利的考过很多测试。其实这些方法都是经典的机器学习方法。首先需要收集学生的各种各样的信息数据作为算法的计算基础,利用多种机器学习方法相结合的方法创建数据挖掘模型,再把创建完的分析模型投入到实际的分类和回归问题中去[7]。
1.3选题意义
各大高校中的学生,面对庞大的各类信息,无法决定自己应该选择什么样的课程。这是明显的信息超载问题。处理信息超载问题一个特别有效的方法就是使用推荐系统。推荐系统可以研究学生的关注点爱好点,进行因人而异的计算,由系统发现学生的选课取向,从而引导学生发现适合个人的课程信息。一个好的课程推荐系统不但能为学生提供人性化的服务,还能和学生之间形成一种密切的关系,让学生对系统产生信赖,节约学生选择时间,方便快捷。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2237.html

好棒文