- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用c提取文本關键词
原理:1、先给本聚类内的所有文档进行分词,然后用一个字典保存每个词出现的次数
2、遍历每个词,得到每个词在所有文档里的IDF值,和在本聚类内出现的次数(TF)相乘的值
3、用一个字典(key是词,value是TF*IDF权重)来保存所有的词信息,然后按value对字典排序,最后取权重排名靠前的几个词作为关键词测试输入如下
================================
a?奥运?拳击?入场券?基本?分罄?邹市明?夺冠?对手?浮出?水面
a?股民?要?清楚?自己?的?目的
a?印花税?之?股民?四季
a?ASP.NET?自定义?控件?复杂?属性?声明?持久性?浅析
a?运动员?行李?将?“后?上?先?下”?奥运?相关?人员?行李?实名制
a?asp.net?控件?开发?显示?控件?内容
a?奥运?票务?网上?成功?订票?后?应?及时?到?银行?代售?网点?付款
a?某?心理?健康?站?开张?后?首?个?咨询?者?是?位?新?股民
a?残疾?女?青年?入围?奥运?游泳?比赛?创?奥运?历史?两?项?第一
a?介绍?一?个?ASP.net?MVC?系列?教程
a?在?asp.net?中?实现?观察者?模式?,或?有?更?好?的?方法?(续)
a?输?大钱?的?股民?给?我们?启迪
a?Asp.Net?页面?执行?流程?分析
a?杭州?股民?放?鞭炮?庆祝?印花税?下调?
================================
数据还是昨天的数据,但每个文章前面都加了个a,所以这个词的IDF肯定很低,如果单村用词频来提取关键词,这个a肯定被当场关键词了,所以要乘以IDF值来调整特征提取的精度。我们要用程序把上面的文档分成3类,并提取每个类的两个关键词
我给TFIDFMeasure类加了一个GetKeyword的方法,第一个参数是传入几个文档id列表,第二个参数是要在这几个文档里提取几个关键词,下面是使用该方法的代码
//4、初始化k-means算法,第一个参数表示输入数据,第二个参数表示要聚成几个类
WawaKMeans?kmeans?=?new?WawaKMeans(data,?K);
//5、开始迭代
kmeans.Start();
//6、获取聚类结果并输出
WawaCluster[]?clusters?=?kmeans.Clusters;
StringBuilder?sb?=?new?StringBuilder();
foreach?(WawaCluster?cluster?in?clusters)
{
????Listint?members?=?cluster.CurrentMembership;
????
????//获取该聚类的关键词并打印
????IEnumerablestring?keywords?=?tf.GetKeyword(cluster.CurrentMembership,?2);
????StringBuilder?sbTemp?=?new?StringBuilder();
????sbTemp.Append(---------);
????foreach?(string?s?in?keywords)
????{
????????sbTemp.AppendFormat({0},,?s);
????}
????sbTemp.Append(-------/r/n);
????Console.WriteLine(sbTemp);
????//打印该聚类的成员
????sb.Append(sbTemp.ToString());
????foreach?(int?i?in?members)
????{
????????Console.WriteLine(docs);
????????sb.AppendFormat({0}/r/n,?docs);
????}
}
再看GetKeyword方法的实现
///?summary
///?获取某组文档的关键词
///?/summary
///?param?name=arr/param
///?param?name=count/param
///?returns/returns
public?IEnumerablestring?GetKeyword(Listint?arr,?int?count)
{
????//1、给每个文档分词并保存在一个列表里
????Liststring?allWords?=?new?Liststring();
????foreach?(int?i?in?arr)
????{
????
您可能关注的文档
最近下载
- 长沙市长郡中学2022-2023学年高一下学期期末考试物理试卷(含答案).docx VIP
- 2024年湖南省高中学业水平合格性考试英语试卷真题(含答案详解).docx VIP
- 道依茨 TCD4.1 6.1操作手册.pdf
- 湖南省长沙市长郡中学2022-2023学年高一下学期第一次适应性检测数学试卷含答案.docx VIP
- 中国联通CDMA网络租赁费收益计划募集说明书.pdf
- 人教版四年级上册数学《公顷和平方千米整理和复习》(课件).pptx
- 湖南省长沙市长郡中学2022-2023学年高一下学期第一次月考物理试卷含答案.pdf VIP
- 信贷基础知识培训课件.ppt VIP
- 2025年湖南省长沙市长郡教育集团中考数学模拟试卷(四).pdf VIP
- 2025《建筑施工行业公司事故隐患内部报告奖励管理制度》新修订版.docx
文档评论(0)