【问题标题】:Algorithm to find keywords of a text查找文本关键字的算法
【发布时间】:2013-03-01 20:35:05
【问题描述】:

给定一组文本(可能是书籍、文章、文档等),您将如何找到每个文本的相关关键字? 常识建议:

  • 分词
  • 排除常用词(也称为停用词,如“a, 到、为、在")
  • 统计词频
  • 给每个单词打分,公式考虑到每个单词在文档和其他文档中出现的频率、文档的单词数和所有文档的总单词数

问题是:哪个是一个好的公式?

【问题讨论】:

    标签: algorithm


    【解决方案1】:

    我已经开发了一个。

    为每个单词计算这个比率:

    (frequency of word in this text) * (total number of words in all texts)
    -----------------------------------------------------------------------
      (number of words in this text) * (frequency of word in all texts)
    

    关键词是那些比例在最高 20% 的词(对于本文档)。

    Ankerl也提出了自己的公式:

    tanh(curVal/curWords*200) - 5*tanh((allVal-curVal)/(allWords-curWords)*200)
    

    地点:

    • curVal:要评分的单词在待分析文本中出现的频率
    • curWords:待分析文本中的总字数
    • allVal:要评分的词在索引数据集中出现的频率
    • allWords:索引数据集的总单词数

    两种算法都运行良好,而且结果经常一致。你知道有什么方法可以做得更好吗?

    【讨论】:

    • 您是否可以访问布局信息(标题、中断、字体大小和样式...)?
    猜你喜欢
    • 2012-06-15
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-14
    相关资源
    最近更新 更多