目录详细设计说明书.doc_第1页
目录详细设计说明书.doc_第2页
目录详细设计说明书.doc_第3页
目录详细设计说明书.doc_第4页
目录详细设计说明书.doc_第5页
已阅读5页,还剩7页未读, 继续免费阅读

下载本文档

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

文档简介

目录1引言22系统的结构23网页信息采集及数据预处理模块设计说明34候选话题发现模块设计说明65话题能量计算模块设计说明96热点话题排序模块设计说明11详细设计说明书1引言1.1编写目的a. 定义系统总体开发过程,作为开发人员项目开发的基础;b. 撰写此文档的目的在于让开发人员明确开发过程,各部分接口及数据传递过程;c. 作为软件总体测试和项目验收的依据;1.2背景a 待开发软件系统的名称:BBS热点话题发现系统b 本项目的用户:网站访问者1.3定义a. BBS话题:BBS话题是由一个或者多个讨论类似内容的BBS主题集合1.4参考资料a 项目需求分析报告2系统的结构如图2-1为BBS热点话题发现系统的框架图:图2-1 BBS热点话题发现系统的框架图3网页信息采集及数据预处理模块设计说明3.1程序描述网页信息采集及数据预处理子系统主要分为:网页数据采集、网页文本解析、网页文本分词及去除停用词四部分。3.2功能如下图3-1为网页信息采集及数据预处理子系统的IPO图:图3-1 网页信息采集及数据预处理子系统的IPO图3.3性能本模块采用多线程的方式,同时对数据进行解析、分词、过滤的操作,大大提高了运行速度,使得系统可以快速的处理大量数据;3.4流程逻辑图3-2 网页信息采集及数据预处理子系统流程图3.5接口用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。1. ICTCLAS 接口调用; 将下载的API文件拷到系统根目录下; 将ICTCLAS类放入相应接口路径下; 加载dll文件;2. 数据库接口及相关数据结构数据库表结构设计如下:Post表:名类型允许为空意义PidIntno主键subIDVarcharYes识别每个帖子的唯一标识topicIDVarcharYes主题帖标识urlVarcharYes帖子的URLBoardVarcharYes帖子所在版面TitleVarcharYes帖子标题authoridVarcharYes发帖人idAuthornameVarcharYes发帖人名ContentTextYes帖子内容IssuetimeDatetimeYes帖子发表时间QuerytimedatetimeYes插入数据库时间IPvarcharYes发帖IPWord表:名类型允许为空意义widIntNo主键sPOSVarcharYes词性wordvarcharYes词语PostSeg表:名类型允许为空意义psidIntNo主键pidIntNoFKwidintNoFKweightDoubleYes词语在文档中的权值segtimeDatetimeYes分词过滤时间typevarcharyes词语在帖子中的位置3.6限制条件由于mysql数据库单表不能超过4G的限制,本程序将数据存储后不能超过4G;3.7尚未解决的问题ICTCLAS不能开启多线程调用;4候选话题发现模块设计说明4.1程序描述在数据处理完成之后,对需处理的时间片依次聚类,探测话题的存在,以找出热点话题。4.2功能如下图4-1为候选话题发现模块的IPO图图4-1 候选话题发现模块IPO图4.3性能由于采用单边增量聚类的方法,每个时间片处理的数据量缩减,使得聚类速度加快;4.4算法1. 增量向量空间模型对分词后的主题进行文本表示,应用改进后的TFIDF评估函数对各主题的词项进行特征提取。改进后的TFIDF计算主题的词项权重:其中,表示词项j在本主题出现的频数;表示词项j在单个主题出现的最大频数;表示词j所处的文档位置的权重(标题,正文等);表示所有位置权重的最大值;表示命名实体的权重(人命名、地名、机构名);表示主题集中主题总数;表示包含词项j的主题数;表示词项j在主题d中的频数;表示词项j的逆主题频数;表示词项j在主题d中的权重;随BBS数据处理时间推移变化,需动态更新:其中,表示词项j在t时刻的主题频数;表示词项j在t-1时刻的主题频数;表示在t时间片中新加入的BBS主题个数。话题的词项权重更新方法:其中,表示词项j在以探测到的话题T中的权重;表示词项j在新进入的主题d中的权重;表示参数,取值范围在0到1之间。2. 增量单边聚类一个话题的所有主题在时间上具有连续性,故只要比较与新主题时间相邻的话题与新主题之间的相似性。热点话题的提取过程按时间次序依次进行,聚类形成的候选话题都需要经过能量的更新和衰变,所以与新主题比较的是上一个时间片进行能量计算后尚存活的话题。 算法步骤:1) 主题到来后,依照对该主题进行空间向量表示,形如(,创建一个包含主题的话题簇。2) 新主题到来,根据更新方法更新,对主题进行增量向量空间表示。3) 根据上一个时间片结束时尚存活的候选话题簇类集,计算新主题与每个簇类的相似度,大于一定阈值,则将该话题加入该簇,并对话题类簇的向量进行更新:i.ii. 否则创建新的话题簇类。4) 返回步骤2)继续执行。4.5接口相关数据库表如下:Topic表:名类型允许为空说明TidIntno主键Energydoubleyes话题能量值vectorvarcharyes本时间片的营养值TopicPost表:名类型允许为空说明TpidIntNo主键TidIntNoFKPidIntNoFKSimilarityDoubleYes相似度ClustertimedatetimeYes聚类时间Nutritiondoubleyes营养值4.6尚未解决的问题1. 需要用训练集测试阈值;2. 关于如何提高聚类算法处理速度的问题;5话题能量计算模块设计说明5.1程序描述在每一个时间片上进行候选话题发现之后,评估每个话题在本时间片结束时拥有的能量。(能量值可以表征当前话题在BBS讨论的热门程度)5.2功能如下图5-1为话题能量计算模块的IPO图:图5-1话题能量计算模块的IPO图5.3算法1、 相关参数及函数营养转换值:从输入文档中提取的营养增长率营养衰减值:一个时间片内营养的损失值.纯营养值:,由每个时间片上的组成的,表示不同话题不同的营养值。 话题的能量函数: ,其中自行设定, 表示时间片个数。BBS中每个帖子营养值计算公式为: (3-1) 其中,:表示帖子的营养值:表示帖子和话题之间的相似度:表示帖子被其他帖子引用的次数BBS中各主题的营养值计算公式为: (3-2) 其中,:表示时间片t上主题d所含的营养值:表示帖子p在时间片t上产生:表示帖子p属于主题d 定义BBS各话题的能量值计算公式为: (3-3) 2、 算法的具体步骤(1) 计算上一个时间片结束时话题T能量值所对应的营养值。通过对话题能量函数(3-3)求反函数即可得到该话题对应的营养值。(2) 计算该话题T在本时间片上所有帖子的营养值。(为话题内各贴),计算方法如公式(3-1)。(3) 计算该话题T在时间片结束时的营养总值。 (4) 计算当前时间片结束时该话题T的能量值。计算方法如(3-3)。(5) 对每个话题进行能量衰减:若,则对话题进行一定的衰减,衰减公式:若,则,从当前时间片结束时的话题集中去除该话题。(注:在本系统中,从当前观察点回溯3天进行候选话题提取,选取的时间片为3小时。)5.4接口数据库表见4.5。.5.5尚未解决的问题需要通过训练集确定参数营养转化率和营养衰减率;6热点话题排序模块设计说明6.1程序描述通过话题能量计算后保留的话题数量较多,浏览熟悉所有话题的可能性较小,需要对探测到的话题进行排序是十分必要的。单纯进行能量值大小进行热度排序很可能引入一些常规性的讨论话题,此类话题不具备热点话题的特征,不利于进行话题热度的讨论。因此需要设计一个新的热点话题排序模块。6.2功能如下图6-1热点话题排序模块IPO图:图6-1热点话题排序模块IPO图6.3算法1. 通过能量

温馨提示

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

最新文档

评论

0/150

提交评论