nn vs F is really a matter of personal preference. We actually provide both because some people really prefer the Module version to be able to put things in nn.Sequential()s, other prefer writing the forward fully by hand with a functional interface.