1. 研究目的与意义、国内外研究现状(文献综述)
1.课题意义互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但随着网络的迅速发展而带来的网上信息量的大幅增长,使得用户在面对大量信息时无法从中获得对自己真正有用的那 部分信息,对信息的使用效率反而降低了,这就是所谓的信息超载问题【1】。各大高校中的学生,面对庞大的各类信息,无法决定自己应该选择什么样的课程。这是明显的信息超载问题。解决信息超载问题一个非常有 潜力的办法是推荐系统 ,它是根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户的个性化信息推荐系统【2】。和搜索引擎相比推荐系统通过研究用户的兴趣偏好,进行个性化计算,由系统发现用户的兴趣点,从而引导用户发现自己的 信息需求。一个好的推荐系统不仅能为用户提供个性化的服务,还能和用户之间建立密切关系,让用户对推荐产生依赖【3】。推荐系统现已广泛应用于很多领域,其中最典型并具有良好的发展和应用前景的领域就是电子商务领域。同时学术界对推荐系统的研究热度一直很高,逐步形成了一门独立的学科。数据挖掘(data mining,简称dm)是集统计学、人工知识、模式识别、并行计算、机器学习、数据库等技术的一个交叉性的研究领域【4】。apriori算法是一种最有影响的挖掘 布尔关联规则频繁项集的算法。经典的关联规则数据挖掘算法apriori 算法广泛应用于各种领域,通过对数据的关联性进行了分析和挖掘,挖掘出的这些信息在决策制定过程中具有重要的参考价值。其核心是基于两阶段频集思想的递推算法【5】。该关联规则在分类上属于单维、单层、 布尔关联规则。本课题将研究如何将apriori算法在课程推荐系统中应用,也就是将传统的应用在商业中较多的推荐系统应用在学生课程推荐上。借助apriori算法发掘学生本身各种数据之间的关系,此系统将帮助学生个性化的全面化的最优化的推荐课程。 2.国内外研究概况国内外学者已经从不同角度,不同侧重对基于数据挖掘的推荐系统进行了深入的研究与探讨。尤其是近年来,随着全世界对教育热点问题关注度的持续升温,许多新思想、新方法层出不穷。例如,用基于数据挖掘的算法研究学生成绩【6】。印度学者brijesh kumar baradwaj和saurabh pal在2011年发表的论文《mining educational data to analyze students performance》中提出一种通过分析学生考试成绩数据的方法来预测学生的表现。该方法首先通过在线考试系统获得学生的考试成绩数据,然后建立高校教育系统的数据挖掘模型,利用以id3决策树为主的机器学习方法对模型中的数据进行分类,最终达到预测学生在学校学习情况的目的【7】。与之相关的数据方法还包括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 》中描述了一种教学辅助系统就是对考试分析结果的再利用。该系统根据学生的学习情况,为学生提供必要的学习计划,督导学生按计划执行学习,帮助学生顺利通过最终的学科测验【8】。此类方法都是典型的机器学习方法。它们需要采集学生的多种信息数据作为算法的分析基础,通过多种机器学习方法相结合的方式构造数据挖掘模型,并将构造好的分析模型应用于具体的分类和回归问题中去。 3.应用前景推荐系统现已广泛应用于很多领域,其中最典型并具有良好的发展和应用前景的领域就是电子商务领域【9】。同时学术界对推荐系统的研究热度一直很高,逐步形成了一门独立的学科。典型的客户端个性化服务系统 有斯坦福大学的lira、麻省理工学院的letizia、加州大学的syskillwebert、卡内基梅隆大学的personalweb-watcher等【10】。 apriori算法广泛应用于商业中,应用于消费市场价格分析中,它能够很快的求出各种产品之间的价格关系和它们之间的影响【11】。apriori算法应用于网络安全领域,比如时候入侵检测技术中。apriori算法被广泛应用于移动通信领域等等【12】。而本课题将经典数据挖掘算法apriori与教育体系中的课程推荐系统结合,可以帮助学生推荐课程,成功解决信息超载等问题,其应用前景,是十分可观的。4.参考文献
[1]陈婷.基于隐私保护的个性化推荐系统的研究与实现[d].上海:复旦大学,2008:4-5.
[2]王国霞,刘贺平.个性化推荐系统综述[j].计算机工程与应用,2012,34(7):6676.
2. 研究的基本内容和问题
2.1研究目标本课题研究的主要目标是将apriori算法成功priori算法成功应用于推荐系统中,为学生推荐合适的课程。
将数据库理论知识以及socket网络编程转化为实践经验,并借此进一步理解数据库理论;掌握数据库应用程序的开发步骤、设计方法和编程技巧,熟练使用sql语言,学习java网络编程,学习并熟练使用sql server数据库;在编程过程中,提高自己的动手能力,以及分析和解决问题的能力,为将来能够开发出更高效的推荐系统打好基础。
2.2研究内容推荐系统有3个重要的模块:用户建模模块、推荐对象建模模块、推荐算法模块。
3. 研究的方法与方案
3.1研究方法通过查询书籍,理解apriori算法,学习系统设计相关语言和技术,通过自己了解的专业知识,进行数据库构造,进行系统设计。
3.2技术路线 3.2.1技术路线图 (见附件) 3.2.2关键技术算法的实现 apriori算法是一个挖掘关联规则的算法,是agrawal等设计的一个基本算法,这是一个采用两阶段挖掘的思想,并且基于多次扫描事务数据库来执行的。
apriori算法的设计可以分解为两步骤来执行挖掘:第一步,从事务数据库(d)中挖掘出所有频繁项集。
4. 研究创新点
运用Apriori算法,根据数据库中学生已有的各类信息,例如,年级,专业,爱好,已选课程,成绩等信息,进行数据挖掘后,给出个性化的全面化的课程推荐,节省了学生大量四处询问的时间以及精力,更好的帮助学生过滤无效或者有碍信息,帮助学生更优的选择课程。
5. 研究计划与进展
12 月 1 日 12月20日 完成毕业设计开题报告; 12 月20日 1月20日 准备各种参考资料、充实所需知识,熟悉语言及工具; 1 月20日 2月20日 实现算法并与系统结合; 2 月20日 3月20日 调试系统,不断完善系统功能; 3 月20日 4月20日 毕业设计论文的撰写,准备答辩。
