About Me
I’m currently working as an NLP Engineer @ aveni.
I have a PhD from Heriot-Watt University on applying natural language processing based machine learning algorithms to programming languages, as well as a first class honors masters degree in Digital Electronics from the University of Sheffield.
In my spare time I enjoy: reading, listening to podcasts, playing board games, and watching baseball.
You can contact me on twitter or via e-mail.
Projects
- GloVedle: A version of Wordle using GloVe embeddings.
- Wordle Terminal: A Python port of Wordle which is played in the terminal.
- UUIDv4 Generator: A tool for generating UUIDv4s, because I didn’t like the way the top result on Google generated them.
- easynlp: A library for performing natural language processing - such as zero-shot classification, translation, named entity recognition, summarization, and question answering - inference on given data utilizing the pre-trained models from transformers.
- pytorch-sentiment-analysis: A tutorial on how to implement some common deep learning based sentiment analysis (text classification) models in PyTorch with torchtext, specifically the NBOW, GRU, bi-LSTM, CNN and Transformer models. Somehow got popular and has quite a few stars.
- pytorch-seq2seq: A tutorial implementing neural (deep learning based) sequence-to-sequence models in PyTorch with torchtext, by implementing six NMT papers. Also has quite a few stars and was used as a basis for the official PyTorch language translation tutorial.
- pytorch-image-classification: A tutorial covering how to implement some deep learning computer vision models in PyTorch with torchvision. Covers: a basic multi-layer perceptron, LeNet, AlexNet, VGG and ResNet.
- a-tour-of-optimizers: A tutorial on common optimization algorithms used for neural networks, including: SGD, Adagrad, Adadelta, RMSprop and Adam.
- snake: Snake in Javascript.
- difference: A timed mental maths game in Javascript