Hot answers tagged

13

You can use the Stanford Parser: free and open source written in Java accuracy pretty close to "state-of-the-art" (whatever that means as standard benchmark datasets might not reflect your data) wrappers available in a few others languages like Python and Ruby. online demo Other software packages.


11

I think you are talking about EULAlyzer. It was done by JavaCoolSoftware up to some time ago, now BrightFort LLC. It has some analysis tools that helps you to identify weird clauses about third parties, data collection, advertising, etc. I have used it and didn't gave me trouble finding stuff in lengthy text nor unexpected behaviors. It comes as freeware ...


7

BLLIP Parser is the current version of the Charniak-Johnson Parser: free and open source (Apache 2.0 licensed) written in C/C++ so it's reasonably fast, has Python and Java bindings state-of-the-art accuracy for English on multiple datasets multiple parsing models (news, biomedical, web) available Full disclosure: I am the maintainer of BLLIP Parser.


7

You can also try ElasticSearch. ElasticSearch it's a search server on top of Lucene. It provides a Json API for performing the search queries and it's really handy when it comes to scalability. In order to to index an existing database you should continually poll it's content. Here is a tutorial for that. On the downside, you should be familiar with ...


7

You are looking for a POS-tagger(= part-of-speech tagger). One of the most accurate and widely used is the Stanford Part-Of-Speech Tagger: free (except for commercial non-open source software) open source, written in Java well documented trained models for English, Arabic, Chinese, French, and German are available. Binding available in many other languages:...


5

It's not a built-in function, but you can do so with python and nltk. A simple code would be like this : import nltk with open(file) as f: for line in f: tmp = nltk.word_tokenize(line) print nltk.pos_tag(tmp) You can find explanation for each tag here (figure 5.1). Trouble is, it will return the most probable tag and not everyone of ...


5

Well, you said the 3 magic words: database, text-search and Java. I would strongly suggest using Hibernate-Search because it's made for this purpose. To be more precise, Hibernate-Search has the ability to: Add text-search in your existing database by annotations in your existing entities. find by approximation (fuzzy search) and rank results. It's Lucene ...


5

Solr might be a good fit for your choice. As ElasticSearch, Solr is based on Lucene and provides the same functionalities like full-text search, hit highlighting and easy-scalability among others. Generally when searching for those 2 solutions you will find many resources. I leave it to you to decide which one to use ;) Solr has definitely the advantage ...


4

You can use the Apache OpenNLP library: free and open source, written in Java supports the most common NLP tasks, such as tokenization, sentence segmentation, part-of-speech tagging, named entity extraction, chunking, parsing, and coreference resolution. includes maximum entropy and perceptron based machine learning. Part-of-Speech Tagger Documentation: ...


4

During my research I found two excellent tools for dealing with CFG's I want to share here (since I am sure they will help others as they helped me): http://lab.brainonfire.net/CFG/remove-left-recursion.html This application removes left-corner cycles from a context-free grammar to make it more acceptable for LL parsers. Of course, this can change ...


4

I would be surprised if you find any API combining those features. As the two most useful features are certainly the picture and the name by far, I would use a Face gender detection API such as Lambda Labs's API (picked randomly, you might want to search for benchmark if there are any), combined with a name to gender mapping. To solve the conflicts , you ...


4

Some of the questions you posted can be solved by linear simultaneous equations technique. Sequalator is a software which can solve linear simultaneous equations for you. It can not only tackle thousands of equations in a fraction of a second but also provides some unique tools that let you analyse the solutions of your equations. And the best part is that ...


3

It sound like you are looking for pythons Natural Language Toolkit, NLTK. It fits all your requirements: Free (both Libra & FLOSS) Cross platform - Linux has python installed by default in most distros but installs are available for just about everything. Not hosted. An example of what you are looking to do can be found here but looks like: from nltk....


3

There is a service called Terms of Service; Didn't read on which gives you a rating on terms of services. It is available as a browser addon for Firefox, Chrome, Opera and Safari. It is at least closely related to what you look for.


3

Boilerpipe is written in Java and does exactly that. You can try their demo. The demo does sometimes go over quota and becomes unavailable; if that happens just try again later. I found it very useful and easy to implement.


