Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

hankcs/TextRank

Repository files navigation

TextRank

TextRank算法提取关键词与自动摘要的Java实现

注意

TextRank已经集成到HanLP中,本项目不再维护。

TextRankKeyword提取关键词

  • 调用方法
public static void main(String[] args)
{
 String content = "程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类。";
 System.out.println(new TextRankKeyword().getKeyword("", content));
}
  • 算法详解 TextRank是在Google的PageRank算法启发下,针对文本里的句子设计的权重算法,目标是自动摘要。 详见《TextRank算法提取关键词的Java实现》
  • 关于分词 分词不是TextRank关注的重点,项目中的警告是分词库发出,不影响功能。

TextRankSummary自动摘要

  • 调用方法
 public static void main(String[] args)
 {
 String document = "算法可大致分为基本算法、数据结构的算法、数论算法、计算几何的算法、图的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法、厄米变形模型、随机森林算法。\n" +
 "算法可以宽泛的分为三类,\n" +
 "一,有限的确定性算法,这类算法在有限的一段时间内终止。他们可能要花很长时间来执行指定的任务,但仍将在一定的时间内终止。这类算法得出的结果常取决于输入值。\n" +
 "二,有限的非确定算法,这类算法在有限的时间内终止。然而,对于一个(或一些)给定的数值,算法的结果并不是唯一的或确定的。\n" +
 "三,无限的算法,是那些由于没有定义终止定义条件,或定义的条件无法由输入的数据满足而不终止运行的算法。通常,无限算法的产生是由于未能确定的定义终止条件。";
 System.out.println(TextRankSummary.getTopSentenceList(document, 3));
 }
  • 算法详解 通过句子的相关程度(BM25相关度)决定票的权重,迭代投票得出最终权重。 详见[《TextRank算法自动摘要的Java实现》][2]

TODO

About

TextRank算法提取关键词的Java实现

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /