언어 선택 / Language Selection:
This repository contains my solutions to the assignments from Stanford's CS231n: Convolutional Neural Networks for Visual Recognition course (Spring 2017), completed using the 2021 assignment version.
Stanford's CS231n is one of the most renowned deep learning courses, offering an in-depth exploration of convolutional neural networks (CNNs) and their applications in computer vision. It covers topics such as:
- Image classification
- CNN architectures
- Transfer learning
- Object detection and segmentation
- Recurrent neural networks (RNNs) and transformers in vision
- Generative adversarial networks (GANs)
- Self-Supervised Learning
If you're passionate about artificial intelligence, this course is an excellent learning resource.
Useful links:
📹 Lecture Videos (Spring 2017)
Please note that there might be some errors in my implementations, particularly in the Batch Normalization and Dropout sections. While I made efforts to fix these issues, debugging them completely proved challenging.
- Q1: k-Nearest Neighbor classifier
- Q2: Training a Support Vector Machine
- Q3: Implement a Softmax classifier
- Q4: Two-Layer Neural Network
- Q5: Higher Level Representations: Image Features
- Q1: Multi-Layer Fully Connected Neural Networks
- Q2: Batch Normalization
- Q3: Dropout
- Q4: Convolutional Neural Networks
- Q5: PyTorch/TensorFlow on CIFAR-10
(I chose PyTorch in Q5)
- Q1: Image Captioning with Vanilla RNNs
- Q2: Image Captioning with Transformers
- Q3: Network Visualization: Saliency Maps, Class Visualization, and Fooling Images
- Q4: Generative Adversarial Networks
- Q5: Self-Supervised Learning for Image Classification
- Extra Credit: Image Captioning with LSTMs
(I chose to skip this extra credit task.)
This repository is intended for educational purposes. Please avoid copying solutions directly if you are currently taking the course. Instead, use this as a reference to guide your understanding and troubleshooting.
Happy learning! 🎓