---
title: "Single-Pass PCA of Large High-Dimensional Data"
authors:
  - "Wenjian Yu"
  - "Yu Gu"
  - "Jian Li"
  - "Shenghua Liu"
  - "Yaohang Li"
doi: "10.24963/ijcai.2017/468"
url: "https://ijcai.org/proceedings/2017/468"
pdf: "https://ijcai.org/proceedings/2017/0468.pdf"
venue: "Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence"
year: 2017
pages: "3350-3356"
track: "Main track"
keywords:
  - "Machine Learning: Data Mining"
  - "Machine Learning: Feature Selection/Construction"
  - "Machine Learning: Time-series/Data Streams"
---

# Single-Pass PCA of Large High-Dimensional Data

Wenjian Yu, Yu Gu, Jian Li, Shenghua Liu, Yaohang Li

*Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence*, pages 3350-3356. DOI: [10.24963/ijcai.2017/468](https://doi.org/10.24963/ijcai.2017/468)

## Abstract

Principal component analysis (PCA) is a fundamental dimension reduction tool in statistics and machine learning. For large and high-dimensional data, computing the PCA (i.e., the top singular vectors of the data matrix) becomes a challenging task. In this work, a single-pass randomized algorithm is proposed to compute PCA with only one pass over the data. It is suitable for processing extremely large and high-dimensional data stored in slow memory (hard disk) or the data generated in a streaming fashion. Experiments with synthetic and real data validate the algorithm's accuracy, which has orders of magnitude smaller error than an existing single-pass algorithm. For a set of high-dimensional data stored as a 150 GB file, the algorithm is able to compute the first 50 principal components in just 24 minutes on a typical 24-core computer, with less than 1 GB memory cost.
