I am studying the code of [Fast Depth](https://github.com/dwofk/fast-depth/blob/master/models.py) and I am wondering what is the meaning of writing the `__init__` method of the class like this:

```
class MobileNet(nn.Module):
    def __init__(self, decoder, output_size, in_channels=3, pretrained=True):

        super(MobileNet, self).__init__()

```

or this (always the same)

```
class MobileNetSkipAdd(nn.Module):
    def __init__(self, output_size, pretrained=True):

        super(MobileNetSkipAdd, self).__init__()

```

I don't understand the usage of the `super()` function, where it is called the class itself.