| from torch import nn | |
| import torchvision | |
| import torch | |
| def create_model(num_classes:int=3): | |
| weights = torchvision.models.EfficientNet_B2_Weights.IMAGENET1K_V1 | |
| model=torchvision.models.efficientnet_b2(weights=weights) | |
| transform=weights.transforms() | |
| for param in model.parameters(): | |
| param.requires_grad=False | |
| model.classifier=nn.Sequential(nn.Dropout(p=0.3, inplace=True), | |
| nn.Linear(in_features=1408, out_features=num_classes, bias=True)) | |
| return model,transform | |