Inicialmente este trabalho foi realizado para a cadeira de Algebra Linear para Aprendizado de Máquina - PUC-Rio.
Este repositório apresenta uma implementação do Ultra Scalable Spectral Clustering.
Antes de iniciar, é preciso que você tenha algum conhecimento sobre Espectral Clustering
Você pode visualizar um notebook explicando seu funcionamento aqui
Para lidar com datasets (conjunto de dados) extremamente grandes, o algoritmo U-SPEC proposto usa uma abordagem baseada em sub-matrix e visa quebrar o gargalo de eficiência por meio de três fases.
Você pode visualizar melhor o artigo aqui
-
Os algoritmos neste reposiório necessitam das seguintes bibliotecas
Imports pandas numpy matplotlib scikit-learn scipy tensorflow tqdm
Aqui deve ser colocado uma referência aos notebooks
Aqui deve ser colocado uma referência ao código fonte
Aqui deve ser colocado alguns resultados visuais, como métricas, tempo de execução etc
Para operar em em uma quantidade muito grande de elementos (ex: 1 Milhão) é necessário utilizar a multiplicação de matrizes espasas, no momento essa operação só está otimizada em espaço, em tempo ainda demora muito. Caso haja alguma atualização do tensorflow com otimizações de operações Sparse X Sparse esse algoritmo será atualizado