基于内容的微博推荐系统-毕业论文.doc

上传人:滴答 文档编号:1811892 上传时间:2019-03-16 格式:DOC 页数:36 大小:1,012KB
下载 相关 举报
基于内容的微博推荐系统-毕业论文.doc_第1页
第1页 / 共36页
基于内容的微博推荐系统-毕业论文.doc_第2页
第2页 / 共36页
基于内容的微博推荐系统-毕业论文.doc_第3页
第3页 / 共36页
基于内容的微博推荐系统-毕业论文.doc_第4页
第4页 / 共36页
基于内容的微博推荐系统-毕业论文.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、哈尔滨工业大学本科毕业设计(论文)- I -摘 要随着互联网的高速发展,人们逐渐走入了信息过载时代,大量有用的、无用的信息充斥在互联网的各个角落,而用户的需求并不是任何时候都很明确传统的分类目录和搜索引擎并不能满足需求,一些科学家和工程师提出了联系用户和物品解决信息过载问题的推荐系统。目前推荐系统已经广泛运用与互联网中,在微博平台上也有基于好友关系的推荐、基于用户个人信息的推荐而基于微博信息本身微博内容的推荐却很少见到。本文在 win7 操作系统下使用C#作为开发语言、使用 Microsoft Visual Studio 2010 作为开发工具,通过开发一款以基于内容的微博推荐为特色的新浪微博

2、客户端来研究基于内容的微博推荐系统能否在微博平台上使用。系统通过对微博信息的分词、分类等操作获取每条微博信息的类别信息并以此为依据获取用户兴趣和做出推荐。关键词:推荐系统;微博;基于内容; 哈尔滨工业大学本科毕业设计(论文)- II -AbstractWith the rapid development of Internet, people gradually get into the era of information overload.A large number of useful, useless information filled every corner of the Int

3、ernet.But the needs of users at any time is not very clear traditional classification directories and search engines can not meet needs.Some scientists and engineers put forward a recommendation system to contact user and solve the problem of information overload.Non the Weibo platform is based on t

4、he recommendation of a friend relationship, based on the recommendation of the users personal information based on the information itself Weibo the recommendation systems have been widely used in the Internet.(Weibo Recommended rarely seen content).In this paper, in order to develop a content-based

5、recommendations for the characteristics of Weibo .Sina Weibo client to research content-based Weibo Recommended system can use the Weibo platform.System through the Weibo information such as word segmentation, classification of operation for each post information access on the basis of the category

6、information and users interest and make recommendations.keywords: Recommended system; Weibo; based on the content;哈尔滨工业大学本科毕业设计(论文)- III -目 录摘 要 .IAbstract .II第 1 章 概述 .11.1 课题背景 .11.1.1 推荐系统使用现状 .11.1.2 微博推荐研究现状 .21.2 本文主要工作内容 .3第 2 章 微博推荐系统需求分析与系统总体设计 .42.1 需求分析 .42.1.1 功能需求 .42.1.2 性能需求 .52.2 总体设

7、计 .62.2.1 系统架构设计方案 .62.2.2 功能架构设计方案 .62.3 开发环境和开发工具 .92.3.1 开发语言 .92.3.2 开发工具 .92.3.3 开发环境 .92.4 本章小结 .9第 3 章 微博推荐系统详细设计 .103.1 用户登录详细设计 .103.2 发表微博详细设计 .133.3 微博展示详细设计 .133.4 微博推荐详细设计 .153.4.1 数据库设计 .163.4.2 类设计 .163.4.3 微博推荐功能详细设计 .203.5 小结 .23第 4 章 微博推荐系统实现和测试 .254.1 系统登录实现和测试 .25哈尔滨工业大学本科毕业设计(论文

8、)- IV -4.1.1 系统登录实现 .254.1.2 系统登录测试 .264.2 系统主界面实现和测试 .264.2.1 系统主界面各功能测试 .284.3 系统系能测试 .284.4 本章小结 .29结 论 .30参考文献 .31致 谢 .32哈尔滨工业大学本科毕业设计(论文)- 1 -第 1 章 概述1.1 课题背景本课题来源于国家自然科学基金青年基金项目“基于社会化网络的信息推荐方法研究” 。作为项目的一部分本课题主要研究基于内容的推荐系统在新浪微博上的使用。1.1.1 推荐系统使用现状推荐系统是根据用户历史行为数据在海量的信息中为用户推荐出其感兴趣的信息,推荐系统的基本任务是联系用

