Blog Post #4

Learning something new, and learn it fast, is arguably a skill every programmer needs to survive in today’s environment. For our music classification neural network, I spiked two important underlying technologies: Librosa, which we are using throughout our project to transform sound signals to images, and Keras, which is the framework for building our ConvNet to train on aforementioned images. I started with asking the fundamental questions: what’s a Mel spectrogram, why is it relevant to music classification? How does a neural network learn? How does a CNN learn? Being neither a sound engineer nor a machine learning scientist, I had to restrain myself from delving too deep into the theories of these technologies, so once I feel I can sufficiently answer these questions to a layman, I began to focus more on the specific tools relevant to our project. Thankfully, both Librosa and Keras have an abundance of clear documentations and comprehensive tutorials.

And then there’s ChatGPT, which has transformed my workflow as a programmer in many ways. For starters, it has mostly replaced Google as my entry point whenever I’m trying to learn something new. While it can generate competent code, the aspect I appreciate the most is how organic the whole interaction feel, I could ask it to build me roadmap for learning just about any topic, I could ask it to example any topic, or provide code examples of the technologies I’m learning about and have it explained line by line. It can also entertain just about any silly prompts I can come up with. The fact that ChatGPT is ultimately just a fancy word shuffling machine, doesn’t detract from how useful it really is in the real world.

Print Friendly, PDF & Email

Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *