Git Product home page Git Product logo

perk.jl's Introduction

PERK.jl

https://github.com/MagneticResonanceImaging/PERK.jl

action status codecov license docs stable docs dev

This package implements PERK, a parameter estimation technique presented in G. Nataraj, J.-F. Nielsen, C. Scott, and J. A. Fessler. Dictionary-free MRI PERK: Parameter estimation via regression with kernels. IEEE Trans. Med. Imag., 37(9):2103-14, September 2018. This code was inspired by the MATLAB code written by Gopal Nataraj, which can be found here.

Getting Started

At the Julia REPL, type ] to enter the package prompt. Then type add https://github.com/MagneticResonanceImaging/PERK.jl to add the latest version. (Append #v0.3.2 to specify a specific version.) Hit backspace to return to the normal Julia prompt, and then type using PERK to load the package.

Overview

The function perk provides the main functionality. Training is done by generating synthetic data using randomly generated parameters. Distributions for these parameters can be passed directly to perk, which will use them for training and then estimate the latent parameters from the given test data. Alternatively, one can pass the parameter distributions to PERK.train, which will create a TrainingData object that can then be passed to perk (and used multiple times, if desired). One must also pass a Kernel object to perk. Three are provided in this package: GaussianKernel, GaussianRFF, and EuclideanKernel. GaussianKernel and GaussianRFF are described in the paper. Using EuclideanKernel indicates to solve ridge regression instead of kernel ridge regression.

Because PERK utilizes kernel ridge regression at its core, one can also use this package for solving kernel ridge regression. (This can be useful if, e.g., one already has training data and therefore does not need to generate some.) Calling PERK.krr_train returns a TrainingData object that can be passed to PERK.krr. As with perk, both PERK.krr_train and PERK.krr must be passed a Kernel object.

Related packages

These are more general and not MRI specific.

Status

This repo is not yet registered in part because its name does not meet Julia naming guidelines. If you want to be registered, please post an issue and suggest a name.

On 2024-04-08, the package was relocated here from https://github.com/StevenWhitaker/PERK.jl Some links may be broken by this transition.

perk.jl's People

Contributors

jefffessler avatar stevenwhitaker avatar

Watchers

 avatar  avatar  avatar

perk.jl's Issues

Why does `krr` depend on `kernel`?

Shouldn't the kernel argument of krr always be the same as that used for krr_train?
Seems like it should at least be the default choice.
Would there ever be any reason to over-ride it?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.