# How to count model parameters?

**URL:** <https://discuss.pytorch.org/t/how-to-count-model-parameters/128505>\
**Category:** Uncategorized\
**Created:** [August 4, 2021, 7:21am UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505 "2021-08-04T07:21:01Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![blackhole](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/blackhole/32/40937_2.png) [@blackhole](https://discuss.pytorch.org/u/blackhole)\
**Post date:** [August 4, 2021, 7:21am UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505/1 "2021-08-04T07:21:01Z")

</div>

how to count model parameters in pytorch, torchstat packages didn’t update for a long time, meet some error when i use it.

---

<div class="post-metadata">

**Author:** ![mariosasko](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/mariosasko/32/27520_2.png) [@mariosasko](https://discuss.pytorch.org/u/mariosasko)\
**Post date:** [August 4, 2021, 7:38am UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505/2 "2021-08-04T07:38:32Z")

</div>

Hi,

you can count them as follows:

```python
num_params = sum(param.numel() for param in model.parameters())

```

or:

```python
num_params = sum(param.numel() for param in model.parameters() if param.requires_grad)

```

to only consider trainable parameters.

---

<div class="post-metadata">

**Author:** ![blackhole](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/blackhole/32/40937_2.png) [@blackhole](https://discuss.pytorch.org/u/blackhole)\
**Post date:** [August 5, 2021, 2:21am UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505/3 "2021-08-05T02:21:36Z")

</div>

thank you!! if i want to see parameters in each layer, how to do it?

---

<div class="post-metadata">

**Author:** ![safakkbilici](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/safakkbilici/32/37301_2.png) [@safakkbilici](https://discuss.pytorch.org/u/safakkbilici)\
**Post date:** [August 5, 2021, 10:41am UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505/4 "2021-08-05T10:41:52Z")

</div>

Maybe listing all modules in a model can be helpful if you want to see parameters in each layer:

```python
for name, module in model.named_modules():
     print(name, sum(param.numel() for param in module.parameters()))

```

It will print all modules and modules’ number of parameters including activation functions or dropout.

---

<div class="post-metadata">

**Author:** ![Vrushank98](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/vrushank98/32/60269_2.png) [@Vrushank98](https://discuss.pytorch.org/u/Vrushank98)\
**Post date:** [August 5, 2021, 3:47pm UTC](https://discuss.pytorch.org/t/how-to-count-model-parameters/128505/5 "2021-08-05T15:47:25Z")

</div>

You can use **torchsummary** library for that.

```auto
from torchsummary import summary
print(summary(model_name, (3,224,224) , 'cpu'))

```
