I’ve been reading philosophy since I was a kid and I’ve always wondered how awe-inspiring it would be to be
able to talk with philosophers from the past. How would it feel to be able to have a conversation with them?
This project explores all of Plato's works and features two deep learning models that can generate new text and hold a conversation with the user. The bot that generates new text is based on a GPT-2 model, while the chatbot is based on dialoGPT and emulates Socrates. Both models are taken from HuggingFace's model hub and are finetuned on Plato's works using the Transformers library.
The project features a simple Tkinkter GUI that allows the user to interact with the chatbot, generate new text, and change the parameters of the models.
A state of the art
musical screening assessment that takes only 15 minutes to complete and
outperforms gold standard assessments widely used by healthcare providers across 15+ mental
Predictions are made using an Imbalanced Random Forest classifier that was trained on an imbalanced binary
prediction problem and optimized for the F1 weighted statistic.
The backend API is written in Python and built with the FastAPI framework. It is deployed as a Docker container on AWS Lambda. The API connects to a DynamoDB database. The frontend was built with the Svelte Kit framework. The app is containerized and deployed with GitHub Actions on the AWS App Runner for scalability. Data drift and model performance are monitored using DynamoDB streams, which feeds the data into the processing pipeline whose results are visualized with AWS Quicksight. The CI/CD pipeline is built with GitHub Actions and the AWS CDK.
Disclaimer: I didn't code the frontend.
Pairs trading is a strategy in which a trader buys one asset while shorting another.
The main premise of the trade is that if the two pairs diverge, they will almost
certainly converge again, resulting in profit for the trader. As a result, the strategy requires
cointegrated pairs to function, making it a clustering unsupervised machine learning problem.
I obtained all S&P 500 stocks from Yahoo Finance and preprocessed them for the clustering algorithm. Several clustering algorithms were employed and evaluated. The best performing algorithm was chosen based on the silhouette score, and the cointegration test was run on the given clusters to extract the cointegrated pairs. A TSNE algorithm was used to visualize the pairs.