Josh Engels

Bio Image

Howdy!

I am currently an EECS PhD student at MIT, where I am grateful to be advised by Julian Shun. Broadly, I am interested in building high performance algorithms that solve real-world problems in a wide variety of domains, including machine learning, nearest neighbor search, computational geometry, and clustering.

I previously worked as an AI engineer at ThirdAI, where we worked on building an in-house sparse machine learning engine from scratch. At ThirdAI, I was lucky to be able to combine my passions for designing algorithms and for implementing high performance systems.

While at ThirdAI, and earlier in Rice University's Sketching and Hashing Lab, I investigated randomized algorithms, group testing, and locality sensitive hashing. Using these techniques, I developed efficient data structures for fast high dimensional near neighbor search (FLINNG) and set-of-vector search (DESSERT).


Papers

Approximate Nearest Neighbor Search with Window Filters.
Joshua Engels, Benjamin Landrum, Shangdi Yu, Laxman Dhulipala, and Julian Shun.
Preprint | Code

PECANN: Parallel Efficient Clustering with Graph-Based Approximate Nearest Neighbor Search.
Shangdi Yu, Joshua Engels, Yihao Huang, and Julian Shun.
Preprint | Code

DESSERT: An Efficient Algorithm for Vector Set Search with Vector Set Queries.
Joshua Engels, Benjamin Coleman, Vihan Lakshman, and Anshumali Shrivastava
NeurIPS 2023.
Preprint | Code | Blog Post

BOLT: An Automated Deep Learning Framework for Training and Deploying Large-Scale Search and Recommendation Models on Commodity CPU Hardware.
Nicholas Meisburger, Vihan Lakshman, Benito Geordie, Joshua Engels, David Torres Ramos, Pratik Pranav, Benjamin Coleman, et al.
CIKM 2023.
Paper

From Research to Production: Towards Scalable and Sustainable Neural Recommendation Models on Commodity CPU Hardware.
Anshumali Shrivastava, Vihan Lakshman, Tharun Medini, Nicholas Meisburger, Joshua Engels, David Torres Ramos, Benito Geordie, et al.
RecSys 2023.
Paper

Practical Near Neighbor Search via Group Testing.
Joshua Engels*, Benjamin Coleman*, and Anshumali Shrivastava
NeurIPS 2021: Spotlight talk - top 3%
* indicates equal contribution
Paper | Talk | Code

Missed one! How ballot layout and visual task strategy can interact to produce voting errors.
Joshua Engels, Xianni Wang, Michael D. Byrne
International Conference on Cognitive Modeling 2020.
Paper | Talk | Code | Blog Post


Blog Posts

Bananagrams is NP-complete
Have you ever wondered if Bananagrams is NP-complete? No? Well I think it is, and I’ll prove it!...

What is Set-of-Vector Search?
The set-of-vector search problem is an exciting and unexplored research problem. In our recent paper, we develop DESSERT,...

Simulating Voter Errors with ACT-R
Badly designed ballots may not seem like a pressing problem, but they have already swung multiple elections. For...