105 research outputs found
Methods and Systems for Biclustering Algorithm
Methods and systems for improved unsupervised learning are described. The unsupervised learning can consist of biclustering a data set, e.g., by biclustering subsets of the entire data set. In an example, the biclustering does not include feeding know and proven results into the biclustering methodology or system. A hierarchical approach can be used that feeds proven clusters back into the biclustering methodology or system as the input. Data that does not cluster may be discarded. Thus, a very large unknown data set can be acted on to learn about the data. The system is also amenable to parallelization
A Survey of Adaptive Resonance Theory Neural Network Models for Engineering Applications
This survey samples from the ever-growing family of adaptive resonance theory
(ART) neural network models used to perform the three primary machine learning
modalities, namely, unsupervised, supervised and reinforcement learning. It
comprises a representative list from classic to modern ART models, thereby
painting a general picture of the architectures developed by researchers over
the past 30 years. The learning dynamics of these ART models are briefly
described, and their distinctive characteristics such as code representation,
long-term memory and corresponding geometric interpretation are discussed.
Useful engineering properties of ART (speed, configurability, explainability,
parallelization and hardware implementation) are examined along with current
challenges. Finally, a compilation of online software libraries is provided. It
is expected that this overview will be helpful to new and seasoned ART
researchers
Accelerating binary biclustering on platforms with CUDA-enabled GPUs
© 2018 Elsevier B.V. All rights reserved. This manuscript version is made available under the CC-BY-NC-ND 4.0 license https://creativecommons.org/licenses/bync-nd/4.0/. This version of the article has been accepted for publication in Information Sciences. The Version of Record is available online at https://doi.org/10.1016/j.ins.2018.05.025This is a version of: J. González-Domínguez and R. R. Expósito, "Accelerating binary biclustering on platforms with CUDA-enabled GPUs", Information Sciences, Vol. 496, Sept. 2019, pp. 317-325, https://doi.org/10.1016/j.ins.2018.05.025[Abstract]: Data mining is nowadays essential in many scientific fields to extract valuable information from large input datasets and transform it into an understandable structure. For instance, biclustering techniques are very useful in identifying subsets of two-dimensional data where both rows and columns are correlated. However, some biclustering techniques have become extremely time-consuming when processing very large datasets, which nowadays prevents their use in many areas of research and industry (such as bioinformatics) that have experienced an explosive growth on the amount of available data. In this work we present CUBiBit, a tool that accelerates the search for relevant biclusters on binary data by exploiting the computational capabilities of CUDA-enabled GPUs as well as the several CPU cores available in most current systems. The experimental evaluation has shown that CUBiBit is up to 116 times faster than the fastest state-of-the-art tool, BiBit, in a system with two Intel Sandy Bridge processors (16 CPU cores) and three NVIDIA K20 GPUs. CUBiBit is publicly available to download from https://sourceforge.net/projects/cubibitThis work was supported by the Ministry of Economy, Industry and Competitiveness of Spain and FEDER funds of the European Union [grant TIN2016-75845-P (AEI/FEDER/UE)], as well as by Xunta de Galicia (Centro Singular de Investigacion de Galicia accreditation 2016-2019, ref. EDG431G/01).Xunta de Galicia; EDG431G/0
Towards reinforcement learning based NClustering
Tese de Mestrado, Ciência de Dados, 2022, Universidade de Lisboa, Faculdade de CiênciasBiclustering and triclustering are becoming increasingly popular for unsupervised analysis of two and
threedimensional datasets. Among other patterns of interest, using nclusters in unsupervised data analy sis can identify potential biological modules, illness progression profiles, and communities of individuals
with consistent behaviour. Despite this, most algorithms still rely on exhaustive approaches to produce
highquality results.
The main limitation of using deep learning to solve this task is that nclusters are computed assuming
that all elements are represented under equal distance. This assumption invalidates the use of locality
simplification techniques like neural convolutions. Graphs are flexible structures that could represent
a dataset where all elements are at an equal distance through fully connected graphs, thus encouraging
the use of graph convolutional networks to learn their structure and generate accurate embeddings of the
datasets. Because nclustering is primarily viewed as an iterative task in which elements are added or re moved from a given cluster, a reinforcement learning framework is a good fit. Deep reinforcement learn ing agents have already been successfully coupled with graph convolutional networks to solve complex
combinatorial optimization problems, motivating the adaptation of reinforcement learning architectures
to this problem.
This dissertation lays the foundations for a novel reinforcement learning approach for nclustering
that could outperform state of the art algorithms while implementing a more efficient algorithm. To this
end, three libraries were implemented: a synthetic data generator, a framework that models nclustering
tasks as Markov decision process, and a training library. A proximal policybased agent was implemented
and tunned using populationbased training, to evaluate the behaviour of the reinforcement learning en vironments designed.
Results show that agents can learn to modify their behaviour while interacting with the environment
to maximize their reward signal. However, they are still far from being a solution to nclustering. This
dissertation is the first step towards this solution. Finally, future steps to improve these results are pro posed.
This dissertation has presented foundational work that enables modelling nclustering as an MDP,
paving the way for further studies focused on improving task performance.Os seres humanos evoluíram para encontrar padrões. Esta capacidade está presente na nossa vida quotidiana, e não sobreviveríamos sem ela. Na realidade, esta é uma característica que parecemos partilhar
com todos os seres inteligentes, a necessidade de compreender padrões e de criar rotinas. Os padrões são
lugares seguros onde podemos agir conscientemente, onde as relações causais que ligam as nossas acções
às suas consequências são conhecidas por nós. A compreensão de um padrão pode ser a diferença entre
vida e morte, o suave som de folhas pode implicar um ataque mortal, a presença de humidade no solo pode
indicar um riacho próximo, enquanto um cheiro pode ajudar a distinguir entre amigo ou inimigo. Encontrar padrões e distinguir entre padrões e acontecimentos aleatórios permitiu à nossa sociedade chegar tão
longe. Hoje, enfrentamos problemas mais complexos em quase todos os campos de estudo científicos e
sociais, por vezes escondidos por detrás de quantidades massivas de eventos aleatórios. É literalmente
como encontrar uma agulha num palheiro. Como tal, recorremos mais uma vez a máquinas para nos
ajudar neste empreendimento desafiante. Técnicas de aprendizagem sem supervisão começaram a ser propostas por estatísticos e matemáticos muito antes do aparecimento de campos como a prospecção de dados. No entanto, estes campos, juntamente com um significativo interesse restaurado na área pela indústria, na esperança de rentabilizar grandes quantidades de dados guardados ao longo dos anos, deram grandes passos em frente. Nos últimos anos, temos visto muitos avanços notáveis neste campo e uma nova face da inteligência artificial em geral (por exemplo, aprendizagem de máquinas, aprendizagem profunda). Foram propostas abordagens de clusters revigoradas que combinavam técnicas clássicas com aprendizagem profunda para gerar representações precisas e produzir clusters a partir destes vectores de dados.
Biclustering e triclustering estão a tornar-se cada vez mais populares para análises não supervisionadas de conjuntos de dados bidimensionais e tridimensionais. Entre outros padrões de interesse, a utilização de nclusters na análise não supervisionada de dados pode identificar potenciais módulos biológicos,
perfis de progressão de doenças, e comunidades de indivíduos com comportamento consistente.
Nos domínios médicos, as aplicações possíveis incluem a análise de sinais fisiológicos multivariados,
onde os nclusters identificados podem capturar respostas fisiológicas coerentes para um grupo de indivíduos; análise de dados de neuroimagem, onde os nclusters podem capturar funções de resposta hemodinâmica e conectividade entre regiões cerebrais; e análise de registos clínicos, onde os nclusters podem corresponder a grupos de pacientes com características clínicas correlacionadas ao longo do tempo. Relativamente aos domínios sociais, as aplicações possíveis vão desde a análise de redes sociais até à descoberta de comunidades de indivíduos com actividade e interacção correlacionadas (frequentemente referidas como comunidades em evolução coerente) ou conteúdos de grupo de acordo com o perfil do utilizador; grupos de utilizadores com padrões de navegação coerentes nos dados de utilização da web; análise de dados de comércio electrónico para encontrar padrões de navegação ocultos de conjuntos cor relacionados de utilizadores (web), páginas (web) visitadas, e operações ao longo do tempo; análise de
dados de pesquisa de marketing para estudar a utilidade perceptível de vários produtos para diferentes fins,
a julgar por diferentes grupos demográficos; dados de filtragem colaborativa para descobrir correlações
accionáveis para sistemas de recomendação ou utilizadores de grupo com preferências semelhantes, entre
outras aplicações.
O clustering tradicional pode ser utilizado para agrupar observações neste contexto, mas a sua utili dade é limitada porque as observações neste domínio de dados são tipicamente apenas significativamente
correlacionadas em subespaços do espaço global.
Apesar da importância de nclustering, a maioria dos algoritmos continua a basearse em abordagens
exaustivas para produzir resultados de qualidade. Como o nclustering é uma tarefa complexa de opti mização combinatória, as abordagens existentes limitam a estrutura permitida, a coerência e a qualidade
da solução.
A principal limitação da utilização de aprendizagem profunda para resolver esta tarefa é que os n clusters são computados assumindo que todos os elementos são representados sob igual distância. Este
pressuposto invalida o uso de técnicas de simplificação da localidade como as convoluções neurais.
Os grafos são estruturas flexíveis que podem ser utilizadas para representar um conjunto de dados
onde todos os elementos estão a uma distância igual, através de grafos completos, encorajando assim a
utilização de redes convolucionais de grafos para aprender a sua estrutura e gerar representações precisas
dos conjuntos de dados.
Uma vez que o nclustering é visto principalmente como uma tarefa iterativa em que os elemen tos são adicionados ou removidos de um dado cluster, uma estrutura de aprendizagem de reforço é um
bom suporte. Agentes de aprendizagem de reforço profundos já foram acoplados com sucesso a redes
convolucionais de grafos para resolver problemas complexos de otimização combinatória, motivando a
adaptação de arquitecturas de aprendizagem de reforço a este problema.
Esta dissertação lança as bases para uma nova abordagem de aprendizagem por reforço para n clustering que poderia superar os algoritmos de estado da arte, ao mesmo tempo que implementa um
algoritmo mais eficiente.
Para este fim, foram implementadas três bibliotecas: um gerador de dados sintéticos, uma framework
que modela as tarefas de nclustering como um processo de decisão de Markov, e uma biblioteca de treino.
NclustGen foi implementado para melhorar a utilização programática dos geradores de dados sintéti cos de biclustering e triclustering de última geração.
O NclustEnv modela nclustering como um processo de decisão Markov através da implementação de
ambientes de biclustering e triclustering. Segue a interface padrão de programação de aplicações proposta
pelo Gym para ambientes de aprendizagem por reforço.
A implementação de ambientes de qualidade que modelam a interação entre um agente e uma tarefa de nclustering é da maior importância. Ao implementar esta tarefa utilizando o padrão Gym, o ambi ente pode ser implementado como agente agnóstico. Assim, qualquer agente será capaz de treinar neste
ambiente, se correctamente configurado, independentemente da sua implementação. Esta capacidade de
construir ambientes que modelam uma dada tarefa de uma forma agnóstica permite a implementação de
uma framework geral para nclustering baseada em aprendizagem por reforço. Os agentes podem depois
utilizar esta framework de treino para encontrar uma solução de última geração para esta tarefa.
A fim de avaliar o comportamento dos ambientes de aprendizagem por reforço que foram concebidos,
foi implementado e calibrado um agente de optimização proximal de políticas utilizando treino baseado
em populações. Um agente de optimização proximal de políticas foi escolhido porque pode servir como
uma boa base para experiências futuras. Devido à sua versatilidade, os agentes de optimização proximal
de políticas são largamente considerados como os agentes de referência para experiências em ambientes
não explorados. A solução e as limitações alcançadas por este agente normalmente dão pelo menos uma
ideia dos seguintes passos a tomar se o agente não conseguir alcançar uma boa solução.
Os resultados mostram que os agentes podem aprender a modificar o seu comportamento enquanto
interagem com o ambiente para maximizar o seu sinal de recompensa. No entanto, ainda estão longe de
ser uma solução para o nclustering.
Esta dissertação é o primeiro passo para esta solução e apresentou o trabalho fundamental, mas ainda
há muito mais trabalho a ser feito para que esta abordagem possa ultrapassar os algoritmos mais avança dos.Por fim, são propostos os próximos passos para melhorar estes resultados, e que para num futuro
próximo, esta abordagem possa vir a resolver a tarefa do nclustering
Fine-grained parallelization of fitness functions in bioinformatics optimization problems: gene selection for cancer classification and biclustering of gene expression data
ANTECEDENTES: las metaheurísticas se utilizan ampliamente para resolver grandes problemas de optimización combinatoria en bioinformática debido al enorme conjunto de posibles soluciones. Dos problemas representativos son la selección de genes para la clasificación del cáncer y el agrupamiento de los datos de expresión génica. En la mayoría de los casos, estas metaheurísticas, así como otras técnicas no lineales, aplican una función de adecuación a cada solución posible con una población de tamaño limitado, y ese paso involucra latencias más altas que otras partes de los algoritmos, lo cual es la razón por la cual el tiempo de ejecución de las aplicaciones dependerá principalmente del tiempo de ejecución de la función de aptitud. Además, es habitual encontrar formulaciones aritméticas de punto flotante para las funciones de fitness. De esta manera, una paralelización cuidadosa de estas funciones utilizando la tecnología de hardware reconfigurable acelerará el cálculo, especialmente si se aplican en paralelo a varias soluciones de la población. RESULTADOS: una paralelización de grano fino de dos funciones de aptitud de punto flotante de diferentes complejidades y características involucradas en el biclustering de los datos de expresión génica y la selección de genes para la clasificación del cáncer permitió obtener mayores aceleraciones y cómputos de potencia reducida con respecto a los microprocesadores habituales. CONCLUSIONES: Los resultados muestran mejores rendimientos utilizando tecnología de hardware reconfigurable en lugar de los microprocesadores habituales, en términos de tiempo de consumo y consumo de energía, no solo debido a la paralelización de las operaciones aritméticas, sino también gracias a la evaluación de aptitud concurrente para varios individuos de la población en La metaheurística. Esta es una buena base para crear soluciones aceleradas y de bajo consumo de energía para escenarios informáticos intensivos.BACKGROUND: Metaheuristics are widely used to solve large combinatorial optimization problems in bioinformatics because of the huge set of possible solutions. Two representative problems are gene selection for cancer classification and biclustering of gene expression data. In most cases, these metaheuristics, as well as other non-linear techniques, apply a fitness function to each possible solution with a size-limited population, and that step involves higher latencies than other parts of the algorithms, which is the reason why the execution time of the applications will mainly depend on the execution time of the fitness function. In addition, it is usual to find floating-point arithmetic formulations for the fitness functions. This way, a careful parallelization of these functions using the reconfigurable hardware technology will accelerate the computation, specially if they are applied in parallel to several solutions of the population. RESULTS: A fine-grained parallelization of two floating-point fitness functions of different complexities and features involved in biclustering of gene expression data and gene selection for cancer classification allowed for obtaining higher speedups and power-reduced computation with regard to usual microprocessors. CONCLUSIONS: The results show better performances using reconfigurable hardware technology instead of usual microprocessors, in computing time and power consumption terms, not only because of the parallelization of the arithmetic operations, but also thanks to the concurrent fitness evaluation for several individuals of the population in the metaheuristic. This is a good basis for building accelerated and low-energy solutions for intensive computing scenarios.• Ministerio de Economía y Competitividad y Fondos FEDER. Contrato TIN2012-30685 (I+D+i)
• Gobierno de Extremadura. Ayuda GR15011 para grupos TIC015
• CONICYT/FONDECYT/REGULAR/1160455. Beca para Ricardo Soto Guzmán
• CONICYT/FONDECYT/REGULAR/1140897. Beca para Broderick CrawfordpeerReviewe
- …