Learn practical skills, build real-world projects, and advance your career
Updated 4 years ago
Image Classification using Convolutional Neural Networks in PyTorch
import os
import torch
import torchvision
import tarfile
import torch.nn as nn
import numpy as np
import torch.nn.functional as F
from torchvision.datasets.utils import download_url
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
import torchvision.transforms as tt
from torch.utils.data import random_split
from torchvision.utils import make_grid
import matplotlib.pyplot as plt
%matplotlib inline
!pip install jovian
import jovian
Collecting jovian
Downloading jovian-0.2.15-py2.py3-none-any.whl (94 kB)
|████████████████████████████████| 94 kB 1.6 MB/s eta 0:00:011
Requirement already satisfied: pyyaml in /opt/conda/lib/python3.7/site-packages (from jovian) (5.3.1)
Requirement already satisfied: click in /opt/conda/lib/python3.7/site-packages (from jovian) (7.1.1)
Requirement already satisfied: requests in /opt/conda/lib/python3.7/site-packages (from jovian) (2.23.0)
Collecting uuid
Downloading uuid-1.30.tar.gz (5.8 kB)
Requirement already satisfied: idna<3,>=2.5 in /opt/conda/lib/python3.7/site-packages (from requests->jovian) (2.9)
Requirement already satisfied: chardet<4,>=3.0.2 in /opt/conda/lib/python3.7/site-packages (from requests->jovian) (3.0.4)
Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/lib/python3.7/site-packages (from requests->jovian) (2020.4.5.2)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/conda/lib/python3.7/site-packages (from requests->jovian) (1.24.3)
Building wheels for collected packages: uuid
Building wheel for uuid (setup.py) ... done
Created wheel for uuid: filename=uuid-1.30-py3-none-any.whl size=6500 sha256=3ffc998906474c74d3cf11f965c9746e43ca18c1975cebd7a6b4884d53d22f19
Stored in directory: /root/.cache/pip/wheels/2a/ea/87/dd57f1ecb4f0752f3e1dbf958ebf8b36d920d190425bcdc24d
Successfully built uuid
Installing collected packages: uuid, jovian
Successfully installed jovian-0.2.15 uuid-1.30
project_name='05-cifar100-cnn-live'
Exploring the Data
We'll download the images in PNG format from this page, using some helper functions from the torchvision
and tarfile
packages.
# Dowload the dataset
dataset_url = "https://s3.amazonaws.com/fast-ai-imageclas/imagenette-160.tgz"
download_url(dataset_url, '.')
Downloading https://s3.amazonaws.com/fast-ai-imageclas/imagenette-160.tgz to ./imagenette-160.tgz
HBox(children=(FloatProgress(value=1.0, bar_style='info', max=1.0), HTML(value='')))