uapca

Uncertainty-aware principal component analysis.

https://github.com/grtlr/uapca

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.1%) to scientific vocabulary

Keywords

dimensionality-reduction hacktoberfest machine-learning uncertainty visualization
Last synced: 4 months ago · JSON representation ·

Repository

Uncertainty-aware principal component analysis.

Basic Info
Statistics
  • Stars: 18
  • Watchers: 4
  • Forks: 1
  • Open Issues: 0
  • Releases: 5
Topics
dimensionality-reduction hacktoberfest machine-learning uncertainty visualization
Created over 6 years ago · Last pushed about 4 years ago
Metadata Files
Readme License Citation

README.md

Uncertainty-aware principal component analysis

Build Status npm GitHub

This is an implementation of uncertainty-aware principal component analysis, which generalizes PCA to work on probability distributions. You can find a live Observable notebook demonstrating our method here.

Teaser

You can find a preprint of our paper at arXiv:1905.01127 or on my personal website. We also extracted means and covariances from the student grades dataset.

Example

```js // Loading the library import * as uapca from 'uapca';

// Loading and converting the dataset const studentgrades = (await fetch('https://raw.githubusercontent.com/grtlr/uapca/master/data/studentgrades.json')).json(); const distributions = student_grades.distributions.map(d => new uapca.MultivariateNormal(d.mean, d.cov));

// Perform uncertainty-aware PCA with scaling factor k = 0.5 const pca = uapca.UaPCA.fit(distributions, 0.5).aligned();

// Project the data onto 2D const projected_distributions = pca.transform(distributions, 2); ```

Development

The dependencies can be install using yarn:

bash yarn install

Builds can be prepared using:

bash yarn run build yarn run dev # watches for changes

Run tests:

bash yarn run test

To perform linter checks you there is:

bash yarn run lint yarn run lint-fix # tries to fix some of the warnings

Citation

To cite this work, you can use the BibTex entry in CITATION.cff.

Owner

  • Name: Jochen Görtler
  • Login: grtlr
  • Kind: user
  • Location: Rhein-Neckar Region, Germany

Self-employed software engineer working with Rust 🦀.

Citation (CITATION.cff)

@article{Goertler2020UncertaintyAwarePCA,
  author     = {J. Görtler and T. Spinner and D. Streeb and D. Weiskopf and O. Deussen},
  doi        = {10.1109/TVCG.2019.2934812},
  issn       = {2160-9306},
  journal    = {IEEE Transactions on Visualization and Computer Graphics},
  keywords   = {Principal component analysis;Uncertainty;Dimensionality reduction;Probability distribution;Data visualization;Covariance matrices;Random variables;Uncertainty;dimensionality reduction;principal component analysis;linear projection;machine learning},
  month      = {jan},
  number     = {1},
  pages      = {822--831},
  title      = {Uncertainty-Aware Principal Component Analysis},
  volume     = {26},
  year       = {2020},
  url        = {http://graphics.uni-konstanz.de/publikationen/Goertler2020UncertaintyAwarePCA},
}

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 57
  • Total Committers: 1
  • Avg Commits per committer: 57.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Jochen Görtler g****r 57

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 6
  • Total pull requests: 22
  • Average time to close issues: 18 days
  • Average time to close pull requests: 4 days
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 20
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • grtlr (5)
  • sandeep2995 (1)
Pull Request Authors
  • grtlr (21)
  • spinthil (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • npm 19 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 13
  • Total maintainers: 1
npmjs.org: uapca

Uncertainty-aware principal component analysis.

  • License: MIT
  • Latest release: 0.8.0
    published about 6 years ago
  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 19 Last month
Rankings
Stargazers count: 8.1%
Dependent repos count: 10.3%
Forks count: 11.6%
Downloads: 18.2%
Average: 20.0%
Dependent packages count: 51.8%
Maintainers (1)
Last synced: 4 months ago

Dependencies

package.json npm
  • @types/chai ^4.1.7 development
  • @types/d3-array ^2.0.0 development
  • @types/expect ^1.20.4 development
  • @types/mocha ^5.2.7 development
  • @typescript-eslint/eslint-plugin ^1.13.0 development
  • @typescript-eslint/parser ^5.0.0 development
  • chai ^4.2.0 development
  • eslint ^6.0.0 development
  • mocha ^6.2.0 development
  • npm-run-all ^4.1.5 development
  • rollup ^1.16.2 development
  • rollup-plugin-commonjs ^10.0.2 development
  • rollup-plugin-eslint ^7.0.0 development
  • rollup-plugin-node-resolve ^5.2.0 development
  • rollup-plugin-terser ^5.0.0 development
  • rollup-plugin-typescript2 ^0.21.2 development
  • ts-mocha ^6.0.0 development
  • typescript ^3.5.2 development
  • @types/d3-random ^1.1.2
  • d3-array ^2.3.2
  • d3-random ^2.0.0
  • ml-matrix ^6.2.0