import torch.nn as nn
class SmallCNN(nn.Module):
def __init__(self, num_classes: int) -> None:
super().__init__()
self.features = nn.Sequential(
import pandas as pd
import torch
from PIL import Image
from torch.utils.data import Dataset, DataLoader
class ProductImageDataset(Dataset):
import torch
best_val_loss = float('inf')
for epoch in range(1, num_epochs + 1):
model.train()
import torch
device = 'cuda' if torch.cuda.is_available() else 'cpu'
features = torch.tensor([[1.0, 2.0], [3.0, 4.0]], requires_grad=True, device=device)
weights = torch.tensor([[0.2], [0.8]], requires_grad=True, device=device)
import torch.nn as nn
from torchvision.models import resnet50, ResNet50_Weights
model = resnet50(weights=ResNet50_Weights.IMAGENET1K_V2)
for parameter in model.parameters():