🖥️Artificial Intelligence
Why did we decide to use artificial intelligence for Racoon's project?
One of our core team member’s (Discord - Moltres) holds a graduate degree in deep learning (and undergraduate degrees in math and probability). In the past years, Moltres has worked in the artificial intelligence (deep learning) field within the finance industry. Moltres has also conducted research with respect to speech and language processing (fields associated with artificial intelligence).
Through a shared interest with the other founders of Racoon regarding art, NFTs, finance, and decentralization, we decided in 2021 to explore the possibility of sharing our interests to build a project for the Cosmos community.
TL;DR -> What are Racoon's AI models?
The AI models used to generate the Racoon NFTs are comprised of two main architectures:
Generative Adversarial Networks (GANs): Introduction link for GANs, First paper on GANs
In general, these types of models are comprised of two interacting parts that fight against each other (generator and discriminator). The generator part is responsible for generating new images from what it has been trained (images shown previously). The responsibility of the discriminator part is to confirm the “realness” of the new image as compared to the set of actual real images.
Convolutional Neural Networks (CNNs): Introduction link, Review of CNNs.
CNNs are currently considered to be the best way for a computer to see and understand an image.
For those interested in further detail pertaining to the types of GANs and CNNs we use, Moltres can be contacted on our Discord or the AI and Deep Learning channel. Alternatively the following review is provided that pertains to the types of models used in art generation: Papers on art generation from GANs.
Programming language to generate Racoon NFTs: Python is still the most popular language in the world of deep learning and artificial intelligence. This is why we are using Python to develop our models. The libraries we currently use to develop such models include:
PyTorch: Facebook's deep learning library (used for all the AI models architecture);
Pillow: Used for image processing; and
numpy: Used for matrix manipulations and math stuff.
Further details will be provided upon request. The Racøøn team is fully transparent!
Introduction: How does artificial intelligence (machine learning) work?
Let's begin by clearing something up. Artificial intelligence has a lot under its roof and has been a buzzword. What people actually mean when they talk about AI models is machine learning (or deep learning - where deep learning is an even more specific area of machine learning).
Machine learning is a strong concept as it is actually a machine (computer) that learns from observations, examples etc. It learns by trying to be 'better' at a given task. In the case of Racøøn, the AI model learns to be better at generating new images that are as good as possible (good as possible in this context means as close as possible to reality).
At the end of the day, you can see machine learning as computer programs that learn from experience and a given task on how to do something as good as possible. Let's see the example below.
A first example of what is machine learning
Generally, an AI model would take all the historical pieces of information regarding the weather for that region and its neighbors. Once obtained, the AI model will learn how to predict the upcoming temperatures.
How does it do that? By simply trying to predict the upcoming weather by learning information from given historical information. An example of this is provided in the rendered image below.
In the above image, we provide the AI model with the average temperatures over period of time in 2018 (green line) and 2019 (red line). The model is able to learn the patterns and attempts to understand logic behind said patterns. Then, the model is used to predict future temperatures for a period of time in 2020 (black line).
What can we understand from the above: The AI model will not likely predict the exact temperatures for the period of time in 2020. However, the results of the model will likely contain better and more useful information than if the model had not been ran. AI models have a proven track record of being more accurate, and generally more useful than if data had been analyzed without the use of the model.
How does AI learn to generate Racoon NFTs then?
We will first explain simply how it works and then go in the details later on.
A model will be given a lot of Racoon NFT images along with different images of styles (paintings, 3D abstracts, video game images, wallpapers, real life images, etc.).
The model will take a Racoon NFT image and will try to transform it into an image of style and then attempt to transform it back into a Racoon. The other model attempts to do the inverse of this process.
Our model can be imagined similarly to doing language translation (i.e., transforming Spanish text to English and then transforming the English text back to Spanish).
Following multiple runs of the model, the model ultimately improves the process and “learns” how to do so.
The most exciting part of this model architecture is that it is able to learn how to generate images. How does it work? Simply give to the model a Racoon NFT image and a style it never saw before. The model will then provide something new
Below is an example on how the model works. It is in two parts (Racoon to Style and Style to Racoon). Then, the model also learns how to apply the style to a Racoon (which would generate new images).
More information will be added soon. Please reach out to us to provide your comments and what you would like to see more in details!
Last updated