_ _ _
_ _ _ _ _ _ _ _ _ | |_| |_ ___ _____ ___ ___| |_ _ _ _ _ ___
| | | | | | | | | |_| _| | . | | .'|_ -| |_|_'_| | |- _|
|_____|_____|_____|_|_| |_|_|___|_|_|_|__,|___|_|_|_|_,_|_ |___|
|___|
I'll be writing down an idea I've had for a long-term'ish project. This idea has existed in mind for a while, but I've never really put the project into development to see the full fruits of it. Hopefully in writing about it, It'll become one step closer to reality.
I'll probably write a few other blogposts like this one. However, not every idea here will make the final cut.
To put it simply (and I'm using future tenses here), it will be a model of sorts which loosely emulates the model of GPT1 during the old days of OpenAI. It'll run locally of course, and it'll take a lot of resources.
The model can conversate with users in an okay'ish dataset. It can also play Chess with users, classify images, and think strategically ahead of time.
All of this will be down with the bulk of CNNs (Convolutional Neural Networks) and FNNs (Feedforward Neural Networks). This "model" will really just encompass a few other models to work properly under the hood. More power, but works anyway. Or at least, in theory.
The first model takes in user input (Which assumes to be American English text), tokenizes, preprocesses it and does all the things for the model to understand. From here on, it'll use another model to determine the request. If it's a question, it'll redirect to the RNN model which can handle natural language conversation. If it's a request to classify an image, or play Chess, it'll redirect to the according models suitable for that specific request.
A (rough) visual representation of this can be demonstrated as below:
┌───────────────────────┐
│ │
│ │ ┌────────────────────────┐
│ English Text │ ────► │ Preprocessor │
│ │ └───────────┬────────────┘
│ │ │
└───────────────────────┘ │
│
│
│
│
│
┌────────────────────────────────────────┐ │
│ │ │
│ │ │
│ │ │
│ │ ◄────────┘
│ Classifier │
│ │
│ │
│ │
└─────────────────┬──────────────────────┘
│
│
│
│
┌──────▼──────────┐
│ │
│ │
│Corresponding │
│ Model │
│ │
└─────────────────┘
This is a rough idea of what I intend to do. It would look awesome in practice, especially from the perspective of somebody thats only built small FNNs which can simulate various logic gates and regression tasks.