Skip to main content

The graph identification algorithm from my thesis

Project description

[![Travis](https://img.shields.io/travis/Erotemic/graphid/master.svg?label=Travis%20CI)](https://travis-ci.org/Erotemic/graphid) [![Codecov](https://codecov.io/github/Erotemic/graphid/badge.svg?branch=master&service=github)](https://codecov.io/github/Erotemic/graphid?branch=master) [![Appveyor](https://ci.appveyor.com/api/projects/status/github/Erotemic/graphid?svg=True)](https://ci.appveyor.com/project/Erotemic/graphid/branch/master) [![Pypi](https://img.shields.io/pypi/v/graphid.svg)](https://pypi.python.org/pypi/graphid)

# Graph Identification

A graph algorithm to manage the identification of individuals in a population using automatic pairwise decision algorithms with a humans in the loop. It is agnostic to the specific ranking and verification algorithms. In fact, it can work without a ranking or verification algorithm, but in that case all reviews will have to be manual, and it will be difficult to prioritize which pairs of annotations (typically images) to look at first.

This is the graph identification described in Chapter 5 of [my thesis](https://github.com/Erotemic/crall-thesis-2017/blob/master/crall-thesis_2017-08-10_compressed.pdf). Viewing this PDF online can be slow, so I’ve linked there raw text [here](https://github.com/Erotemic/crall-thesis-2017/blob/master/chapter5-graphid.tex).

# General Information

This repo is currently a work in progress.

Helpful commands I’m currently using in development and debugging. Perhaps they will be someone illustrative of what this package is trying to do.

` python -m graphid.demo.dummy_infr demodata_infr --show python -m graphid.demo.dummy_infr demodata_infr --num_pccs=25 --show python -m graphid.demo.dummy_infr demodata_infr --num_pccs=100 --show `

This README is a mess. Why not look at [this Jupyter notebook](notebooks/core_example.ipynb) in the meantime.

# Installation

Once this package becomes stable you can install via pip install graphid. However, this will currently give you an older version of the project I uploaded to reserve the name.

# Dependencies

`bash sudo apt-get install -y graphviz libgraphviz-dev pip install graphviz pip install -e . `

This project is Python 3.6+, Python 2 is not supported.

If you want to be able to draw the graphs, you must install graphviz, which is needed by pygraphviz.

I’m currently having trouble getting this to work on windows due to pygraphviz.

Conda can be used to install pygraphviz on windows? conda install -c marufr pygraphviz

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

graphid-0.0.6-py2.py3-none-any.whl (215.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file graphid-0.0.6-py2.py3-none-any.whl.

File metadata

  • Download URL: graphid-0.0.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 215.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.3 requests-toolbelt/0.9.1 tqdm/4.31.0 CPython/3.7.2

File hashes

Hashes for graphid-0.0.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 855d05aaa49d0fd4ceced023cc03d75c47db98ee48c122bb5ec3781bd59b06db
MD5 d753e1ac0a27c26cf491e7eda55c81a5
BLAKE2b-256 c560e8fd76c243ce71bc37dd4737377779c11a270d58cf6b1d6bdd2686783720

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page