27,698 research outputs found

    On Optimizing Distributed Tucker Decomposition for Dense Tensors

    Full text link
    The Tucker decomposition expresses a given tensor as the product of a small core tensor and a set of factor matrices. Apart from providing data compression, the construction is useful in performing analysis such as principal component analysis (PCA)and finds applications in diverse domains such as signal processing, computer vision and text analytics. Our objective is to develop an efficient distributed implementation for the case of dense tensors. The implementation is based on the HOOI (Higher Order Orthogonal Iterator) procedure, wherein the tensor-times-matrix product forms the core routine. Prior work have proposed heuristics for reducing the computational load and communication volume incurred by the routine. We study the two metrics in a formal and systematic manner, and design strategies that are optimal under the two fundamental metrics. Our experimental evaluation on a large benchmark of tensors shows that the optimal strategies provide significant reduction in load and volume compared to prior heuristics, and provide up to 7x speed-up in the overall running time.Comment: Preliminary version of the paper appears in the proceedings of IPDPS'1

    On-line construction of position heaps

    Get PDF
    We propose a simple linear-time on-line algorithm for constructing a position heap for a string [Ehrenfeucht et al, 2011]. Our definition of position heap differs slightly from the one proposed in [Ehrenfeucht et al, 2011] in that it considers the suffixes ordered from left to right. Our construction is based on classic suffix pointers and resembles the Ukkonen's algorithm for suffix trees [Ukkonen, 1995]. Using suffix pointers, the position heap can be extended into the augmented position heap that allows for a linear-time string matching algorithm [Ehrenfeucht et al, 2011].Comment: to appear in Journal of Discrete Algorithm

    Topology recognition with advice

    Get PDF
    In topology recognition, each node of an anonymous network has to deterministically produce an isomorphic copy of the underlying graph, with all ports correctly marked. This task is usually unfeasible without any a priori information. Such information can be provided to nodes as advice. An oracle knowing the network can give a (possibly different) string of bits to each node, and all nodes must reconstruct the network using this advice, after a given number of rounds of communication. During each round each node can exchange arbitrary messages with all its neighbors and perform arbitrary local computations. The time of completing topology recognition is the number of rounds it takes, and the size of advice is the maximum length of a string given to nodes. We investigate tradeoffs between the time in which topology recognition is accomplished and the minimum size of advice that has to be given to nodes. We provide upper and lower bounds on the minimum size of advice that is sufficient to perform topology recognition in a given time, in the class of all graphs of size nn and diameter DαnD\le \alpha n, for any constant α<1\alpha< 1. In most cases, our bounds are asymptotically tight

    Faster and Simpler Distributed Algorithms for Testing and Correcting Graph Properties in the CONGEST-Model

    Full text link
    In this paper we present distributed testing algorithms of graph properties in the CONGEST-model [Censor-Hillel et al. 2016]. We present one-sided error testing algorithms in the general graph model. We first describe a general procedure for converting ϵ\epsilon-testers with a number of rounds f(D)f(D), where DD denotes the diameter of the graph, to O((logn)/ϵ)+f((logn)/ϵ)O((\log n)/\epsilon)+f((\log n)/\epsilon) rounds, where nn is the number of processors of the network. We then apply this procedure to obtain an optimal tester, in terms of nn, for testing bipartiteness, whose round complexity is O(ϵ1logn)O(\epsilon^{-1}\log n), which improves over the poly(ϵ1logn)poly(\epsilon^{-1} \log n)-round algorithm by Censor-Hillel et al. (DISC 2016). Moreover, for cycle-freeness, we obtain a \emph{corrector} of the graph that locally corrects the graph so that the corrected graph is acyclic. Note that, unlike a tester, a corrector needs to mend the graph in many places in the case that the graph is far from having the property. In the second part of the paper we design algorithms for testing whether the network is HH-free for any connected HH of size up to four with round complexity of O(ϵ1)O(\epsilon^{-1}). This improves over the O(ϵ2)O(\epsilon^{-2})-round algorithms for testing triangle freeness by Censor-Hillel et al. (DISC 2016) and for testing excluded graphs of size 44 by Fraigniaud et al. (DISC 2016). In the last part we generalize the global tester by Iwama and Yoshida (ITCS 2014) of testing kk-path freeness to testing the exclusion of any tree of order kk. We then show how to simulate this algorithm in the CONGEST-model in O(kk2+1ϵk)O(k^{k^2+1}\cdot\epsilon^{-k}) rounds
    corecore