Coder Social home page Coder Social logo

katz-similarity's Introduction

Overview

Within the field of Applied Ontology there is a need to measure the correctness of term assignment. Katz Similarity has been used before to compare knowledge graphs and can be used in a similar way to help evaluate tools being developed to aid in ontology building. This project begins to implement Katz Similarity in the specific case where there are two ontologies that share the same terms, but have been build differently. It is composed of both the codebase and a paper.

Also, this project is a sub part of a larger effort to improve tools used in automated and assisted ontology creation, and as such is niche.

The Code

The Java implementation of Katz Similarity is based heavily of the work done by Nayak et. al, which was implemented in C. Since the parent project is being developed in Java, it was decided that this should be also be reimplemented in Java as well. These Katz Similarity calculations are becoming part of a larger suite of programs all focused on automatically assessing tools under development

This code currently needs a major overhaul. Poor design choices made in the beginning of implmentation led to useless classes such as the Vertex Class, as well as the seperation of the AuxUtils and CalcUtils classes. Instead, the entire vertex class will be scrapped and the AuxUtils and CalcUtils will be combined into a more generalized Graph class, since they both require the same information to perform their respectove jobs.

The Paper

In the Documents directory a pdf of the paper written for this project can be found. It provides more background into what the field of Ontology is, its importance, and the specific motivation of this project. The paper shows that an Ontology can be abstrated into a direct acyclic graph, and why Katz Similarity is a wise choice for this use case. Finally, future work and the immediate next steps of the project are laid out.

katz-similarity's People

Contributors

keithtallen avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.