I created my own sequential that has many modules in it.  I was able to create a module PrintLayer and I placed it after the output i want to save.
class PrintLayer(nn.Module):
def init(self):
super(PrintLayer, self).init()
def forward(self, x):
    print(x.shape)
    return x

It could print the shape and value of the output of a specific layer i want to observe during the forward pass, but how exactly do I save that value so I could retrieve it after the forward pass. Thanks!