Awesome Lists

nlp-with-ruby

by arbox

awesome listRubypushed over 3 years ago

Curated List: Practical Natural Language Processing done in Ruby

AI summary

NLP toolkit

A curated collection of resources and libraries for natural language processing tasks in Ruby

stars
1K
forks
70
watching
58
awesome lists
8
entries
160
View on GitHubrubynlp.org

Embed the badge

Show how many awesome lists link to your project. The count updates automatically.

Awesome Lists badge
Markdown
[![Awesome Lists Badge](https://awesome.facts.dev/shield/arbox/nlp-with-ruby/links.svg)](https://awesome.facts.dev/awesome/arbox/nlp-with-ruby)
HTML
<a href="https://awesome.facts.dev/awesome/arbox/nlp-with-ruby"><img src="https://awesome.facts.dev/shield/arbox/nlp-with-ruby/links.svg" alt="Awesome Lists Badge" /></a>
Image URL
https://awesome.facts.dev/shield/arbox/nlp-with-ruby/links.svg

What's in the list

160 links in 42 sections, with live GitHub stats.activeno commit in 2y

NLP Pipeline Subtasks / Pipeline Generation

  • composable_operations

    - Definition framework for operation pipelines

  • ruby-spark

    - Spark bindings with an easy to understand DSL

  • phobos

    - Simplified Ruby Client for

  • parallel

    - Supervisor for parallel execution on multiple CPUs or in many threads

  • pwrake

    - Rake extensions to run local and remote tasks in parallel

NLP Pipeline Subtasks / Multipurpose Engines

  • open-nlp

    - Ruby Bindings for the Toolkit

  • stanford-core-nlp

    - Ruby Bindings for the Stanford tools

  • treat

    - Natural Language Processing framework for Ruby (like for Python)

  • nlp_toolz

    - Wrapper over some classes and the original

  • open_nlp

    - JRuby Bindings for the Toolkit

  • ruby-spacy

    — Wrapper module for spaCy NLP library via

  • alchemyapi_ruby

    - Legacy Ruby SDK for AlchemyAPI/Bluemix

  • wit-ruby

    - Ruby client library for the Language Understanding Platform

  • wlapi

    Ruby client library for web services

  • monkeylearn-ruby

    Sentiment Analysis, Topic Modelling, Language Detection, Named Entity Recognition via a Ruby based Web API client

  • google-cloud-language

    - Google's Natural Language service API for Ruby

NLP Pipeline Subtasks / Language Identification

  • scylla

    - Language Categorization and Identification

NLP Pipeline Subtasks / Segmentation

  • tokenizer

    - Simple multilingual tokenizer

  • pragmatic_tokenizer

    - Multilingual tokenizer to split a string into tokens

  • nlp-pure

    - Natural language processing algorithms implemented in pure Ruby with minimal dependencies

  • textoken

    - Simple and customizable text tokenization library

  • pragmatic_segmenter

    - Word Boundary Disambiguation with many cookies

  • punkt-segmenter

    - Pure Ruby implementation of the Punkt Segmenter

  • tactful_tokenizer

    - RegExp based tokenizer for different languages

  • scapel

    - Sentence Boundary Disambiguation tool

NLP Pipeline Subtasks / Lexical Processing

  • ruby-stemmer

    - Ruby-Stemmer exposes the SnowBall API to Ruby

  • uea-stemmer

    - Conservative stemmer for search and indexing

  • lemmatizer

    - WordNet based Lemmatizer for English texts

  • wc

    - Facilities to count word occurrences in a text

  • word_count

    - Word counter for and objects

  • words_counted

    - Pure Ruby library counting word statistics with different custom options

  • stopwords-filter

    Filter and Stop Word Lexicon based on the SnowBall lemmatizer

NLP Pipeline Subtasks / Phrasal Level Processing

  • n_gram

    - N-Gram generator

  • ruby-ngram

    - Break words and phrases into ngrams

  • raingrams

    - Flexible and general-purpose ngrams library written in pure Ruby

NLP Pipeline Subtasks / Syntactic Processing

  • stanfordparser

    - Ruby based wrapper for the Stanford Parser

  • rley

    - Pure Ruby implementation of the Parsing Algorithm for Context-Free Constituency Grammars

  • rsyntaxtree

    - Visualization for syntactic trees in Ruby based on

NLP Pipeline Subtasks / Semantic Analysis

  • amatch

    - Set of five distance types between strings (including Levenshtein, Sellers, Jaro-Winkler, 'pair distance')

  • damerau-levenshtein

    - Calculates edit distance using the Damerau-Levenshtein algorithm

  • hotwater

    - Fast Ruby FFI string edit distance algorithms

  • levenshtein-ffi

    - Fast string edit distance computation, using the Damerau-Levenshtein algorithm

  • tf_idf

    - Term Frequency / Inverse Document Frequency in pure Ruby

  • tf-idf-similarity

    - Calculate the similarity between texts using TF/IDF

NLP Pipeline Subtasks / Pragmatical Analysis

  • SentimentLib

    - Simple extensible sentiment analysis gem

High Level Tasks / Spelling and Error Correction

  • gingerice

    - Spelling and Grammar corrections via the API

  • hunspell-i18n

    - Ruby bindings to the standard Spell Checker

  • ffi-hunspell

    - FFI based Ruby bindings for

  • hunspell

    - Ruby bindings to via Ruby C API

High Level Tasks / Text Alignment

  • alignment

    - Alignment routines for bilingual texts (Gale-Church implementation)

High Level Tasks / Machine Translation

  • google-api-client

    - Google API Ruby Client

  • microsoft_translator

    - Ruby client for the microsoft translator API

  • termit

    - Google Translate with speech synthesis in your terminal

  • zipf

    - implementation of BLEU and other base algorithms

High Level Tasks / Sentiment Analysis

  • stimmung

    - Semantic Polarity based on the lexicon

High Level Tasks / Numbers, Dates, and Time Parsing

  • chronic

    - Pure Ruby natural language date parser

  • chronic_between

    - Simple Ruby natural language parser for date and time ranges

  • chronic_duration

    - Pure Ruby parser for elapsed time

  • kronic

    - Methods for parsing and formatting human readable dates

  • nickel

    - Extracts date, time, and message information from naturally worded text

  • tickle

    - Parser for recurring and repeating events

  • numerizer

    - Ruby parser for English number expressions

High Level Tasks / Named Entity Recognition

  • ruby-ner

    - Named Entity Recognition with Stanford NER and Ruby

  • ruby-nlp

    - Ruby Binding for Stanford Pos-Tagger and Name Entity Recognizer

High Level Tasks / Text-to-Speech-to-Text

  • espeak-ruby

    - Small Ruby API for utilizing 'espeak' and 'lame' to create text-to-speech mp3 files

  • tts

    - Text-to-Speech conversion using the Google translate service

  • att_speech

    - Ruby wrapper over the AT&T Speech API for speech to text

  • pocketsphinx-ruby

    - Pocketsphinx bindings

Dialog Agents, Assistants, and Chatbots

  • chatterbot

    - Straightforward ruby-based Twitter Bot Framework, using OAuth to authenticate

  • lita

    - Highly extensible chat operation bot framework written with persistent storage on

Linguistic Resources

  • rwordnet

    - Pure Ruby self contained API library for the

  • wordnet

    - Performance tuned bindings for the

Machine Learning Libraries

  • rb-libsvm

    - Support Vector Machines with Ruby

  • weka

    - JRuby bindings for Weka, different ML algorithms implemented through Weka

  • decisiontree

    - Decision Tree ID3 Algorithm in pure Ruby

  • rtimbl

    - Memory based learners from the Timbl framework

  • classifier-reborn

    - General classifier module to allow Bayesian and other types of classifications

  • lda-ruby

    - Ruby implementation of the (Latent Dirichlet Allocation) for automatic Topic Modelling and Document Clustering

  • liblinear-ruby-swig

    - Ruby interface to LIBLINEAR (much more efficient than LIBSVM for text classification)

  • linnaeus

    - Redis-backed Bayesian classifier

  • maxent_string_classifier

    - JRuby maximum entropy classifier for string data, based on the OpenNLP Maxent framework

  • naive_bayes

    - Simple Naive Bayes classifier

  • nbayes

    - Full-featured, Ruby implementation of Naive Bayes

  • omnicat

    - Generalized rack framework for text classifications

  • omnicat-bayes

    - Naive Bayes text classification implementation as an OmniCat classifier strategy

  • ruby-fann

    - Ruby bindings to the

  • rblearn

    Feature Extraction and Crossvalidation library

Optical Character Recognition

Text Extraction

  • yomu

    - library for extracting text and metadata from files and documents using the content analysis toolkit

Full Text Search, Information Retrieval, Indexing

Language Aware String Manipulation

  • fuzzy_match

    - Fuzzy string comparison with Distance measures and Regular Expression

  • fuzzy-string-match

    - Fuzzy string matching library for Ruby

  • active_support

    - RoR gem has various string extensions that can handle case

  • fuzzy_tools

    - Toolset for fuzzy searches in Ruby tuned for accuracy

  • u

    - U extends Ruby’s Unicode support

  • unicode

    - Unicode normalization library

  • CommonRegexRuby

    - Find a lot of kinds of common information in a string

  • regexp-examples

    - Generate strings that match a given regular expression

  • verbal_expressions

    - Make difficult regular expressions easy

  • translit_kit

    - Transliterate Hebrew & Yiddish text into Latin characters

  • re2

    - hight-speed Regular Expression library for Text Mining and Text Extraction

  • regex_sample

    - sample string generation from a given Regular Expression

  • iuliia

    — transliteration Cyrillic to Latin in many possible ways (defined by the )

Articles, Posts, Talks, and Presentations / 2019

Articles, Posts, Talks, and Presentations / 2018

Articles, Posts, Talks, and Presentations / 2017

Articles, Posts, Talks, and Presentations / 2016

Articles, Posts, Talks, and Presentations / 2015

Articles, Posts, Talks, and Presentations / 2014

Articles, Posts, Talks, and Presentations / 2013

Articles, Posts, Talks, and Presentations / 2012

Articles, Posts, Talks, and Presentations / 2011

Articles, Posts, Talks, and Presentations / 2010

Articles, Posts, Talks, and Presentations / 2009

Articles, Posts, Talks, and Presentations / 2008

Articles, Posts, Talks, and Presentations / 2007

Articles, Posts, Talks, and Presentations / 2006

Projects and Code Examples

Books

Community

Needs your Help!

  • ferret

    - Information Retrieval in C and Ruby

  • summarize

    - Ruby native wrapper for

More related projects

Add a GitHub project

Missing a project or an awesome list? Paste its GitHub URL and we fetch it right away.