目 录

  1. 研究目标
  2. 分析方法与过程
    2.1. 总体流程
    2.2. 具体步骤
    2.3. 结果分析
  3. 结论
  4. 参考文献

1. 挖掘目标

本次建模目标是利用网络爬虫工具采集的大量网络舆情信息,采用数据挖掘技术,给予用户信息中的关键词赋权,分析用户信息中不同权重大小的关键词与网络舆情信息间的关系,挖掘用户与网络舆情信息的关联规则,使用关键词加权评分系统构建反映与用户最相关的网络舆情信息。从而可以发挥网络对社会监督的巨大作用,以及及时有效的处理网络舆情突发事件。

2. 分析方法与过程

2.1. 总体流程

本用例主要包括如下步骤:


步骤一: 编写 java 语言,在网络舆情信息资料库中进行 web 信息提取与关键词提取,对十项关键词(去除二个样本无差别变量:国别,照片),进行“or”逻辑规则搜索,得到相应关键词的网页地址。

步骤二: 在关键词词频统计的基础上,设置用户信息中十项关键词的权重。

步骤三: 基于二值法优化构建关键词加权评分系统(详细流程见图 2),将净化出关键词的网页进行评分。

步骤四:对网页的评分高低排序并归档,完成关联度分析。

2.2. 具体步骤

步骤一:web 信息提取与关键词提取

样本预处理

在用户信息的十二项关键词中,“国别”关键词在样本中均为“中国”,无法区别不同样本之间的差别,所以予以剔除。“照片”关键词只在三个样本中出现,相对全部样本而言样缺失值过多,所以予以剔除。

编写 java 语句,使其可以输入关键词并遍历“网路舆情信息”文件夹。对关键词使用“or”逻辑规则完成对“网络舆情信息”的搜索。“or”逻辑规则即搜索时只要含有任意一个关键词即符合搜索条件,可输出。

搜索结果如下:

由上表可知,在性别与住址频数中存在大量干扰信息,所以进一步修正搜索规则,对性别,住址单独出现的网址,予以剔除。

修正搜索结果如下:

步骤二: 关键词的权重设置

根据表二中的关键词频数,计算关键词权重。

关键词出现的频数越多,提供的信息的干扰性越强,有效性越低,因此笔者将出现频数越大的关键词设置较小的权重。

计算方法如下:
1.单个关键词权重系数=所有关键词频数之和−单个关键词频数所有关键词频数之和1. 单个关键词权重系数=\frac{所有关键词频数之和-单个关键词频数}{所有关键词频数之和}1.单个关键词权重系数=所有关键词频数之和所有关键词频数之和−单个关键词频数​

2.关键词权重=单个关键词权重系数∑单个关键词权重系数2. 关键词权重=\frac {单个关键词权重系数}{\sum 单个关键词权重系数}2.关键词权重=∑单个关键词权重系数单个关键词权重系数​

例:姓名权重系数=所有关键词频数之和−姓名频数所有关键词频数之和=1138941138=0.9174例:姓名权重系数=\frac{所有关键词频数之和-姓名频数}{所有关键词频数之和}=\frac{1138 94}{1138}=0.9174例:姓名权重系数=所有关键词频数之和所有关键词频数之和−姓名频数​=1138113894​=0.9174
姓名权重=姓名权重系数∑单个关键词权重系数=0.91749=0.1091姓名权重=\frac{姓名权重系数}{\sum 单个关键词权重系数} = \frac{0.9174}{9}=0.1091姓名权重=∑单个关键词权重系数姓名权重系数​=90.9174​=0.1091

将其余关键词代入上式公式,得关键词权重表如下:

步骤三:二值法优化构建关键词加权评分系统

  1. 将十项关键词权重转换为十维向量:
    σ\sigmaσ=(姓名,性别,住址,身份证号,电话号码, 出生日期,QQ号码,E-mail,MSN,附加关键字) =(0.1091,0.0812,0.1005,0.1101,0.0956, 0.111,0.0956,0.1109,0.1109,0.0822)

  2. 将单个网页中的关键词频数转换为十维向量:
    βij\beta_{ij}βij​=(姓名,性别,住址,身份证号,电话号码, 出生日期,QQ号码,E-mail,MSN,附加关键字)i =1,…,27,即用户信息.xls中的样本个数。 j =“网络舆情信息”文件夹中网页个数

  3. 运用二值法将向量βij\beta_{ij}βij​各分量中频数大于 0 的值记为 1,等于 0 仍记为 0。得出向量 βij1\beta_{ij}^1βij1​ 。

  4. 将向量βij1\beta_{ij}^1βij1​中的各分量分别乘于相应的权重值,得向量βij∗\beta_{ij}^*βij∗​ 。

例:某网页含有关键词频数结果:

