Matthew Hawthorn's Projects
Almost-Done (Always Developing) Homebrew Categorical Multi-Layer Perceptron
Artistically crafted solutions to the Advent of Code 2021 problems with a consistent interface
My solutions to the advent of code 2022 challenges
My solutions to the advent of code 2023 challenges
command line tool to turn images into ascii art
A subclass of python's builtin property class that removes boilerplate by implementing the _hidden_attribute pattern with a single decorator call. Also facilitates invalidation of the cached hidden attribute with a `@cacheproperty.invalidate` decorator on any other methods or properties in a class.
Tool to build efficient vector space and n-gram language models from a stream of arbitrarily-structured documents using builtin python data types. Never store a token more than once- always use an ID. Count n-grams with tries, not tables. Make everything easily configurable. Build a language model CALMly- spend your time thinking about preprocessing choices, not the implementation.
A continuous-state 1-D cellular automaton implemented using D3.js.
A project to visualize polarization and alliances in the US Congress throughout its history. Analysis with Python + pandas & numpy, storage with Sqlite3, visualization with d3.js/HTML/CSS.
Hypermodern Python Cookiecutter
A tool for modeling a corpus with an LDA topic model and visualizing/searching the results in a Shiny app
Functions for simple benchmarking of data.frame vs data.table operations on identical inputs, with utilities for graphing the output
h = f |o>> g in Python, plus other neat functional tricks like h = f *o>> g and h = f **o>> g
Eventual home of an interactive tool to explore the origin and evolution of mathematical ideas
How One Mathematician Dutifully Fulfills the Stereotype of Being Woefully Socially Inept
A light-weight, flexible, and expressive pandas data validation library
framework for parallelized array ops in python
A Python package for optimizing piano tuning sequences from a set of target pitches
More understandable alternatives for Python regular expressions
A wrapper around pytorch module objects with a sklearn-like interface, allowing boilerplate-free training of complex neural nets.
Paper wrapping up the content of a talk on the mathematics of tuning systems that I gave to the UofL Mathematics Club in 2014
Runtime inspection utilities for Python typing module