ML/AI

Generative AI as a Creative Tool

Generative AI (Gen AI) is an exciting frontier in technology where machines are empowered to create, shaping the future of human-machine interaction. This innovative tool is transforming fields left and right, offering quick and efficient solutions to complex problems with its ability to generate new designs and ideas.


Introduction

Generative AI is an exciting field of artificial intelligence that opens the door to creating new and original content, spanning from written text to stunning visuals and even computer-generated music. It showcases the innovative side of AI by going beyond simple analytical tasks to engage in creative processes. Immediatley raises the question does it replace humans, well my hope is that it will revolutionise the current work force just like how robotic automation changed the landscape of manual labour, the important thing to remember is that the future impact of AI is still undetermined, and we all can play a part in ensuring that it is used responsibly.

Training generative AI models is about teaching computers to create new content, like text or images, by learning from huge datasets. This training helps AI to understand and recreate the complex patterns found in human language and visual arts. The process is intricate but immensely rewarding, leading to AI that can generate amazingly realistic outputs.

BuZzz words

Large Language Models (LLMs): These are AI models specifically designed to understand and generate human language by being trained on a vast amount of text data.

Variational Autoencoders (VAEs): A type of AI model that can be used to create new images. It has two main parts: the encoder reduces data to a simpler form, and the decoder expands it back to generate new content.

Latent Space: A compressed representation of data that the autoencoder creates in a simpler, smaller form, which captures the most important features needed to reconstruct or generate new data.

Parameters: Parameters are the variables that the model learns during training. They are internal to the model and are adjusted through the learning process. In the context of neural networks, parameters typically include weights and biases.

Weights: Weights are coefficients for the input data. They are used in calculations to determine the importance or influence of input variables on the model's output. In a neural network, each connection between neurons has an associated weight.

Biases: Biases are additional constants attached to neurons and are added to the weighted input before the activation function is applied. Biases ensure that even when all the inputs are zero, there can still be a non-zero output.

Hyperparameters: Hyperparameters, unlike parameters, are not learned from the data. They are more like settings or configurations for the learning process. They are set prior to the training process and remain constant during training. They are external to the model and are used to control the learning process.

Autoregressive text generation: Autoregressive text generation is like a game where the computer guesses the next word in a sentence based on the words that came before it. It keeps doing this to make full sentences.

Latent space decoding: Imagine if you had a map of all the possible images you could create, with each point on the map being a different image. Latent space decoding is like picking a point on that map and bringing the image at that point to life.

Diffusion models: Diffusion models start with a picture that's full of random dots like TV static, and then they slowly clean it up, adding bits of the actual picture until it looks just like a real photo or painting.

Generative Adversarial Networks (GANs): A system where two neural networks, one to generate data and one to judge it, work against each other. This competition helps improve the quality of the generated results. (generators vs discriminators)

Recurrent Neural Networks (RNNs): A network that's really good at handling sequences, like sentences or melodies, because it processes one piece at a time and remembers what it saw before.

Transformer-based models: A more advanced type that looks at whole sequences at once, not one piece at a time, making it faster and smarter at tasks like writing sentences or translating languages.

Sequential Data: Data that is connected in a specific order, like words in a sentence or steps in a dance routine.

Example: Generate One Token at a Time - demystifying the LLM's

(TODO: INSERT LINK HERE) Running LLM on a Pi

Previous
It's machine learning time