则转换为向量β1\beta^1β1=(1,1,0,0,0,0,0,0,0,0),与关键词权重表(表三)相应分量相乘得出向量β∗\beta^*β∗=(0.1091,0.0812,0,0,0,0,0,0,0,0)。

  1. 对向量δ\deltaδ与向量β∗\beta^*β∗求余弦值,即cosθij=δ⃗⋅βij∗⃗∣δ∣∣βij∗∣cos \theta_{ij}= \frac{\vec{\delta} \cdot \vec{\beta_{ij}^*}}{|\delta| |\beta_{ij}^*|}cosθij​=∣δ∣∣βij∗​∣δ⋅βij∗​​​

二值法优化构建的关键词加权评分系统流程图如下:

步骤四:评分排序并归档

  1. 将步骤三中的cosθicos \theta_icosθi​计算出结果并从高至低排序,同时为了数据直观表现,笔者将cosθicos \theta_icosθi​的数值放大 100 倍。
  2. 建立分档规则:70 分及以上为优;50~70 分为良;30~50 分为中;低于 30 分为差
  3. 将数据按分档规则进行分档。

2.3. 结果分析

经计算结果如下:

  1. 用户信息中的“高连岳,周茂名,周世涛,陈志祥,黄浩”五个样本信息无法找到与 “ 网络舆情信息”文件夹中的网址有相匹配的关键词出现, 则算得的β1\beta^1β1 (0,0,0,0,0,0,0,0,0,0)。


因此向量δ\deltaδ与向量β∗\beta^*β∗的之间余弦值为 0,无法对上述用户信息进行评分排序并归档。

  1. 用户信息中的“王林”在“网络舆情信息”文件夹中找到 3 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表五所示,根据步骤四中的评分标准与归档规则,“王林”与该 3 个网页的关联程度为“差”等。

  1. 用户信息中的“王力宏”在“网络舆情信息”文件夹中找到 1 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表六所示,根据步骤四中的评分标准与归档规则,“王力宏”与该 1 个网页的关联程度为“中”等。

  2. 用户信息中的“郑玉龙”在“网络舆情信息”文件夹中找到 18 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表七所示,根据步骤四中的评分标准与归档规则,“郑玉龙”与其中 1 个网页的关联程度为“良”等;与 8 个网页的关联程度为“中”等;与 9 个网页的关联程度为“差”等。

  1. 用户信息中的“丁羽心”在“网络舆情信息”文件夹中找到 4 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表八所示,根据步骤四中的评分标准与归档规则,“丁羽心”与其中 3 个网页的关联程度为“中”等;与 1 个网页的关联程度为“差”等。

  1. 用户信息中的“胡万林”在“网络舆情信息”文件夹中找到 13 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表九所示,根据步骤四中的评分标准与归档规则,“胡万林”与其中 1 个网页的关联程度为“良”等;与 12 个网页的关联程度为“中”等。

  1. 用户信息中的“李天”在“网络舆情信息”文件夹中找到 13 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十所示,根据步骤四中的评分标准与归档规则,“李天”与其中 1 个网页的关联程度为“良”等;与11 个网页的关联程度为“中”等。

  1. 用户信息中的“李江”在“网络舆情信息”文件夹中找到 9 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十一所示,根据步骤四中的评分标准与归档规则,“李江”与其中 5 个网页的关联程度为“中”等;与4 个网页的关联程度为“差”等。


9. 用户信息中的“黄明”在“网络舆情信息”文件夹中找到 3 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十二所示,根据步骤四中的评分标准与归档规则,“黄明”与这 3 个网页的关联程度为“中”等。


10. 用户信息中的“余晓明”在“网络舆情信息”文件夹中找到 158 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十二所示,根据步骤四中的评分标准与归档规则,“余晓明”与其中 157 个网页的关联程度为“良”等;与其中 1 个网页的关联程度为“中”等。


11. 用户信息中的“张望”在“网络舆情信息”文件夹中找到 11 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十四所示,根据步骤四中的评分标准与归档规则,“张望”与其中 7 个网页的关联程度为“中”等;与其中 4 个网页的关联程度为“差”等。


12. 用户信息中的“方小明”在“网络舆情信息”文件夹中找到 8 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十五所示,根据步骤四中的评分标准与归档规则,“方小明”与这 8 个网页的关联程度为“中”等;

13. 用户信息中的“张秋白”在“网络舆情信息”文件夹中找到 9 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十四所示,根据步骤四中的评分标准与归档规则,“张秋白”与其中 1 个网页的关联程度为“优”等;与其中 7 个网页的关联程度为“中”等;与其中 1 个网页的关联程度为“差”等。


14. 用户信息中的“王五”在“网络舆情信息”文件夹中找到 1 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十四所示,根据步骤四中的评分标准与归档规则,“王五”与这 1 个网页的关联程度为“中”等。