9、户和物品,解决信息过载问题。目前推荐系统已经广泛应用于电子商务、电影和视频、音乐、社交网络、阅读、基于位置的服务、个性化邮件和广告等领域。推荐系统给这些领域带来了巨大了经济利益和极强的个性化体验。电子商务网站是个性化推荐系统的一大应用领域。著名的电子商务网站亚马逊是个性化推荐系统的积极应用者和推广者,被 RWW(读写网)称为“推荐系统之王” 。亚马逊的推荐系统深入到了其各类产品中,其中最主要的应用有个性化商品推荐列表和相关商品的推荐列表。个性化推荐列表采用了一种基于物品的推荐算法(item-based method) ,该算法给用户推荐那些和他们之前喜欢的物品相似的物品。除了个性化推荐列表,亚

10、马逊另一个重要的推荐应用就是相关推荐列表。当你在亚马逊购买一个商品时,它会在商品信息下面展示相关的商品。个性化推荐体统给亚马逊带来的商业价值和对亚马逊的意义:亚马逊的前科学家 Greg Linden 在他的博客里曾经说过,在他离开亚马逊的时候,亚马逊至少有 20%(之后的一篇博文则变更为 35%)的销售来自于推荐算法 3;其 CEO Jeff Bezos 在接受采访时曾经说过, 亚马逊 相对于其他电子商务网站的最大优势就在于个性化推荐系统,该系统让每个用户都能拥有一个自己的在线商店,并且能在商店中找到自己感兴趣的商品 4。在电影和视频网站中,个性化推荐系统也是一种重要的应用。它能够帮助用户在浩

11、瀚的视频库中找到令他们感兴趣的视频。在该领域成功使用推荐系统的一家公司就是 Netflix,它和 亚马逊是推荐系统领域最具代表性的两家公司。哈尔滨工业大学本科毕业设计(论文)- 2 -从 Netflix 的推荐理由来看,它们的算法和亚马逊的算法类似,也是基于物品的推荐算法,即给用户推荐和他们曾经喜欢的电影相似的电影。至于推荐系统在 Netflix 中起到的作用,Netflix 在宣传资料 5中宣称,有 60%的用户是通过其推荐系统找到自己感兴趣的电影和视频的。个性化推荐系统在个性化音乐网络电台中的应用。目前有很多知名的个性化音乐网络电台。国际上著名的有 Pandora 和 Last.fm,国内

12、的代表则是豆瓣电台。最近几年互联网最激动人心的莫过于以 Facebook 和 Twitter 为代表的社交网络应用,在社交网络中好友之间可以信息分享和传播。在社交网络中推荐系统已经得到了广泛的应用,它能利用用户的社交网络信息对用户进行个性化的物品推荐;能进行信息流的会话推荐;为用户推荐好友。经常使用的 qq、人人网都有为用户推荐好友、为用户推荐可能感兴趣日志的机制。综上可见推荐系统已经广泛应用于互联网的各个领域,它出现在网络的各个角落,上商务网站买东西它会推荐物品、上社交网络它会推荐好友、上视频网站它会推荐感兴趣的视频、上微博它会给推荐用户感兴趣的博主。1.1.2 微博推荐研究现状在微博上关于

13、推荐的研究也有很多。大部分是进行好友推荐、散列标签(Hash tag)推荐或者新闻推荐,而对于微博中主要的载体,简短却包含海量实时信息的微博内容推荐的研究则不多。微博推荐有以下三个难点:(1)用户的活跃程度低。在传统的推荐系统中,用户登录一个推荐系统,就是为了选择一些他想要的资源。而在微博推荐中,许多用户上微博,更多的时间处于“看微博” ,而不是“发微博” ,因此很难直接获得他们的显式反馈信息,也难以对他们的兴趣进行学习和预测。 ( 2)数据的稀疏性和不对称性。在传统的推荐问题中,用户和资源一般是同一个数量级的。但是在微博推荐问题中,由于微博数据海量的特点,微博的数量和增长速度远远大于用户的数

