I am a Principal ML Engineer specializing in 3D imagery and large scale ML pipelines. I have expertise in machine learning including deep learning generative models, CNNs and clustering. I also have a lot of experience in 3D procedural models, image compositing, and distributed systems like Dask and Kubeflow. I have built private Kubernetes clusters, VFX render farms, and the machine learning pipelines that run within them.
I am interested in AI, Category Theory, directed graphs, 3D rendering and statistics. I’ve been coding for 19 years, 16 of them in Python, and I’m self-taught. I've coded in over a dozen languages; Python, Java, Typescript and Ruby, to name a few. I've written 11 public python pip packages, and some NPM and Ruby ones too. Currently, I'm writing some Haskell in my free time. I am at my best when solving complex computer vision problems and architecting ML pipelines and infrastructure. I originally worked in the special effects industry but switched after 5 years to AI.
VirtuousAI (2023 - Present)
Explainable AI model - Image-to-Table
•Converts images with tables, such as inventory PDFs, into tabular data a SQL Database could consume
•Python, Facebook SAM (segmentation), Llama vLLM image-to-text, Google Tesseract (OCR), Kubeflow
Explainable AI Model - Gameplay Event Graph
•Converted gameplay event data to Probabalistic Graph Model
•Collated multiple data sources of time-based SQL data (sales, gameplay, etc) in to single dataframe
•Converted said data into an explainable Probabilistic Graphical Model of user behavior (NetworkX)
•Trained SVM model and MLP deep learning model to predict user behavior (Scikit-learn, Pytorch, Kubeflow)
Stable Diffusion XL with ControlNet
•Built an image, text and depthmap to image model
•Stable Diffusion XL, ControlNet, Pytorch, Kubeflow
Designed and implemented entire private cloud infrastructure
•On-premise bare metal Kubernetes with 30 nVidia A100 and H100 GPUs
•Automated entire private cloud deployment from developer environment, networking, bare metal provisioning, to the K8s applications
•Done 100% remotely, (obviously someone else handled the physical hardware)
•Everything up to the K8s application layer was entirely by my hand, after that it was between me and Eric Nichols
•DevOps Layer - Python, GitLab, Ansible, Terraform, Docker, Cookiecutter
•Network Layer - pfSense, HAProxy, OpenVPN
•Admin Layer - MAAS, Juju, LXD, Synology
•Cluster Layer - MicroK8s
•Application Layer - ArgoCD, Traefik, Longhorn, MinIO, Kubeflow, BentoML, Prometheus, Grafana, Dask
•Yes, literally all of the above was involved and a few more Kubernetes apps
Strateos (formerly 3Scan) (2016 - 2023)
Distributed computer vision pipeline built on Dask and Kubernetes
•On-premise Kubernetes cluster via Harvester OS (Ansible, AWS S3, ArgoCD, Helm, Docker)
•Hidebound, massive asset generation app (Dask, Plotly's Dash)
•Video, 3D surface data, 100x GB tile pyramids
•Much cheaper than Amazon EKS or EC2
U-Net deep learning model for 3D glomeruli segmentation of the kidney
•Rapid ground truth data creation (Vision library, Nuke)
•4-GPU TensorFlow model, Jaccard’s + DICE loss functions
•Setup, trained (EC2)
Vision, comprehensive computer vision library
•Pandas, OpenCV, OpenEXR, Scikit-Image
•3D tile pyramids, image sequences (100+ GB scale)
3D volume reconstruction of serial microscope images
•Image stitching, grouping (SVMs, OpenCV)
•3D image registration (ORB key-points, masking, feature score)
•3D volume segmentation (weighted pixel sum, K-Means, GaussianMixture, deconvolution)
3D generation of human lung and vasculature for 3D print (United Therapeutics, 3D Systems)
•Procedural 3D model (Houdini, L-systems, linear algebra, parallel transport, VEX)
•3D meshes of real human lung (Modo, MarchingBridge)
•Hybrid model (procedural + real mesh) 3D printed using collagenous ink
•Goal was 3D printing organs for transplant
•3Scan’s largest contract to date
Lead and trained team in 3D reconstruction of human lung (Visible Human data, Houdini, Nuke, Modo, Maya)
•3D volume segmentation (OpenCV, Nuke)
•Nuke imaging tool suite (3D volume viewer, etc)
•Modo procedural modeling framework
•MarchingBridge contour extraction and 3D reconstruction (OpenCV, OpenVTK, CairoSVG)
Geode dev team
•3.1 Petabyte, N-Dimensional data-store, pipeline engine (Java)
Luma Pictures (2015)
Developed ELK data analytics pipeline (Elasticsearch, Logstash, Kibana)