15. 用户信息中的“李世民”在“网络舆情信息”文件夹中找到 6 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十八所示,根据步骤四中的评分标准与归档规则,“李世民”与其中 1 个网页的关联程度为“中”等;与其中 5 个网页的关联程度为“差”等。

  1. 用户信息中的“钟建国”在“网络舆情信息”文件夹中找到 7 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表十九所示,根据步骤四中的评分标准与归档规则,“钟建国”与其中 7 个网页的关联程度为“中”等。


17. 用户信息中的“李龙”在“网络舆情信息”文件夹中找到 8 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表二十所示,根据步骤四中的评分标准与归档规则,“李龙”与其中 8 个网页的关联程度为“中”等。

  1. 用户信息中的“陈龙”在“网络舆情信息”文件夹中找到 8 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表二十一所示,根据步骤四中的评分标准与归档规则,“陈龙”与这 8 个网页的关联程度为“中”等。

  1. 用户信息中的“马小龙”在“网络舆情信息”文件夹中找到 1 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表二十二所示,根据步骤四中的评分标准与归档规则,“马小龙”与这个网页的关联程度为“优”等。

  1. 用户信息中的“胡万林”在“网络舆情信息”文件夹中找到 2 个网址中的关键词与此用户信息的关键词匹配,则向量β1\beta^1β1,得分,网址等详细信息如表二十三所示,根据步骤四中的评分标准与归档规则,“胡万林”与其中 1 个网页的关联程度为“良”等;与其中 1 个网页的关联程度为“中”等。

3. 结论

从上述的结果分析中,笔者发现用户的得分结果并不理想,用户信息与网页关键词匹配程度达到“中”等,“差”等居多,达到“优”等占极少数,而其中同时只出现性别和住址两个关键词的网页与用户信息匹配居多,而性别与住址两者包含的无效信息多。因此笔者的结果分析不能提供高的精确度保证结论的正确性。

代表性用户信息分析:

在结果分析中,笔者发现用户信息中“王力宏”的信息量少,出现的匹配关键词只有性别和住址,评分结果为“中”等,因“王力宏”为知名人士,而名人对自身的隐私保护相当严谨,以防止自身隐私泄露不应承担的负担。

在结果分析中,笔者发现用户信息中“余晓明”的信息量大,出现的匹配关键词有性别,电话号码,QQ 号码与附加关键字。评分结果多为“良”等,与之匹配的网页多为广告型网页,发布的信息多为联系方式,以方便销售产品,因此推论此人为广告商或是广告代理人员。

在结果分析中,笔者发现用户信息中“张秋白”的信息量大,原因在与之关键词匹配的网页中,有 1 个网页中的关键词完全与此用户信息的关键词匹配。则评分结果为“优”等。结果发现该网页内容为离婚协议。通过其他与此用户信息关键词匹配的网页,可以推此人为律师。

在结果分析中,笔者发现用户信息中“胡万林”的此人的信息重复出现两次,除了出生日期不同,其余关键词均相同。推论为用户为注册账号时,避免个人信息泄露过多,或是填写出生日期时选择错误,导致此种情况出现。

模型优点:笔者通过 java 程序,可以迅速完成对关键词的在“网络舆情信息”中的网页搜索,相比人工搜索省时省力,精准度大幅提高。同时也实现了关键词加权评分系统的一体化,即可以一步输出评分结果。不必分步计算结果,使用户可以更简单方便的取得评分结果,并在此基础上推导结论。

模型缺点:在关键词词频统计时,由于关键词性别与住址出现频数过多,导致其他关键词的权重区别不大,因此,为了区分关键词权重的不同,笔者将对性别,住址单独出现的网址,予以剔除。使得不同关键词的权重差异明显,但是按照笔者的思路,性别与住址这两个关键词的权重应该是在全部关键词权重中最小的两个,但是根据笔者的方法修改后,性别与住址的权重相对变大了,影响了在对关键词加权评分系统中的正常评分结果。

模型改进:在结果分析中,笔者发现许多用户信息中与之匹配关键词的网址都只出现了性别和住址,但这两个关键词的无效信息大,应予以删除,重新计算评分排名情况。

修正前评分排名情况:

修正后评分排名情况:

删除了同时只出现性别和地址的网页,使得用户信息的评分系统更能真实反映用户与网页的关联度。

4. 参考文献

[1]张义忠. 基于内容的网页特征提取[J].计算机工程与应用,2001,10

[2]何佳.网络舆情监控系统的实现方法[J].郑州大学学报,2010,10

[3]华秀丽.语义分析与词频统计相结合的中文文本相似度量方法研究[J].计算机应用研究,2012,03

[4]李实.中文网络客户评论的产品特征挖掘方法研究[D].哈尔滨:哈尔滨工业大学,2009

[5]何新贵.中文文本的关键词自动抽取和模糊分类[J].中文信息学报,1999,01

附录:

词频统计的程序代码:

