技术文档

开发需求分析

经过初步讨论,我们决定了需要增加的功能以及开发策略。

功能

◇提供作文范本给需要参考的中小学生,可以发现自己感兴趣领域的好论文,也可以发现别人论文中的好句子和好词汇,运用到自己的文章中。

◇自动对爬取的每一篇作文进行处理,分类,抽取关键字和优美句子,省去了人工。

◇实现作文分类,给定一篇作文,能够自动返回作文的类别。

◇作文搜索,根据关键词,搜索作文、优美句子等。

◇文章评论、点赞、like or hate 功能。

开发策略

首先实现后台算法,将数据处理好,搭建数据库,与此同时,完成前端demo,先实现基础功能,将前端与后端衔接,再逐步完善各部分内容。

框架

前端框架:html5+CSS+JS+PHP

后台框架:php + mysql

后端算法:爬虫 + SVM+NLP算法

基本架构

前端界面直接与用户进行交互。

后端系统负责处理用户的请求,并且衔接搜索系统,为用户提供想要的数据。

前端架构设计

功能:

 

登录与注册

关键词搜索

类别选择

文章预览全文显示

文章收藏,顶,踩

 

前端新增功能原型设计图

(仅为了展示功能效果,最终效果可能与原型图不同)

 

 

 

后端架构设计

后端基本模块

数据爬取:利用爬虫算法从全网爬取作文,并对数据进行清洗

数据处理:

作文分类:

先利用jieba分词工具,对文章进行分词,再利用gensim工具得到128维的词向量,最后以得到的词向量为输入,搭建神经网络模型进行分类。模型框架如下:

 

  关键字提取:

    title_words生成算法

      统计所有在标题分词中出现过的词的次数 word frequency

      用词性过滤标题分词,过滤结果 word frequency排序,取>= 11 (now 11)

    compute_* 代表算法

      以下算法均在最后一步将结果限定在 title_words*

    1. tf

    标题词正文词一起算 tf

            权重 4 : 1

            根据tf值排序

    2. w2v

            使用word2vec的词向量

            标题正文 4 : 1 生成查询词语列表

            根据标题和正文中词出现的总次数 >= word frequency (now 0) 过滤查询词语列表

            将结果列表按word2vec的相似度排序

    3. w2v_limit

            查询词语列表跟 2算法相同    

            将结果过滤在仅限标题/正文出现过

    4. w2v_tf

            标题正文 4 : 1 生成查询词语列表

            查询词语列表中词tf >= min tf (now 0.015) 过滤查询词语列表

            将结果列表按 word2vec 相似度排序

    5. w2v_tf_limit

            查询词语列表 4算法相同

            将结果过滤在仅限标题/正文出现过

            由于过滤太多,会出现标签数目不足

    7. tf_w2v

            查询词语列表 2算法相同

            doc 标题正文 4 : 1  生成的列表

            timesdoc中出现次数

            value = similarity  *  sqrt( tf(w)    /  max(  tf(w) of doc ) )

                  = similarity  *  sqrt( times(w) /  times( max_tf_word ) )

            value排序

            由于过滤太多,会出现标签数目不足   

    通过以上七种算法对关键字进行抽取,比较优劣,选取最终结果。

 

优美句子提取:

根据一般修辞手法的通用格式,提取出相应的句子,现已实现比喻句和排比句的提取。

比喻

      明喻 本体喻体都出现,中间有比喻词(像、似、仿佛、犹如)

      暗喻 本体喻体都出现,中间无比喻词(是、成了、变成)

      借喻 本体不出现,直接叙述喻体

      博喻 连用几个比喻从不同角度,运用不同的相似点对同一本体进行比喻

排比

      成分排比

      例如:好像失了东三省,党国倒愈像一个国,失了东三省谁也不响,党国倒愈像   一个国,失了东三省只有几个学生上几篇呈文,党国倒愈像一个国,可以博得友邦  人士的夸奖,永远下去一样。

      句子排比

      例如:他们的品质是那样的纯洁和高尚,他们的意志是那样的坚韧和刚强,他们   的气质是那样的淳朴和谦逊,他们的胸怀是那样的美丽和宽广。

通过分析所得对文章中的句子进行处理,给每个句子进行打分,分数超过一定范围的被认为是优美句子。

 

数据库:利用mysql,将数据处理的结果存入数据库之中,方便之后的查询。

 

(整理人:程昊、欧阳思琪)

posted @ 2016-12-11 22:09  软工小组1  阅读(176)  评论(1编辑  收藏  举报