class_docstr: <a id="PatchEmbeddings"></a>
  
  ## Get patch embeddings
  
  This splits the image into patches of size $p       imes p$ and gives an embedding for each patch.
class_docstr_tok: ["<","a","id=","''","PatchEmbeddings","''",">","<","\/a",">","#","#","Get","patch","embeddings","This","splits","the","image","into","patches","of","size","$","p","imes","p","$","and","gives","an","embedding","for","each","patch","."]
docstr: * `x` is the input image of shape `[batch_size, channels, height, width]`
docstr_tok: ["*","`","x","`","is","the","input","image","of","shape","`","[","batch_size",",","channels",",","height",",","width","]","`"]
code: def forward(self, x: torch.Tensor):
      """
      * `x` is the input image of shape `[batch_size, channels, height, width]`
      """
      # Apply convolution layer
      x = self.conv(x)
      # Activation and normalization
      x = self.act(x)
      x = self.norm(x)
  
      #
      return x
  
file_path: annotated_deep_learning_paper_implementations/labml_nn/conv_mixer/__init__.py
imports: import torch
  from torch import nn
  from labml_helpers.module import Module
  from labml_nn.utils import clone_module_list
label_desc: Use image node_id 2 for calling the PatchEmbeddings obj's underlying member method code with example usage: obj.forward(x) and returns: x