怎么提取出一篇文章中出现频率最高的词?

pccc1984 2007-07-16 10:18:13
像在文章系统中.用户一般不会自己填标签.我就想在文章发布时.就让程序从文章中提取出频率最高的几个词做为标签.可是这方面没接触过.谁能提供个思路?
...全文
2328 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
关中雪狼 2008-03-15
  • 打赏
  • 举报
回复
不错,帮了我大忙了,我还打算自己用上N个堆栈去做呢,看来得多向大家学习了。。。。。。。。。。谢谢!!!!!!!!!!!!!!!!
pinkyll 2007-07-18
  • 打赏
  • 举报
回复
up
liusong_china 2007-07-17
  • 打赏
  • 举报
回复
学习
ilmarezhou 2007-07-17
  • 打赏
  • 举报
回复
恩...的确....霹雳冰的还可以..
但是文章内容多的话...时间就....
chnama 2007-07-17
  • 打赏
  • 举报
回复
英文取词就简单拉,哈哈哈
zhangdd1107 2007-07-17
  • 打赏
  • 举报
回复
study
babay2008 2007-07-17
  • 打赏
  • 举报
回复
mark
znf19850924 2007-07-17
  • 打赏
  • 举报
回复
我的一个同学本科论文就是做split word
有个语料库,把所以现成的词语 按照字母为序 表明词性 以及词语的使用率 可以用bayes算法分析(选取为一个最优的路径,也就是这段句子所有词语组成的最大率)
其中通过最小子串去行从文章中提取词语,然后把词语和语料库进行对比
最终把整篇文章给词语化,然后你就可以把相同的词语进行统计
smdy 2007-07-17
  • 打赏
  • 举报
回复
借地方学习下 好久没来了 不知道自己的信誉还多少了 也不知道是不是少了个星 灌个水看看
RexZheng 2007-07-16
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/5527/5527563.xml?temp=.734234

计算频率的相关讨论参考一下这个帖子
stonepeter 2007-07-16
  • 打赏
  • 举报
回复
给个词典先~!
RexZheng 2007-07-16
  • 打赏
  • 举报
回复
技术难点是分词,以前看过国防科大的一个牛人介绍过这方面的知识,不过当时大多都听不懂。

计算频率本身并不难,顶多就是在效率上做做文章。
nattystyle 2007-07-16
  • 打赏
  • 举报
回复
Sorry,刚才出了点差错,重新改了下:

List<string> dic = new List<string>();
string str = "我爱的人不爱我,爱我的人我不爱,想爱一个人真难";
for (int i = 0; i < str.Length; i++)
{
if (!dic.Contains(str[i].ToString()))
dic.Add(str[i].ToString());
}
int[] stat = new int[dic.Count];
for (int j = 0; j < str.Length; j++)
{
stat[dic.IndexOf(str[j].ToString())]++;
}
int[] temp = new int[stat.Length];
Array.Copy(stat, temp, stat.Length);
Array.Sort(temp);
int max = temp[temp.Length - 1];
Console.WriteLine("出现最多的字是:"+dic[Array.IndexOf(stat, max)]);
namhyuk 2007-07-16
  • 打赏
  • 举报
回复
貌似中文分词是一项很高深的东西。这里不是提取字,而是词。

我有个朋友研究这东西,正好是他的博士论文。
参考的书籍基本都是国外这方面的顶级专家的书或文章(研究中文分词为什么参考老外的东西不清楚,大概是技术层面上的事吧)。

我个人认为这绝对不是那么简单的事。比较专业,或者说很专业的领域。
pccc1984 2007-07-16
  • 打赏
  • 举报
回复
我也觉得关键是取词.谁有词表?
nattystyle 2007-07-16
  • 打赏
  • 举报
回复
写了下,瞧瞧行不行?

List<string> dic = new List<string>();
string str = "像在文章系统中.用户一般不会自己填标签.我就想在文章发布时.就让程序从文章中提取出频率最高的几个词做为标签.可是这方面没接触过.谁能提供个思路?";
for (int i = 0; i < str.Length; i++)
{
if (!dic.Contains(str[i].ToString()))
dic.Add(str[i].ToString());
}
int[] stat = new int[dic.Count];
for (int j = 0; j < str.Length; j++)
{
stat[dic.IndexOf(str[j].ToString())]++;
}
int[] temp = stat;
Array.Sort(temp);
int max = temp[temp.Length - 1];
Console.WriteLine("出现最多的字符是:"+dic[Array.IndexOf(stat, max)]);
setdefault 2007-07-16
  • 打赏
  • 举报
回复
就是一个初步的编译器,做一些词法定义和简单的语法规则.十年前有很多高校做这个,搜索一下以前的期刊
tianyafengyun 2007-07-16
  • 打赏
  • 举报
回复
如何取词才是关键。
pccc1984 2007-07-16
  • 打赏
  • 举报
回复
顶一下
mythad 2007-07-16
  • 打赏
  • 举报
回复
本身提取词才是难点啊.有词表么?
加载更多回复(6)
致看到这个简介的你您是否曾对时变陷波器领域感到好奇?是否希望深入了解其背后的知识点和相关公式推导,并渴望学习如何将其应用于实际情况?如果是的话,那么恭喜您!发现了您绝不能错过的一门论文复现课程——《使用时变陷波滤波器在低信噪比下进行瞬时频率估计-TVNF论文复现》。本课程旨在帮助您全面理解时变陷波器的原理、设计和应用。无论您是工程师、学生还是科研人员,相信这门课程都将为您提供宝贵的知识和技能。课程亮点:知识点详解:本课程将深入讲解时变陷波器的基本概念和原理,涵盖了从滤波器设计到信号处理的关键知识点。公式推导:本课程将引导您逐步推导时变陷波器的数学模型和相关公式,助您深入理解其工作原理。实践操作:通过实践案例和实验环节,您将有机会亲自动手复现时变陷波器,并掌握实际操作的技巧和窍门。应用案例:本课程将分享现实应用案例,展示时变陷波器在通信等领域的广泛应用。互动学习:课程设置有讨论小组,您可以与讲师和其他学员互动交流,共同探讨问题和解决方案。无论您是初学者还是有一定基础的专业人士,本课程都将根据您的需求进行量身定制,确保您能够从获得最大的收益和成长。跟随本课程一起踏上时变陷波器的探索之旅吧!这是一个充满挑战和机遇的领域,相信您将在本课程找到乐趣和启发,并获得您所期望的结果。祝学习愉快!课程团队  论文简介:这篇论文旨在寻找参数信号模型,这些模型在低信噪比(SNR)下对噪声音调有良好的建模性能。我们关注的是一个应用于数据段的模型,而不是像自适应方法那样按顺序处理数据。受到陷波滤波器理论的启发,我们将著名的时变自回归(TVAR)模型扩展到包括加性噪声的效应,并得两种类型的时变陷波滤波器(TVNF)。第一种,就像TVAR模型一样,采用滤波器系数的基函数展开。对于第二种,我们利用音调瞬时频率(IF)与分母多项式根的角度直接成比例的事实,并对IF进行基函数展开。自适应陷波滤波器众所周知,并已成功应用于几个领域。通过对模拟信号的应用,TVNF是低SNR 下IF估计的有用工具。TVNF估计采用正则化的高斯-牛顿类型迭代搜索算法,该算法表现快速和可靠的收敛性。

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