14、量和增长速度。 (3)用户兴趣的动态变化。微博的话题一直紧随现实世界的发展,因此微博上话题不断变化,用户的兴趣也随之变化。在传统推荐问题中,往往是用户根据兴趣选择资源。在微博推荐中,则是不断出现的微博改变着用户的兴趣,再由用户选择喜欢的微博。因此用户的兴趣一直在动态变化,很难找到一个用户长时间感哈尔滨工业大学本科毕业设计(论文)- 3 -兴趣的话题。推荐系统中大部分研究都是利用系统中的一些显式信息来进行学习和预测。显式信息指的是由用户主动提供给网站的信息,如用户的资料、用户喜爱的资源。而与显式信息对应的隐式信息,指的是网站自动获得的信息,如用户的浏览时间、上下文环境等。在现实世界中,大量的信息

15、都是隐式信息而不是显式信息。相比显式信息,隐式信息不需要用户主动提供,因此更容易在实际应用中被使用。事实上,在用户浏览的过程中,浏览器和服务器都已经记录了大量的隐式信息,可以通过各种方法从后台数据库中和浏览日志中挖掘出来。在微博系统中,也存在着多种隐式信息。例如,用户发出微博的时间、用户浏览微博时上下文环境、用户与其他用户之间的好友关系。针对以上难点,有关研究人员提出了一种基于贝叶斯个性化排序(Bayesian personalized ranking,BPR)的微博推荐算法 9。该算法的主要思想是,利用贝叶斯最大后验估算求出微博对之间的全序关系,从而获得用户对微博的个性化排序。推荐算法联系用

16、户与物品之间一般有三种方法:好友关系、用户爱好、用户历史数据。好友关系是跟据好友之间的爱好具有相似之处而把用户好友喜欢的物品推荐给用户;几乎所有的网站在用户注册的时候都要求用户填写个人信息,其中就有用户兴趣爱好一栏,通过用户填写的兴趣爱好内容给用户做出推荐是联系用户与物品的一种方法;用户历史数据是用户在以往操作中产生的数据,通过用户历史数据分析出用户的兴趣并以此为依据做出推荐。1.2 本文主要工作内容本文主要研究基于内容的微博推荐系统,如何在微博上使用推荐系统为用户进行个性化推荐,推荐的依据则是用户以前发表的微博信息的内容。本文使用新浪微博作为推荐系统的载体开发一款以基于内容的个性化推荐为特色

17、的新浪微博客户端(以下简称新浪微博客户端) ,为此主要解决一下几个问题:(1)新浪微博 API 使用;(2)基于内容对微博进行分类;(3)中文分词;(4)推荐方法的选择。哈尔滨工业大学本科毕业设计(论文)- 4 -第 2 章 微博推荐系统需求分析与系统总体设计本章主要论述基于内容的微博推荐系统通过开发一款新浪微博客户端来实现并对这款客户端进行需求分析和总体设计。2.1 需求分析2.1.1 功能需求本小节对系统功能进行需求分析。新浪微博客户端,需要系统能够发表微博、显示用户和好友发表的微博以及根据以往用户发表的微博信息为用户推荐近期关注度比较高的公共微博信息。其中微博推荐是本系统最主要特色,它要

18、求系统能够根据用户发表的微博信息内容为用户做出推荐。2.1.1.1 登录系统使用之前需要登录认证,系统登录需要能够使用新浪微博账号进行登录。2.1.1.2 发表微博用户能够在登录以后发表 140 字以内的文字微博或者发表 140 字以内带有图片的图文微博。 2.1.1.3 微博推荐这个部分是本系统的主要功能,根据用户以往发表的微博信息的内容为用户做出推荐,推荐一些用户感兴趣的公共微博信息给用户。通过四步完成推荐:微博下载、确定用户兴趣、用户对某条微博感兴趣程度、做出合理推荐。微博下载:要想进行微博推荐就需要大量的微博信息的数据,而微博信息都存储在各大微博平台的服务器中,如何才能下载这些信息呢?

