Net-Trim: Convex Pruning of Deep Neural Networks
Net-trim is a pruning scheme for deep neural networks, which has a convex formulation and comes with mathematical performance guarantees. Please see the papers "Net-Trim: Convex Pruning of Deep Neural Networks with Performance Guarantee" and "Fast and Convex Pruning of Deep Neural Networks via Net-Trim: Theory and Implementation". For an easy and convenient implementation of Net-Trim we have set up a Github page, which includes a summary of the method and different versions of the code.
Extraction of Principal Shape Components (PSC)
PSC is a demo and Matlab implementation of the algorithm presented in the paper "Extracting the Principal Shape Components via Convex Programming", proposed by Aghasi and Romberg. They model the convex problem as a linear program, which can be addressed in a computationally efficient way. The following code is an OCR demo where the characters within the image are identified from a dictionary of more than 2000 characters. You would need to download and setup Gurobi (free license for academic use) to successfully run the LP code. Also the ADMM version of the code (which does not require Gurobi) is included in the package.
Convex Cardinal ShapeComposition (CCSC)
CCSC is a short Matlab implementation of the algorithm presented in convex cardinal shape composition, proposed by Aghasi and Romberg. The following codes correspond to Section 5.2 of the paper, the OCR SampLE and the OCR GT examples. You would need to download and setup the Matlab CVX package to successfully run the code. Note that this program is using CVX and is therefore computationally slow. For a much faster implementation please use the PCS code above!
Sparse Shape Reconstruction (SPASH)
SPASH is a Matlab implementation of the sparse shape reconstruction idea proposed by Aghasi and Romberg. Two sample programs are made available for public access which can be further extended or modified to suit other imaging applications. The package is subject to update and more open access tools will be available in the future.
Demo 1: contains the code for segmentation with missing pixels. The zipped folder contains a Demo file (Demo_CV_Rec.m) which performs the sparse segmentation iteratively. All program settings are available and controlable via setting_file.m . The program also requires a dictionary file (M.mat) containing the shape information. The supplementary zipped folder contains codes that would be helpful in generating a shape dictionary.
Demo 2: conains the code for a text recognition (Captcha) example. The zipped folder contains a Demo file (Demo_CV_Rec.m) which iteratively performs a segmentation and identifies the underlying characters. All program settings are available in setting_file.m. The program also requires a dictionary file (M.mat) and an indexing rule (IndexPack.Mat). The supplementary zipped folder contains codes that would be helpful in generating a desired dictionary and the corresponding indexing pack. For a faster runtime, the default example uses 5760 character shapes. However, the supplementary codes can generate dictionaries and index rules for larger problems such as the one proposed in the original paper.
Multi Objective Levenberg Marquardt Algorithm (MOLMA)
MOLMA is a Matlab implementation of the multi-objective Levenberg-Marquardt Algorithm proposed in our paper "A Geometric Approach to Joint Inversion with Applications to Contaminant Source Zone Characterization". The Demo contains the code for the main function (molma.m) and two simple models to illustrate a basic joint inversion.
Electrical Resistance Tomography in 2D (ERT2D)
ERT2D is a MATLAB simulator for electrical resistance tomography (ERT). The code provides the data vector and the model Jacobian matrix to be used in any gradient-based inversion scheme. The software is specifically designed for 2D geophysics examples, although with slight modifications the code would support other applications (e.g. medical). The simulator uses the finite difference technique to numerically solve the underlying partial differential equation (PDE) and employs an Adjoint technique to calculate the model Jacobian matrix. ERT2D code supports MATLAB parallel processing feature, which may significantly speed up the processing time.
Demo: contains the main program functions as well as a demo file (Demo.m). The program models ERT in a given domain with some generic input files. The demo illustrates the problem setup and the measurement layout. It also plots the generated data and performs an accuracy check on the evaluated Jocobian. For more details please see the User Guide.