import torch import torch.nn as nn import torch.nn.functional as F class ProjectionHead(nn.Module): def __init__(self, in_dim, hidden_dim=512, out_dim=128): super().__init__() self.net = nn.Sequential( nn.Linear(in_dim, hidden_dim), nn.BatchNorm1d(hidden_dim), nn.ReLU(), nn.Linear(hidden_dim, out_dim) ) def forward(self, x): return self.net(x)