19、各大微博平台给第三方提供了微博 API 接口,通过这些接口能方便的下载服务器中的微博信息。这里需要能够下载两个方面的微博数据一是最近几天关注度高的微博信息(以下称为待推荐微博) ;二是某个用户发表的所有微博信息,考虑到用户感兴趣的内容可能会随着时间、环境、心情发生改变,用户发表的所有微博信息应该是近期所发表的所有微博信息(以下成为个人微博信息) ,这个时间大概是两哈尔滨工业大学本科毕业设计(论文)- 5 -个月左右。将下载的个人微博信息和待推荐中的每条微博信息保存下来,为接下来的推荐提供数据支持。确定用户兴趣:要想知道用户对哪些微博信息感兴趣首先需要对微博信息进行分类,要想对微博信息分类首先要

20、进行微博信息的分词。所以确定用户的兴趣要走两步:分词、分类。分词是将下载的所有微博信息的内容按照中文分词技术分割成一个一个单独的词,再根据需要去除其中的虚词,留下需要的有意义的名词和动词,形成各个微博信息对应的词向量。分类是使用分类算法将分词产生的每条微博信息的词向量进行类别的划分,确定每条微博信息所属的类别。用户的兴趣则是根据用户发表微博所属的类别确定。根据用户发表的微博信息在各个类别中所占的比重对用户兴趣做出归纳,之后从待推荐微博中推荐出最合理的一组微博推荐给用户。2.1.1.4 系统用例通过需求分析,得到如图 2-1 所示的系统用例图。图 2-1 新浪微博客户端用例图2.1.2 性能需求

21、待推荐的微博应该具有实时性,每次推荐的内容不应该完全一样;推荐的微博信息应该能够涵盖用户大部分兴趣,即推荐的覆盖率问题;对于一个新用哈尔滨工业大学本科毕业设计(论文)- 6 -户或者没有发表过微博的用户应该也能做出一个合理的微博推荐,即系统冷启动问题;系统登录响应时间、微博加载时间和微博推荐时间不能太长,要在用户能够忍受的范围之内,对于推荐的结果系统需要提供一种验证机制。2.2 总体设计根据系统的需求将系统主要分为四个功能,登录,发表微博、查看微博和微博推荐。其中登录使用 OAUTH 模拟认证;发表微博和查看微博只需要使用新浪微博 API 就能实现;微博推荐则是本系统的重点:首先系统根据需要下

22、载登录用户的个人微博信息和待推荐微博信息;然后根据分类算法对每一条用户微博信息进行分类确定用户兴趣;之后对每条待推荐微博进行分类以确定该条微博是否是用户感兴趣的微博;最后从用户感兴趣的待推荐微博信息中选择一个推荐队列推荐给用户。2.2.1 系统架构设计方案系统为三层架构,逻辑层、展示层、数据层组成如图 2-2 微博推荐系统架构图。用户界面是用户与系统的交互层,推荐用户账号、最终推荐微博数量输入以及最终推荐结果显示都是在这个界面完成;逻辑层由微博下载、分词、分类、推荐四个模块组成,主要使用数据层的数据为用户做出推荐并将推荐结果通过展示层展示给用户;数据层主要是系统从新浪微博服务器中下载的微博信息。S Q L S e r v e r 数 据 库 、 类 别 文 件微 博 下 载 、 分 词 、 分 类 、 推 荐用 户 界 面数据层逻辑层展示层图 2-2 微博推荐系统架构图2.2.2 功能架构设计方案本客户端由登录、发表微博、展示微博和微博推荐四个部分组成。系统登录使用新浪微博开发平台提供的 OAuth 认证,新浪微博客开发平台为了保障新浪微博的安全性第三方软件开发过程中微博登录还需要登录账号在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。