A GPU-based Incremental PCA implementation.
Project description
PCAonGPU
A powerful implementation of Incremental Principal Components Analysis that runs on GPU, built on top of PyTorch.
Installation
- Clone the repository:
git clone https://github.com/YourUsername/PCAonGPU.git
- Navigate to the cloned directory:
cd PCAonGPU
- Install the required dependencies:
pip install -r requirements.txt
Usage
from gpu_pca import PCAonGPU
# Create an instance
model = PCAonGPU(n_components=5)
# Fit the model (either using `fit` or `partial_fit`)
model.fit(your_data)
# Transform the data
transformed_data = model.transform(your_data)
Benchmark
SKlearn on an AMD Ryzen 9 5900X 12-Core Processor vs PCAonGPU on an Nvidia 4090
Data size: 5000 samples of 5000 dimensional data:
> python tests/benchmark_gpu_pca.py
test_sklearn_pca took 21.78324556350708 seconds to complete its execution.
test_gpu_pca took 6.523377895355225 seconds to complete its execution.
Data size: 50000 samples of 5000 dimensional data.
> python tests/benchmark_gpu_pca.py
test_sklearn_pca took 65.70944833755493 seconds to complete its execution.
test_gpu_pca took 11.030456304550171 seconds to complete its execution.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
PCAonGPU-0.1.tar.gz
(6.3 kB
view hashes)
Built Distribution
PCAonGPU-0.1-py3-none-any.whl
(7.1 kB
view hashes)