Categories
Uncategorized

Greetings Planet!

The default title text was hello world so I sheepishly satirized it. This is the start of my professional blog. Today I have been working on the early project draft for the A-life challenge project, which is computer science project about the early earth environment. It aims to model emergence and early earth organismal evolution using artificial intelligence. This blog post is being written one day before groups are decided however so this may or may not be the project I’m going to be developing for my next blog post. I hope I am selected to complete the A-life challenge project because the first degree I got was a degree in biology, so I have an extensive pool of knowledge to pull from if I do end up being assigned to the project.

Besides working on a vague top down draft of project direction I worked on a small bottom up draft about how to achieve the minimum viable simulation for the evolution challenge project. I’ll refer to the project as the ECP from now on for brevity. When drafting up parameters I’d have to satisfy for the minimum viable simulation I realized besides some vague conceptual understanding of neural networks I had no idea where to start in building my own. It was like I had begun working on building my dream home only to come to the realization I had no idea what a hammer or a “two by four” was.

Luckily, my friend from college who had been working as a software engineer using machine learning for a couple years now pointed me in the right direction and told me about pyTorch. I started reading some tutorials from pytorch.org and figuring out what tensors were, and how to build a model. Basically, tensors are matrices. That’s it. They are a building block in neural networks. The structure of how the neural network handles tensors and how it comes to output a tensor from one frame to the next is the bread and butter of machine learning. How do matrices “become” a neural network? There are tons of resources out there. I think a fan favorite is the 3blue1brown playlist on neural networks. It’s not so much that matrices becomes a neural network as it is matrices are a container of data. A neural network is a a collection of parts that together evaluate data and spit out evaluations. Over many cycles of evaluating and spitting out evaluations, it fine tunes its ability to spit out the “correct” evaluation. This is a vast over simplification. The math behind it is fascinating and the process is elegant. Hopefully I’ll come to elucidate more about neural networks in the coming months on this blog.