Skip to content

Latest commit

 

History

History
45 lines (31 loc) · 1.62 KB

README.md

File metadata and controls

45 lines (31 loc) · 1.62 KB

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.