package html;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
public class main_html {static boolean containsAny(String str, String searchChars){return str.contains(searchChars);
}
public static boolean deleteFile(String sPath) { boolean flag = false; File file = new File(sPath); // 路径为文件且不为空则进行删除 if (file.isFile() && file.exists()) { file.delete(); flag = true;} return flag;
}
public static double cos(int []a){int s1=0,s2=0;
for(int i=0;i<a.length;i++){s1+=a[i];
s2+=a[i]^2;
}
return s1/(Math.sqrt(s2)*Math.sqrt(a.length));
}
public static void main(String[] args) throws IOException {File file = new File("D:/sjwj2"); //文件夹的位置
File[] files = file.listFiles(); //得到文件夹下所有的文
件
File f;
FileInputStream ism;
InputStreamReader isr;
BufferedReader bs;
String info;
int [] count = {0,0,0,0,0,0,0,0,0,0}; //统计单个网页词频
的数组
int sum=0;
int a=0;
int [] c = {0,0,0,0,0,0,0,0,0,0}; //标记单个网页词频
的二值数组,用于筛选
int [] sum_count = {0,0,0,0,0,0,0,0,0,0}; //统计总词频的数
组中
String [][] key ={{"王林"," 男 "," 江西萍乡人
","360321196109183330",
"13338941845","1961-09-18","1961 年 9 月 18 日
","1961.09.18","345552","tiantianshang@163.com","asd@live.com","
贩毒"},
{"高连岳","男"," 大 连 理 工
","210213198512034662","15846576767","1985-12-03","3567457",
"122898868@qq.com","","凌分贝"},
{" 王力宏 "," 男 "," 广 西 玉 林
","450922199008194334","18674635914","1990-08-19","1990 年 8 月 19
日","1990.08.19",
"63472457","wyq@126.com","","金曲奖"},
{" 郑玉龙 "," 男 "," 广西玉 林
","450922198501078990","15320230485","1985-01-07","1985 年1 月7 日
","1985.01.07",
"383475421","yud@163.com","zhengyulong@live.com","郑玉龙","小 子","假小子"},
{" 丁 羽 心 "," 女 "," 山 西 沁 水 县 ","
440113197803028412","13640786439","2013-12-02","2013 年 12 月 2 日","2013.12.02",
"76295638","dingyuxin@163.com","dingyuxin@msn.com"," 丁于心","
丁书苗"},
{" 胡 万 林 "," 男 "," 四 川
","440113197803028412","13640786438","2013-12-02","2013 年 12 月 2 日","2013.12.02","76295638",
"dingyuxin@163.com","dingyuxin@msn.com","胡万林"},
{" 周茂名 "," 男 "," 海 南 文 昌
","412393199012147650","13348762495","1990-12-14","1990 年12 月 14
日","1990.12.14",
"76297621","zhoumaoming@163.com","maoming@msn.com","周茂名"},
{" 周世涛 "," 男 "," 海 南 文 昌
","412953199012147650","13348762495","1990-12-14","1990 年12 月 14
日","1990.12.14",
"76297621","zhoumaoming@163.com","maoming@msn.com","周世源"},
{" 李 天 "," 男 "," 北京市海淀区
","210422196107197904","13348762496","1964-04-01","1964 年4 月1 日
","1990.04.01",
"76295622","litianyi@163.c0m","litianyi@msn.com","李天一"},
{" 李 江 "," 男 "," 北京市海淀区
","370285198509212000","13348762497","1939-03-10","1939 年 3 月 10
日","1939.03.10",
"76295623","lishuangjiang@163.com","lishaungjiang@msn.com","
李双江"},
{" 陈志祥 "," 男 "," 江 西 省 抚 州 市
","440115198510085699","13348762498","1988-10-10","1988 年10 月 10
日","1988.10.10",
"76295624","chenzhixiang@163.com","chixiang@msn.com"," 陈 志 祥
"},
{" 黄 明 "," 男 "," 江西省抚州市
","440116198910094000","13640786426","1988-10-11","1988 年10 月 11
日","1988.10.11",
"76295625","huanging@163.com","huangming.@msn.com","黄明"},
{" 黄 浩 "," 男 "," 江西省抚州市
","440114199105117595","13640786427","1988-10-12","1988 年10 月 12
日","1988.10.12",
"76295626","hanghao@163.com","hanghao.@msn.com","黄浩"},
{" 余晓明 "," 男 "," 江 西 省 抚 州 市
","440113197803028412","13322838884","1988-10-13","1988 年10 月 13
日","1988.10.13",
"268033328","yuxiaoming@163.com","yuxiaoming.@msn.com","18924
889850","汽车出售"},
{" 张 望 "," 男 "," 北 京 市
","44018419821219673X","13640786429","1988-10-14","1988 年10 月 14
日","1988.10.14",
"76295628","zhanshang@163.com","zhanshan@msn.com","张三"},
{" 方小明 "," 男 "," 广 州 市
","440183197602106276","13640786430","1988-10-15","1988 年10 月 15
日","1988.10.15",
"76295629","fxm@163.com","fxm@msn.com","方小明"},
{" 张秋白 "," 男 "," 深 圳 市
","44018319790608271X","13640786431","1988-10-16","1988 年10 月 16
日","1988.10.16",
"76295630","ls@163.com","lisi@msn.com","李四"},
{" 王 五 "," 男 "," 江 门 市
","440105198509036000","13640786432","1988-10-17","1988 年10 月 17
日","1988.10.17",
"76295631","wangwu@163.com","wangwu@msn.com","王五"},
{" 李世民 "," 男 "," 海 珠 市
","440114198611218000","13640786433","1988-10-18","1988 年10 月 18
日","1988.10.18",
"76295632","maliu@163.com","maliu@msn.com","马六"},
{" 钟建国 "," 男 "," 北 京 市
","440111198505274000","13640786434","1988-10-19","1988 年10 月 19
日","1988.10.19",
"76295633","zjg@163.com","zjg@msn.com","钟建国"},
{" 李 龙 "," 男 "," 广 州 市
","44011419851001515X","13640786435","1988-10-20","1988 年10 月 20
日","1988.10.20",
"76295634","lilong@163.com","lilong@msn.com"," 李 龙"},
{" 陈 龙 "," 男 "," 深 圳 市
","440113199311063000","13640786436","1988-10-21","1988 年10 月 21
日","1988.10.21",
"76295635","chenlong@163.com","chenlong@msn.com","陈龙"},
{" 马小龙 "," 男 "," 江 门 市
","440116198109195000","13640786437","1988-10-22","1988 年10 月 22
日","1988.10.22",
"76295636","malxiaolong@163.com","maxiaolong@msn.com"," 马小龙
"},{" 胡 万 林 "," 男 "," 四 川
","440113197803028412","13640786438","1949-12-12","1949 年12 月 12
日","1949.12.12",
"76295637","huwanlin@163.com","huwanlin@msn.com","胡万林"},
{" 丁羽心 "," 女 "," 山西沁水县
","440113197803028412","13640786439","1955-01-01","1955 年1 月1 日
","1955.01.01",
"76295638","dingyuxin@163.com","dingyuxin@msn.com","丁于心","
丁书苗"}
};
for(int ii=0;ii<key.length;ii++){ //ii 表示第 ii 个用户
sum=0;
for(int i=0;i<files.length;i++){ //i 表示第 i 个文件
f = files[i];
ism = new FileInputStream(f);
isr = new InputStreamReader(ism);
bs = new BufferedReader(isr);
info=bs.readLine();
while(info!=null){for(int jj=0;jj<key[ii].length;jj++){ //jj 表示第
jj 个关键字if(containsAny(info,key[ii][jj]) && jj<=4){c[jj] = 1;
count[jj]+=1;
}
if((!key[ii][jj].equals("")) &&
containsAny(info,key[ii][jj]) && jj>=5 && jj<=7){count[5]+=1;c[5]=1;
}
if((!key[ii][jj].equals("")) &&
containsAny(info,key[ii][jj]) && jj>=8 && jj<=10){count[jj-2]+=1;c[jj-2]=1;
}
if(jj>10 && containsAny(info,key[ii][jj])){count[9]+=1;
c[9]=1;
} }
info = bs.readLine();
}
for(int k=0;k<count.length;k++){sum+=c[k];
}
if(sum==1 && (c[1]==1 || c[2]==1)){c[1]=0;
c[2]=0;
sum=0;
}
if(sum>0){for(int jj=0;jj<count.length;jj++){sum_count[jj]+=count[jj];
count[jj]=0;
c[jj]=0;
} }
else{for(int jj=0;jj<count.length;jj++){count[jj]=0;
c[jj]=0;
} }
sum=0;
ism.close();
isr.close();
bs.close();
sum=0;
}
System.out.println("已对第"+ii+"个用户完成搜索统计");
}
for(int k=0;k<count.length;k++){System.out.print(sum_count[k]+" ");
}
System.out.println("end");
} }

求权值的程序代码:

package html;
public class qz {public static void main(String[] args) {double []a={94,306,109,10,159,1,159,2,2,296}; //关键字词
频统计结果
double s_a=0;
for(int k=0;k<10;k++){s_a+=a[k];
}
double [] b= new double[10];
double [] c = new double[10];
double s_b=0;
for(int i=0;i<10;i++){b[i]=(s_a-a[i])/s_a;s_b+=b[i];
}
for(int j=0;j<10;j++){c[j]=b[j]/s_b;
}
for(int i=0;i<10;i++){System.out.print(c[i]+" "); //输出权值
} } }

求余弦值的程序代码:

package main_html;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
public class html_main {static boolean containsAny(String str, String searchChars){return str.contains(searchChars);
}
public static boolean deleteFile(String sPath) { boolean flag = false; File file = new File(sPath); // 路径为文件且不为空则进行删除 if (file.isFile() && file.exists()) { file.delete(); flag = true; } return flag;
}
public static double cos(int []a,double [] weights){double s1=0,s2=0,s3=0;
double [] b =new double[a.length];
for(int i=0;i<a.length;i++){b[i]=a[i]*weights[i];
}
for(int i=0;i<a.length;i++){s1+=b[i]*weights[i];
s2+=b[i]*b[i];
s3+=weights[i]*weights[i];
}
return s1/(Math.sqrt(s2)*Math.sqrt(s3));
}
public static void main(String[] args) throws IOException {File file = new File("D:/sjwj2"); //文件夹的位置
File[] files = file.listFiles(); //得到文件夹下所有的文
件
File f;
FileInputStream ism;
InputStreamReader isr;
BufferedReader bs;
String info;
int [] count = new int[10]; //统计词频的二维数组
double [] weights = {0.1019,0.0812,0.1005,0.1101,
0.0956,0.1110,0.0956,0.1109,0.1109,0.0822}; // 权
值数组
//录入关键字,日期有三种格式,附加关键字多值的做或搜索
String [][] key ={{"王林"," 男 "," 江西萍乡人
","360321196109183330",
"13338941845","1961-09-18","1961 年 9 月 18 日
","1961.09.18","345552","tiantianshang@163.com","asd@live.com","
贩毒"},
{"高连岳","男"," 大 连 理 工
","210213198512034662","15846576767","1985-12-03","3567457",
"122898868@qq.com","","凌分贝"},
{" 王力宏 "," 男 "," 广 西 玉 林
","450922199008194334","18674635914","1990-08-19","1990 年 8 月 19
日","1990.08.19",
"63472457","wyq@126.com","","金曲奖"},
{" 郑玉龙 "," 男 "," 广 西 玉 林
","450922198501078990","15320230485","1985-01-07","1985 年1 月7 日
","1985.01.07",
"383475421","yud@163.com","zhengyulong@live.com","郑玉龙","小 子","假小子"},
{" 丁 羽 心 "," 女 "," 山 西 沁 水 县 ","
440113197803028412","13640786439","2013-12-02","2013 年 12 月 2 日","2013.12.02",
"76295638","dingyuxin@163.com","dingyuxin@msn.com"," 丁于心","
丁书苗"},
{" 胡 万 林 "," 男 "," 四 川
","440113197803028412","13640786438","2013-12-02","2013 年 12 月 2 日","2013.12.02","76295638",
"dingyuxin@163.com","dingyuxin@msn.com","胡万林"},
{" 周茂名 "," 男 "," 海 南 文 昌
","412393199012147650","13348762495","1990-12-14","1990 年12 月 14
日","1990.12.14",
"76297621","zhoumaoming@163.com","maoming@msn.com","周茂名"},
{" 周世涛 "," 男 "," 海 南 文 昌
","412953199012147650","13348762495","1990-12-14","1990 年12 月 14
日","1990.12.14",
"76297621","zhoumaoming@163.com","maoming@msn.com","周世源"},
{" 李 天 "," 男 "," 北京市海淀区
","210422196107197904","13348762496","1964-04-01","1964 年4 月1 日
","1990.04.01",
"76295622","litianyi@163.c0m","litianyi@msn.com","李天一"},
{" 李 江 "," 男 "," 北京市海淀区
","370285198509212000","13348762497","1939-03-10","1939 年 3 月 10
日","1939.03.10",
"76295623","lishuangjiang@163.com","lishaungjiang@msn.com","
李双江"},
{" 陈志祥 "," 男 "," 江 西 省 抚 州 市
","440115198510085699","13348762498","1988-10-10","1988 年10 月 10
日","1988.10.10",
"76295624","chenzhixiang@163.com","chixiang@msn.com"," 陈 志 祥
"},
{" 黄 明 "," 男 "," 江西省抚州市","440116198910094000","13640786426","1988-10-11","1988 年10 月 11
日","1988.10.11",
"76295625","huanging@163.com","huangming.@msn.com","黄明"},
{" 黄 浩 "," 男 "," 江西省抚州市
","440114199105117595","13640786427","1988-10-12","1988 年10 月 12
日","1988.10.12",
"76295626","hanghao@163.com","hanghao.@msn.com","黄浩"},
{" 余晓明 "," 男 "," 江 西 省 抚 州 市
","440113197803028412","13322838884","1988-10-13","1988 年10 月 13
日","1988.10.13",
"268033328","yuxiaoming@163.com","yuxiaoming.@msn.com","18924
889850","汽车出售"},
{" 张 望 "," 男 "," 北 京 市
","44018419821219673X","13640786429","1988-10-14","1988 年10 月 14
日","1988.10.14",
"76295628","zhanshang@163.com","zhanshan@msn.com","张三"},
{" 方小明 "," 男 "," 广 州 市
","440183197602106276","13640786430","1988-10-15","1988 年10 月 15
日","1988.10.15",
"76295629","fxm@163.com","fxm@msn.com","方小明"},
{" 张秋白 "," 男 "," 深 圳 市
","44018319790608271X","13640786431","1988-10-16","1988 年10 月 16
日","1988.10.16",
"76295630","ls@163.com","lisi@msn.com","李四"},
{" 王 五 "," 男 "," 江 门 市
","440105198509036000","13640786432","1988-10-17","1988 年10 月 17
日","1988.10.17",
"76295631","wangwu@163.com","wangwu@msn.com","王五"},
{" 李世民 "," 男 "," 海 珠 市
","440114198611218000","13640786433","1988-10-18","1988 年10 月 18
日","1988.10.18",
"76295632","maliu@163.com","maliu@msn.com","马六"},
{" 钟建国 "," 男 "," 北 京 市
","440111198505274000","13640786434","1988-10-19","1988 年10 月 19
日","1988.10.19",
"76295633","zjg@163.com","zjg@msn.com","钟建国"},
{" 李 龙 "," 男 "," 广 州 市
","44011419851001515X","13640786435","1988-10-20","1988 年10 月 20
日","1988.10.20",
"76295634","lilong@163.com","lilong@msn.com"," 李
龙"},
{" 陈 龙 "," 男 "," 深 圳 市
","440113199311063000","13640786436","1988-10-21","1988 年10 月 21
日","1988.10.21",
"76295635","chenlong@163.com","chenlong@msn.com","陈龙"},
{" 马小龙 "," 男 "," 江 门 市
","440116198109195000","13640786437","1988-10-22","1988 年10 月 22
日","1988.10.22",
"76295636","malxiaolong@163.com","maxiaolong@msn.com"," 马小龙
"},
{"胡万林","男"," 四 川
","440113197803028412","13640786438","1949-12-12","1949 年12 月 12
日","1949.12.12",
"76295637","huwanlin@163.com","huwanlin@msn.com","胡万林"},
{" 丁羽心 "," 女 "," 山西沁水县
","440113197803028412","13640786439","1955-01-01","1955 年1 月1 日
","1955.01.01",
"76295638","dingyuxin@163.com","dingyuxin@msn.com"," 丁于心","
丁书苗"}
};int sum=0;
for(int ii=0;ii<key.length;ii++){ //遍历所有用户
sum=0;
System.out.println(key[ii][0]);
for(int i=0;i<files.length;i++){ //遍历所有文件
f = files[i];
ism = new FileInputStream(f);
isr = new InputStreamReader(ism);
bs = new BufferedReader(isr);
info=bs.readLine();
while(info!=null){ //遍历网页所有行
//关键字二值搜索,有为 1,无为 0
for(int jj=0;jj<key[ii].length;jj++){ //遍历用户
的所有关键字
if((!key[ii][jj].equals("")) &&
containsAny(info,key[ii][jj]) && jj<=4){count[jj]=1;
}
if((!key[ii][jj].equals("")) &&
containsAny(info,key[ii][jj]) && jj>=5 && jj<=7){count[5]=1;
}
if((!key[ii][jj].equals("")) &&
containsAny(info,key[ii][jj]) && jj>=8 && jj<=10){count[jj-2]=1;}
if(jj>10 && containsAny(info,key[ii][jj])){count[9]=1;
} }
info = bs.readLine();
}
//检查搜索结果,去除只有地址或性别被搜索到的网页
for(int k=0;k<count.length;k++){sum+=count[k];
}
if(sum==1 && (count[1]==1 || count[2]==1)){count[1]=0;
count[2]=0;
sum=0;
}
//输出搜索和计算的结果
if(sum>0){double c = cos(count,weights);
System.out.print(c+"余弦值:"+f.getName()+" ");
for(int k=0;k<count.length;k++){System.out.print(count[k]+" ");
count[k]=0;
}
System.out.println();
}
ism.close();
isr.close();
bs.close();
sum=0;
} }
System.out.println("end");
} }

改进后的算法:

//去除只有地址和性别被搜索到的网页
//count 数组标记各关键字的搜索情况,sum 表示搜索到的关键字数
if(sum==2 && (count[1]==1 && count[2]==1)){count[1]=0; //性别改为没搜索到
count[2]=0; //地址改为每搜索到
sum=0; //搜索到的关键字数为0 }

“泰迪杯”挑战赛 - 基于Java的面向网络舆情的关联度分析(附算法代码)相关推荐

  1. 面向网络舆情的关联度分析(一)

    面向网络舆情的关联度分析(一) 本文是对泰迪杯的官网上的优秀作品的思路摘抄和总结,夹杂一些博主自己的想法. 官网地址:http://www.tipdm.org/bdrace/tzjingsai/ 题目 ...

  2. “泰迪杯”挑战赛 - 基于用户协同过滤算法的电影推荐系统(附算法代码)

    目录 第 1 章 绪论 1.1.研究背景 1.2.国际发展形势第 2 章 基于用户协同过滤推荐技术 第 2 章 基于用户协同过滤推荐技术 2.1 电子商务推荐系统概述 2.2 协同过滤推荐技术 第 3 ...

  3. “泰迪杯”挑战赛 - 通过Java实现中央空调系统的数据分析与控制策略

    目 录录录录 挖掘目标 1.1 挖掘背景 1.2 挖掘目标 1.3 研究现状 分析方法与过程 2.1 流程分析 2.1.1 总体流程 2.1.2 变量分析 2.1.3 中央空调结构分析 2.2 具体步 ...

  4. “泰迪杯”挑战赛 - 基于非侵入式负荷检测与分解针对日常电器的电力数据挖掘

    目录 1.挖掘目标 2.分析方法与过程 2.1 问题 1 分析方法与过程 2.1.1 单个设备运行特征 2.1.2 实时用电量计算 2.2 问题 2 分析方法与过程 2.2.1 流程图 2.2.2 基 ...

  5. “泰迪杯” 挑战赛 - 基于市场资金流向分析的商品期货量化交易策略(附suibian代码)

    目录 基于市场资金流向分析的 Suibian 期货策略 摘要 1 问题重述 1.1 问题重述 2 符号说明及名字定义 3 问题分析与求解 3.1 资金流向指标的定义 3.2 持仓量.成交量和价格的关系 ...

  6. “泰迪杯” 挑战赛 - 利用协同过滤与卷积神经网络为电视产品制订智能化营销推荐

    目录 问题重述 模型假设 数据预处理 3.1 数据清洗 3.1.1 数据缺失的分析和处理 3.1.2 数据异常的分析和处理 3.2 数据规约 数据分析 4.1 电视产品体系图 4.2 收视用户体系图 ...

  7. 第七届泰迪杯挑战赛C题

    第七届"泰迪杯"数据挖掘挑战赛C题赛题和数据 网盘链接: https://pan.baidu.com/s/1VRIHBLqaTsfOMLnVmibo5A 提取码:L6X6

  8. 泰迪杯|第十一届“泰迪杯”挑战赛作品提交仅剩2天了!

    提交作品截止时间: 2023年4月28日 16:00:00 距离第十一届"泰迪杯"数据挖掘挑战赛提交作品结束时间只剩2天了,相信大家都在做着最后的更改.小编为大家整理了一些提交的步 ...

  9. 第十一届“泰迪杯”挑战赛作品提交仅剩2天了!!!

    提交作品截止时间: 2023年4月28日 16:00:00 距离第十一届"泰迪杯"数据挖掘挑战赛提交作品结束时间只剩2天了,相信大家都在做着最后的更改.小编为大家整理了一些提交的步 ...

最新文章

  1. 1.java局部变量 实例变量 类变量(静态变量)
  2. 前端学习(1927)vue之电商管理系统电商系统之美化一层循环的UI结构for循环渲染第三层结构
  3. anaconda卸载tensorflow时,收集不到包的解决方法
  4. python tkinter背景图片_如何在tkinter中有背景图像和按钮?
  5. js判断数组中重复元素并找出_javascript查找数组中重复元素的方法
  6. actor对自己不可见
  7. 从零开始学 Web 之 jQuery(二)获取和操作元素的属性
  8. ad13批量安装元件库_AD18元件库下载及导入方法
  9. 安卓开发——Intent跳转地图应用(百度地图、高德地图)
  10. Character与char的区别
  11. 电影推介2017-01-07
  12. XCode 6.x 越狱 真机调试
  13. [AutoVue开发手册]第二篇——AutoVue之Applet参数列表
  14. 查询计算机软件运行的时间,BootTime(电脑运行时间查询)
  15. 九年级计算机课程教案,九年级信息技术 5.2.3《计算机网络》教案
  16. 为云而生、多快好省,这就是星星海的style!
  17. D3D12渲染技术之混合
  18. ThinkPHP5 采集网页的指定内容
  19. python使用清华源镜像安装包
  20. C++:查验身份证(团体程序设计天梯赛)

热门文章

  1. 计算机专业申请,美国TOP20计算机专业大学申请建议
  2. 江南爱软装十大品牌 软装设计师主要做什么
  3. 【小波分析】连续小波变换的概念swt,cwt,dwt
  4. 前端从头搭建个人博客
  5. 时钟的时针、分针和秒针重合问题
  6. 坏人好当,好人难做!
  7. Linux——如何安装WPS
  8. 全球与中国IO-Link系统市场深度研究分析报告
  9. 有关酸雨,最近淋雨易得皮肤病!!!!!!!!!!!!!!!
  10. 算法开发常用软件列表