Skip to content

CORCONDIA (Core Consistency Diagnostic) implementation in Python

License

Notifications You must be signed in to change notification settings

willshiao/pycorcondia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pycorcondia

CORCONDIA (Core Consistency Diagnostic) implementation in Python. It uses Tensorly with the Numpy backend.

Installation

pip install -U corcondia

Usage

Currently, the only implemented function is corcondia_3d, which calculates the Core Consistency Diagnostic (CORCONDIA) for a 3D tensor. Additional arguments will be forwarded to the tensorly.decomposition.parafac call.

An example on a random tensor is shown below.

import numpy as np
from corcondia import corcondia_3d

X = np.random.rand(5, 5, 5)
print(corcondia_3d(X, k=3))

References

This is based off of the original MATLAB implementation by Evangelos (Vagelis) Papalexakis:

@inproceedings{inproceedings,
author = {Papalexakis, Evangelos and Faloutsos, Christos},
year = {2015},
month = {04},
pages = {5441-5445},
title = {Fast efficient and scalable Core Consistency Diagnostic for the parafac decomposition for big sparse tensors},
doi = {10.1109/ICASSP.2015.7179011}
}

CORCONDA was first introduced by Bro and Kiers (2003) here.

Thanks to Alessandro Bessi for his initial implementation here, which led to the creation of this repo.

Also, thanks to Yorgos Tsitsikas for his valuable feedback and suggestions.

About

CORCONDIA (Core Consistency Diagnostic) implementation in Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages