A consistently oriented basis for eigenanalysis

  • PDF / 4,289,676 Bytes
  • 19 Pages / 595.276 x 790.866 pts Page_size
  • 69 Downloads / 209 Views

DOWNLOAD

REPORT


REGULAR PAPER

A consistently oriented basis for eigenanalysis Jay Damask1 Received: 2 December 2019 / Accepted: 31 May 2020 © Springer Nature Switzerland AG 2020

Abstract Repeated application of eigen-centric methods to an evolving dataset reveals that eigenvectors calculated by well-established computer implementations are not stable along an evolving sequence. This is because the sign of any one eigenvector may point along either the positive or negative direction of its associated eigenaxis, and for any one eigenfunction call, the sign does not matter when calculating a solution. This work reports a model-free algorithm that creates a consistently oriented basis of eigenvectors. The algorithm postprocesses any well-established eigen call and is therefore agnostic to the particular implementation of the latter. Once consistently oriented, directional statistics can be applied to the eigenvectors in order to track their motion and summarize their dispersion. When a consistently oriented eigensystem is applied to methods of machine learning, the time series of training weights becomes interpretable in the context of the machine-learning model. Ordinary linear regression is used to demonstrate such interpretability. A reference implementation of the algorithm reported herein has been written in Python and is freely available, both as source code and through the thucyd Python package. Keywords Eigenvectors · Eigenvalues · Singular-value decomposition · Directional statistics Mathematics Subject Classification 15A18 · 65F15 · 62H11

1 Overview Eigenanalysis plays a central role in many aspects of data science because the natural coordinates and modal strengths of a multifactor dataset are revealed [1,6,10,20]. Singular-value decomposition and eigendecomposition are two of the most common instances of eigenanalysis [5,24], yet there are a wide range of adaptations, such as eigenface [14]. The eigenanalysis ecosystem is so important that highly optimized implementations are available in core numerical libraries such as LAPACK [2]. This article does not seek to improve the existing theoretical or numerical study of eigenanalysis as it applies to a stand-alone problem. Instead, the focus of this article is on the improvement to eigenanalysis when applied sequentially to an evolving dataset. In the domain of neural networks, the study of data streams is well known. For instance, the evolving granular neural network was introduced by Leite et al in 2009 (see [12] and references therein) to “tackle classification problems in continuously changing environments.” Hou et al subsequently

B 1

Jay Damask [email protected]

proposed feature-evolvable streaming learning to manage real-world situations in which changes in the features themselves, or the way in which they are measured, are handled in a consistent manner [7]. Although developed independently, the work in this paper applies the spirit of handling data streams to the problem of eigenanalysis. To perform eigenanalysis on a stream of data, the eigenvectors