3

First of all, there is no reason to use C++, stick with scripting languages (Python, Ruby, PHP or Javascript will do the trick just fine). Because you will be iterating frequently and also because the bottleneck will never be the parsing but rather the network latency. Also note that you should be working from the CLI. The concept is the following: ...


3

First, install Alfresco and the Calais integration (it might take a day depending on your experience). Then upload all of your documents to Alfresco. Calais is a library/API developed by Reuters to extract semantic information from human text. You will now be able to: Find all documents about purchasing, with a nice tag cloud. Quickly search for all ...


3

You can also use Rasa Rasa NLU and Rasa Core are completely open source, and you can use them as an alternative to Dialogflow, IBM Watson, or Lex. There is a very active community of developers, and a bunch of tutorials and additional tools built by the community. Disclaimer - I'm a maintainer of these libraries.


2

I'm not sure how easy it would be to embed into Amazon Turk (it's a standalone webapp), but you might want to try brat (brat rapid annotation tool). open source (MIT License) Among other types of annotations, it supports annotating a span of text with a specific (predefined) class which sounds like it might fit your needs supports multiple users (but again, ...


2

You can use IBM LanguageWare (Wikipedia): free (you need to register to be able to download it) Java not sure how active the project is, the latest version is 2011-10-21. Note that LanguageWare does not currently provide part of speech (POS) disambiguation and therefore all ambiguities are passed back up to the calling application. UIMA-based (UIMA = ...


2

You can use the module sklearn.cluster from the Python library scikit-learn (free and open-source). E.g. if you want to use the k-means algorithm: import numpy as np from sklearn.cluster import KMeans kmeans_model = KMeans(n_clusters=3, random_state=1).fit(X) labels = kmeans_model.labels_ metrics.silhouette_score(X, labels, metric='euclidean')


2

The Berkeley parser is an option: free and open source (GPL 2.0 licensed) written in Java, has Python bindings state-of-the-art accuracy across many languages models available for many languages (English, Bulgarian, Arabic, Chinese, French, German)


2

SyntaxNet: implemented in TensorFlow open source based on http://arxiv.org/abs/1603.06042 provides one trained model for English fast: around 600 words/second on a modern desktop state-of-the-art results http://googleresearch.blogspot.com/2016/05/announcing-syntaxnet-worlds-most.html: At Google, we spend a lot of time thinking about how computer ...


2

You can use explainshell: free online open source explain commands using the man pages:


2

I suggest taking a look at the python Natural Language Toolkit, nltk, you will need to install python first if your platform doesn't come with it, i.e. MS-Windows but it is available for most platforms. The advantage is that rather than simply splitting the sentence into words and shuffling them - hoping for a meaningful result - which you can do in about ...


2

I think that what you are looking for is the combination of python and the natural language toolkit, (nltk). The book Bird, Steven, Edward Loper and Ewan Klein (2009), Natural Language Processing with Python. O’Reilly Media Inc. states in its opening chapter: Technologies based on NLP are becoming increasingly widespread. For example, phones and ...


2

here are a couple resources I have found, that provide an open source "dialog system". https://github.com/superscriptjs/superscript (Javascript) I just ran this yesterday locally, with the telnet interface for rules it looks interesting. There is an example using websockets; but I didn't get that working as of yet. https://github.com/plison/opendial (...


2

There is a JavaScript library called nlp_compromise. nlp_compromise is a cool way to use natural language in javascript. This is an open source library and its source code is available here. According to your question, this library can detect a number, unit, and noun. Here are below examples that I taken from nlp_compromise documentation: nlp_compromise ...


2

You can use RASA's open source project: https://github.com/RasaHQ/rasa It is open source and also works with Python. You will also have control of your own data. However, it is not as easy as dialogflow and will require some time to setup. For more differences refer here: https://www.kommunicate.io/blog/dialogflow-vs-rasa-which-one-to-choose/ You can also ...


1

I found this tool: Hong's Hangul Conversion Tools. It converts text from English to Korean and vice versa through transliteration dictionaries. It is indeed open source as mentioned in the comments on the OP, and the code is licensed under GPLv3. Here is an example:


Only top voted, non community-wiki answers of a minimum length are eligible