当前位置: 首页 > news >正文

网站有哪些平台门户网站开发架构

网站有哪些平台,门户网站开发架构,大学生引流推广的方式,我做的网站怎样推广1、先给本聚类内的所有文档进行分词#xff0c;然后用一个字典保存每个词出现的次数;2、遍历每个词#xff0c;得到每个词在所有文档里的IDF值#xff0c;和在本聚类内出现的次数#xff08;TF#xff09;相乘的值;3、用一个字典(key是词#xff0c;value是TF*IDF权重)来…1、先给本聚类内的所有文档进行分词然后用一个字典保存每个词出现的次数;2、遍历每个词得到每个词在所有文档里的IDF值和在本聚类内出现的次数TF相乘的值;3、用一个字典(key是词value是TF*IDF权重)来保存所有的词信息然后按value对字典排序 摘要昨天给大家演示简单的文本聚类但要给每个聚类再提取一两个关键词用于表示该聚类。我们还是用TFIDF算法来做因为这是比较简单的提取特征算法不过这里的TF是指某词在本聚类内所有文章的词频而不是本文章内出现的次数IDF还是在所有文章里出现的倒文档频率。原理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[i]);        sb.AppendFormat({0}\r\n, docs[i]);    }} 再看GetKeyword方法的实现 /**//// summary/// 获取某组文档的关键词/// /summary/// param namearr/param/// param namecount/param/// returns/returnspublic IEnumerablestring GetKeyword(Listint arr, int count){    //1、给每个文档分词并保存在一个列表里    Liststring allWords  new Liststring();    foreach (int i in arr)    {      //这里把一个文档里出现的多个词进行消重        allWords.AddRange(GetDistinctWords(_tokenizer.Partition(_docs[i])));    }    //2、用一个字典保存词的词频,key是词value是重复次数    Dictionarystring , int tfDict  SortByDuplicateCount(allWords);    //3、遍历已排序的词频字典并获取每个词的IDF值并把更新后的结果放入一个tfidfDict词典    //该词典的key是词value是tfidf值    Dictionarystring,float tfidfDict  new Dictionarystring, float(tfDict.Count);    foreach (KeyValuePairstring, int pair in tfDict)    {        int tremIndex;        if(_tremIndex.TryGetValue(pair.Key,out tremIndex))        {            float idf  GetInverseDocumentFrequency(tremIndex);            tfidfDict.Add(pair.Key, pair.Value * idf);        }    }    //4、给tfidf字典俺权重排序    tfidfDict  GetSortByValueDict(tfidfDict);    //5、更新要提取的关键词数量    int keywordCount  count;    if (keywordCount  tfidfDict.Count)        keywordCount  tfidfDict.Count;        //6、用一个数组保存tfidf字典的keys这些key已排序    string[] keywordArr  new string[tfidfDict.Count];    tfidfDict.Keys.CopyTo(keywordArr,0);    //7、在关键词数组里取出前几个关键词返回给调用者    Liststring result  new Liststring(keywordCount);    int tempCount  0;    foreach (string str in keywordArr)    {        tempCount;        result.Add(str);        if(tempCount keywordCount) break;    }    return result;}   这里面用到一个SortByDuplicateCount方法是对一个集合里的元素按重复次数排序输出一个字典字典的key是原始元素value是出现次数并按出现次数从大到小排序像 { abcd, ab, b, a, abcd, ab, ab, ab, cd, cd, cd }这样一个集合应该输入如下结果。ab-4cd-3abcd-2b-1a-1原理是先用一个字典计算每个元素的出现次数然后把该字典按value的大小排序下面是实现代码 /**//// summary/// 把一个集合按重复次数排序/// /summary/// typeparam nameT/typeparam/// param nameinputList/param/// returns/returnspublic static DictionaryT, int SortByDuplicateCountT(IListT inputList){    //用于计算每个元素出现的次数key是元素value是出现次数    DictionaryT, int distinctDict  new DictionaryT, int();    for (int i  0; i  inputList.Count; i)    {        //这里没用trygetvalue会计算两次hash        if (distinctDict.ContainsKey(inputList[i]))            distinctDict[inputList[i]];        else            distinctDict.Add(inputList[i], 1);    }    DictionaryT, int sortByValueDict  GetSortByValueDict(distinctDict);    return sortByValueDict;} 这里用到一个把一个字典按值的大小排序的方法GetSortByValueDict代码如下是泛型的 /**//// summary/// 把一个字典俺value的顺序排序/// /summary/// typeparam nameK/typeparam/// typeparam nameV/typeparam/// param namedistinctDict/param/// returns/returnspublic static DictionaryK, V GetSortByValueDictK,V(IDictionaryK, V distinctDict){    //用于给tempDict.Values排序的临时数组  V[] tempSortList  new V[distinctDict.Count];  distinctDict.Values.CopyTo(tempSortList, 0);  Array.Sort(tempSortList); //给数据排序  Array.Reverse(tempSortList);//反转  //用于保存按value排序的字典  DictionaryK, V sortByValueDict       new DictionaryK, V(distinctDict.Count);  for (int i  0; i  tempSortList.Length; i)  {      foreach (KeyValuePairK, V pair in distinctDict)      {            //比较两个泛型是否相当要用Equals不能用操作符            if (pair.Value.Equals(tempSortList[i])  !sortByValueDict.ContainsKey(pair.Key))              sortByValueDict.Add(pair.Key, pair.Value);      }  }  return sortByValueDict;} 对一个文章内出现的多个词进行消重是因为如果一个文章里堆叠关键词会影响本聚类关键词提取的准确性所以要排重算法如下也是泛型的 /**//// summary/// 对一个数组进行排重/// /summary/// param namescanKeys/param/// returns/returnspublic static IEnumerableT GetDistinctWordsT(IEnumerableT scanKeys){    T temp  default(T);    if (scanKeys.Equals(temp))        return new T[0];    else    {        DictionaryT, T fixKeys  new DictionaryT, T();        foreach (T key in scanKeys)        {            fixKeys[key]  key;        }        T[] result  new T[fixKeys.Count];        fixKeys.Values.CopyTo(result, 0);        return result;    }} 最后效果如下Iteration 0...Iteration 1...---------asp,net,------- a ASP.NET 自定义 控件 复杂 属性 声明 持久性 浅析a asp.net 控件 开发 显示 控件 内容a 介绍 一 个 ASP.net MVC 系列 教程a 在 asp.net 中 实现 观察者 模式 或 有 更 好 的 方法 续a Asp.Net 页面 执行 流程 分析---------股民,印花税,------- a 股民 要 清楚 自己 的 目的a 印花税 之 股民 四季a 某 心理 健康 站 开张 后 首 个 咨询 者 是 位 新 股民a 输 大钱 的 股民 给 我们 启迪a 杭州 股民 放 鞭炮 庆祝 印花税 下调---------奥运,拳击,------- a 奥运 拳击 入场券 基本 分罄 邹市明 夺冠 对手 浮出 水面a 运动员 行李 将 “后 上 先 下” 奥运 相关 人员 行李 实名制a 奥运 票务 网上 成功 订票 后 应 及时 到 银行 代售 网点 付款a 残疾 女 青年 入围 奥运 游泳 比赛 创 奥运 历史 两 项 第一 可以看到提取的关键字还是准确的并没把a当成关键字。转载于:https://www.cnblogs.com/lindayyh/archive/2009/10/13/1582299.html
http://www.zqtcl.cn/news/711609/

