A Julia library for learning the radius and concentration of a material by using the moments of simulated backscattered waves. The backscattered waves are generated by the MultipleScattering julia package
You will need to add the following packages
julia
Pkg.add("StatsBase")
Pkg.add("JLD")
Pkg.add("GLMNet")
Pkg.add("Plots")
Pkg.add("LaTeXStrings")
and also clone the MultipleScattering package
Pkg.clone("https://github.com/jondea/MultipleScattering.jl.git")
This package is tested and works for Julia 0.6 and 0.5.
To get started, download and include the library
Pkg.clone("https://github.com/gowerrobert/MultipleScatteringLearnMoments.jl")
using MultipleScattering
using MultipleScatteringLearnMoments
Navigate to the root directory. It will look like
~/.julia/v0.5/MultipleScatteringLearnMoments
if you have julia version v0.5. From this folder, launch jupyter in a terminal by typing
jupyter notebook
From within jupyter notebook, open the demo file
test/demo_L2.ipynb
To generate the regularization parameter lambda and the kernel parameters using crossvalidation, run
jupyter notebook
test/cross_valid.ipynb
For a reference and further reading see:
Learning about random media from near-surface backscattering:
using machine learning to measure particle size and concentration.
Artur L Gower, Robert M Gower, Jonathan Deakin, William J Parnell, and I. David Abrahams