• This repository has been archived on 14/May/2020
  • Stars
    star
    380
  • Rank 112,766 (Top 3 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 10 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Graphify is a Neo4j unmanaged extension used for document and text classification using graph-based hierarchical pattern recognition.

Graphify

This is a Neo4j unmanaged extension used for document and text classification.

Training Dataset

Natural Language Parsing Model

Classify Unlabeled Documents

Compiled extension

The compiled extension is available from the bin directory.

Building the extension

  1. To build it:

     src/extension mvn assembly:assembly -DdescriptorId=jar-with-dependencies
    
  2. Copy src/extension/target/graphify-1.0.0-jar-with-dependencies.jar to the plugins/ directory of your Neo4j server.

  3. Configure Neo4j by adding a line to conf/neo4j-server.properties:

     org.neo4j.server.thirdparty_jaxrs_classes=org.neo4j.nlp.ext=/service
    
  4. Start Neo4j server.

  5. Query it over HTTP.

Using it

Get similar labels:

curl --user neo4j:neo4j http://localhost:7474/service/graphify/similar/{label}

Train the natural language recognition model on text about 'Document classification':

curl --user neo4j:neo4j -H "Content-Type: application/json" -d '{"label": ["Document classification"], "text": ["Documents may be classified according to their subjects or according to other attributes (such as document type, author, printing year etc.). In the rest of this article only subject classification is considered. There are two main philosophies of subject classification of documents: The content based approach and the request based approach."]}' http://localhost:7474/service/graphify/training

Classify an unlabeled text:

curl --user neo4j:neo4j -H "Content-Type: application/json" -d '{"text": "A document is a written or drawn representation of thoughts. Originating from the Latin Documentum meaning lesson - the verb means to teach, and is pronounced similarly, in the past it was usually used as a term for a written proof used as evidence."}' http://localhost:7474/service/graphify/classify

Get a list of the extracted semantic features matching a text:

curl --user neo4j:neo4j -H "Content-Type: application/json" -d '{"text": "A document is a written or drawn representation of thoughts. Originating from the Latin Documentum meaning lesson - the verb means to teach, and is pronounced similarly, in the past it was usually used as a term for a written proof used as evidence."}' http://localhost:7474/service/graphify/extractfeatures

Get a sorted list of labels that are most related to the label 'Document classification':

curl --user neo4j:neo4j http://localhost:7474/service/graphify/similar/Document%20classification
Example response:
{
    "classes": [
        {
            "class": "Document",
            "similarity": 0.19563160874988336
        },
        {
            "class": "Intelligence",
            "similarity": 0.1778887274627789
        },
        {
            "class": "Machine learning",
            "similarity": 0.14800216450227222
        },
        {
            "class": "Data",
            "similarity": 0.1467923282078174
        },
        {
            "class": "Memory",
            "similarity": 0.14600346713601134
        }
    ]
}

More Repositories

1

event-sourcing-microservices-example

Learn about building microservices with event sourcing using Spring Boot and how to deploy a social network to Kubernetes using Docker Compose or Helm.
Java
333
star
2

order-delivery-microservice-example

This repository contains a functional example of an order delivery service similar to UberEats, DoorDash, and Instacart.
Java
220
star
3

spring-cloud-microservice-example

An example project that demonstrates an end-to-end cloud native application using Spring Cloud for building a practical microservices architecture.
Java
167
star
4

spring-cloud-event-sourcing-example

Spring Cloud reference application for building an online store as microservices that use event sourcing
Java
76
star
5

event-stream-processing-microservices

Using Spring Cloud Stream and Spring State Machine to create event-driven microservices
JavaScript
65
star
6

sentiment-analysis-twitter-microservices-example

A sample application that demonstrates how to build a graph processing platform to analyze sources of emotional influence on Twitter.
Java
59
star
7

neo4j-dbpedia-importer

DBpedia.org RDF to CSV for import into Neo4j
Scala
51
star
8

docker-neo4j

This repository contains a Docker image of the latest version of the Neo4j community server
Dockerfile
49
star
9

spark-neo4j

A single docker image that combines Neo4j Mazerunner and Apache Spark GraphX into a powerful all-in-one graph processing engine
Dockerfile
46
star
10

spring-boot-starter-amazon-s3

Example implementation of a Spring Boot starter project that auto-configures an Amazon S3 client
Java
35
star
11

neo4j-app-movies-ui

Movie browser web app powered by Neo4j graph database
JavaScript
31
star
12

service-block-samples

Spring Cloud Function Service Block Samples
Java
29
star
13

predictive-autocomplete

Creates a hierachical JSON file index that is accessible over HTTP GET requests.
C#
29
star
14

cloud-native-microservice-strangler-example

Spring Cloud example of a cloud native strangler pattern for integrating microservices with legacy applications
Java
27
star
15

pinot-debezium-basic-example

This is a basic Apache Pinot example for ingesting real-time MySQL change logs using Debezium
Shell
25
star
16

oreilly-building-microservices-training

Repository for building microservices training
Shell
20
star
17

sentiment-analysis-movie-reviews

A iPython notebook that tests Graphify's feature extraction and selection algorithm as a logistic regression classifier
20
star
18

pinot-wikipedia-event-stream

This project is a template for ingesting real-time event streams from Wikipedia to be queried in Apache Pinot
Java
20
star
19

climate-change-analysis

This repository contains a recipe for bootstrapping a climate analysis application using Apache Pinot and Superset
Shell
19
star
20

javaone-2016

Event sourcing demos for JavaOne
Java
18
star
21

spring-cloud-polyglot-persistence-example

An example project that demonstrates an end-to-end cloud-native application with multiple backing services using Spring Cloud.
Java
17
star
22

spring-boot-graph-processing-example

A sample application that demonstrates how to build a graph processing platform as microservices to create a ranking dashboard of influential Twitter profiles
Java
15
star
23

spring-cloud-event-sourcing-config

Centralized configuration repository for https://github.com/kbastani/spring-cloud-event-sourcing-example
13
star
24

3dg-viz

A WebGL distributed graph visualization library
JavaScript
12
star
25

russian-troll-analysis

This repository auto-configures an Apache Pinot and Superset cluster for analyzing IRA tweets from FiveThirtyEight.
Shell
11
star
26

useful-spring-boot-starters

A collection of useful Spring Boot starters with autoconfiguration.
Java
9
star
27

scorch

State machines as a service for managing distributed jobs and tasks
Java
8
star
28

todo-service-block

Example service block architecture with an AngularJS TodoMVC front-end
Java
7
star
29

kairos-java-scheduler

Scalable time-based scheduler for the JDK
Java
6
star
30

pivotal-flow-charts

A simple flow chart tool that translates simple code into simple diagrams
JavaScript
4
star
31

docker-run-ec2

Manage remote EC2 Docker instances using the AWS CLI
Shell
3
star
32

conceptgraph

Concept graph generated using Neo4j and d3js.org example from Mike Bostock for Curved Force Directed Graph
3
star
33

gsearch

gSearch is a graph search engine architecture that integrates with a Neo4j graph database.
C#
3
star
34

stackoverflow-analytics

Stack Overflow analytics platform to track and measure stack overflow tag question and answer growth over time. Identify trends and see how communities are requesting support around a product or feature over time and in real time.
JavaScript
3
star
35

spring-cloud-config-staging

Demo staging repository for configuration files
2
star
36

qcon-nyc-2017

QCon 2017 production-ready microservices workshop
Java
2
star
37

pinot-tableau-tests

This repository provides instructions for running Tableau's connector tests (TDVT) on Pinot
Shell
2
star
38

spring-boot-test-sample

Java
1
star
39

legacy-strangler-microservice-config

Centralized configuration repository for https://github.com/kbastani/cloud-native-microservice-strangler-example
1
star
40

jpattern

Pattern recognition algorithms for unsupervised graph-based machine learning
Java
1
star
41

interpolator4j

A simple easy-to-use interpolation library for Java that can be used to reshape data
Java
1
star
42

cf-web-console

JavaScript
1
star