相关文章:

  • 公司网站开发的国内外研究现状个人网页设计大全
  • 做一个网站人员网站建设及推广优化
  • 胶州市城乡建设局网站能进封禁网站的浏览器
  • 网站做几级等保荣耀商城手机官网
  • 营销网站费用渭南网站建设公司
  • wordpress主题集成插件下载网站如何做360优化
  • 有什么在线做文档的网站网站开发需要用到哪些技术
  • 网站套餐可以分摊吗吗移动登录网页模板免费下载
  • asp网站会员注册不了但是打不开网页
  • wordpress 中文网店杭州排名优化公司
  • wordpress建站安全吗wordpress企业主题教程
  • 网站构建的开发费用信息管理系统网站开发教程
  • 自己做网站怎么维护wordpress素材模板
  • 如何选择一个好的优质网站建设公司wordpress 主题小工具
  • mysql数据库做网站广州网站seo地址
  • 福建省住房和城乡建设厅网站电话网站开发项目步骤
  • 网站注册域名多少钱淘宝网商城
  • 做架构图的网站网站和网店的区别
  • 做红包网站简单个人网站设计
  • 新手学做网站pdf手wordpress修改搜索框
  • 做湲兔费网站视颍如何通过查询网站注册时间
  • 重庆cms建站模板南通网站建设推广优化
  • 合肥网站建设的公司新闻类网站如何做量化统计
  • 好用的在线地图网站十六局集团门户网
  • 网站开发数据库连接失败广州网站建站平台
  • 鄂尔多斯北京网站建设加盟网站建设的内容
  • 网站 被 抄袭不属于营销型网站的特点
  • 浙江英文网站建设互联网公司排名2021完整版
  • 完美代码的网站python开发工具
  • 餐饮网站开发参考文献网站建设500错误代码