6 research outputs found

    Co-occurrence patterns in diagnostic data

    Get PDF
    We demonstrate how graph decomposition techniques can be employed for the visualization of hierarchical co-occurrence patterns between medical data items. Our research is based on Gaifman graphs (a mathematical concept introduced in Logic), on specific variants of this concept, and on existing graph decomposition notions, specifically, graph modules and the clan decomposition of so-called 2-structures. The construction of the Gaifman graphs from a dataset is based on co-occurrence, or lack of it, of items in the dataset. We may select a discretization on the edge labels to aim at one among several Gaifman graph variants. Then, the decomposition of the graph may provide us with visual information about the data co-occurrences, after which one can proceed to more traditional statistical analysis.Partially supported by European Research Council (ERC) under the European Union's Horizon2020 research and innovation programme, grant agreement ERC-2014-CoG 648276 (AUTAR);by grant TIN2017-89244-R from Ministerio de Economia, Industria y Competitividad, and byConacyt (México). We acknowledge unfunded recognition 2017SGR-856 (MACDA) from AGAUR(Generalitat de Catalunya).Peer ReviewedPostprint (published version

    Data analysis through graph decomposition

    Get PDF
    This work is developed within the field of data mining and data visualization. Under the premise that many of the algorithms give as result huge amounts of data impossible to handle for the users, we work with the decomposition of Gaifman graphs and its variations as an option for data visualization. In fact, we apply the decomposition method based on the so-called 2-structures. This decomposition method has been theoretical developed but has not any practical application yet in this field, being this part of our contribution. Thus, from a dataset we construct the Gaifman graph (and possible variations of it) that represents information about co-occurrence patterns. More precisely, the construction of the Gaifman graphs from the dataset is based on co-occurrence, or lack of it, of items in the dataset. That is, those pair of items that appear together in any transaction are connected and those items that never appear together are disconnected. We may do the natural completion of the graph adding the absent edges with a different kind of edges, in this way we get a complete graph with two equivalence classes on its edges. Now, think of the graph where the kind of edges are determined by the multiplicity of the items that they connect, that is, by the number of transactions that contains the pair of items that the edge connects. In this case we have as many equivalence relations as different multiplicities, and we may apply some discretization methods on them to get different variations of the graphs. All these variations can be seen as 2-structures. The application of the 2-structure decomposition method produces as result a hierarchical visualization of the co-occurrences on data. In fact, the decomposition method is based on clan decomposition. Given a 2-structure defined on U, a set of vertices C, C subset of U, is a clan if, for each z not in C, z may not distinguish among the elements of C. We connect this decomposition with an associated closure space, developing this intuition by introducing a construction of implication sets, named clan implications. Based on the definition of a clan, let x, y be elements of any clan C, if there is z such that sees in a different way x and y, that is the edges (x,z) and (x,y) are in different equivalence classes, so z in C; this is equivalent to C logically entails the implication xy then z. Throughout the thesis, in order to explain our work in a constructive way, we first work with the case of having only two equivalence classes and its corresponding nomenclature (modules), and then we extend the theory to work with more equivalence classes. Our main contributions are: an algorithm (with its full implementation) for the clan decomposition method; the theorems that support our approach, and examples of its application to demonstrate its usability.Este trabajo está desarrollado dentro del área de Mineria de Datos y Visualización de Datos. Bajo la premisa de que muchos algoritmos dan como resultados un gran número de datos imposibles de manejar por los usuarios, proponemos trabajar con la descomposición de grafos de Gaifman y sus variantes como una opción para visualizar datos. De hecho, aplicamos un método de descomposición basado en las llamadas 2-structures. Este método de descomposición ha sido teóricamente desarrollado pero hasta ahora no había tenido una aplicación práctica en esta área, siendo ésta parte de nuestra contribución. Así, partiendo de la base de datos contruimos un grafo de Gaifman (y posiblemente variantes de él) que representa información sobre los patrones de co-ocurrencias. Esto es, aquellos pares de items que aparecen juntos en cualquier transacción son conectados, mientras que aquellos que nunca aparecen juntos están desconectados. Podemos completar naturalmente el grafo añadiendo las aristas ausentes como un diferente tipo de arista, en este sentido, obtenemos un grafo completo con dos clases de equivalencia sobre sus aristas. Ahora, piense en el grafo donde el tipo de aristas está determinado por la multiplicidad de los items que las aristas conectan, esto es, el número de transacciones que contienen el par de items que la arista conecta. En este caso tenemos tantas relaciones de equivalencia como diferentes multiplicidades, podemos aplicar algunos métodos de discretización sobre ellos para así obtener diferentes variantes de grafos, todas estas variaciones pueden ser vistas como 2-structures. La aplicación del método de descomposición de 2-structures produce como resultados una visualización jerárquica de las co-ocurrencias de los datos. De hecho, el método de descomposición está basado en la descomposición de clanes. Dada una 2-structure definida sobre U, un conjunto de vertices C, C subconjunto de U, es un clan si para cada z que no está en C, z no distingue los elementos de C, esto es, z está conectado a los elementos de C con el mismo tipo de aristas. En nuestro trabajo, conectamos esta descomposición con un espacio de cerrados asociado, desarrollamos esta parte del trabajo introduciendo una construcción de un conjunto de implicaciones, llamado clan implications. Basándonos en la definición de clan, sea x, y elemento de cualquier clan C, si existe z tal que las aristas (x,z) y (y,z) están en diferentes clases de equivalencia, z deber estar en C; esto es equivalente a que C lógicamente ocasiona la implicación xy entonces z. A lo largo de esta tesis, con el fin de explicar nuestro trabajo de una manera constructiva, primero trabajamos con sólo dos clases de equivalencia y su nomenclatura correspondiente (modules, en lugar de clanes), para después extender la teoría a más clases de equivalencia. Nuestras contribuciones principales son: un algoritmo (que implementamos) para le método de descomposición de clanes; los teoremas que respaldan nuestro trabajo, y ejemplos de sus aplicaciones con el fin de ilustrar su usabilidad

    Data analysis through graph decomposition

    Get PDF
    This work is developed within the field of data mining and data visualization. Under the premise that many of the algorithms give as result huge amounts of data impossible to handle for the users, we work with the decomposition of Gaifman graphs and its variations as an option for data visualization. In fact, we apply the decomposition method based on the so-called 2-structures. This decomposition method has been theoretical developed but has not any practical application yet in this field, being this part of our contribution. Thus, from a dataset we construct the Gaifman graph (and possible variations of it) that represents information about co-occurrence patterns. More precisely, the construction of the Gaifman graphs from the dataset is based on co-occurrence, or lack of it, of items in the dataset. That is, those pair of items that appear together in any transaction are connected and those items that never appear together are disconnected. We may do the natural completion of the graph adding the absent edges with a different kind of edges, in this way we get a complete graph with two equivalence classes on its edges. Now, think of the graph where the kind of edges are determined by the multiplicity of the items that they connect, that is, by the number of transactions that contains the pair of items that the edge connects. In this case we have as many equivalence relations as different multiplicities, and we may apply some discretization methods on them to get different variations of the graphs. All these variations can be seen as 2-structures. The application of the 2-structure decomposition method produces as result a hierarchical visualization of the co-occurrences on data. In fact, the decomposition method is based on clan decomposition. Given a 2-structure defined on U, a set of vertices C, C subset of U, is a clan if, for each z not in C, z may not distinguish among the elements of C. We connect this decomposition with an associated closure space, developing this intuition by introducing a construction of implication sets, named clan implications. Based on the definition of a clan, let x, y be elements of any clan C, if there is z such that sees in a different way x and y, that is the edges (x,z) and (x,y) are in different equivalence classes, so z in C; this is equivalent to C logically entails the implication xy then z. Throughout the thesis, in order to explain our work in a constructive way, we first work with the case of having only two equivalence classes and its corresponding nomenclature (modules), and then we extend the theory to work with more equivalence classes. Our main contributions are: an algorithm (with its full implementation) for the clan decomposition method; the theorems that support our approach, and examples of its application to demonstrate its usability.Este trabajo está desarrollado dentro del área de Mineria de Datos y Visualización de Datos. Bajo la premisa de que muchos algoritmos dan como resultados un gran número de datos imposibles de manejar por los usuarios, proponemos trabajar con la descomposición de grafos de Gaifman y sus variantes como una opción para visualizar datos. De hecho, aplicamos un método de descomposición basado en las llamadas 2-structures. Este método de descomposición ha sido teóricamente desarrollado pero hasta ahora no había tenido una aplicación práctica en esta área, siendo ésta parte de nuestra contribución. Así, partiendo de la base de datos contruimos un grafo de Gaifman (y posiblemente variantes de él) que representa información sobre los patrones de co-ocurrencias. Esto es, aquellos pares de items que aparecen juntos en cualquier transacción son conectados, mientras que aquellos que nunca aparecen juntos están desconectados. Podemos completar naturalmente el grafo añadiendo las aristas ausentes como un diferente tipo de arista, en este sentido, obtenemos un grafo completo con dos clases de equivalencia sobre sus aristas. Ahora, piense en el grafo donde el tipo de aristas está determinado por la multiplicidad de los items que las aristas conectan, esto es, el número de transacciones que contienen el par de items que la arista conecta. En este caso tenemos tantas relaciones de equivalencia como diferentes multiplicidades, podemos aplicar algunos métodos de discretización sobre ellos para así obtener diferentes variantes de grafos, todas estas variaciones pueden ser vistas como 2-structures. La aplicación del método de descomposición de 2-structures produce como resultados una visualización jerárquica de las co-ocurrencias de los datos. De hecho, el método de descomposición está basado en la descomposición de clanes. Dada una 2-structure definida sobre U, un conjunto de vertices C, C subconjunto de U, es un clan si para cada z que no está en C, z no distingue los elementos de C, esto es, z está conectado a los elementos de C con el mismo tipo de aristas. En nuestro trabajo, conectamos esta descomposición con un espacio de cerrados asociado, desarrollamos esta parte del trabajo introduciendo una construcción de un conjunto de implicaciones, llamado clan implications. Basándonos en la definición de clan, sea x, y elemento de cualquier clan C, si existe z tal que las aristas (x,z) y (y,z) están en diferentes clases de equivalencia, z deber estar en C; esto es equivalente a que C lógicamente ocasiona la implicación xy entonces z. A lo largo de esta tesis, con el fin de explicar nuestro trabajo de una manera constructiva, primero trabajamos con sólo dos clases de equivalencia y su nomenclatura correspondiente (modules, en lugar de clanes), para después extender la teoría a más clases de equivalencia. Nuestras contribuciones principales son: un algoritmo (que implementamos) para le método de descomposición de clanes; los teoremas que respaldan nuestro trabajo, y ejemplos de sus aplicaciones con el fin de ilustrar su usabilidad.Postprint (published version

    Refactorization and extension of a data analysis tool based on graph decomposition

    Get PDF
    Graph decomposition problems are one of the most widely studied topics of graph theory with considerable applications in data mining. When using graph decomposition you are decomposing the graph into sets of edge-disjoint subgraphs in which each edge belongs to exactly one of them. In our project, we are going to use Gaifman graphs and the terms modular decomposition of graphs and clan decomposition of 2-structures, which means we are decomposing the vertices into subsets. Those subsets are respectively called modules and clans. The vertices of the Gaifman graphs will represent the problem variables and the edges the connection of two variables if they happen to co-occur together. As base of our project will serve a PhD successfully obtained by Maria Ely Piceno. The focus of this PhD are the Gaifman graphs and its decomposition variants. Apart from the theoretical study, her project includes a software to practically demonstrate the results. Given the fact that the PhD revealed interesting results and influenced by the difficulty faced when trying to use the PhD's software, we decided to introduce a novel way of generating the decomposition graphs through PyGame. Pygame is nothing more than a cross-platform set of python modules designed for game development. Since nowadays everyone talks about "gamification", we have decided to use one of the most recent modules of Pygame, the Pygame GUI. This module strives to create a contemporary interface with elements such as buttons, file dialog, sliders, scroll bars and drop down menus. Through this project, we are going to try how easy and feasible is to implement game elements and make the studying process more easy and attractive
    corecore