Complete computation in subquadratic time of a new generic type of bicluster in dense and sparse matrices
Biclustering é uma técnica definida como a clusterização simultânea de linhas e colunas de uma matriz de dados. Dada uma matriz real m-por-n, esse trabalho define um novo tipo de bicluster: em qualquer uma de suas colunas, os valores das linhas do bicluster devem ser estritamente maiores do que os val...
| Autor: | |
|---|---|
| Tipo de recurso: | tesis de maestría |
| Estado: | Versión publicada |
| Fecha de publicación: | 2021 |
| País: | Brasil |
| Institución: | Universidade Federal de Minas Gerais (UFMG) |
| Repositorio: | Repositório Institucional da UFMG |
| Idioma: | inglés |
| OAI Identifier: | oai:repositorio.ufmg.br:1843/38508 |
| Acceso en línea: | http://hdl.handle.net/1843/38508 |
| Access Level: | acceso abierto |
| Palabra clave: | Biclustering Dynamic programming Exhaustive enumeration exclusive-columns biclusters Subquadratic complexity Computação – Teses. Mineração de dados Teses. Programação dinâmica – Teses. Problemas de enumeração combinatória – Teses. Biclustering – Teses. |
| Sumario: | Biclustering é uma técnica definida como a clusterização simultânea de linhas e colunas de uma matriz de dados. Dada uma matriz real m-por-n, esse trabalho define um novo tipo de bicluster: em qualquer uma de suas colunas, os valores das linhas do bicluster devem ser estritamente maiores do que os valores em todas as linhas ausentes do mesmo. As linhas que formam um bicluster não podem ser um subconjunto ou um superconjunto das linhas contidas em outro bicluster de maior qualidade. A qualidade de um bicluster é um valor real dado por qualquer função computável, tornando a definição genérica. "Muscly patterns" são os biclusters que respeitam a definição dada. Biceps é proposto para listar exaustivamente os muscly patterns em tempo sub-quadrático, enumerando os biclusters possíveis em um DAG e selecionando aqueles de maior qualidade. O algoritmo é dividido em três fases: Durante a primeira fase, o DAG é construído tal que seus vértices representem biclusters e suas arestas representem uma relação de inclusão entre as linhas dos biclusters conectados. Durante a segunda fase, programação dinâmica é utilizada para descobrir biclusters melhores que predecessores ou sucessores que têm necessariamente um subconjunto ou superconjunto de linhas. Apesar disso, as arestas do grafo não representam todas as possíveis relações de inclusão, logo é necessária uma terceira fase para encontrar somente os muscly patterns entre os biclusters obtidos pela segunda fase. Os biclusters são listados em tempo O(m²n + mn²), mais o tempo para se computar O(mn) qualidades. Após algumas adaptações, Biceps permanece subquadrático se sua complexidade é expressada em função de m non-min n, onde m non-min é o número máximo de valores não-mínimos em uma coluna (matrizes esparsas). Experimentos em três datasets do mundo real demonstram a efetividade da proposta em diferentes aplicações. Também mostram uma boa eficiência prática: 2 min e 5.27 GB de RAM são suficientes para listar todos os biclusters em uma matriz densa de 801 × 20.531; 3.5s e 192 MB de RAM para uma matriz esparsa de 631.532 × 174.559 com 2.575.425 valores não-nulos. |
|---|