fastadi

Self-Tuning Data Adaptive Matrix Imputation

https://github.com/rohelab/fastadi

Science Score: 26.0%

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

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 6 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.5%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Self-Tuning Data Adaptive Matrix Imputation

Basic Info
Statistics
  • Stars: 9
  • Watchers: 3
  • Forks: 6
  • Open Issues: 10
  • Releases: 1
Created about 7 years ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog License

README.Rmd

---
output: github_document
---



```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "100%"
)
```

# fastadi


[![R-CMD-check](https://github.com/RoheLab/fastadi/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/RoheLab/fastadi/actions/workflows/R-CMD-check.yaml)
[![Codecov test coverage](https://codecov.io/gh/RoheLab/fastadi/branch/main/graph/badge.svg)](https://app.codecov.io/gh/RoheLab/fastadi?branch=main)


`fastadi` implements the `AdaptiveImpute` matrix completion algorithm. `fastadi` is a self-tuning alternative to algorithms such as `SoftImpute` (implemented in the [`softImpute`](https://cran.r-project.org/package=softImpute) package), truncated SVD, maximum margin matrix factorization, and weighted regularized matrix factorization (implemented in the [`rsparse`](https://github.com/dselivanov/rsparse) package). In simulations `fastadi` often outperforms `softImpute` by a small margin.

You may find `fastadi` useful if you are developing embeddings for sparsely observed data, if you are working in natural language processing, or building a recommendation system.

## Installation

You can install the released version from [CRAN](https://cran.r-project.org/) with:

``` r
install.packages("fastadi")
```

You can install the development version from [GitHub](https://github.com/) with:

``` r
# install.packages("devtools")
devtools::install_github("RoheLab/fastadi")
```

## Example usage

Here we embed users and items in the MovieLens 100K dataset.

```{r}
library(fastadi)

mf <- adaptive_impute(ml100k, rank = 3L, max_iter = 5L)
```

```{r}
mf
```

Note that the vignettes are currently scratch work for reference by the developers and are not yet ready for general consumption.

## References

1. Hayes, Alex, and Karl Rohe. “Co-Factor Analysis of Citation Networks.” Journal of Computational and Graphical Statistics, October 1, 2024, 1–14. https://doi.org/10.1080/10618600.2024.2394464.

2. Cho, Juhee, Donggyu Kim, and Karl Rohe. “Asymptotic Theory for Estimating the Singular Vectors and Values of a Partially-Observed Low Rank Matrix with Noise.” Statistica Sinica, 2018. https://doi.org/10.5705/ss.202016.0205.

3. ———. “Intelligent Initialization and Adaptive Thresholding for Iterative Matrix Completion: Some Statistical and Algorithmic Theory for Adaptive-Impute.” Journal of Computational and Graphical Statistics 28, no. 2 (April 3, 2019): 323–33. https://doi.org/10.1080/10618600.2018.1518238.

4. Mazumder, Rahul, Trevor Hastie, and Robert Tibshirani. “Spectral Regularization Algorithms for Learning Large Incomplete Matrices.” Journal of Machine Learning Research, 2010. https://web.stanford.edu/~hastie/Papers/mazumder10a.pdf.


You can find the original implementation accompanying [2] and [3] [here](https://github.com/chojuhee/hello-world).

Owner

  • Name: Rohe Lab
  • Login: RoheLab
  • Kind: organization

network analysis and multivariate statistics research group

GitHub Events

Total
  • Create event: 1
  • Release event: 1
  • Issues event: 2
  • Push event: 5
  • Pull request event: 1
Last Year
  • Create event: 1
  • Release event: 1
  • Issues event: 2
  • Push event: 5
  • Pull request event: 1

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 95
  • Total Committers: 2
  • Avg Commits per committer: 47.5
  • Development Distribution Score (DDS): 0.011
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
alex hayes a****s@g****m 94
Michael Clutterbuck c****l@g****m 1

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 23
  • Total pull requests: 7
  • Average time to close issues: 12 months
  • Average time to close pull requests: 3 days
  • Total issue authors: 2
  • Total pull request authors: 4
  • Average comments per issue: 0.52
  • Average comments per pull request: 0.86
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: about 4 hours
  • Average time to close pull requests: about 14 hours
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • alexpghayes (22)
  • dselivanov (1)
Pull Request Authors
  • alexpghayes (4)
  • olivroy (4)
  • mscbuck (1)
  • YunyiShen (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 507 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
  • Total maintainers: 1
cran.r-project.org: fastadi

Self-Tuning Data Adaptive Matrix Imputation

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 507 Last month
Rankings
Forks count: 10.1%
Stargazers count: 17.9%
Dependent packages count: 29.8%
Average: 31.4%
Dependent repos count: 35.5%
Downloads: 63.7%
Maintainers (1)
Last synced: 11 months ago

Dependencies

.github/workflows/R-CMD-check.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/check-r-package v1 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/pkgdown.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-pandoc v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/pr-commands.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/pr-fetch v1 composite
  • r-lib/actions/pr-push v1 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
.github/workflows/test-coverage.yaml actions
  • actions/checkout v2 composite
  • r-lib/actions/setup-r v1 composite
  • r-lib/actions/setup-r-dependencies v1 composite
DESCRIPTION cran
  • LRMF3 * depends
  • Matrix * depends
  • R >= 3.1 depends
  • RSpectra * imports
  • Rcpp * imports
  • ellipsis * imports
  • glue * imports
  • logger * imports
  • methods * imports
  • covr * suggests
  • invertiforms * suggests
  • knitr * suggests
  • rmarkdown * suggests
  • testthat >= 3.0.0 suggests