def forward(self, z_views: List[Tensor]) -> Tensor:
        """Computes the EMP-SSL loss, which is a combination of Total Coding Rate loss and invariance loss.

        Args:
            z_views:
                List of patch embeddings tensors from different views.

        Returns:
            The computed EMP-SSL loss.
        """

        # z has shape (num_views, batch_size, dim)
        z = torch.stack(z_views)

        return tcr_loss(z, eps=self.tcr_eps) + self.inv_coef * invariance_loss(z)
Computes the EMP-SSL loss, which is a combination of Total Coding Rate loss and invariance loss.

        Args:
            z_views:
                List of patch embeddings tensors from different views.

        Returns:
            The computed EMP-SSL loss.
        
lightly/loss/emp_ssl_loss.py