My enhanced release of wodsuz/EasyApplyJobsBot with overhauled application tracking and a novel dashboard suite to monitor your Linkedin job applications. Explore the integration of real-time Grafana dashboards with your job search, offering unparalleled insights into the market.
Category: Algorithms
Unraveling Culinary Secrets with a Restricted Boltzmann Machine: A Deep Dive into Ingredient Patterns
At the heart of our project lies the Restricted Boltzmann Machine, a type of neural network particularly adept at uncovering hidden patterns in data. In the culinary world, ingredients form complex relationships, creating a web of flavors and textures. Our goal is to untangle this web and discover how ingredients co-occur in recipes. We feed… Continue reading Unraveling Culinary Secrets with a Restricted Boltzmann Machine: A Deep Dive into Ingredient Patterns
Voice Cloning with AI
Voice conversion with a Keras autoencoder model
Block Matrix Multiplication
When dealing with large matrices, it helps to have an algorithm to break multiplication into operations on matrix subblocks. Tens of thousands of indices add up to gigabytes, and you’re going to have trouble calling X.matmul on a matrix library backend. Here’s a simple implementation that plays to the tune of Major->Minor->Major to reassemble the… Continue reading Block Matrix Multiplication
RRQR Factorization and Spanning Boxes
The famous QR factorization algorithm can be BLAS-3 optimized. Using the Woodbury matrix identity, we implement a block-based Rank-Revealing QR and point out a connection between pivot selection and object detection.
Searching for a switch: the Circuit Breaker Panel problem
You want to identify the breaker switch for a particular outlet. This problem inspired me to write an article on Medium one day as I was thinking about the electric wiring at home. As you’ll see, there are commonalities between decidely challenging tasks in Machine Learning and the problems you might encounter day to day.… Continue reading Searching for a switch: the Circuit Breaker Panel problem
Solve a Substitution Cipher with a Markov Chain
There are k! substitution ciphers for an alphabet with k letters—too many for an exhaustive search. With a frequency-based approach adapted to the graph of alphabetic ciphers, we redefine the act of deciphering as a sampling problem suitable for a Metropolis-Hastings random walk. A substitution cipher is thus solvable with a Markov chain. Let’s begin… Continue reading Solve a Substitution Cipher with a Markov Chain
Plant Pairs on the Tufts Campus
In Spring of 2019 my Environmental Fieldwork class surveilled the herbaceous plants growing on and around the Tufts campus, recording their identities and locations into a GIS database. For a final project I created a simple Cartesian quadrature algorithm in Python to identify the distinct plant pairs most likely to share the same soil. Whether… Continue reading Plant Pairs on the Tufts Campus