All Projects → Linguistic → rake

Linguistic / rake

Licence: MIT license
A Java library for Rapid Automatic Keyword Extraction (RAKE) 🍂

Programming Languages

java
68154 projects - #9 most used programming language
Starlark
911 projects

Projects that are alternatives of or similar to rake

api-doc
自动化文档生成工具
Stars: ✭ 13 (-43.48%)
Mutual labels:  automatic
binary.com-bot
Scripts for using on Binary.com Bots.
Stars: ✭ 60 (+160.87%)
Mutual labels:  automatic
GEO-network-client
Reference implementation of the GEO Protocol.
Stars: ✭ 19 (-17.39%)
Mutual labels:  implementation
etebase-java
A Java/Android client library for Etebase
Stars: ✭ 46 (+100%)
Mutual labels:  jvm
jni-bind
JNI Bind is a set of advanced syntactic sugar for writing efficient correct JNI Code in C++17 (and up).
Stars: ✭ 42 (+82.61%)
Mutual labels:  jvm
d2l-study-group
Repository supporting the study group based on the course book 'D2L'. Material would be added as we progress through the course.
Stars: ✭ 10 (-56.52%)
Mutual labels:  implementation
scalecube-config
ScaleCube Config is a configuration access management library for JVM based distributed applications
Stars: ✭ 15 (-34.78%)
Mutual labels:  jvm
ark-java
Library for interacting with an Ark Ecosystem Blockchain using the JVM.
Stars: ✭ 15 (-34.78%)
Mutual labels:  jvm
hello-kotlin-multiplatform
Multiplatform Kotlin Hello World (Android/Java/JavaScript)
Stars: ✭ 64 (+178.26%)
Mutual labels:  jvm
mini-jvm
Go语言实现的JVM,实现了部分字节码的解释执行,学习JVM使用
Stars: ✭ 29 (+26.09%)
Mutual labels:  jvm
backlog-board
This is Kanban Board connected to Backlog
Stars: ✭ 18 (-21.74%)
Mutual labels:  jvm
imgui-java
JNI based binding for Dear ImGui
Stars: ✭ 270 (+1073.91%)
Mutual labels:  jvm
Rnightlights
R package to extract data from satellite nightlights.
Stars: ✭ 45 (+95.65%)
Mutual labels:  extraction
play-scala-seed.g8
Play Scala Seed Template: run "sbt new playframework/play-scala-seed.g8"
Stars: ✭ 66 (+186.96%)
Mutual labels:  jvm
code-snippets
✍️ code - 手写系列
Stars: ✭ 41 (+78.26%)
Mutual labels:  implementation
hsbeat
Beat for Java HotSpot VM
Stars: ✭ 24 (+4.35%)
Mutual labels:  jvm
play-java-rest-api-example
REST API using Play in Java
Stars: ✭ 44 (+91.3%)
Mutual labels:  jvm
VideoRecognition-realtime-autotrainer-alerts
State of the art object detection in real-time using YOLOV3 algorithm. Augmented with a process that allows easy training of the classifier as a plug & play solution . Provides alert if an item in an alert list is detected.
Stars: ✭ 36 (+56.52%)
Mutual labels:  automatic
generator-bunny
🐰 Jumpstart node module, like a bunny!
Stars: ✭ 13 (-43.48%)
Mutual labels:  automatic
Java-CS-Record
记录准备春招实习过程中,学习与复习的知识(模块化整理,非面试题速成)。注:暂停更新,后续请移步博客
Stars: ✭ 73 (+217.39%)
Mutual labels:  jvm

Rapid Automatic Keyword Extraction (RAKE)

Rake

RAKE is an algorithm for extracting keywords (technically phrases, but I don't question scientific literature) from a document that have a high relevance or importance to the contents of the document. For example, the top five significant keywords in the text:

Compatibility of systems of linear constraints over the set of natural numbers. Criteria of compatibility of a system of linear Diophantine equations, strict inequations, and nonstrict inequations are considered. Upper bounds for components of a minimal set of solutions and algorithms of construction of minimal generating sets of solutions for all types of systems are given. These criteria and the corresponding algorithms for constructing a minimal supporting set of solutions can be used in solving all the considered types of systems and systems of mixed types.

are calculated to be:

Keyword Relevance
linear diophantine equations 10.666
minimal generating sets 10.333
minimal supporting set 8.833
upper bounds 6.0
natural numbers 6.0

Installing

This library isn't on a central repo yet, so nab the JAR URL from the releases page and toss it into whatever dependency manager you're using. That, or just download the JAR.

Using the API

Using the library is super straightforward. The main class only exports one public method, getKeywordsFromText(), and needs a language code in order to run. Any constant found in RakeLanguages can be used without issue. So for example:

public class Main {
    public static void main(String[] args) {
        String languageCode = RakeLanguages.ENGLISH;
        Rake rake = new Rake(languageCode);
        LinkedHashMap<String, Double> results = rake.getKeywordsFromText("Your text would go here."));
    	System.out.println(results);
    }
}

Contributing

If you wish to contribute to this library, you'll need Buck to build it. Once you have Buck installed, it's as simple as:

$ buck build :rake

Credit

Algorithm taken from here.

Implementation taken from here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].