Hi, I'm Andrew Ganse. I'm an applied physicist and data scientist, lately building out machine learning and data analysis systems for physical sensor data at Seattle area startup businesses. Whether in the commercial world or in the academic science world, the focus of my work has been in machine learning, inverse problems, optimization, signal processing, and data analysis. (My PhD as well as much of my work at APL-UW concerned inverse problems in geophysics). Here on research.ganse.org are some of my publicly shareable research results and tools, both in data science topics and in applied physics topics. You can contact me at firstname.lastname@example.org.
PREDICTING BANK LOAN BEHAVIOR WITH RANDOM FOREST MODELS
Let's implement a random forest classifier from Scikit-Learn to see how well we can predict whether a bank client will have good loan behavior (meaning they won't default or become delinquent) if they are given a new loan. We'll use a public bank transactions/loans dataset from the PKDD99 Challenge conference for the modeling. In the process we'll fit and explore the assumptions made for this model, and learn about some limitations of Scikit-Learn's tree-based models.
ELECTROMAGNETIC INVERSION OF ESTUARINE SALINITY STRUCTURE USING SMALL-SCALE CSEM
The Conductivity Profiler is an instrument for remotely observing estuarine salinity profiles via electromagnetic measurements. Electromagnetic (EM) waves are attenuated in seawater as a function of frequency, and conductivity structure (closely related to salinity structure) in the water can be inferred by combining measurements of EM waves at different frequencies on a distant electric field receiver. Geophysical inversion methods are applied to estimate the estuarine salinity profile from the EM measurements. Using inverse theory techniques, we take advantage of statistical rigor and let the data determine the structure of the conductivity profile and quantify the uncertainty and resolution of the salinity profile.
MULTI-PHASE LINEAR REGRESSION
Code to fit multiple co-joined straight lines to a set of data points. Note the popular name (above, or sometimes "segmented linear regression") for this topic may be a bit misleading, as this is in fact a nonlinear regression problem due to solving for the intersection points of the co-joined lines.
SEVERAL PROJECTS USING RASPBERRY PI ZERO
The tiny version of the Raspberry Pi computer, the Pi Zero, is barely larger than a stick of gum yet is a full Linux-based computer. It's a bit less powerful than the larger Pi 2 & 3 models, but it uses much less power than they do. It's a great field sensor platform for some applications, and super quick to implement in all sorts of projects. Projects here include: 1.) adding a canned sensor attachment and running a Jupyter server on the Pi to analyze/view the sensor data in a web-based Python notebook; 2.) attaching a USB mic and audio amplifier/speaker add-on and implementing the Jasper speech/voice-control agent; 3.) attaching a near-infrared camera and taking nighttime photos in our back yard after dark.
INTERACTIVE GPS DATA VISUALIZATIONS IN PYTHON/JUPYTER
Did you know you can plot your geographic data on interactive maps embedded directly in your Python notebooks? Check it out, as we play with and analyze some GPS tracking data. A database of tracked walking routes data available on a health/fitness website provides a convenient trove of data not only to play with, but also to explore the geometric interference effects of downtown buildings upon GPS track solutions.
RADIO SCIENCE GRAVITY INVERSION FOR ICY MOON INTERNAL STRUCTURE
2O/rock interface (seamounts).
LONG-RANGE OCEAN ACOUSTIC SCATTERING
NPAL Ocean Acoustics page.
InvGN: GAUSS-NEWTON NONLINEAR INVERSION CODE
Calculate Tikhonov-regularized, Gauss-Newton nonlinear iterated inversion to solve the damped nonlinear least squares problem, using the InvGN toolkit for Matlab/Octave. While Matlab's optimization toolbox contains
lsqnonlin, it does not inherently include the Tikhonov regularization and is only the optimization component, whereas inversion also requires uncertainty quantification. My InvGN package is for weakly nonlinear, Tikhonov-regularized, inverse problems (so includes solution uncertainties and resolution quantification), handles both frequentist and Bayesian frameworks, and also works in Octave.